.cookie_disclosure--container[data-v-6f0484aa] {
    bottom: 1em;
    left: 0;
    margin: 0 1em;
    opacity: 0;
    position: fixed;
    right: 0;
    transform: translateY(1em);
    transition: transform .15s cubic-bezier(.4, 0, .2, 1), opacity .15s cubic-bezier(.4, 0, .2, 1), visibility 1ms linear .15s;
    visibility: hidden;
    will-change: transform, opacity, visibility;
    z-index: 150
}

.cookie_disclosure--container-minimize_ui[data-v-6f0484aa] {
    font-size: .8rem
}

.cookie_disclosure--container-active[data-v-6f0484aa] {
    opacity: 1;
    transform: none;
    transition: transform .15s cubic-bezier(.4, 0, .2, 1), opacity .15s cubic-bezier(.4, 0, .2, 1), visibility 1ms linear;
    visibility: visible
}

.cookie_disclosure--grid[data-v-6f0484aa] {
    grid-gap: .5em;
    background: #fff;
    border-radius: .25em;
    box-shadow: 0 0 32px rgba(0, 0, 0, .54);
    display: grid;
    grid-template-columns:1fr max-content;
    margin: 0 auto;
    max-width: 1200px;
    padding: .5em 1em
}

.cookie_disclosure--container-minimize_ui .cookie_disclosure--grid[data-v-6f0484aa] {
    max-width: 800px
}

.cookie_disclosure--button_container[data-v-6f0484aa] {
    grid-gap: .5em;
    align-self: start;
    display: grid;
    grid-template-columns:1fr
}

.cookie_disclosure--container-mobile_ui .cookie_disclosure--button_container[data-v-6f0484aa] {
    grid-template-columns:1fr 1fr
}

.cookie_disclosure--button[data-v-6f0484aa] {
    background-color: #fff;
    color: rgb(var(--primary-color, 0, 121, 102));
    display: block;
    margin-left: .5em;
    overflow: hidden;
    padding: .5em .75em;
    text-align: center;
    text-decoration: none;
    text-overflow: ellipsis;
    text-transform: uppercase;
    transition: background-color .15s cubic-bezier(.4, 0, .2, 1);
    white-space: nowrap;
    will-change: background-color
}

.cookie_disclosure--button-disabled[data-v-6f0484aa] {
    background-color: #eee !important;
    color: grey !important;
    cursor: default
}

.cookie_disclosure--button[data-v-6f0484aa]:focus, .cookie_disclosure--button[data-v-6f0484aa]:hover {
    background-color: #eee
}

.cookie_disclosure--button[data-v-6f0484aa]:active {
    background-color: #ccc
}

.cookie_disclosure--button-accept[data-v-6f0484aa] {
    background-color: rgba(var(--primary-color, 0, 121, 102), .87);
    color: #fff !important
}

.cookie_disclosure--button-accept[data-v-6f0484aa]:focus, .cookie_disclosure--button-accept[data-v-6f0484aa]:hover {
    background-color: rgba(var(--primary-color, 0, 121, 102), 1)
}

.cookie_disclosure--button-reject[data-v-6f0484aa] {
    background-color: rgba(var(--secondary-color, 231, 231, 233), .87)
}

.cookie_disclosure--container-minimize_ui p[data-v-6f0484aa] {
    margin: .25em 0
}

.cookie_disclosure--container-mobile_ui p[data-v-6f0484aa] {
    margin: .5em 0
}

.cookie_disclosure--container-small_ui .cookie_disclosure--element-small_ui_hide[data-v-6f0484aa] {
    display: none
}

@media (max-width: 500px) {
    .cookie_disclosure--container-minimize_ui .cookie_disclosure--button_container[data-v-6f0484aa] {
        grid-template-columns:1fr
    }
}

@media (max-width: 800px) {
    .cookie_disclosure--grid[data-v-6f0484aa] {
        border-radius: initial;
        grid-template-columns:1fr
    }
}

.dialog--overlay[data-v-26990091] {
    background-color: rgba(0, 0, 0, .75);
    bottom: 0;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    -webkit-transition: opacity .25s ease-in, visibility 1ms linear .25s, background-color .25s ease-in .25s;
    transition: opacity .25s ease-in, visibility 1ms linear .25s, background-color .25s ease-in .25s;
    visibility: hidden;
    z-index: 35
}

.dialog--overlay-show[data-v-26990091] {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color .25s ease-out 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color .25s ease-out 1ms;
    visibility: visible
}

.dialog--overlay-clear[data-v-26990091] {
    background-color: transparent;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color 0ms linear 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color 0ms linear 1ms
}

.dialog--container[data-v-26990091] {
    background-color: #fff;
    border-radius: 2px;
    box-shadow: 0 0 32px rgba(0, 0, 0, .54);
    box-sizing: border-box;
    color: #000;
    color: rgba(0, 0, 0, .87);
    font-size: 1.2em;
    left: 50%;
    max-height: 100vh;
    max-width: 400px;
    opacity: 0;
    overflow: auto;
    padding: 24px 0 0;
    position: fixed;
    top: 50%;
    transform: translateY(10px) translateY(-50%) translateX(-50%);
    transition: transform .25s ease-in, opacity .25s ease-in, visibility 1ms linear .25s;
    visibility: hidden;
    width: 100%;
    will-change: transform, opacity, visibility;
    z-index: 50
}

.dialog--container-wide[data-v-26990091] {
    max-width: 800px
}

.dialog--container-active[data-v-26990091] {
    opacity: 1;
    transform: translateY(-50%) translateX(-50%);
    transition: transform .25s ease-out, opacity .25s ease-out, visibility 1ms linear 1ms;
    visibility: visible
}

.dialog--container h3[data-v-26990091] {
    color: #000;
    color: rgba(0, 0, 0, .54);
    margin: 0;
    padding: 0 24px 20px
}

.dialog--body[data-v-26990091] {
    -webkit-overflow-scrolling: touch;
    overflow: hidden;
    overflow-y: auto
}

.dialog--body[data-v-26990091] p, .dialog--body[data-v-26990091] table {
    margin: 0;
    padding: 0 24px 24px
}

.dialog--body[data-v-26990091] table {
    width: 100%
}

.dialog--body[data-v-26990091] label {
    margin: 0 24px 24px;
    width: calc(100% - 48px)
}

.dialog--body[data-v-26990091] p.highlight {
    background-color: #ffff8d;
    position: relative
}

.dialog--body[data-v-26990091] p.highlight:before {
    background-color: #ffff8d;
    content: "";
    height: 1em;
    left: 0;
    position: absolute;
    right: 0;
    top: -1em
}

.dialog--container[data-v-26990091] .icon, .dialog--container[data-v-26990091] svg {
    height: 24px;
    margin: 8px 8px 0 0;
    width: 24px
}

.dialog--container[data-v-26990091] .btn .icon, .dialog--container[data-v-26990091] .btn svg {
    background-color: #dfebe9;
    border: .125em solid #326f5f;
    border-radius: 50%;
    margin: -.25em 0 0;
    padding: .125em;
    transform: translateX(-.75em) scale(1.5);
    vertical-align: middle
}

.dialog--container[data-v-26990091] .btn.btn-highlight .icon, .dialog--container[data-v-26990091] .btn.btn-highlight svg {
    color: #000
}

.dialog--container[data-v-26990091] .icon.icon-large, .dialog--container[data-v-26990091] svg.icon-large {
    height: 48px;
    margin: 0;
    width: 100%
}

.dialog--container[data-v-26990091] hr {
    margin: 0 0 1em
}

.layout--actions[data-v-26990091] {
    padding: 8px 8px 8px 24px
}

.layout--actions[data-v-26990091]:after {
    clear: both;
    content: "";
    display: table
}

.layout--actions a[data-v-26990091] {
    background-color: #fff;
    color: rgb(var(--primary-color, 0, 121, 102));
    float: right;
    height: 36px;
    line-height: 36px;
    margin-left: 8px;
    max-width: 50%;
    min-width: 64px;
    overflow: hidden;
    padding: 0 8px;
    text-align: center;
    text-decoration: none;
    text-overflow: ellipsis;
    text-transform: uppercase;
    transition: background-color .25s ease-in;
    vertical-align: middle;
    white-space: nowrap;
    will-change: background-color
}

.layout--actions a.layout--action_button-disabled[data-v-26990091] {
    background-color: #eee !important;
    color: grey !important;
    cursor: default
}

.layout--actions a[data-v-26990091]:focus, .layout--actions a[data-v-26990091]:hover {
    background-color: #eee;
    transition: background-color .25s ease-out
}

.layout--actions a[data-v-26990091]:active {
    background-color: #ccc;
    transition: background-color .25s ease-out
}

.show_overlay_dialog--container[data-v-ea3be7e2] {
    position: static
}

/*!
 * Copyright (C) 2016-2025, Peppermill Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are not permitted.
 */
:root {
    --ease-in-quad: cubic-bezier(.55, .085, .68, .53);
    --ease-in-cubic: cubic-bezier(.550, .055, .675, .19);
    --ease-in-quart: cubic-bezier(.895, .03, .685, .22);
    --ease-in-quint: cubic-bezier(.755, .05, .855, .06);
    --ease-in-expo: cubic-bezier(.95, .05, .795, .035);
    --ease-in-circ: cubic-bezier(.6, .04, .98, .335);
    --ease-out-quad: cubic-bezier(.25, .46, .45, .94);
    --ease-out-cubic: cubic-bezier(.215, .61, .355, 1);
    --ease-out-quart: cubic-bezier(.165, .84, .44, 1);
    --ease-out-quint: cubic-bezier(.23, 1, .32, 1);
    --ease-out-expo: cubic-bezier(.19, 1, .22, 1);
    --ease-out-circ: cubic-bezier(.075, .82, .165, 1);
    --ease-in-out-quad: cubic-bezier(.455, .03, .515, .955);
    --ease-in-out-cubic: cubic-bezier(.645, .045, .355, 1);
    --ease-in-out-quart: cubic-bezier(.77, 0, .175, 1);
    --ease-in-out-quint: cubic-bezier(.86, 0, .07, 1);
    --ease-in-out-expo: cubic-bezier(1, 0, 0, 1);
    --ease-in-out-circ: cubic-bezier(.785, .135, .15, .86)
}

body, html {
    -webkit-font-smoothing: antialiased;
    font-family: proxima-nova, sans-serif;
    font-weight: 400;
    margin: 0;
    padding: 0
}

html {
    --primary-color: 0, 121, 102;
    --secondary-color: 231, 231, 233;
    font-size: 16px
}

body {
    background-color: #fff;
    color: #000;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: scroll;
    top: 0 !important
}

body.disallow-scroll {
    overflow: hidden
}

html.text-increase {
    font-size: 22px
}

h1, h2 {
    font-family: trajan-pro-3, serif;
    text-align:center;
}

.scrollbar-hide body, html.scrollbar-hide {
    overflow: hidden
}

a {
    color: #000;
    position: relative;
    -webkit-transition: color .25s ease-in, max-width .25s ease-in, max-height .25s ease-in, min-height .25s, border-color .25s ease-in;
    transition: color .25s ease-in, max-width .25s ease-in, max-height .25s ease-in, min-height .25s, border-color .25s ease-in
}

a.allow-overflow {
    overflow: visible
}

.no-touchevents a:hover {
    color: #006757;
    -webkit-transition: color .25s ease-out, max-width .25s ease-out, max-height .25s ease-out, min-height .25s, border-color .25s ease-out;
    transition: color .25s ease-out, max-width .25s ease-out, max-height .25s ease-out, min-height .25s, border-color .25s ease-out
}

a.touch-effect {
    display: none
}

.touchevents a .touch-effect {
    background: radial-gradient(ellipse at center, hsla(0, 0%, 88%, .25) 0, hsla(0, 0%, 88%, .65) 100%);
    border-radius: 50%;
    display: block;
    height: 240px;
    margin: -120px 0 0 -120px;
    opacity: 0;
    position: absolute;
    transform: scale(0);
    transition: opacity 125ms ease-in 125ms, transform .25s ease-in;
    width: 240px;
    z-index: -5
}

.touchevents a.show-touch-effect .touch-effect {
    opacity: .25;
    transform: none;
    transition: opacity 125ms ease-out, transform .25s ease-out
}

.touchevents a.show-touch-effect .touch-effect.hide {
    opacity: 0;
    transform: scale(.75)
}

.system-symbol * {
    fill: currentColor
}

ul {
    margin-top: 0
}

ul > li.title {
    list-style: none;
    margin-left: -18px
}

.btn {
    align-content: center;
    display: inline-block;
    letter-spacing: .15em;
    min-height: 44px;
    padding: .25em .5em;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    z-index: 10
}

.btn:not(.btn-no-border) {
    border: .1em solid #d1d2d4
}

html .btn.btn-disabled {
    border-color: rgba(0, 0, 0, .15);
    color: rgba(0, 0, 0, .87);
    cursor: default
}

.btn.btn-dark {
    background: #565759;
    border-color: #565759;
    color: #fff
}

.btn.btn-highlight {
    background: #007966;
    border-color: #007966;
    color: #fff
}

.btn.active, .no-touchevents .btn:hover {
    color: #000
}

.btn.btn-dark.active, .btn.btn-highlight.active, .no-touchevents .btn.btn-dark:hover, .no-touchevents .btn.btn-highlight:hover {
    color: #fff
}

html.no-touchevents .btn.btn-disabled.active, html.no-touchevents .btn.btn-disabled:hover {
    color: rgba(0, 0, 0, .87)
}

.btn a {
    color: #000;
    color: rgba(0, 0, 0, .87);
    text-decoration: none
}

.btn a.active, .no-touchevents .btn a:hover {
    color: #000
}

.btn:after, .featured-events .event:after {
    background: #fff;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -20
}

.featured-events .event:before {
    background: transparent
}

html .btn.btn-disabled {
    background: rgba(0, 0, 0, .1)
}

.btn:after, .featured-events .event:after {
    background: rgba(0, 0, 0, .05);
    opacity: 0;
    transform: scaleX(0);
    transition: transform .25s ease-in, opacity .25s ease-in;
    will-change: opacity, transform;
    z-index: -10
}

.btn.btn-dark:after, .btn.call-to-action:after {
    background: rgba(0, 0, 0, .35)
}

.btn.btn-highlight:after {
    background: rgba(0, 0, 0, .2)
}

.btn.active:after, .featured-events .event.active:after, .no-touchevents .btn:hover:after, .no-touchevents .featured-events .event:hover:after {
    opacity: 1;
    transform: none;
    transition: transform .25s ease-out, opacity .25s ease-out
}

html .btn.btn-disabled:after {
    display: none
}

.right-side-content .btn {
    display: block;
    margin: 0 auto
}

.right-side-content .floorplan {
    margin-bottom: 24px
}

.ui-tablet .right-side-content .floorplan {
    margin-top: 24px
}

.ui-mobile .btn.floorplan, .ui-mobile .passport-offer .right-side-content .btn {
    margin-top: 16px
}

.ui-tablet .btn.floorplan, .ui-tablet .passport-offer .right-side-content .btn {
    width: auto
}

img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}

picture img {
    border-radius: 14px;
    margin: 20px auto;
}

/*img {
    border: none;
    margin: 0;
    padding: 0
}*/

.touch-only, html .desktop-only, html .mobile-only, html .tablet-only, html .widescreen-only {
    display: none
}

.touchevents .touch-only {
    display: block
}

.touchevents a.touch-only, .touchevents span.touch-only {
    display: inline-block
}

.touchevents .touch-hidden {
    display: none
}

html.on-corporate .on-corporate-only, html.on-property .on-property-only, html.ui-desktop .desktop-only, html.ui-mobile .mobile-only, html.ui-tablet .tablet-only, html.ui-widescreen .widescreen-only {
    display: block
}

html.on-corporate tr.on-corporate-only, html.on-property tr.on-property-only, html.ui-desktop tr.desktop-only, html.ui-mobile tr.mobile-only, html.ui-tablet tr.tablet-only, html.ui-widescreen tr.widescreen-only {
    display: table-row
}

html.on-corporate a.on-corporate-only, html.on-corporate span.on-corporate-only, html.on-property a.on-property-only, html.on-property span.on-property-only, html.ui-desktop a.desktop-only, html.ui-desktop span.desktop-only, html.ui-mobile a.mobile-only, html.ui-mobile span.mobile-only, html.ui-tablet a.tablet-only, html.ui-tablet span.tablet-only, html.ui-widescreen a.widescreen-only, html.ui-widescreen span.widescreen-only {
    display: inline-block
}

html.on-corporate table.on-corporate-only, html.on-property table.on-property-only, html.ui-desktop table.desktop-only, html.ui-mobile table.mobile-only, html.ui-tablet table.tablet-only, html.ui-widescreen table.widescreen-only {
    display: table
}

.shows-print-only, html body .on-corporate-only, html body .on-property-only, html.on-corporate body .not-on-corporate, html.on-property body .not-on-property, html.ui-desktop body .desktop-hidden, html.ui-mobile body .mobile-hidden, html.ui-tablet body .tablet-hidden, html.ui-widescreen body .widescreen-hidden {
    display: none
}

#container {
    display: block;
    min-height: 100%;
    position: relative;
    z-index: 10
}

#footer {
    --above-the-fold-height: calc(1em + 44px);
    background: #fff;
    color: #000;
    position: relative;
    transition: opacity .25s ease-out, visibility 1ms linear;
    z-index: 20
}

.hide-ui #footer {
    opacity: 0;
    transition: opacity .25s ease-in, visibility 1ms linear .25s;
    visibility: hidden
}

.footer--container {
    grid-gap: 2em;
    background: #fff;
    display: grid;
    grid-template-columns:repeat(5, 1fr);
    padding: var(--above-the-fold-height) 2em 0 0
}

.ui-mobile .footer--container {
    grid-template-columns:repeat(2, 1fr);
    padding-right: 0
}

.ui-tablet .footer--container {
    grid-template-columns:repeat(4, 1fr);
    padding-right: 0
}

.footer--container .center {
    align-self: center;
    justify-self: center
}

.footer--container .btn {
    word-break: break-word
}

.ui-mobile .footer--container .btn {
    height: 100%;
    width: 100%
}

#footer .award-logos li > * {
    transition: opacity 1s ease-in-out .5s, visibility 1ms linear .5s
}

#footer .award-logos img {
    left: 50%;
    max-height: 80%;
    max-width: 80%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%)
}

#footer .award-logos .hide {
    opacity: 0;
    transition: opacity 1s ease-in-out, visibility 1ms linear 1s;
    visibility: hidden
}

#footer .award-logos .hide a {
    display: none
}

#footer .award-logos a {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.ui-mobile #footer .award-logos {
    grid-column: 1/-1;
    height: 270px
}

#footer .above-the-fold {
    background: #fff;
    bottom: 0;
    height: var(--above-the-fold-height);
    left: 0;
    opacity: 0;
    padding: 0;
    position: fixed;
    right: 0;
    transform: translateY(100%)
}

#footer.above-the-fold-static .above-the-fold {
    bottom: 0;
    opacity: 1 !important;
    position: absolute;
    top: 0;
    transform: none !important
}

#footer .above-the-fold .above-fold {
    background: #fff;
    height: 100%;
    left: 0;
    padding: .5em 1em;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%
}

.ui-mobile #footer .above-the-fold .above-fold {
    line-height: 2em;
    white-space: nowrap
}

#footer .above-the-fold .btn {
    margin-right: 24px
}

.ui-mobile #footer .above-the-fold .btn {
    font-size: 2.5vw;
    margin-right: 12px
}

.ui-mobile.old-ie #footer .above-the-fold .btn {
    font-size: 12px
}

#footer .above-the-fold .btn:last-child {
    margin-right: 0
}

#footer .above-the-fold .back-to-top {
    bottom: 0;
    height: 140px;
    opacity: 0;
    position: absolute;
    right: 0;
    -webkit-transform: translateY(24px);
    transform: translateY(24px);
    -webkit-transition: opacity .15s ease-in, visibility 1ms linear .25s, -webkit-transform .25s ease-in;
    transition: opacity .15s ease-in, visibility 1ms linear .25s, transform .25s ease-in;
    visibility: hidden;
    width: 140px
}

.ui-widescreen #footer .above-the-fold .back-to-top {
    height: 160px;
    right: 24px;
    width: 160px
}

.ui-mobile #footer .above-the-fold .back-to-top, .ui-tablet #footer .above-the-fold .back-to-top {
    height: 100px;
    width: 100px
}

.ui-mobile #footer .above-the-fold .back-to-top {
    bottom: 100%
}

#footer .above-the-fold .back-to-top.active {
    opacity: 1;
    transform: none;
    transition: opacity .15s ease-out, visibility 1ms linear 1ms, transform .25s ease-out;
    visibility: visible
}

#footer .above-the-fold .back-to-top img, #footer .map {
    height: 100%;
    width: 100%
}

#footer .map {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    grid-row: span 2;
    opacity: .65;
    transition: opacity .35s ease-out
}

#footer.footer-shown .map {
    background-image: url(/library/images/global/footer-map.jpg)
}

.no-touchevents #footer .map:hover, .touchevents #footer .map {
    opacity: 1
}

.ui-mobile #footer .map, .ui-tablet #footer .map {
    grid-column: 1/-1;
    grid-row: span 1;
    height: 150px
}

#footer .btn svg {
    display: block;
    height: 4em;
    margin: 0 auto 1.5em;
    width: 4em
}

#footer .btn .add-svg-bg {
    display: block;
    position: relative
}

#footer .btn .add-svg-bg svg {
    background: #000;
    border-radius: .5em;
    color: #fff;
    height: 3em;
    margin-bottom: 2.5em;
    width: 3em
}

#footer .btn .add-svg-bg:after {
    border-bottom: 12px solid transparent;
    border-left: 12px solid #000;
    border-top: 12px solid transparent;
    content: "";
    height: 0;
    left: 50%;
    margin: -14px 0 0 -24px;
    position: absolute;
    top: 100%;
    width: 0
}

#footer .social svg {
    height: 100%;
    margin-bottom: 0;
    width: 100%
}

#footer .contact path, #footer .contact rect {
    fill: currentcolor
}

#footer .links {
    background: linear-gradient(180deg, hsla(220, 3%, 83%, 0) 0, hsla(220, 3%, 83%, .25));
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center
}

.ui-mobile #footer .links, .ui-tablet #footer .links {
    grid-column: span 2
}

#footer .links.award-logos {
    position: relative
}

#footer .links.social {
    grid-gap: 1em;
    background: none;
    display: grid;
    grid-template-columns:1fr 1fr
}

.ui-mobile #footer .links.social {
    grid-column: 1/-1
}

#footer .links .btn:not(.social) {
    display: block
}

#footer .links li + li {
    margin-top: .125em
}

#footer .properties {
    grid-column: 1/-1;
    text-align: center
}

#footer .properties a.property {
    background: transparent url(/library/images/global/logo-sprite.png) 0 0 no-repeat;
    display: inline-block;
    height: 50px;
    opacity: .54;
    -webkit-transition: opacity .25s ease-in;
    transition: opacity .25s ease-in;
    width: 150px
}

.no-touchevents #footer .properties a.property:hover {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out;
    transition: opacity .25s ease-out
}

#footer .properties a.peppermill-lv {
    background-position: 0 -50px
}

#footer .properties a.peppermill-wn {
    background-position: 0 -150px
}

#footer .properties a.peppermill-reno {
    background-position: 0 -200px
}

#footer .properties a.western-village {
    background-position: 0 -250px
}

#footer .properties a.rainbow-wn {
    background-position: 0 -300px
}

#header {
    background: #fff;
    height: 100px;
    left: 0;
    position: sticky;
    right: 0;
    top: 0;
    transition: opacity .25s ease-out, visibility 1ms linear;
    z-index: 30
}

.hide-ui #header {
    opacity: 0;
    transition: opacity .25s ease-in, visibility 1ms linear .25s;
    visibility: hidden
}

.ui-mobile #header, .ui-tablet #header {
    background: #fff !important;
    height: 60px
}

.ui-desktop #header {
    font-size: .95em
}

#header-sticky {
    background-color: #4d4d4d;
    color: #dcdcde;
    height: 75px
}

.ui-mobile.show-nav #header-sticky, .ui-tablet.show-nav #header-sticky {
    display: none
}

#header-sticky a {
    color: inherit;
    text-transform: none
}

#header-sticky a + a:after {
    background-color: currentColor;
    bottom: 25%;
    content: "";
    left: -1px;
    position: absolute;
    top: 25%;
    width: 1px
}

#header-sticky .viewport {
    height: 100%;
    max-width: 1360px;
    padding: 0
}

.ui-widescreen #header-sticky .viewport {
    max-width: 1410px
}

.shadow {
    bottom: 0;
    box-shadow: 0 0 12px rgba(0, 0, 0, .75);
    content: "";
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    will-change: opacity;
    z-index: -10
}

#footer .shadow {
    box-shadow: 0 0 8px rgba(0, 0, 0, .55)
}

html .pepvalidate-v3 .error-msg .icon {
    display: none
}

.page-link-filter .pepvalidate-v3 p.check-in-out, .page-link-filter .pepvalidate-v3 p.filters {
    cursor: pointer
}

html .page-link-filter .pepvalidate-v3 p.filter-submit input {
    border-radius: 0
}

.ui-mobile .page-link-filter .pepvalidate-v3 label {
    height: auto
}

.page-link-filter .pepvalidate-v3 label > .text {
    bottom: 15px;
    color: #242021 !important
}

.page-link-filter .pepvalidate-v3 p.active label > .text {
    color: #fff !important;
    opacity: 0
}

.page-link-filter .pepvalidate-v3 input, .page-link-filter .pepvalidate-v3 select {
    background-color: #555658;
    border: none !important;
    color: #fff;
    padding: 0 16px;
    z-index: 0
}

.page-link-filter .pepvalidate-v3 .active input, .page-link-filter .pepvalidate-v3 .active select, .page-link-filter .pepvalidate-v3 input, .page-link-filter .pepvalidate-v3 select {
    background-color: #e7e7e9;
    color: #242021;
    cursor: pointer;
    font-size: 1em;
    height: 45px;
    line-height: 45px
}

.hotel-widget .pepvalidate-v3 .active input, .hotel-widget .pepvalidate-v3 .active select, .hotel-widget .pepvalidate-v3 input, .hotel-widget .pepvalidate-v3 select {
    cursor: pointer
}

#container .page-link-filter .pepvalidate-v3 input[type=submit] {
    margin-top: 18px
}

#container .pepvalidate-v3 input[type=button], #container .pepvalidate-v3 input[type=submit] {
    background-color: #006757;
    margin-top: 22px
}

.pepvalidate-v3.passport .text svg {
    height: 24px;
    margin: 0 0 -2px;
    vertical-align: bottom;
    width: 24px
}

.page-link-filter .pepvalidate-v3 svg, .right-side-content .pepvalidate-v3 svg {
    color: #fff;
    color: #242021;
    height: 34px;
    width: 34px
}

.page-link-filter .pepvalidate-v3 svg.symbol_filter_list {
    height: 28px;
    margin-top: 4px;
    width: 28px
}

.page-link-filter .pepvalidate-v3 svg.icon, .right-side-content .pepvalidate-v3 svg.icon {
    fill: #333
}

.page-link-filter .pepvalidate-v3 .handle, .right-side-content .pepvalidate-v3 .handle {
    cursor: pointer;
    right: 1px;
    top: 18px
}

.right-side-content .pepvalidate-v3 .handle {
    display: none;
    right: -7px
}

.ui-mobile .page-link-filter .pepvalidate-v3 .handle {
    top: 2px
}

.ui-tablet .page-link-filter .pepvalidate-v3 .handle {
    display: none
}

#nav {
    height: 100%;
    margin: 0 auto;
    max-width: 1600px;
    position: relative;
    text-align: center;
    z-index: 33
}

#award-ticker {
    background-color: #fff;
    border: 3px ridge #fff;
    bottom: -24px;
    font-size: 12px;
    height: 24px;
    line-height: 19px;
    position: absolute;
    right: 16px;
    text-transform: uppercase;
    -webkit-transition: background-color .25s ease-out;
    transition: background-color .25s ease-out;
    width: 323px
}

html.ui-mobile #award-ticker {
    right: 0;
    width: 100%
}

.nav-tab-count-3 #award-ticker {
    width: 483px
}

#award-ticker:after, #award-ticker:before {
    background: #b00404;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    top: 0;
    width: 5px;
    z-index: 20
}

#award-ticker:after {
    left: auto;
    right: 0
}

#award-ticker .shadow {
    box-shadow: 4px 5px 3px rgba(0, 0, 0, .35);
    left: 0;
    right: 0;
    top: -5px
}

.ui-mobile #award-ticker .shadow {
    box-shadow: 0 5px 3px rgba(0, 0, 0, .35)
}

#award-ticker .ticker-item {
    height: 100%;
    left: 0;
    overflow: hidden;
    padding: 0 5px;
    position: absolute;
    top: 0;
    -webkit-transition: visibility 1ms linear 1.5s;
    transition: visibility 1ms linear 1.5s;
    visibility: hidden;
    width: 100%;
    z-index: 10
}

#award-ticker .ticker-item.active {
    -webkit-transition: visibility 1ms linear 1ms;
    transition: visibility 1ms linear 1ms;
    visibility: visible
}

#award-ticker .ticker-item:after, #award-ticker .ticker-item:before {
    background: #b00404;
    background: -moz-linear-gradient(left, #fff 0, hsla(0, 0%, 100%, 0) 100%);
    background: -webkit-linear-gradient(left, #fff, hsla(0, 0%, 100%, 0));
    background: linear-gradient(90deg, #fff 0, hsla(0, 0%, 100%, 0));
    bottom: 0;
    content: "";
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#00ffffff", GradientType=1);
    left: 5px;
    position: absolute;
    top: 0;
    width: 12px;
    z-index: 20
}

#award-ticker .ticker-item:after {
    background: -moz-linear-gradient(left, hsla(0, 0%, 100%, 0) 0, #fff 100%);
    background: -webkit-linear-gradient(left, hsla(0, 0%, 100%, 0), #fff);
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0) 0, #fff);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ffffff", endColorstr="#ffffff", GradientType=1);
    left: auto;
    right: 5px
}

#award-ticker a {
    height: 100%;
    left: 0;
    padding: 0 13px;
    position: absolute;
    text-decoration: none;
    top: 0;
    transform: translateX(100%);
    transition: transform 1ms linear 2.5s;
    white-space: nowrap
}

.no-csstransitions #award-ticker a {
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%
}

.csstransitions #award-ticker .ticker-item.active a {
    transform: translateX(-100%);
    transition-delay: 0ms;
    transition-duration: 12.5s
}

.no-touchevents #award-ticker a:hover {
    color: currentColor
}

#award-ticker ~ .nav-tab {
    bottom: -68px
}

#nav .links {
    height: 100%
}

.ui-desktop #nav .links {
    padding-right: 90px;
    white-space: nowrap
}

.ui-widescreen #nav .links {
    white-space: nowrap
}

.ui-mobile #nav .links, .ui-tablet #nav .links {
    background: #fff;
    height: 100%;
    left: 0;
    opacity: 0;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 75px 0 0;
    position: fixed;
    top: 0;
    transform: translateY(24px);
    transition: opacity .25s ease-in, visibility 1ms linear .25s, transform .25s ease-in;
    visibility: hidden;
    width: 100%;
    z-index: 10
}

.ui-mobile.ui-transition #nav .links, .ui-tablet.ui-transition #nav .links {
    transition: none
}

.ui-mobile.show-nav #nav .links, .ui-tablet.show-nav #nav .links {
    opacity: 1;
    transform: none;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms, transform .25s ease-out;
    visibility: visible
}

.ui-mobile #nav .links:before, .ui-tablet #nav .links:before {
    background: -moz-linear-gradient(top, #fff 0, #fff 71%, hsla(0, 0%, 100%, 0) 100%);
    background: -webkit-linear-gradient(top, #fff, #fff 71%, hsla(0, 0%, 100%, 0));
    background: linear-gradient(180deg, #fff 0, #fff 71%, hsla(0, 0%, 100%, 0));
    content: "";
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#00ffffff", GradientType=0);
    height: 85px;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 30
}

.nav-link {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    align-content: center;
    align-items: center;
    background: hsla(0, 0%, 100%, 0);
    color: #525252;
    display: inline-flex;
    flex-direction: column;
    flex-wrap: wrap;
    font-size: 1.1em;
    height: 100%;
    justify-content: center;
    justify-items: center;
    letter-spacing: .1em;
    line-height: 1;
    padding: 0 12px;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    vertical-align: top;
    will-change: height;
    z-index: 20
}

.ui-mobile .nav-link {
    font-size: .9em
}

.ui-desktop.on-property .nav-link {
    padding: 0 8px
}

.ui-widescreen .nav-link {
    padding: 0 16px
}

.ui-widescreen.on-property .nav-link {
    padding: 0 12px
}

.nav-link:before {
    background: #cdcdcd;
    background: hsla(0, 0%, 80%, .25);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: scaleX(0);
    transform-origin: 50% 50%;
    transition: transform .25s ease-in;
    will-change: transform;
    z-index: -20
}

.old-ie .nav-link:before {
    display: none
}

.ui-mobile .links .nav-link, .ui-tablet .links .nav-link {
    height: 20%;
    width: 49%
}

.ui-mobile.landscape .links .nav-link, .ui-tablet.landscape .links .nav-link {
    height: 50%;
    width: 19%
}

.links .nav-link.wifi, .on-property .links .nav-link.reservation {
    display: none
}

.on-property .links .nav-link.wifi {
    display: inline-block
}

.no-touchevents .nav-link:hover {
    color: #000
}

.no-touchevents .nav-link.search.active:before, .no-touchevents .nav-link:hover:before {
    transform: none;
    transition: transform .25s ease-out
}

.section-amenities .nav-link.section-amenities, .section-calendar .nav-link.section-calendar, .section-dining .nav-link.section-dining, .section-events .nav-link.section-events, .section-gaming .nav-link.section-gaming, .section-meetings .nav-link.section-meetings, .section-nightlife .nav-link.section-nightlife, .section-resort .nav-link.section-resort, .section-spa .nav-link.section-spa {
    color: #007966
}

.nav-link span {
    display: block
}

.nav-link svg {
    height: 60%;
    width: 80%;
    will-change: opacity
}

.ui-desktop .nav-link svg, .ui-widescreen .nav-link svg {
    display: none
}

.ui-desktop .nav-link.logo svg, .ui-widescreen .nav-link.logo svg {
    display: inline-block
}

.ui-mobile .nav-link.menu-handle svg, .ui-tablet .nav-link.menu-handle svg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: opacity 125ms ease-in-out 125ms, transform .25s ease-in-out;
    will-change: opacity, transform
}

.ui-mobile.show-nav .nav-link.menu-handle svg, .ui-tablet.show-nav .nav-link.menu-handle svg {
    transform: rotate(1turn)
}

.ui-mobile .nav-link.menu-handle .ic_close_24px, .ui-mobile.show-nav .nav-link.menu-handle .ic_menu_24px, .ui-tablet .nav-link.menu-handle .ic_close_24px, .ui-tablet.show-nav .nav-link.menu-handle .ic_menu_24px {
    opacity: 0
}

.ui-mobile.show-nav .nav-link.menu-handle .ic_close_24px, .ui-tablet.show-nav .nav-link.menu-handle .ic_close_24px {
    opacity: 1
}

.nav-link.menu-handle .ic_close_24px {
    opacity: 0
}

.links .nav-link .ic_passport_club, .links .nav-link .ic_reservations {
    height: 45%
}

.nav-link.logo svg {
    height: 80%;
    opacity: 1;
    padding: 0 16px;
    top: 10%
}

.old-ie .nav-link.logo {
    background: #fff url(/library/images/global/logo.png) 0 0 no-repeat;
    background-size: 100% auto
}

.nav-link svg, .nav-link svg g, .nav-link svg path, .nav-link svg polygon, .nav-link svg polyline, .nav-link svg rect {
    fill: currentColor
}

.nav-link.logo {
    padding: 0 16px;
    width: 250px
}

.ui-desktop .nav-link.logo {
    width: 230px
}

.ui-desktop.on-property .nav-link.logo {
    width: 210px
}

.ui-mobile .nav-link.logo {
    width: 55%
}

.nav-link.logo.mobile-only {
    margin: 0 auto
}

.nav-link.search {
    color: inherit;
    cursor: pointer;
    padding: 32px 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 70
}

.ui-mobile .nav-link.search {
    padding: 0 8px 0 16px
}

.ui-desktop .nav-link.search {
    padding: 16px 24px 0
}

.nav-link.menu-handle {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    bottom: 8px;
    display: none;
    height: auto;
    left: 0;
    padding: 0;
    position: absolute;
    top: 8px;
    width: 64px;
    z-index: 70
}

.ui-mobile .nav-link.menu-handle, .ui-tablet .nav-link.menu-handle {
    display: block
}

.nav-link.search > a {
    position: static;
    text-decoration: none
}

#header-sticky .nav-link.search {
    color: inherit;
    margin-right: 72px
}

.ui-mobile #header-sticky .nav-link.search, .ui-tablet #header-sticky .nav-link.search {
    margin-right: 0
}

.ui-widescreen #header-sticky .nav-link.search {
    margin-right: -18px
}

.nav-link.search > a:hover {
    color: inherit
}

.nav-link.search .input {
    background-color: #cdcdcd;
    background-color: hsla(0, 0%, 80%, .25);
    bottom: 0;
    opacity: 0;
    position: absolute;
    right: 100%;
    top: 0 !important;
    transform: translateX(-16px);
    transition: opacity 125ms ease-in 125ms, visibility 1ms linear .25s, transform 125ms ease-in 125ms;
    visibility: hidden;
    width: 200px;
    will-change: opacity, transform
}

.ui-mobile .nav-link.search .input {
    background-color: #cdcdcd;
    bottom: auto;
    height: 64px;
    right: 0;
    top: 100% !important
}

.nav-link.search.active .input {
    opacity: 1;
    transform: none;
    transition: opacity 125ms ease-out, visibility 1ms linear, transform 125ms ease-out;
    visibility: visible
}

.nav-link.search .input input {
    border: 2px solid #d1d2d4;
    color: #000;
    color: rgba(0, 0, 0, .87);
    font-size: 1.2em;
    font-weight: 400;
    height: 32px;
    left: 16px;
    line-height: 32px;
    margin: -16px 0 0;
    opacity: 0;
    padding: 4px 8px;
    position: absolute;
    top: 50%;
    transition: opacity 125ms ease-in;
    vertical-align: middle;
    width: 170px
}

.old-ie .nav-link.search .input input {
    font-size: 16px
}

.ui-mobile .nav-link.search .input input {
    width: 170px
}

.nav-link.search.active .input input {
    opacity: 1;
    transition: opacity 125ms ease-out 125ms
}

.body-container {
    margin: 0 auto;
    padding: 96px 82px;
    position: relative;
    z-index: 5
}

.ui-mobile .body-container, .ui-tablet .body-container {
    padding-left: 0;
    padding-right: 0
}

.ui-mobile .body-container, .ui-mobile .content-page .body-container ~ .body-container {
    padding-bottom: 48px;
    padding-top: 0
}

.body-container ~ .body-container:nth-of-type(2n) {
    background-color: #ecefed
}

.body-container ~ .body-container.reservation-widget-static:nth-of-type(2n) {
    background-color: initial
}

.content-page .body-container.related-links {
    background: transparent;
    max-width: 800px;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0
}

.body-container.no-bg {
    padding: 0
}

.body-container.reservation-widget-static .viewport, html .body-container.reservation-widget-static {
    padding-bottom: 0;
    padding-top: 0
}

h1 + .body-container, h2 + .body-container {
    margin-top: 0;
    padding-top: 48px
}

.hide-content .body-container {
    opacity: 0
}

.page-link-group-copy {
    font-size: 1rem;
    margin: 0 auto;
    max-width: 1204px;
    padding-top: 32px
}

.ui-mobile .viewport + .page-link-group-copy {
    padding-top: 0
}

.body-container.page-links .viewport .body-container-scroller {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    display: grid;
    grid-template-columns:1fr 1fr 1fr
}

.content-page .body-container.page-links .viewport .body-container-scroller {
    grid-template-columns:1fr 1fr
}

html:not(.touchevents):not(.ui-mobile) .content-page.hotel-page .body-container.page-links .viewport .body-container-scroller {
    grid-template-columns:1fr 1fr 1fr
}

html.ui-mobile .body-container.page-links .viewport .body-container-scroller {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    grid-template-columns:1fr;
    padding-top: 0
}

.ui-tablet .body-container.page-links .viewport .body-container-scroller, .ui-tablet .hotel-page .body-container.page-links .viewport .body-container-scroller {
    grid-template-columns:1fr 1fr
}

.body-container.loading:before {
    content: "LOADING"
}

.content-page .body-container {
    margin-top: 0;
    padding-left: 32px;
    padding-right: 32px;
    padding-top: 0
}

.ui-mobile .content-page .body-container {
    padding-left: 0;
    padding-right: 0
}

.content-page .body-container ~ .body-container {
    padding-top: 48px
}

.content-page .body-container > h2, .content-page .body-container > h3 {
    max-width: 736px
}

.content-page .body-container > .viewport, .content-page .page-link-subnav > .viewport {
    max-width: 800px
}

.content-page.hotel-page .body-container > .viewport, .content-page.hotel-page .page-link-subnav > .viewport {
    max-width: 1488px
}

.ui-desktop .content-page .right-side-content ~ .body-container {
    padding-right: 192px
}

.ui-tablet .content-page .right-side-content + .body-container {
    margin-left: 0
}

.content-page.hotel-page .body-container ~ .body-container > .viewport, .content-page.hotel-tower-page .body-container ~ .body-container > .viewport, .content-page.image-16-9 .body-container ~ .body-container > .viewport {
    max-width: 1192px
}

.ui-tablet .content-page.hotel-page .body-container, .ui-tablet .content-page.hotel-tower-page .body-container, .ui-tablet .content-page.image-16-9 .body-container {
    border-width: 0
}

.ui-tablet .content-page.hotel-page .body-container {
    z-index: 7
}

.ui-tablet .content-page.hotel-page .body-container ~ .body-container {
    z-index: 5
}

.body-grid.property-description {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    display: grid;
    grid-template-columns:2fr 1fr;
    max-width: 1400px
}

.ui-widescreen .body-grid.property-description {
    grid-template-columns:2.5fr 1fr
}

.ui-tablet .body-grid.property-description {
    grid-template-columns:1.2fr 1fr
}

.ui-mobile .body-grid.property-description {
    grid-template-columns:1fr;
    margin-bottom: 36px
}

.body-container.property-description > div {
    background: #f5f5f5;
    border: 2px solid #7d7d7d;
    border-radius: 4px;
    padding: 16px
}

.body-container.property-description h2 {
    color: #000;
    margin-top: 0
}

.property-quick-compare {
    grid-column-gap: 16px;
    grid-row-gap: 8px;
    display: grid;
    grid-template-columns:3fr 1fr 1fr 1fr;
    padding: 16px;
    position: relative
}

.property-quick-compare:before {
    content: "Tower Quick Reference";
    font-size: 1.6em;
    grid-column: 1/5;
    padding: 8px 8px 16px;
    position: relative
}

.ui-tablet .property-quick-compare:before {
    content: "Quick Reference"
}

.property-quick-compare .data-title {
    color: rgba(0, 0, 0, .87);
    grid-column: 1/2
}

.property-quick-compare .data {
    color: inherit;
    grid-column: 2/5
}

.property-quick-compare .list-title {
    color: rgba(0, 0, 0, .87);
    grid-column: 1
}

.property-quick-compare .list {
    color: inherit;
    grid-column: 2/5
}

.property-quick-compare ul {
    list-style: none;
    margin: 0;
    padding: 0
}

.property-quick-compare li {
    padding: 4px 0;
    position: relative
}

.property-quick-compare li + li:after {
    background: #d1d2d4;
    content: "";
    height: 1px;
    left: 10%;
    position: absolute;
    right: 25%;
    top: 0
}

.property-quick-compare svg {
    height: 24px;
    vertical-align: middle;
    width: 24px
}

.property-quick-compare svg + svg {
    margin-left: -12px
}

.right-side-content {
    margin: 0 auto;
    max-width: 1600px;
    position: relative
}

.content-page .right-side-content {
    top: 34px
}

.hotel-page .right-side-content, .image-16-9 .right-side-content, .passport-offer .right-side-content {
    display: inline;
    position: static
}

.passport-rewards .right-side-content {
    float: right;
    position: static;
    width: 25%
}

.ui-mobile .passport-rewards .right-side-content {
    float: none;
    width: 100%
}

.right-side-content .body {
    background: #fff;
    background: hsla(0, 0%, 100%, .85);
    border-radius: 0 0 4px 4px;
    box-shadow: 0 0 8px rgba(0, 0, 0, .35);
    float: right;
    margin-bottom: 64px;
    margin-left: 32px;
    max-height: none;
    overflow: visible;
    padding: 24px;
    position: relative;
    right: 10px;
    text-align: center;
    width: 336px;
    z-index: 18
}

.homepage-template .right-side-content .body {
    border-radius: 4px;
    bottom: 12px;
    max-height: calc(100vh - 200px);
    overflow: hidden;
    padding: 2em;
    position: absolute;
    top: 100px
}

.artwork + .right-side-content .body {
    box-shadow: none
}

.ui-desktop .content-page .page-content .right-side-content .body, .ui-widescreen .content-page .page-content .right-side-content .body {
    bottom: auto;
    top: auto
}

.content-page.hotel-page .right-side-content .body, .content-page.passport-offer .right-side-content .body {
    margin-bottom: 0;
    margin-left: 0
}

.ui-mobile .right-side-content .body {
    background: transparent;
    box-shadow: none;
    float: none;
    margin: 48px 0 0;
    max-height: none;
    overflow: initial;
    padding: 16px;
    position: relative;
    right: auto;
    top: auto;
    width: auto
}

.ui-mobile .content-page .right-side-content .body, .ui-mobile .content-page h1 + .right-side-content .body {
    margin-top: 0
}

html .right-side-content h2 {
    font-size: 2em;
    margin-top: 1em;
    padding-left: 0;
    padding-right: 0
}

html.old-ie .right-side-content h2 {
    font-size: 28px
}

.right-side-content h2:first-child {
    margin-top: 0
}

.body-container .right-side-content .body {
    display: inline-block;
    position: static;
    text-align: left;
    width: 25%
}

.ui-mobile .body-container .right-side-content .body {
    display: block;
    float: none;
    margin: 0;
    padding: 12px 0 24px;
    width: auto
}

.hotel-page .body-container .right-side-content .body, .image-16-9 .body-container .right-side-content .body {
    padding-left: 24px;
    padding-top: 15%
}

.image-16-9 .body-container .right-side-content .body {
    margin-left: 0
}

.hotel-page.showing-hotel-detail-table .body-container .right-side-content .body {
    padding-top: 0
}

.ui-tablet .hotel-page.showing-hotel-detail-table .body-container .right-side-content .body {
    display: block;
    padding-left: 0;
    width: 100%
}

.image-16-9 .body-container .right-side-content .body, .passport-offer .body-container .right-side-content .body {
    padding-top: 8%
}

.ui-mobile .hotel-page .body-container .right-side-content .body, .ui-mobile .image-16-9 .body-container .right-side-content .body, .ui-mobile .passport-offer .body-container .right-side-content .body {
    padding-left: 0;
    padding-top: 4%
}

.right-side-content .btn.dining-reservation, .right-side-content .btn.menu-link, .right-side-content ul.menus {
    display: block;
    margin-top: 1.5em
}

.right-side-content .outlet-hours {
    margin-top: 2.5em
}

.right-side-content .interested-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.right-side-content .interested-list li {
    padding: 4px 0
}

.ui-mobile .body-columns {
    max-width: 100%
}

.hotel-page .body-columns, .image-16-9 .body-columns, .passport-offer .body-columns {
    max-width: 100%;
    padding-top: 4em
}

.ui-mobile .hotel-page .body-columns, .ui-mobile .image-16-9 .body-columns, .ui-mobile .passport-offer .body-columns {
    padding-top: 0
}

.page-links .item {
    --item-rows: 4;
    grid-row-gap: 0;
    background: #fff;
    border-radius: .25em;
    box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, .35);
    display: grid;
    font-size: 1rem;
    grid-auto-rows: auto;
    grid-row: span var(--item-rows);
    grid-template-rows:subgrid;
    position: relative
}

.page-links .item.item-highlight {
    background: -moz-linear-gradient(-45deg, rgba(0, 102, 121, .06) 0, rgba(0, 102, 121, .14) 100%);
    background: -webkit-linear-gradient(-45deg, rgba(0, 102, 121, .06), rgba(0, 102, 121, .14));
    background: linear-gradient(135deg, rgba(0, 102, 121, .06), rgba(0, 102, 121, .14));
    box-shadow: 2px 2px 12px 4px rgba(0, 102, 121, .37), 2px 2px 6px 2px rgba(0, 0, 0, .12);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0f006679", endColorstr="#24006679", GradientType=1)
}

.page-links .item.highlight {
    border-color: #d42127;
    border-color: rgba(0, 103, 87, .15);
    box-shadow: 0 0 24px rgba(0, 103, 87, .65), inset 0 0 12px rgba(0, 103, 87, .35)
}

.page-links .item.selected {
    background-color: #e6e6e6;
    background-color: rgba(0, 0, 0, .05);
    box-shadow: inset 0 0 12px rgba(0, 0, 0, .25)
}

.page-links .item.highlight.selected {
    box-shadow: 0 0 24px rgba(0, 103, 87, 0), inset 0 0 12px rgba(0, 103, 87, .25)
}

.old-ie .page-links .item {
    font-size: 14px
}

.scroll-ready .page-links .item {
    opacity: 0;
    -webkit-transform: translateY(64px);
    transform: translateY(64px);
    -webkit-transition: opacity .35s ease-in-out, -webkit-transform .35s ease-in-out;
    transition: opacity .35s ease-in-out, transform .35s ease-in-out
}

.scroll-ready.touchevents.ui-mobile .page-links .item, .scroll-ready.touchevents.ui-mobile .page-links .item.scrolled {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: none;
    transition: none
}

.scroll-ready .page-links .item.above-viewport {
    -webkit-transform: translateY(-64px);
    transform: translateY(-64px)
}

.scroll-ready .page-links .item.delay-1 {
    -webkit-transition-delay: 125ms !important;
    transition-delay: 125ms !important
}

.scroll-ready .page-links .item.delay-2 {
    -webkit-transition-delay: .25s !important;
    transition-delay: .25s !important
}

.scroll-ready .page-links .item.delay-3 {
    -webkit-transition-delay: 375ms !important;
    transition-delay: 375ms !important
}

.scroll-ready .page-links .item.delay-4 {
    -webkit-transition-delay: .5s !important;
    transition-delay: .5s !important
}

.scroll-ready .page-links .item.delay-5 {
    -webkit-transition-delay: 625ms !important;
    transition-delay: 625ms !important
}

.scroll-ready .page-links .item.delay-6 {
    -webkit-transition-delay: .75s !important;
    transition-delay: .75s !important
}

.scroll-ready .page-links .item.delay-7 {
    -webkit-transition-delay: 875ms !important;
    transition-delay: 875ms !important
}

.scroll-ready .page-links .item.delay-8 {
    -webkit-transition-delay: 1s !important;
    transition-delay: 1s !important
}

.scroll-ready .page-links .item.scrolled {
    -webkit-transition: opacity .35s ease-in-out, background-color .35s ease-in-out, box-shadow .35s ease-in-out, -webkit-transform .35s ease-in-out;
    transition: opacity .35s ease-in-out, background-color .35s ease-in-out, box-shadow .35s ease-in-out, transform .35s ease-in-out
}

.scroll-ready .page-links .item.scrolled, .ui-mobile .page-links .item, .ui-mobile.scroll-ready .page-links .item.scrolled {
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

html .page-links .item.hide, html.scroll-ready .page-links .item.hide, html.scroll-ready .page-links .item.scrolled.hide {
    display: none;
    position: absolute
}

.page-links .item.hidden, .scroll-ready .page-links .item.hidden, .scroll-ready .page-links .item.scrolled.hidden {
    display: none
}

.page-links .item .view {
    display: grid;
    grid-auto-rows: auto;
    grid-template-rows:min-content;
    height: 100%
}

.page-links .item > :first-child {
    border-radius: .25em .25em 0 0;
    overflow: hidden
}

.page-links .item > :last-child {
    border-radius: 0 0 .25em .25em;
    overflow: hidden
}

.page-links .item.selected:after {
    background: -moz-linear-gradient(top, transparent 0, rgba(0, 0, 0, .05) 100%);
    background: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, .05));
    background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, .05));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ffffff", endColorstr="#ffffff", GradientType=0)
}

.page-links .item.hotel:after, .ui-desktop .page-links .item:nth-child(n+4), .ui-mobile .page-links .item:after, .ui-tablet .page-links .item:nth-child(n+3), .ui-widescreen .page-links .item:nth-child(n+4) {
    display: none
}

.ui-desktop .page-links.show-all-items .item:nth-child(n+4), .ui-tablet .page-links.show-all-items .item:nth-child(n+3), .ui-widescreen .page-links.show-all-items .item:nth-child(n+4) {
    display: inherit
}

.page-links .page-link-view-more {
    display: block;
    font-size: 1rem;
    margin-top: 32px;
    position: relative
}

.page-links.item-count-0 .page-link-view-more, .page-links.item-count-1 .page-link-view-more, .page-links.item-count-2 .page-link-view-more, .page-links.show-all-items .page-link-view-more, .ui-desktop .page-links.item-count-3 .page-link-view-more, .ui-mobile .page-links .page-link-view-more, .ui-widescreen .page-links.item-count-3 .page-link-view-more {
    display: none
}

.page-links .item .img {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 0;
    padding-bottom: 53%;
    position: relative;
    width: 100%;
    z-index: 25
}

.page-links .item .img.low-profile {
    padding-bottom: 35%
}

.page-links .item.passport-offer .img, .page-links.related-events .item .img {
    padding-bottom: 36%
}

.page-links .item.no-image .img {
    display: none
}

.page-links .item h3 {
    border-bottom: 1px solid #d1d2d4;
    font-size: 1.4em;
    letter-spacing: .1em;
    margin: 12px 0 8px;
    overflow: auto;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 12px;
    text-align: left;
    text-transform: uppercase;
    word-break: normal;
    z-index: 20
}

.page-links .item.no-title h3, .page-links.no-titles .item h3 {
    display: none
}

.old-ie .page-links .item h3 {
    font-size: 20px
}

.ui-mobile .page-links .item h3 {
    height: auto;
    line-height: 1.3em;
    margin: 12px 0;
    white-space: normal
}

.cssgrid .page-links .item h3:after {
    display: none
}

.page-links .item .item-body {
    padding: 12px
}

.open-later, .open-now {
    color: #545454;
    float: right;
    font-size: .5em;
    padding-left: 1.2em;
    white-space: nowrap
}

.item-body .open-later, .item-body .open-now {
    display: block;
    float: none;
    font-size: .8em;
    margin-bottom: 16px;
    margin-top: -12px;
    padding-left: 0
}

.ui-mobile .open-later, .ui-mobile .open-now {
    margin-top: -14px
}

.old-ie .open-later, .old-ie .open-now {
    font-size: 7px;
    padding-left: 16px
}

.ui-mobile .open-later, .ui-mobile .open-now {
    display: block;
    padding-left: 0
}

h1 .open-later, h1 .open-now {
    font-family: proxima-nova, sans-serif;
    font-size: .4em;
    font-weight: 400
}

.old-ie h1 .open-later, .old-ie h1 .open-now {
    font-size: 17px
}

.hotel-widget {
    font-size: 1.2em
}

.hotel-widget input, .hotel-widget select {
    font-size: .8em
}

.hotel-widget .pepvalidate-v3.full-width p.full-width {
    padding-left: 0;
    padding-right: 0
}

html.ui-mobile .hotel-widget .pepvalidate-v3.full-width p, html.ui-mobile .hotel-widget .pepvalidate-v3.full-width p:nth-of-type(odd) {
    float: left;
    width: 50%
}

html .hotel-widget .pepvalidate-v3.full-width p:nth-of-type(2n) {
    padding-left: 16px
}

html .hotel-widget .pepvalidate-v3.full-width p:nth-of-type(odd) {
    padding-right: 16px
}

.ui-tablet .hotel-widget {
    grid-column-gap: 24px;
    display: grid;
    grid-template-columns:1fr 1fr;
    margin-top: 16px
}

.hotel-widget .check-in-out input {
    font-size: inherit;
    padding-right: 32px;
    text-align: center
}

.page-links .item .btn-wrapper .btn, .page-links .item .cta .btn, html .reserve-rates {
    display: block
}

.page-links .item .cta .btn, .page-links .item .cta .reserve-rates {
    margin-top: 16px
}

.page-links .item .cta {
    margin-bottom: 16px;
    padding: 0 12px;
    z-index: 25
}

.hotel-widget .strike, .page-links .item .cta .strike {
    font-size: .8em;
    text-decoration: line-through
}

.hotel-widget .price, .page-links .item .cta .price {
    position: relative;
    text-align: center;
    vertical-align: middle
}

.page-links .item .cta .price {
    font-size: 1.4em
}

.page-links .item .price .quote {
    display: block;
    font-size: .7em
}

.hotel-widget .price {
    margin: 24px 0
}

.hotel-widget .price .quote {
    display: block;
    font-size: .8em
}

.hotel-widget .rate, .page-links .item .cta .rate {
    color: #326f5f;
    vertical-align: middle;
    z-index: 2
}

.hotel-widget .less-emphasis, .page-links .item .less-emphasis {
    font-size: .7em
}

.page-links .item .rate-resort-fee, .page-links .item .rate-resort-fee-tax, .page-links .item .rate-subtotal, .page-links .item .rate-tax, .page-links .item .rate-total, .page-links .item .rate-tourism-surcharge {
    margin-top: -.5em
}

.hotel-widget .rate-calendar-widget .less-emphasis {
    opacity: 0
}

.hotel-widget .info, .page-links .item .cta .info {
    display: inline-block;
    height: 32px;
    padding: 4px;
    position: absolute;
    right: 0;
    top: 0;
    vertical-align: middle;
    width: 32px
}

.page-links.no-bodies .item .item-body {
    display: none
}

.reserve-rates {
    border: 2px solid #565759;
    color: #000;
    padding: 6px
}

.content-page .reserve-rates.menus {
    width: auto
}

.content-page .reserve-rates.menus:first-child {
    margin-top: 0
}

.content-page .reserve-rates.filters, .ui-tablet .content-page .reserve-rates {
    width: auto
}

.page-links.type-HOTEL .item .details {
    align-self: end;
    overflow: hidden;
    width: 100%
}

.page-links.type-HOTEL .item .details tr {
    border-bottom: none
}

.hotel-details td, .page-links .item .details td {
    background: #e4e4e4;
    border: 4px solid #fff;
    color: #000;
    color: rgba(0, 0, 0, .75);
    height: 50%;
    padding: 16px 0;
    text-align: center;
    width: 20%
}

.page-links .item .details td {
    border-bottom: 0
}

.hotel-details td {
    padding: 5% 0;
    width: 50%
}

.ui-mobile .hotel-details td {
    font-size: 1.2em
}

.hotel-details td:first-child, .page-links .item .details td:first-child {
    border-left: none
}

.hotel-details td:last-child, .page-links .item .details td:last-child {
    border-right: none
}

.page-links .item .btn-wrapper {
    grid-column-gap: 12px;
    grid-row-gap: 12px;
    align-self: end;
    display: grid;
    font-size: 15px;
    grid-template-columns:1fr;
    padding: 12px;
    word-break: normal
}

html:not(.ui-mobile):not(.ui-tablet) .page-links .item .btn-wrapper.btn-count-2, html:not(.ui-mobile):not(.ui-tablet) .page-links .item .btn-wrapper.btn-count-3 {
    grid-template-columns:1fr 1fr
}

.page-links .item .btn-wrapper.btn-count-3 .btn:nth-of-type(3) {
    grid-column: 1/-1
}

.page-links .item.no-btns > .btn-wrapper {
    display: none
}

.page-links .item tr + tr td.btn-wrapper {
    vertical-align: top
}

.hotel-details td.filter-match, .page-links .item td.filter-match {
    background-color: #006757;
    color: #fff
}

.page-link-filter {
    background-color: initial;
    margin-top: 5px;
    position: -webkit-sticky;
    position: sticky;
    top: 96px;
    z-index: 20
}

.resnet-page .page-link-filter {
    margin-top: 24px;
    position: relative;
    top: 0
}

.ui-mobile .page-link-filter {
    top: 60px
}

.ui-tablet .page-link-filter {
    top: 58px
}

.page-content .page-link-filter > .viewport {
    background-color: #fff;
    margin: 0 auto;
    opacity: 0;
    padding: 4px 12px 12px;
    -webkit-transform: translateY(-24px);
    transform: translateY(-24px);
    -webkit-transition: opacity .35s ease-out, visibility 1ms linear, -webkit-transform .35s ease-out;
    transition: opacity .35s ease-out, visibility 1ms linear, transform .35s ease-out;
    -webkit-transition-timing-function: var(--ease-in-quad);
    transition-timing-function: var(--ease-in-quad);
    visibility: hidden
}

.page-link-filter > .viewport > span {
    display: inline-block;
    font-size: 1.3em;
    margin: 0;
    padding: 0
}

.section-calendar.page-calendar .page-content .page-link-filter > .viewport {
    background: transparent
}

.ui-mobile .page-link-filter > .viewport {
    max-width: none;
    padding-bottom: 12px;
    padding-top: 16px;
    -webkit-transform: none;
    transform: none
}

.page-link-filter.initialized > .viewport {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    visibility: visible
}

.page-link-filter .shadow {
    left: 0;
    right: 0;
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out
}

.page-link-filter.sticky-stuck .shadow {
    opacity: .87
}

.page-link-filter .viewport .top-bar {
    height: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -5
}

.hotel-page .page-link-filter .viewport .top-bar, .page-link-filter:first-child .viewport .top-bar, .resnet-page .page-link-filter .viewport .top-bar, .ui-mobile .page-link-filter .viewport .top-bar {
    display: none
}

.page-link-filter .viewport .top-bar:after, .page-link-filter .viewport .top-bar:before {
    background-color: #a8a9ad;
    border-radius: 50%;
    content: "";
    height: 65px;
    left: 0;
    position: absolute;
    right: 0;
    top: -35px
}

.page-link-filter .viewport .top-bar:after {
    background: #fff;
    top: -28px
}

.page-link-filter .filter-title {
    color: #242021;
    left: 24px;
    letter-spacing: .3em;
    position: absolute;
    right: 24px;
    text-align: center;
    top: -23px;
    z-index: 5
}

.resnet-page .page-link-filter .filter-title {
    left: auto;
    position: relative;
    right: auto;
    top: 0
}

.hotel-page .page-link-filter .filter-title, .page-link-filter:first-child .filter-title {
    display: none
}

.ui-tablet .page-link-filter .filter-title {
    font-size: 1.3em;
    top: -21px
}

.ui-mobile .page-link-filter .filter-title {
    display: none
}

.ui-mobile .page-link-filter {
    max-width: none;
    top: -52px;
    width: 100%
}

.ui-mobile .page-link-filter.slide-down {
    top: 60px
}

.page-link-filter .mobile-cta {
    clear: both;
    grid-column: 1/3;
    margin-top: 4px;
    position: relative
}

.page-link-filter .mobile-cta .resort-page, .section-resort.page-resort .page-link-filter .mobile-cta .non-resort-page {
    visibility: hidden
}

.section-resort.page-resort .page-link-filter .mobile-cta .resort-page {
    visibility: visible
}

.page-link-filter .mobile-cta .btn.non-resort-page {
    display: block
}

.page-link-filter .mobile-cta .btn.resort-page {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.page-link-filter .mobile-cta .btn.resort-page .when-stuck, .page-link-filter.sticky-stuck .mobile-cta .btn.resort-page .when-unstuck {
    display: none
}

.page-link-filter.sticky-stuck .mobile-cta .btn.resort-page .when-stuck {
    display: inline-block
}

.ui-mobile.hide-ui .page-link-filter {
    top: 0
}

.page-link-subnav {
    color: #000;
    color: rgba(0, 0, 0, .87);
    margin: 0 auto;
    position: relative;
    text-align: center
}

.ui-mobile .page-link-subnav, .ui-tablet .page-link-subnav {
    margin-left: 2em;
    margin-right: 2em
}

.ui-mobile .page-link-subnav + .page-link-filter {
    margin-top: 0
}

.page-link-subnav .viewport {
    background: #fff;
    border: 2px solid #d1d2d4;
    display: inline-block;
    margin: 24px auto;
    padding: 12px 60px
}

.page-link-subnav .btn {
    display: inline-block;
    margin-left: 16px
}

.page-link-subnav .btn:first-child {
    margin-left: 0
}

.ui-mobile .page-link-subnav .btn {
    display: block;
    margin: 16px auto
}

.page-link-group-hash {
    position: relative;
    top: -96px
}

.ui-mobile .page-link-group-hash {
    height: 96px;
    top: 0
}

.page-link-subnav .viewport:before {
    content: "FILTER";
    content: "QUICK LINKS";
    display: block;
    letter-spacing: .1em;
    line-height: 1.5em;
    margin: 0 0 8px;
    position: relative
}

.page-link-filter .drop-down-overlay.calendar-wrapper {
    left: -5%;
    min-height: 300px;
    min-width: 650px;
    width: 52%
}

.ui-mobile .page-link-filter .drop-down-overlay.calendar-wrapper {
    min-width: inherit
}

.ui-tablet .page-link-filter .drop-down-overlay.calendar-wrapper {
    left: 0;
    width: 100%
}

.hotel-widget .drop-down-overlay.calendar-wrapper {
    left: auto;
    max-width: 100vw;
    min-height: 300px;
    right: 10%;
    width: 800px
}

.resnet-page .hotel-widget .drop-down-overlay.calendar-wrapper {
    top: 100px;
    width: 600px
}

.drop-down-overlay.calendar-wrapper svg {
    height: 100%;
    width: 100%
}

.ui-tablet .hotel-widget .drop-down-overlay.calendar-wrapper {
    right: auto;
    width: 94vw;
    width: 205%
}

.ui-mobile .hotel-widget .drop-down-overlay.calendar-wrapper, .ui-mobile .page-link-filter .drop-down-overlay.calendar-wrapper {
    left: 0;
    width: 100%
}

.page-link-filter .drop-down-overlay.calendar-wrapper.open-upward {
    -webkit-transform: translateY(-60px) translateY(-100%);
    transform: translateY(-60px) translateY(-100%)
}

.ui-mobile .page-link-filter .drop-down-overlay.calendar-wrapper.open-upward, .ui-tablet .page-link-filter .drop-down-overlay.calendar-wrapper.open-upward {
    -webkit-transform: none;
    transform: none
}

.page-link-filter .drop-down-overlay.calendar-wrapper.open-upward.hide {
    -webkit-transform: translateY(-24px) translateY(-60px) translateY(-100%);
    transform: translateY(-24px) translateY(-60px) translateY(-100%)
}

.ui-mobile .page-link-filter .drop-down-overlay.calendar-wrapper.open-upward.hide, .ui-tablet .page-link-filter .drop-down-overlay.calendar-wrapper.open-upward.hide {
    -webkit-transform: translateY(-24px) translateY(-60px);
    transform: translateY(-24px) translateY(-60px)
}

.hotel-widget .calendar-wrapper .btn-next, .hotel-widget .calendar-wrapper .btn-prev {
    height: 32px;
    left: 4px;
    position: absolute;
    top: 14px;
    -webkit-transition: opacity 132ms ease-in-out;
    transition: opacity 132ms ease-in-out;
    width: 32px;
    z-index: 8
}

.hotel-widget .calendar-wrapper .btn-next.hide, .hotel-widget .calendar-wrapper .btn-prev.hide {
    opacity: 0;
    -webkit-transition: opacity 132ms ease-in-out, visibility 1ms linear 132ms;
    transition: opacity 132ms ease-in-out, visibility 1ms linear 132ms;
    visibility: hidden
}

.hotel-widget .calendar-wrapper .btn-next {
    left: auto;
    right: 4px
}

.hotel-widget .calendar-wrapper .btn-next svg, .hotel-widget .calendar-wrapper .btn-prev svg {
    height: 100%;
    width: 100%
}

html.touchevents.ui-mobile .body-container.page-links .body-container-scroller {
    grid-column-gap: 24px;
    display: grid;
    grid-template-columns:repeat(200, 280px);
    grid-template-columns:repeat(200, 80vw);
    -webkit-transition-property: -webkit-transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    white-space: nowrap;
    will-change: transform
}

html.ui-mobile.touchevents body .body-container.page-links .viewport.item-count-1 .body-container-scroller, html.ui-mobile.touchevents body .body-container.page-links.item-count-1 .body-container-scroller {
    grid-template-columns:100%
}

.cssgrid.touchevents.ui-mobile #container .body-container-scroller:after {
    content: "";
    height: 1px;
    position: relative;
    width: 32px
}

.cssgrid.touchevents.ui-mobile #container .body-container.page-links .viewport.item-count-1 .body-container-scroller:after, .cssgrid.touchevents.ui-mobile #container .body-container.page-links.item-count-1 .body-container-scroller:after {
    display: none
}

html.touchevents.ui-mobile body .body-container.page-links > .viewport:before {
    background: rgba(0, 121, 102, .93) url(/library/html/templates/main-icon-arrow-left-white.svg) no-repeat 4px 2px;
    background-size: 32px 32px;
    border-radius: 16px 0 0 16px;
    box-shadow: 0 0 12px rgba(0, 0, 0, .54);
    content: "";
    height: 36px;
    position: absolute;
    right: -50%;
    top: 50%;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear .25s, -webkit-transform .25s ease-out;
    transition: opacity .25s ease-out, visibility 1ms linear .25s, transform .25s ease-out;
    width: 68%;
    will-change: opacity, transform, visibility;
    z-index: 20
}

html.touchevents.ui-mobile body .body-container.page-links.item-count-1 > .viewport:before, html.touchevents.ui-mobile body .body-container.page-links.scroll-disabled > .viewport:before, html.touchevents.ui-mobile body .body-container.page-links.scrolled > .viewport:before, html.touchevents.ui-mobile body .body-container.page-links > .viewport.item-count-1:before {
    opacity: 0;
    -webkit-transform: translateX(100%) scaleX(0);
    transform: translateX(100%) scaleX(0);
    visibility: hidden
}

html.touchevents.ui-mobile body .body-container.page-links .body-container-scroller .item {
    white-space: normal
}

html.touchevents.ui-mobile body .body-container.page-links .body-container-scroller .item.hide {
    display: none
}

html.touchevents.ui-mobile .page-links .viewport.item-count-1 .item, html.touchevents.ui-mobile .page-links.item-count-1 .item {
    width: 100% !important
}

.reserve-rates {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    border: 2px solid #d1d2d4;
    cursor: pointer;
    display: inline-block;
    height: 36px;
    line-height: 36px;
    list-style: none;
    min-width: 150px;
    padding: 0;
    position: relative;
    text-align: center;
    -webkit-transition: z-index 1ms linear .25s;
    transition: z-index 1ms linear .25s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    vertical-align: middle;
    z-index: 20
}

.page-links .item .reserve-rates.show {
    -webkit-transition: z-index 1ms linear 1ms;
    transition: z-index 1ms linear 1ms;
    z-index: 40
}

.no-touchevents .reserve-rates a:hover, .reserve-rates, .reserve-rates a {
    color: #000;
    color: rgba(0, 0, 0, .87);
    padding: 0
}

.reserve-rates .display, .reserve-rates a {
    letter-spacing: .1em;
    padding: 0 8px;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap
}

.reserve-rates a {
    display: block
}

.reserve-rates li {
    height: 36px
}

.reserve-rates .flyout {
    list-style: none;
    margin: -2px -2px 0;
    padding: 0;
    position: relative;
    -webkit-transform: translateY(-36px);
    transform: translateY(-36px)
}

.reserve-rates .flyout, html.no-touchevents .reserve-rates.hide .flyout {
    opacity: 0;
    -webkit-transition: opacity .25s ease-in, visibility 1ms linear .25s, -webkit-transform .25s ease-in;
    transition: opacity .25s ease-in, visibility 1ms linear .25s, transform .25s ease-in;
    visibility: hidden
}

.reserve-rates.show .flyout {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out 50ms, visibility 1ms linear 50ms, -webkit-transform .25s ease-out;
    transition: opacity .25s ease-out 50ms, visibility 1ms linear 50ms, transform .25s ease-out;
    visibility: visible
}

.reserve-rates ul {
    border: 2px solid #d1d2d4;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 10
}

.reserve-rates .flyout ul {
    border-top-width: 0
}

.reserve-rates .flyout li {
    border-bottom: 1px solid #d1d2d4;
    overflow: hidden;
    position: relative;
    text-overflow: ellipsis;
    white-space: nowrap;
    z-index: 15
}

.reserve-rates .flyout li:first-child {
    border-top: 1px solid #d1d2d4
}

.reserve-rates.menus .flyout li:first-child {
    border-top: none
}

.reserve-rates .flyout li:last-child {
    border-bottom: none
}

.reserve-rates .flyout li.special-offer a:before {
    border-left: 15px solid transparent;
    border-top: 15px solid #006757;
    content: "";
    height: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 0
}

.reserve-rates .flyout .count {
    color: #000;
    color: rgba(0, 0, 0, .54);
    font-size: .8em;
    position: absolute;
    right: 2px;
    top: -8px
}

.reserve-rates .flyout .disabled {
    border: none;
    height: 0;
    overflow: hidden
}

.reserve-rates .display:after, .reserve-rates .display:before, .reserve-rates .flyout li:after, .reserve-rates .flyout li:before, .reserve-rates .flyout ul:after, .reserve-rates .flyout ul:before {
    background: #fff;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -20
}

.reserve-rates .display:after, .reserve-rates .flyout li:after, .reserve-rates .flyout ul:after {
    background: transparent;
    background: rgba(0, 0, 0, .05);
    opacity: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform .25s ease-in, opacity .25s ease-in;
    transition: transform .25s ease-in, opacity .25s ease-in;
    will-change: opacity, transform;
    z-index: -10
}

.reserve-rates .flyout li:before {
    background: transparent
}

.reserve-rates .flyout .selected:before, .reserve-rates .flyout li:after {
    background: #fff
}

.no-touchevents .reserve-rates .display:hover:after, .no-touchevents .reserve-rates .flyout li:hover:after, .no-touchevents .reserve-rates:hover .flyout ul:after {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: -webkit-transform .25s ease-out, opacity .25s ease-out;
    transition: transform .25s ease-out, opacity .25s ease-out
}

.page-content {
    background: #fff;
    min-height: 100%;
    position: relative;
    word-break: break-word;
    z-index: 10
}

.ui-mobile .content-page .page-content, .ui-mobile .hotel-tower-page .page-content, .ui-mobile .page-content {
    margin-top: 0;
    padding-top: 0
}

.content-page .page-content, .hotel-page .page-content, .hotel-tower-page .page-content, .no-artwork .page-content {
    margin-top: 0;
    min-height: 100vh
}

.page-content table {
    word-break: normal
}

h2, html h1 {
    color: #007966;
    font-family: trajan-pro-3, serif;
    font-size: 2.2rem;
    font-weight: 400;
    line-height: 1.2em;
    margin: 32px auto 0;
    max-width: 1140px;
    overflow: hidden;
    padding: 0 0 .4em 1em;
    position: relative;
    text-align: center;
    text-overflow: ellipsis
}

.body-container + h1 {
    padding-top: 32px
}

html h1:first-child {
    margin-top: 0;
    padding-top: 32px
}

.ui-mobile h2, html.ui-mobile h1 {
    font-size: 2rem
}

.body-container ~ h2 {
    margin-top: 64px
}

.ui-mobile .page-link-group-hash + h2, html.ui-mobile .page-link-group-hash + h1 {
    margin-top: 0;
    padding-top: 0
}

.old-ie h2, html.old-ie h1 {
    font-size: 42px
}

.body-container > h1, .body-container > h2 {
    margin-top: 0;
    max-width: 1204px;
    padding-bottom: 32px
}

.ui-tablet h1.page-links, .ui-tablet h2.page-links {
    padding-left: 10%;
    padding-right: 10%
}

.ui-mobile h1, .ui-mobile h2 {
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 48px
}

h2.page-links {
    margin-top: 0;
    padding-bottom: 0;
    padding-left: 32px;
    padding-right: 32px
}

.content-page h1, .content-page h2 {
    max-width: 800px;
    padding-left: 24px
}

.ui-desktop .content-page .right-side-content ~ h2, .ui-tablet .content-page .right-side-content ~ h2 {
    right: 150px
}

.content-page.hotel-page h1, .content-page.hotel-page h2, .content-page.image-16-9 h1, .content-page.image-16-9 h2 {
    max-width: 1140px
}

.content-page.hotel-page h1, .content-page.hotel-page h2 {
    margin-top: 0
}

.content-page .body-container h1, .content-page .body-container h2 {
    padding-left: 0;
    padding-right: 0
}

h3 {
    font-size: 1.4em;
    font-weight: 400;
    margin: 0;
    padding: 0
}

.old-ie h3 {
    font-size: 20px
}

.ui-mobile h3 {
    clear: none
}

.body-container > h3 {
    color: #6a6a6c;
    font-size: 1rem;
    letter-spacing: .3em;
    margin: 0 auto;
    max-width: 1204px;
    padding: 0 32px;
    text-align: center
}

h4 {
    color: #737373;
    font-size: 1.2em;
    font-weight: 400;
    margin: 0;
    padding: 0
}

.old-ie h4 {
    font-size: 16px
}

.viewport {
    margin: 0 auto;
    padding: 16px 32px;
    position: relative
}

.body-container > .viewport, .page-link-subnav > .viewport {
    max-width: 1204px;
    padding: 0 32px
}

.page-link-group-copy > .viewport {
    padding-bottom: 0
}

.body-container.page-links > .viewport {
    padding-top: 64px
}

.ui-mobile .body-container > .viewport, .ui-tablet .body-container > .viewport {
    max-width: 100%
}

.ui-tablet .body-container.page-links .viewport {
    padding-left: 8%;
    padding-right: 8%
}

.ui-mobile .body-container.page-links .viewport {
    margin-left: 0;
    margin-right: 0
}

.touchevents.ui-mobile .body-container.page-links .viewport {
    overflow: hidden;
    overflow-x: scroll
}

.touchevents.ui-mobile.cssgrid .body-container.page-links .viewport {
    -webkit-overflow-scrolling: touch
}

.touchevents.ui-mobile .body-container.page-links.scrollable .viewport {
    overflow-x: scroll
}

.touchevents.ui-mobile .body-container.page-links.scrollable .viewport.item-count-1, .touchevents.ui-mobile .body-container.page-links.scrollable.item-count-1 .viewport {
    overflow-x: hidden
}

.content-page .viewport {
    padding: 24px 24px 32px
}

.ui-mobile .viewport.page-links {
    margin-left: 1rem;
    margin-right: 1rem
}

.ui-mobile .viewport {
    padding: 32px 16px
}

.ui-mobile .page-link-group-copy > .viewport {
    padding-bottom: 0
}

.ui-mobile .page-link-subnav .viewport {
    padding-bottom: 2em
}

.ui-mobile .content-page .viewport {
    padding-top: 1em
}

.scroller {
    overflow: auto
}

.floor-plan {
    max-width: 100%
}

.floorplan-viewport {
    background: #fff;
    opacity: 0;
    position: absolute;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transition: opacity .35s ease-in, visibility 1ms linear .35s, -webkit-transform .35s ease-in;
    transition: opacity .35s ease-in, visibility 1ms linear .35s, transform .35s ease-in;
    visibility: hidden;
    will-change: transform, opacity, visibility;
    z-index: 100
}

.floorplan-viewport.show {
    opacity: 1;
    -webkit-transition: opacity .5s ease-out, visibility 1ms linear 1ms, -webkit-transform .35s ease-out .15s;
    transition: opacity .5s ease-out, visibility 1ms linear 1ms, transform .35s ease-out .15s;
    visibility: visible
}

.floorplan-viewport .floorplan {
    background-color: #fff;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 2px;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition: opacity .35s ease-in 1ms;
    transition: opacity .35s ease-in 1ms;
    will-change: opacity
}

.floorplan-viewport.show .floorplan {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out .5s;
    transition: opacity .25s ease-out .5s
}

.floorplan-viewport .shadow {
    left: 0;
    right: 0;
    -webkit-transition: opacity .35s ease-in 1ms;
    transition: opacity .35s ease-in 1ms;
    will-change: opacity
}

.floorplan-viewport.show .shadow {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out .5s;
    transition: opacity .25s ease-out .5s
}

html .floorplan-viewport .close {
    height: 40px;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    z-index: 20
}

.floorplan-viewport .close svg {
    height: 100%;
    width: 100%
}

.floorplan-viewport .close svg path {
    -webkit-transition: fill .25s ease-in;
    transition: fill .25s ease-in
}

.floorplan-viewport .close:hover svg path {
    fill: #006757;
    -webkit-transition: fill .25s ease-out;
    transition: fill .25s ease-out
}

p, ol, ul {
    font-size: var(--normal-font-size);
    margin-bottom: 16px;
    line-height: 28px;
    text-align: start;
}

/*p {
    margin: 5px 0 15px
}*/

.page-message {
    background: -moz-linear-gradient(top, hsla(0, 0%, 89%, .35) 0, hsla(220, 3%, 83%, 0) 100%);
    background: -webkit-linear-gradient(top, hsla(0, 0%, 89%, .35), hsla(220, 3%, 83%, 0));
    background: linear-gradient(180deg, hsla(0, 0%, 89%, .35) 0, hsla(220, 3%, 83%, 0));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#59d1d2d4", endColorstr="#00e2e2e2", GradientType=0);
    padding: 1em 1.5em 0
}

.page-message + .page-message {
    margin-top: 1.5em
}

.disclaimer {
    font-size: .8em
}

.old-ie .disclaimer {
    font-size: 10px
}

.clearme {
    clear: both;
    float: none;
    height: 0;
    margin: 0;
    padding: 0;
    width: 0
}

.clearme:after {
    content: "&nbsp;";
    display: block;
    position: relative;
    visibility: hidden
}

table, th, td {
    border: 1px solid;
}

table {
    border-collapse: collapse;
    width: 100%
}

table tr {
    border-bottom: 1px solid #e0e0e0;
    -webkit-transition: background-color .25s ease-out;
    transition: background-color .25s ease-out
}

table tbody tr:nth-child(odd) {
    background-color: #f9f9f9
}

table tbody tr.no-zebra:nth-child(odd), table.no-zebra tbody tr:nth-child(odd) {
    background-color: initial
}

.no-touchevents table tbody tr:hover {
    background-color: #eee
}

table tbody tr.active {
    background-color: #f5f5f5
}

table th {
    color: #000;
    color: rgba(0, 0, 0, .54);
    font-weight: 400;
    padding: 16px;
    text-align: left
}

table th.numeric {
    text-align: right
}

table th a {
    color: #000;
    color: rgba(0, 0, 0, .54);
    text-decoration: none
}

table th.sort a {
    color: #000;
    color: rgba(0, 0, 0, .87);
    font-weight: 600
}

table th .material-icons {
    color: #000;
    color: rgba(0, 0, 0, .38);
    font-weight: 600
}

table td {
    color: #000;
    color: rgba(0, 0, 0, .87);
    padding: 16px;
    text-align: left
}

table td[align=right] {
    text-align: right
}

table td.sort {
    padding: 16px 16px 16px 36px
}

table td.numeric {
    text-align: right
}

table td.checkbox {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    cursor: pointer;
    width: 50px
}

table td.checkbox ~ td.checkbox {
    width: auto
}

table td.checkbox input[type=checkbox], table td.checkbox input[type=radio] {
    display: none
}

table td .material-icons {
    color: #000;
    color: rgba(0, 0, 0, .87)
}

table td.checkbox .material-icons {
    font-size: 24px
}

table td a:hover {
    color: #006757
}

table td.no-records-found {
    font-weight: 400;
    text-align: center
}

table td .ACTIVE {
    color: #4caf50
}

table td .DISABLED {
    color: #f44336
}

table td .WARNING {
    color: #ff9800
}

table .material-icons {
    vertical-align: bottom
}

table td .highlight {
    color: #006757
}

.table-pagination {
    color: #000;
    color: rgba(0, 0, 0, .54);
    font-size: .8em;
    padding: 16px;
    text-align: right
}

.table-pagination span {
    padding: 0 16px
}

.table-pagination span:first-child {
    padding-left: 0
}

.table-pagination span:last-child {
    padding-right: 0
}

.table-pagination .material-icons {
    color: inherit;
    margin-bottom: -2px;
    vertical-align: bottom
}

.no-touchevents .table-pagination .material-icons.disabled:hover, .table-pagination .material-icons.disabled {
    color: #000;
    color: rgba(0, 0, 0, .38);
    cursor: default
}

.no-touchevents .table-pagination .material-icons:hover {
    color: #006757
}

.table-pagination select {
    background-color: #fff;
    border: none;
    color: inherit;
    font-size: inherit
}

table th .hint {
    margin: 0 0 -3px 5px
}

.mobile-nav-arrow {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    height: 140px;
    left: 10px;
    margin: -70px 0 0;
    position: absolute;
    top: 50%;
    width: 100px;
    z-index: 18
}

.mobile-nav-arrow.right {
    background-position: -315px -68px;
    left: auto;
    right: 10px
}

.ui-desktop .mobile-nav-arrow, .ui-widescreen .mobile-nav-arrow {
    display: none
}

.mobile-nav-arrow:after, .mobile-nav-arrow:before {
    border-bottom: 40px solid transparent;
    border-right: 20px solid #fff;
    border-top: 40px solid transparent;
    content: "";
    height: 0;
    left: 0;
    margin-top: -30px;
    position: absolute;
    top: 50%;
    -webkit-transition: border-color .25s ease-in;
    transition: border-color .25s ease-in;
    width: 0;
    z-index: 20
}

.mobile-nav-arrow:before {
    border-bottom: 48px solid transparent;
    border-right: 24px solid #000;
    border-top: 48px solid transparent;
    margin-left: -2px;
    margin-right: -2px;
    margin-top: -38px;
    opacity: .37;
    z-index: 10
}

.mobile-nav-arrow.right:after, .mobile-nav-arrow.right:before {
    left: auto;
    right: 0
}

.mobile-nav-arrow.right:before {
    border-left: 24px solid #000;
    border-right: none
}

.mobile-nav-arrow.right:after {
    border-left: 20px solid #fff;
    border-right: none
}

.no-touchevnts .mobile-nav-arrow:hover:after {
    border-right-color: #000;
    -webkit-transition: border-color .25s ease-out;
    transition: border-color .25s ease-out
}

.no-touchevnts .mobile-nav-arrow.right:hover:after {
    border-left-color: #000
}

.artwork {
    height: 0;
    left: 0;
    overflow: hidden;
    padding-bottom: 30%;
    position: relative;
    top: 0;
    width: 100%;
    z-index: 2
}

.hotel-tower-page .artwork {
    border-radius: 2px;
    display: inline-block
}

.content-page.hotel-page .artwork, .content-page.image-16-9 .artwork, .content-page.passport-offer .artwork {
    display: inline-block;
    padding-bottom: 42%;
    vertical-align: top;
    width: 75%
}

.content-page.hotel-page .artwork {
    float: left
}

.ui-tablet .content-page.hotel-page .artwork {
    width: 100%
}

.content-page.passport-offer .artwork {
    padding-bottom: 26%
}

.ui-mobile .content-page .artwork, .ui-mobile .hotel-tower-page .artwork {
    padding-bottom: 56%
}

.artwork.loaded:before, .ui-mobile .artwork:after {
    display: none
}

.ui-mobile .artwork {
    float: none !important;
    padding-bottom: 56%;
    -webkit-transform: none !important;
    transform: none !important;
    width: 100% !important
}

#body .calendar-img {
    height: auto;
    margin-left: -15px;
    max-width: 980px;
    padding: 40px 0 0;
    width: auto
}

.ui-mobile #body .calendar-img, .ui-tablet #body .calendar-img {
    margin-left: 0;
    width: 100%
}

.artwork .content {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    -webkit-transition: opacity .75s ease-in-out, visibility 1ms linear .75s;
    transition: opacity .75s ease-in-out, visibility 1ms linear .75s;
    -webkit-transition-timing-function: var(--ease-in-out-quad);
    transition-timing-function: var(--ease-in-out-quad);
    visibility: hidden;
    width: 100%
}

.artwork .content.sizing-contain {
    background-size: contain
}

.passport-offer .artwork .content {
    background-size: contain !important
}

.artwork .content.active {
    opacity: 1;
    -webkit-transition-delay: 1ms, 1ms;
    transition-delay: 1ms, 1ms;
    visibility: visible
}

.artwork .video-btn-play-pause {
    bottom: 4%;
    left: 2%;
    position: absolute;
    -webkit-transition: -webkit-transform 375ms ease-out;
    transition: transform 375ms ease-out;
    -webkit-transition-timing-function: var(--ease-out-quad);
    transition-timing-function: var(--ease-out-quad);
    will-change: transform;
    z-index: 55
}

.artwork.video-not-supported .video-btn-play-pause {
    display: none
}

.ui-mobile .artwork .video-btn-play-pause {
    bottom: 0;
    left: 0
}

.artwork .caption.no-content.video-paused:not(.video-played):not(.video-autoplay) .video-btn-play-pause, .artwork .caption.video-must-manually-start.no-content:not(.video-playing) .video-btn-play-pause {
    -webkit-transform: translateX(-128px) translateX(48vw) translateY(128px) translateY(-16vw) scale(4) !important;
    transform: translateX(-128px) translateX(48vw) translateY(128px) translateY(-16vw) scale(4) !important
}

.ui-mobile .artwork .caption.no-content.video-paused:not(.video-played):not(.video-autoplay) .video-btn-play-pause, .ui-mobile .artwork .caption.video-must-manually-start.no-content:not(.video-playing) .video-btn-play-pause {
    -webkit-transform: translateX(-96px) translateX(50vw) translateY(96px) translateY(-26vw) scale(3) !important;
    transform: translateX(-96px) translateX(50vw) translateY(96px) translateY(-26vw) scale(3) !important
}

.ui-tablet .artwork .caption.no-content.video-paused:not(.video-played):not(.video-autoplay) .video-btn-play-pause, .ui-tablet .artwork .caption.video-must-manually-start.no-content:not(.video-playing) .video-btn-play-pause {
    -webkit-transform: translateX(-96px) translateX(50vw) translateY(96px) translateY(-18vw) scale(3) !important;
    transform: translateX(-96px) translateX(50vw) translateY(96px) translateY(-18vw) scale(3) !important
}

.artwork .video-btn {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    bottom: 0;
    color: #fff;
    color: hsla(0, 0%, 100%, .65);
    cursor: pointer;
    height: 64px;
    left: 0;
    padding: 12px;
    position: absolute;
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out;
    width: 64px;
    will-change: opacity;
    z-index: 10
}

.artwork .video-btn.hide {
    opacity: 0;
    -webkit-transform: scale(2);
    transform: scale(2);
    -webkit-transition: opacity .25s ease-in-out, visibility 1ms linear .25s, -webkit-transform .25s ease-in-out;
    transition: opacity .25s ease-in-out, visibility 1ms linear .25s, transform .25s ease-in-out;
    visibility: hidden;
    z-index: 5
}

.artwork .video-btn.video-loader {
    z-index: 40
}

.artwork .video-btn.video-loader .circular {
    -webkit-animation: loader-rotate 2s linear infinite;
    animation: loader-rotate 2s linear infinite;
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform-origin: center center;
    transform-origin: center center
}

.artwork .video-btn.video-loader.hide .circular {
    -webkit-animation: none;
    animation: none
}

.artwork .video-btn.video-loader .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    stroke-linecap: round;
    -webkit-animation: loader-dash-small 2.5s ease-in-out infinite, loader-color 10s ease-in-out infinite;
    animation: loader-dash-small 2.5s ease-in-out infinite, loader-color 10s ease-in-out infinite
}

.artwork .video-btn.video-loader.hide .path {
    -webkit-animation: none;
    animation: none
}

.artwork .video-btn svg {
    fill: currentColor;
    height: 100%;
    pointer-events: none;
    -webkit-transition: color .25s ease-in;
    transition: color .25s ease-in;
    width: 100%
}

.no-touchevents .artwork .video-btn:hover svg {
    color: #006757;
    -webkit-transition: color .25s ease-out;
    transition: color .25s ease-out
}

.artwork .volume-btn {
    background: hsla(0, 0%, 100%, .87);
    border-radius: 4px;
    color: #006757;
    font-size: .7em;
    padding: 12px;
    position: relative;
    text-decoration: none
}

.artwork.video-not-supported .volume-btn {
    display: none
}

.artwork .volume-btn.dock {
    position: absolute;
    z-index: 53
}

.artwork .volume-btn.dock.bottom-left {
    bottom: 4%;
    left: 2%
}

.artwork .video-btn + .volume-btn.dock.bottom-left {
    left: 128px
}

.artwork .volume-btn.dock.bottom-right {
    bottom: 42px;
    right: 32px
}

.ui-mobile .artwork .volume-btn.dock.bottom-right {
    bottom: 6px;
    right: 12px
}

.ui-mobile .artwork .volume-btn.dock.bottom-left {
    bottom: 0;
    right: 0
}

.artwork .volume-btn:after {
    color: #006757;
    content: " OFF";
    font-size: 1.2em;
    font-weight: 600;
    position: relative
}

.artwork .volume-btn.audio-on:after {
    content: " ON"
}

.artwork .content .video-player {
    background-color: initial;
    background-position: 50% 50%;
    background-size: cover;
    height: 100%;
    left: 0;
    padding: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.artwork .content iframe {
    background: transparent;
    height: 100% !important;
    left: 0 !important;
    opacity: 0;
    top: 0 !important;
    -webkit-transition: opacity .25s ease-in-out .25s;
    transition: opacity .25s ease-in-out .25s;
    width: 100% !important
}

.artwork .content .active iframe {
    opacity: 1
}

.ui-mobile .artwork .content.has-cap {
    height: 75%
}

.artwork .content.hide {
    display: none
}

.artwork .slide-caps {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.artwork .content .art {
    display: none;
    height: auto;
    position: relative;
    width: 100%
}

.artwork .slide-caps .caption {
    zoom: 1;
    color: #fff;
    font-size: 1em;
    opacity: 0;
    padding: 15px;
    position: absolute;
    -webkit-transition: opacity 425ms ease-in-out, visibility 1ms linear 425ms, background-color .25s ease-in-out, -webkit-transform .35s ease-in-out;
    transition: opacity 425ms ease-in-out, visibility 1ms linear 425ms, background-color .25s ease-in-out, transform .35s ease-in-out;
    visibility: hidden
}

.old-ie .artwork .slide-caps .caption {
    font-size: 14px
}

.ui-widescreen .artwork .slide-caps .caption {
    font-size: 18px
}

.artwork .slide-caps .caption.hide {
    visibility: hidden
}

.artwork .slide-caps .caption.active {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: opacity 425ms ease-in-out .5s, visibility 1ms linear .5s, -webkit-transform .35s ease-in-out;
    transition: opacity 425ms ease-in-out .5s, visibility 1ms linear .5s, transform .35s ease-in-out;
    visibility: visible
}

.artwork .slide-caps .caption .cap-viewport {
    position: relative
}

.artwork .slide-caps .caption.cap-overlay, .artwork .slide-caps .caption.cap-overlay-light, .artwork .slide-caps .caption.cap-overlay-transparent {
    bottom: 0;
    left: 0;
    right: 0;
    top: 0
}

.artwork .slide-caps .caption.cap-overlay .cap-viewport, .artwork .slide-caps .caption.cap-overlay-light .cap-viewport, .artwork .slide-caps .caption.cap-overlay-transparent .cap-viewport {
    height: 250px;
    left: 50%;
    margin: -125px 0 0 -400px;
    max-height: 100%;
    max-width: 100%;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 800px;
    z-index: 50
}

.ui-mobile .artwork .slide-caps .caption.cap-overlay .cap-viewport, .ui-mobile .artwork .slide-caps .caption.cap-overlay-light .cap-viewport, .ui-mobile .artwork .slide-caps .caption.cap-overlay-transparent .cap-viewport {
    left: 0;
    margin: 0;
    padding: 16px;
    top: 25%;
    width: 100%
}

.artwork .slide-caps .caption.cap-overlay .overlay, .artwork .slide-caps .caption.cap-overlay-light .overlay, .artwork .slide-caps .caption.cap-overlay-transparent .overlay {
    background-color: initial;
    background-color: rgba(0, 0, 0, .5);
    margin: 0;
    z-index: 30
}

.artwork .slide-caps .caption.cap-overlay-light .overlay {
    background-color: initial;
    background-color: rgba(0, 0, 0, .35)
}

.artwork .slide-caps .caption.cap-overlay-transparent .overlay {
    background-color: initial
}

.artwork .slide-caps .caption.cap-overlay .btn.call-to-action, .artwork .slide-caps .caption.cap-overlay-light .btn.call-to-action, .artwork .slide-caps .caption.cap-overlay-transparent .btn.call-to-action {
    color: #fff;
    padding: 16px 32px;
    text-decoration: none
}

.artwork .slide-caps .caption.cap-overlay .btn.call-to-action:before, .artwork .slide-caps .caption.cap-overlay-light .btn.call-to-action:before, .artwork .slide-caps .caption.cap-overlay-transparent .btn.call-to-action:before {
    display: none
}

.artwork .slide-caps .caption .disclaimer {
    font-size: 10px
}

.artwork .slide-caps .caption h3 {
    font-family: trajan-pro-3, serif;
    font-size: 2.2em
}

.old-ie .artwork .slide-caps .caption h3 {
    font-size: 30px
}

.artwork .slide-caps .caption img {
    width: 100%
}

.ui-mobile .artwork .slide-caps .caption img {
    float: left;
    height: 85px;
    margin-top: -10px;
    padding-right: 10px;
    width: auto
}

.artwork .slide-caps .caption .overlay {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 99
}

.artwork .thumb-dots {
    bottom: 84px;
    height: 0;
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    -webkit-transition: bottom 425ms ease-in-out .5s;
    transition: bottom 425ms ease-in-out .5s;
    -webkit-transition-timing-function: var(--ease-in-out-quad);
    transition-timing-function: var(--ease-in-out-quad);
    z-index: 2
}

.hotel-page .artwork .thumb-dots, .no-reservation-widget .artwork .thumb-dots {
    bottom: 48px
}

.ui-mobile .artwork .thumb-dots {
    background: none;
    display: none
}

.artwork.homepage .thumb-dots {
    bottom: 265px
}

.ui-mobile .artwork.homepage .thumb-dots {
    bottom: 15px
}

.ui-mobile .artwork .thumb-dots.has-cap {
    bottom: 26%
}

.artwork .thumb-dots .dot {
    cursor: pointer;
    display: inline-block;
    height: 32px;
    line-height: 32px;
    margin-right: 16px;
    position: relative;
    text-align: center;
    -webkit-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    -webkit-transition: -webkit-transform .75s ease-in-out;
    transition: transform .75s ease-in-out;
    vertical-align: middle;
    width: 32px
}

.artwork .thumb-dots .dot.active {
    -webkit-transform: none;
    transform: none
}

.artwork .thumb-dots .dot .text {
    color: #006757;
    display: none;
    opacity: 0;
    position: relative;
    -webkit-transition: opacity .75s ease-in-out;
    transition: opacity .75s ease-in-out;
    will-change: opacity;
    z-index: 1
}

.artwork .thumb-dots .dot.active .text {
    opacity: 1
}

.artwork .thumb-dots .dot svg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    -webkit-transform: rotateY(-180deg) rotate(-90deg);
    transform: rotateY(-180deg) rotate(-90deg);
    width: 100%
}

.artwork .thumb-dots .dot svg circle {
    stroke-dasharray: 76px;
    stroke-dashoffset: 0;
    stroke-linecap: round;
    stroke-width: 4px;
    stroke: #006757;
    fill: #fff;
    -webkit-animation: artwork-countdown-reset .75s ease-in-out 1 forwards;
    animation: artwork-countdown-reset .75s ease-in-out 1 forwards
}

.artwork .thumb-dots .dot.active svg circle {
    -webkit-animation: artwork-countdown var(--dot-animation-duration, 5s) .75s linear 1 forwards;
    animation: artwork-countdown var(--dot-animation-duration, 5s) .75s linear 1 forwards
}

.artwork .thumb-dots .dot.active.reset svg circle {
    -webkit-animation: artwork-countdown-reset 125ms ease-in-out 1 forwards;
    animation: artwork-countdown-reset 125ms ease-in-out 1 forwards
}

.artwork .thumb-dots .dot.video.active svg circle {
    -webkit-animation: none;
    animation: none;
    -webkit-transition: stroke-dashoffset 1s linear;
    transition: stroke-dashoffset 1s linear
}

@-webkit-keyframes artwork-countdown {
    0% {
        stroke-dashoffset: 0
    }
    to {
        stroke-dashoffset: 76px
    }
}

@keyframes artwork-countdown {
    0% {
        stroke-dashoffset: 0
    }
    to {
        stroke-dashoffset: 76px
    }
}

@-webkit-keyframes artwork-countdown-reset {
    0% {
        stroke: #fff
    }
    to {
        stroke: #6c6b6a;
        stroke: rgba(0, 0, 0, .54)
    }
}

@keyframes artwork-countdown-reset {
    0% {
        stroke: #fff
    }
    to {
        stroke: #6c6b6a;
        stroke: rgba(0, 0, 0, .54)
    }
}

.artwork .thumb-dots .dot-overlay {
    background: #fff;
    border-radius: 2px;
    bottom: 48px;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, .54);
    cursor: pointer;
    height: 116px;
    left: -78px;
    opacity: 0;
    position: absolute;
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px);
    -webkit-transition: opacity .25s ease-in, visibility 1ms linear .25s, -webkit-transform .25s ease-in;
    transition: opacity .25s ease-in, visibility 1ms linear .25s, transform .25s ease-in;
    visibility: hidden;
    width: 198px
}

.no-csstransitions.no-touchevents .artwork .thumb-dots .hover .dot-overlay, .no-touchevents .artwork .thumb-dots .hover:not(.active) .dot-overlay {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms, -webkit-transform .25s ease-out;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms, transform .25s ease-out;
    visibility: visible
}

.no-touchevents .artwork .thumb-dots .active.hover .dot-overlay {
    opacity: 0;
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px);
    visibility: hidden
}

.touchevents .artwork .thumb-dots .dot-overlay {
    display: none !important
}

.artwork .thumb-dots .dot-overlay img {
    height: 108px;
    left: 4px;
    position: absolute;
    top: 4px;
    width: 190px
}

#gallery-overlay .loader, .artwork .loader {
    height: 100px;
    left: 50%;
    margin: -50px 0 0 -26px;
    opacity: 0;
    position: absolute;
    top: 50%;
    visibility: hidden;
    width: 52px;
    z-index: -100
}

.scroll-ready #gallery-overlay .loader, .scroll-ready .artwork .loader {
    opacity: 1;
    -webkit-transition: opacity .5s ease-in-out 1s, visibility 1ms linear 1ms;
    transition: opacity .5s ease-in-out 1s, visibility 1ms linear 1ms;
    visibility: visible
}

.scroll-ready .artwork.loaded .loader {
    display: none;
    opacity: 0;
    -webkit-transition: opacity .35s ease-in-out, visibility 1ms linear .35s;
    transition: opacity .35s ease-in-out, visibility 1ms linear .35s;
    visibility: hidden
}

.peppermill-loader {
    height: 80%;
    left: 0;
    overflow: visible;
    position: absolute;
    top: 0;
    width: 100%
}

.peppermill-loader .circle {
    -webkit-animation: peppermill-loader-circle 1.5s ease-in-out 1ms infinite forwards;
    animation: peppermill-loader-circle 1.5s ease-in-out 1ms infinite forwards
}

.peppermill-loader .circle.circle-2 {
    -webkit-animation-delay: .25s;
    animation-delay: .25s
}

.peppermill-loader .circle.circle-3 {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.peppermill-loader .circle.circle-4 {
    -webkit-animation-delay: .75s;
    animation-delay: .75s
}

.peppermill-loader .circle.circle-5 {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

@-webkit-keyframes peppermill-loader-circle {
    0% {
        opacity: 0
    }
    50% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@keyframes peppermill-loader-circle {
    0% {
        opacity: 0
    }
    50% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

.vimeo-embed {
    clear: both;
    height: 0;
    margin: 0 auto;
    padding-bottom: 56.5%;
    position: relative;
    width: 100%
}

.vimeo-embed iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.related-events-frame {
    background: transparent;
    border: none;
    min-height: 530px;
    width: 100%
}

.ui-mobile .related-events-frame {
    min-height: 350px
}

dl dt {
    font-size: 1.3em;
    font-style: italic;
    margin: 8px 0
}

hr {
    background: #565759;
    border: none;
    height: 2px;
    margin: 2.5em 0;
    padding: 0
}

.review-link {
    background: #fff url(/library/images/global/bg-content.png) top repeat-x;
    border: 2px solid #272524;
    margin-top: 35px;
    padding: 10px
}

.review-link .actual-link {
    float: left;
    margin: 10px 10px 10px 0
}

.review-link h3 {
    top: 0 !important
}

.in-page-img {
    border-radius: 20px;
    height: auto;
    max-width: 100%;
    padding: 1.5em;
    width: 480px
}

html.ui-mobile .in-page-img {
    width: 100%
}

.clearme + p > .in-page-img {
    padding-top: .2em
}

.in-page-img.x-small {
    width: 120px
}

.in-page-img.small {
    width: 240px
}

.in-page-img.medium {
    width: 360px
}

.in-page-img.x-large {
    width: 700px
}

.in-page-img.xx-large {
    width: 100%
}

.in-page-img.left {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    float: left;
    padding-left: 0
}

.in-page-img.right {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    float: right;
    padding-right: 0
}

#tinymce {
    height: auto;
    padding: 15px 15px 100px !important
}

.iframe-wrapper {
    background: #fff;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    -webkit-transform: translateY(250px);
    transform: translateY(250px);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transition: opacity .25s ease-out, -webkit-transform .25s ease-out;
    transition: opacity .25s ease-out, transform .25s ease-out;
    width: 100%;
    z-index: 15
}

.ui-mobile .iframe-wrapper {
    height: 100%;
    margin-top: 0
}

.iframe-wrapper-show .iframe-wrapper {
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.iframe-wrapper iframe {
    background: transparent;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 3
}

.iframe-wrapper .close {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    height: 40px;
    position: absolute;
    right: 12px;
    top: 60px;
    -webkit-transition: background-color .25s ease-out;
    transition: background-color .25s ease-out;
    width: 40px;
    z-index: 6
}

.iframe-wrapper .close svg {
    height: 100%;
    width: 100%
}

.iframe-wrapper .close svg path {
    -webkit-transition: fill .25s ease-in;
    transition: fill .25s ease-in
}

.iframe-wrapper .close:hover svg path {
    fill: #006757;
    -webkit-transition: fill .25s ease-out;
    transition: fill .25s ease-out
}

.iframe-wrapper .loader {
    height: 100px;
    left: 50%;
    margin: -26px 0 0 -50px;
    position: absolute;
    top: 50%;
    -webkit-transition: opacity .5s ease-in-out, visibility 1ms linear 1ms;
    transition: opacity .5s ease-in-out, visibility 1ms linear 1ms;
    width: 52px
}

.iframe-wrapper.loaded .loader {
    opacity: 0;
    -webkit-transition: opacity .5s ease-in-out, visibility 1ms linear .5s;
    transition: opacity .5s ease-in-out, visibility 1ms linear .5s;
    visibility: hidden
}

[data-tooltip]:not([data-tooltip=""]) {
    position: relative
}

[data-tooltip]:not([data-tooltip=""]):after {
    background-color: #616161;
    background-color: rgba(97, 97, 97, .9);
    border-radius: 2px;
    bottom: 100%;
    color: #fff;
    color: hsla(0, 0%, 100%, .95);
    content: attr(data-tooltip);
    cursor: default;
    font-size: .8rem;
    font-weight: 400;
    line-height: 1.25rem;
    margin-bottom: 14px;
    max-width: 480px;
    opacity: 0;
    padding: 10px 14px;
    position: absolute;
    right: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: opacity .15s ease-in 75ms, visibility 1ms linear 225ms, -webkit-transform .15s ease-in 75ms;
    transition: opacity .15s ease-in 75ms, visibility 1ms linear 225ms, transform .15s ease-in 75ms;
    visibility: hidden;
    white-space: nowrap
}

[data-tooltip].multi-line:after {
    white-space: normal
}

[data-tooltip].tooltip-opaque:not([data-tooltip=""]):after {
    background-color: #616161
}

[data-tooltip].tooltip-dock-bottom:after {
    bottom: auto;
    margin-bottom: 0;
    margin-top: 14px;
    top: 100%;
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px)
}

[data-tooltip].tooltip-dock-left:after {
    bottom: auto;
    margin-bottom: 0;
    margin-right: 14px;
    right: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-12px) scale(0);
    transform: translateY(-50%) translateX(-12px) scale(0);
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%
}

[data-tooltip].tooltip-dock-right:after {
    bottom: auto;
    left: 100%;
    margin-bottom: 0;
    margin-left: 0;
    right: auto;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(12px) scale(0);
    transform: translateY(-50%) translateX(12px) scale(0);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%
}

[data-tooltip].tooltip-dock-center:after {
    bottom: auto;
    left: 50%;
    margin-bottom: 0;
    margin-left: 0;
    right: auto;
    top: 100%;
    -webkit-transform: translateX(-50%) translateY(12px) scale(0);
    transform: translateX(-50%) translateY(12px) scale(0);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0
}

.no-touchevents [data-tooltip]:hover:after, [data-tooltip]:active:after, [data-tooltip]:focus:after {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: opacity .15s ease-out, visibility 1ms linear 1ms, -webkit-transform .15s ease-out;
    transition: opacity .15s ease-out, visibility 1ms linear 1ms, transform .15s ease-out;
    visibility: visible
}

.no-touchevents [data-tooltip].tooltip-dock-left:hover:after, [data-tooltip].tooltip-dock-left:active:after, [data-tooltip].tooltip-dock-left:focus:after {
    -webkit-transform: translateY(-50%) translateX(-12px);
    transform: translateY(-50%) translateX(-12px)
}

.no-touchevents [data-tooltip].tooltip-dock-right:hover:after, [data-tooltip].tooltip-dock-right:active:after, [data-tooltip].tooltip-dock-right:focus:after {
    -webkit-transform: translateY(-50%) translateX(12px);
    transform: translateY(-50%) translateX(12px)
}

.no-touchevents [data-tooltip].tooltip-dock-center:hover:after, [data-tooltip].tooltip-dock-center:active:after, [data-tooltip].tooltip-dock-center:focus:after {
    -webkit-transform: translateX(-50%) translateY(12px);
    transform: translateX(-50%) translateY(12px)
}

#notifications {
    bottom: 16px;
    left: 25%;
    position: fixed;
    right: 25%;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: padding-bottom .25s ease-out, -webkit-transform .25s ease-out;
    transition: padding-bottom .25s ease-out, transform .25s ease-out;
    z-index: 40
}

.ui-tablet #notifications {
    left: 15%;
    right: 15%
}

.ui-mobile #notifications {
    left: 16px;
    right: 16px
}

#notifications.show {
    -webkit-transform: none;
    transform: none
}

.footer-fixed #notifications.show, .footer-showing #notifications.show {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px)
}

#notifications table, #notifications td, #notifications tr {
    border: none
}

.no-touchevents #notifications table tbody tr:hover {
    background-color: initial
}

#notifications table td {
    color: inherit;
    padding: 0
}

#notifications .viewport {
    font-size: 0;
    padding: 0;
    text-align: center
}

#notifications .notification {
    background-color: #fff;
    border-radius: 2px;
    box-shadow: 0 0 8px rgba(0, 0, 0, .54);
    color: #323232;
    display: none;
    font-size: 1rem;
    height: 0;
    max-width: 100%;
    padding: 0;
    position: relative;
    text-align: center;
    -webkit-transition: color .25s ease-in-out;
    transition: color .25s ease-in-out;
    z-index: 10
}

.ui-mobile #notifications .notification {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.old-ie #notifications .notification {
    font-size: 14px
}

.notification .action-cell {
    padding-left: 36px;
    white-space: nowrap
}

#notifications .notification.active {
    color: #000;
    display: inline-block;
    height: auto;
    padding: 6px 24px;
    -webkit-transition: color .5s ease-in-out;
    transition: color .5s ease-in-out;
    z-index: 20
}

#notifications .notification .action {
    color: #006757;
    float: right;
    padding: 8px;
    position: relative;
    text-decoration: none;
    text-transform: uppercase
}

#notifications .notification .material-icons {
    display: none;
    margin-bottom: -2px;
    text-decoration: none;
    vertical-align: bottom
}

#notifications .count {
    background-color: #fff;
    border-radius: 50%;
    bottom: 100%;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .35);
    font-size: .8em;
    height: 24px;
    line-height: 24px;
    margin: 0 -12px -12px 0;
    opacity: 0;
    position: absolute;
    right: 100%;
    text-align: center;
    vertical-align: middle;
    width: 24px
}

.old-ie #notifications .count {
    font-size: 10px
}

#notifications .count.show {
    opacity: 1
}

#notifications .count.bounce {
    -webkit-animation: notification-count-bounce .5s ease-out forwards;
    animation: notification-count-bounce .5s ease-out forwards
}

@-webkit-keyframes notification-count-bounce {
    0% {
        opacity: 0;
        -webkit-transform: scale(0)
    }
    33% {
        opacity: 1;
        -webkit-transform: scale(1.5)
    }
    66% {
        -webkit-transform: scale(.5)
    }
    to {
        -webkit-transform: scale(1)
    }
}

@keyframes notification-count-bounce {
    0% {
        opacity: 0;
        transform: scale(0)
    }
    33% {
        opacity: 1;
        transform: scale(1.25)
    }
    66% {
        transform: scale(.75)
    }
    to {
        transform: scale(1)
    }
}

.col {
    display: inline-block;
    float: left;
    vertical-align: top
}

.col-2 {
    width: 50%
}

.col-2:nth-child(odd) {
    padding-right: 3%;
    width: 47%
}

.col-2:nth-child(2n) {
    padding-left: 3%;
    width: 47%
}

.ui-mobile .col-2, .ui-mobile .col-2:nth-child(2n), .ui-mobile .col-2:nth-child(odd) {
    padding-left: 16px;
    padding-right: 16px;
    width: 100%
}

.col-3 {
    width: 33%
}

.col-3:nth-child(3n) {
    width: 34%
}

.col-4 {
    width: 25%
}

.amenity-list {
    list-style: disc
}

.amenity-list li.title {
    padding-top: 1.4em
}

.amenity-list li.title:first-child {
    padding-top: 0
}

.img-comp-group {
    color: #000;
    display: block;
    float: left;
    height: 0;
    padding-bottom: 50%;
    position: relative;
    width: 50%
}

#container .image-comp-group {
    font-size: 0
}

.img-comp-group.right {
    color: #000;
    float: right
}

.img-comp-group.full-width, .ui-mobile .img-comp-group {
    float: none;
    margin: 32px 0;
    padding-bottom: 100%;
    width: 100%
}

.img-comp-group.full-width {
    padding-bottom: 75%
}

.img-comp-group.block {
    clear: both;
    color: #000;
    float: none
}

.img-comp-group .comp-img {
    background-position: 50% 50%;
    background-size: cover;
    border-radius: 6px;
    color: #000;
    display: inline-block;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 4%
}

.img-comp-group.right .comp-img {
    left: 8%
}

.img-comp-group.full-width .comp-img, .ui-mobile .img-comp-group .comp-img {
    left: 4%
}

.img-comp-group .comp-img:nth-last-child(2):first-child, .img-comp-group .comp-img:nth-last-child(2):first-child + .comp-img {
    height: 92%;
    width: 44%
}

.img-comp-group .comp-img:nth-last-child(2):first-child + .comp-img {
    left: 48%
}

.img-comp-group.right .comp-img:nth-last-child(2):first-child + .comp-img {
    left: 56%
}

.img-comp-group.full-width .comp-img:nth-last-child(2):first-child + .comp-img, .ui-mobile .img-comp-group .comp-img:nth-last-child(2):first-child + .comp-img {
    left: 52%
}

.img-comp-group .comp-img:nth-last-child(3):first-child, .img-comp-group .comp-img:nth-last-child(3):first-child ~ .comp-img {
    height: 44%;
    width: 44%
}

.img-comp-group .comp-img:nth-last-child(3):first-child + .comp-img {
    left: 48%
}

.img-comp-group.right .comp-img:nth-last-child(3):first-child + .comp-img {
    left: 56%
}

.img-comp-group.full-width .comp-img:nth-last-child(3):first-child + .comp-img, .ui-mobile .img-comp-group .comp-img:nth-last-child(3):first-child + .comp-img {
    left: 52%
}

.img-comp-group .comp-img:nth-last-child(3):first-child + .comp-img + .comp-img {
    top: 52%;
    width: 92%
}

.img-comp-group.group-left .comp-img:nth-last-child(3):first-child, .img-comp-group.group-left .comp-img:nth-last-child(3):first-child ~ .comp-img {
    height: 44%;
    width: 44%
}

.img-comp-group.group-left .comp-img:nth-last-child(3):first-child + .comp-img {
    top: 52%
}

.img-comp-group.right.group-left .comp-img:nth-last-child(3):first-child + .comp-img {
    left: 56%
}

.img-comp-group.full-width.group-left .comp-img:nth-last-child(3):first-child + .comp-img, .ui-mobile .img-comp-group.group-left .comp-img:nth-last-child(3):first-child + .comp-img {
    left: 4%
}

.img-comp-group.group-left .comp-img:nth-last-child(3):first-child + .comp-img + .comp-img {
    height: 92%;
    left: 52%;
    top: 4%
}

.img-comp-group .comp-img:nth-last-child(4):first-child, .img-comp-group .comp-img:nth-last-child(4):first-child ~ .comp-img {
    height: 44%;
    width: 44%
}

.img-comp-group .comp-img:nth-last-child(4):first-child + .comp-img {
    left: 48%
}

.img-comp-group.right .comp-img:nth-last-child(4):first-child + .comp-img {
    left: 56%
}

.img-comp-group.full-width .comp-img:nth-last-child(4):first-child + .comp-img, .ui-mobile .img-comp-group .comp-img:nth-last-child(4):first-child + .comp-img {
    left: 52%
}

.img-comp-group .comp-img:nth-last-child(4):first-child + .comp-img + .comp-img {
    top: 52%
}

.img-comp-group .comp-img:nth-last-child(4):first-child + .comp-img + .comp-img + .comp-img {
    left: 48%;
    top: 52%
}

.img-comp-group.right .comp-img:nth-last-child(4):first-child + .comp-img + .comp-img + .comp-img {
    left: 56%
}

.img-comp-group.full-width .comp-img:nth-last-child(4):first-child + .comp-img + .comp-img + .comp-img, .ui-mobile .img-comp-group .comp-img:nth-last-child(4):first-child + .comp-img + .comp-img + .comp-img {
    left: 52%
}

.body-container .pepvalidate-v3 .content-block {
    position: relative
}

.body-container .pepvalidate-v3 .content-block ~ .content-block {
    margin-top: 64px
}

html .pepvalidate-v3.show-steps .content-block:before {
    left: -48px;
    top: 48px
}

.pepvalidate-v3.show-steps .content-block:after {
    background: -moz-linear-gradient(top, hsla(0, 0%, 62%, 0) 0, #9e9e9e 100%);
    background: -webkit-linear-gradient(top, hsla(0, 0%, 62%, 0), #9e9e9e);
    background: linear-gradient(180deg, hsla(0, 0%, 62%, 0) 0, #9e9e9e);
    content: "";
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#009e9e9e", endColorstr="#9e9e9e", GradientType=0);
    height: 48px;
    left: -48px;
    position: absolute;
    top: 0;
    -webkit-transition: background .25s ease-in;
    transition: background .25s ease-in;
    width: 2px
}

html .pepvalidate-v3.show-steps .content-block.step-complete:after, html .pepvalidate-v3.show-steps.all-steps-complete .content-block:after {
    background: -moz-linear-gradient(top, rgba(0, 103, 87, 0) 0, #006757 100%);
    background: -webkit-linear-gradient(top, rgba(0, 103, 87, 0), #006757);
    background: linear-gradient(180deg, rgba(0, 103, 87, 0) 0, #006757);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00006757", endColorstr="#006757", GradientType=0)
}

.pepvalidate-v3.show-steps .content-block[data-step=done]:after {
    background: -moz-linear-gradient(bottom, hsla(0, 0%, 62%, 0) 0, #9e9e9e 100%);
    background: -webkit-linear-gradient(bottom, hsla(0, 0%, 62%, 0), #9e9e9e);
    background: linear-gradient(0deg, hsla(0, 0%, 62%, 0) 0, #9e9e9e);
    bottom: 0;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#9e9e9e", endColorstr="#009e9e9e", GradientType=0);
    top: auto
}

.pepvalidate-v3.show-steps .content-step.step-complete + .content-block:after {
    background: -moz-linear-gradient(top, rgba(63, 81, 181, 0) 0, #3f51b5 100%);
    background: -webkit-linear-gradient(top, rgba(63, 81, 181, 0), #3f51b5);
    background: linear-gradient(180deg, rgba(63, 81, 181, 0) 0, #3f51b5);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#003f51b5", endColorstr="#3f51b5", GradientType=0)
}

.pepvalidate-v3.show-steps .content-step.step-complete + .content-block[data-step=done]:after, .pepvalidate-v3.show-steps.all-steps-complete .content-step + .content-block[data-step=done]:after {
    background: -moz-linear-gradient(bottom, rgba(63, 81, 181, 0) 0, #3f51b5 100%);
    background: -webkit-linear-gradient(bottom, rgba(63, 81, 181, 0), #3f51b5);
    background: linear-gradient(0deg, rgba(63, 81, 181, 0) 0, #3f51b5);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3f51b5", endColorstr="#003f51b5", GradientType=0)
}

html .pepvalidate-v3.show-steps .content-step[data-step]:before {
    border-color: #fff;
    left: -84px
}

.body-container ~ .body-container:nth-of-type(2n) .pepvalidate-v3.show-steps .content-step[data-step]:before {
    border-color: #ecefed
}

html .pepvalidate-v3.show-steps .content-step[data-step][data-step-desc]:after {
    background-color: #fff;
    border-color: #fff;
    left: -98px
}

html .pepvalidate-v3.show-steps .content-block:before {
    bottom: -48px
}

html .pepvalidate-v3.show-steps .content-block[data-step=done]:before {
    bottom: 48px
}

html.ui-mobile .page-link-filter .pepvalidate-v3.full-width p:nth-of-type(2n) {
    padding-left: 0
}

html.ui-mobile .page-link-filter .pepvalidate-v3.full-width p:nth-of-type(odd) {
    padding-right: 0
}

html body .page-link-filter .pepvalidate-v3 p {
    font-size: 16px
}

html body .page-link-filter .pepvalidate-v3.full-width p.full-width {
    clear: both;
    margin: 0;
    padding: 0
}

.page-link-filter.date .pepvalidate-v3 {
    grid-column-gap: 12px;
    display: grid;
    grid-template-columns:1fr 1fr 1fr 1fr .75fr;
    margin: 0 auto;
    max-width: 1140px
}

.resnet-page .page-link-filter.date .pepvalidate-v3 {
    grid-template-columns:1fr 1fr
}

.page-link-filter.date .pepvalidate-v3 .reservation-iata {
    display: none
}

.ui-mobile .page-link-filter.date .pepvalidate-v3 {
    grid-template-columns:1fr 1fr
}

html.ui-mobile body .page-link-filter .pepvalidate-v3.full-width p.submit-wrapper {
    display: none
}

html.ui-mobile body .page-link-filter .pepvalidate-v3.full-width p input {
    position: relative
}

html .pepvalidate-v3.show-steps .content-step.icon[data-step=clear]:before {
    background-position: -91.5px 7px;
    content: ""
}

html .pepvalidate-v3.show-steps .content-block.step-complete:before, html .pepvalidate-v3.show-steps .content-step.step-complete + .content-block:before, html .pepvalidate-v3.show-steps .content-step.step-complete[data-step]:before, html .pepvalidate-v3.show-steps.all-steps-complete .content-block:before {
    background-color: #006757
}

html .pepvalidate-v3.show-steps .content-step.step-complete + .content-block:after {
    background: -moz-linear-gradient(top, rgba(0, 103, 87, 0) 0, #006757 100%);
    background: -webkit-linear-gradient(top, rgba(0, 103, 87, 0), #006757);
    background: linear-gradient(180deg, rgba(0, 103, 87, 0) 0, #006757);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00006757", endColorstr="#006757", GradientType=0)
}

html .pepvalidate-v3.show-steps .content-step.step-complete + .content-block[data-step=done]:after {
    background: -moz-linear-gradient(bottom, rgba(0, 103, 87, 0) 0, #006757 100%);
    background: -webkit-linear-gradient(bottom, rgba(0, 103, 87, 0), #006757);
    background: linear-gradient(0deg, rgba(0, 103, 87, 0) 0, #006757);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#006757", endColorstr="#00006757", GradientType=0)
}

html .pepvalidate-v3.show-steps .content-step.step-complete[data-step]:before {
    background-position: -60px 8px
}

.hotel-widget .pepvalidate-v3 label, .page-link-filter .pepvalidate-v3 label, .pepvalidate-v3 label {
    height: 60px
}

.table-pagination .material-icons {
    background-position: 50% 50%;
    background-size: contain;
    display: inline-block;
    height: 24px;
    width: 24px
}

table th.sort svg {
    height: 24px;
    margin-bottom: 2px;
    padding-right: 4px;
    vertical-align: middle;
    width: 24px
}

.table-pagination .material-icons.chevron_left {
    background-image: url(/library/images/tables/chevron_left.png)
}

.table-pagination .material-icons.chevron_right {
    background-image: url(/library/images/tables/chevron_right.png)
}

.no-touchevents .table-pagination .material-icons.disabled:hover, .table-pagination .material-icons.disabled {
    opacity: .38
}

#google_translate_element {
    display: inline-block;
    padding: 0
}

#google_translate_element .goog-te-gadget {
    font-size: inherit
}

#google_translate_element .goog-te-gadget-simple {
    background: transparent;
    border: none;
    font-size: inherit;
    padding: 8px
}

#google_translate_element .goog-te-gadget-icon {
    display: none
}

html .goog-te-banner-frame {
    bottom: 0;
    top: auto;
    -webkit-transition: bottom .25s ease-in-out;
    transition: bottom .25s ease-in-out
}

html.footer-showing .goog-te-banner-frame {
    bottom: 50px
}

#live-chat-btn {
    background: transparent url(/library/images/global/live-chat-button.png) 0 0 no-repeat;
    bottom: 100px;
    height: 149px;
    opacity: 0;
    opacity: .7;
    position: fixed;
    right: 0;
    -webkit-transform: translateY(36px);
    transform: translateY(36px);
    -webkit-transform: none;
    transform: none;
    -webkit-transition: opacity 2s ease-in-out, -webkit-transform 1333ms ease-in-out;
    transition: opacity 2s ease-in-out, transform 1333ms ease-in-out;
    visibility: hidden;
    visibility: visible;
    width: 37px;
    will-change: opacity, transform;
    z-index: 25
}

.no-touchevents #live-chat-btn:hover, .touchevents #live-chat-btn {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out;
    transition: opacity .25s ease-out
}

html #live-chat-btn.live-chat-hide {
    opacity: 0;
    -webkit-transform: translateY(36px);
    transform: translateY(36px);
    visibility: hidden
}

#overlay {
    background-color: rgba(0, 0, 0, .75);
    bottom: 0;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    -webkit-transition: opacity .25s ease-in, visibility 1ms linear .25s, background-color .25s ease-in .25s;
    transition: opacity .25s ease-in, visibility 1ms linear .25s, background-color .25s ease-in .25s;
    visibility: hidden;
    z-index: 35
}

.show-overlay #overlay {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color .25s ease-out 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color .25s ease-out 1ms;
    visibility: visible
}

.clear-overlay #overlay {
    background-color: transparent;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color 0ms linear 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms, background-color 0ms linear 1ms
}

.loader {
    height: 100px;
    left: 50%;
    margin: -50px 0 0 -50px;
    opacity: 0;
    position: absolute;
    top: 50%;
    -webkit-transition: opacity .25s ease-in, visibility 1ms linear .25s;
    transition: opacity .25s ease-in, visibility 1ms linear .25s;
    visibility: hidden;
    width: 100px
}

.show-loading-spinner .loader {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    visibility: visible
}

.loader .circular {
    -webkit-animation: loader-rotate 2s linear infinite;
    animation: loader-rotate 2s linear infinite;
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform-origin: center center;
    transform-origin: center center
}

.loader .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    stroke-linecap: round;
    -webkit-animation: loader-dash 1.5s ease-in-out infinite, loader-color 6s ease-in-out infinite;
    animation: loader-dash 1.5s ease-in-out infinite, loader-color 6s ease-in-out infinite
}

@-webkit-keyframes loader-rotate {
    to {
        transform: rotate(1turn)
    }
}

@keyframes loader-rotate {
    to {
        transform: rotate(1turn)
    }
}

@-webkit-keyframes loader-dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0
    }
    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px
    }
    to {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px
    }
}

@keyframes loader-dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0
    }
    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px
    }
    to {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px
    }
}

@-webkit-keyframes loader-dash-small {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0
    }
    50% {
        stroke-dasharray: 67, 200;
        stroke-dashoffset: -23px
    }
    to {
        stroke-dasharray: 67, 200;
        stroke-dashoffset: -93px
    }
}

@keyframes loader-dash-small {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0
    }
    50% {
        stroke-dasharray: 67, 200;
        stroke-dashoffset: -23px
    }
    to {
        stroke-dasharray: 67, 200;
        stroke-dashoffset: -93px
    }
}

@-webkit-keyframes loader-color {
    0%, to {
        stroke: #d62d20
    }
    40% {
        stroke: #0057e7
    }
    66% {
        stroke: #008744
    }
    80%, 90% {
        stroke: #ffa700
    }
}

@keyframes loader-color {
    0%, to {
        stroke: #d62d20
    }
    40% {
        stroke: #0057e7
    }
    66% {
        stroke: #008744
    }
    80%, 90% {
        stroke: #ffa700
    }
}

.filter-control .filter {
    float: left;
    padding: 0 4px;
    white-space: nowrap
}

.filter-control .filter:first-child {
    padding-left: 0
}

.filter-control .filter .count {
    margin-left: 4px;
    position: relative
}

.drop-down-handle, .drop-down-overlay .filter-checkbox {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    display: inline-block;
    height: 24px;
    margin: -6px 0 0 16px;
    overflow: visible;
    position: relative;
    vertical-align: middle;
    width: 24px
}

html .drop-down-overlay .filter-checkbox {
    color: #d1d2d4;
    margin: -4px 8px 0 0
}

html .drop-down-overlay .filter-checkbox svg {
    color: inherit
}

.drop-down-overlay li.active .filter-checkbox {
    color: #000
}

.drop-down-handle svg, .drop-down-overlay .filter-checkbox svg {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out;
    width: 100%;
    z-index: 56
}

html .drop-down-handle .close, html .drop-down-handle.active .open, html .drop-down-overlay .active .filter-checkbox .unchecked, html .drop-down-overlay .filter-checkbox .checked {
    opacity: 0;
    -webkit-transform: scale(2);
    transform: scale(2);
    -webkit-transition: opacity .25s ease-in-out, visibility 1ms linear .25s, -webkit-transform .25s ease-in-out;
    transition: opacity .25s ease-in-out, visibility 1ms linear .25s, transform .25s ease-in-out;
    visibility: hidden;
    z-index: 43
}

.drop-down-handle.active .close, .drop-down-overlay .active .filter-checkbox .checked {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: opacity .35s ease-in-out;
    transition: opacity .35s ease-in-out;
    visibility: visible;
    z-index: 56
}

.drop-down-overlay {
    -webkit-overflow-scrolling: touch;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 0 24px rgba(0, 0, 0, .54);
    left: 43%;
    max-height: 2000px;
    overflow: hidden;
    position: absolute;
    text-align: left;
    top: 100%;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: max-height 1ms linear, opacity .25s ease-out, -webkit-transform .25s ease-out;
    transition: max-height 1ms linear, opacity .25s ease-out, transform .25s ease-out;
    -webkit-transition-timing-function: var(--ease-out-quad);
    transition-timing-function: var(--ease-out-quad);
    width: 200px;
    z-index: 60
}

.landscape .page-link-filter .drop-down-overlay .view, .page-link-filter .drop-down-overlay .view {
    max-height: 60vh
}

.drop-down-overlay.filter-selection-drop-down {
    left: auto;
    right: 1%;
    top: 85%;
    width: 450px
}

.filter-area.filter-calendar .drop-down-overlay.filter-selection-drop-down {
    max-width: 95vw;
    width: 540px
}

.page-link-filter .pepvalidate-v3 .drop-down-overlay.filter-selection-drop-down {
    top: 65px
}

.ui-mobile .page-link-filter .pepvalidate-v3 .drop-down-overlay.filter-selection-drop-down {
    top: 100%
}

.drop-down-overlay.filter-selection-drop-down .view {
    overflow: auto;
    position: relative
}

.ui-mobile .drop-down-overlay.filter-selection-drop-down {
    left: 3%;
    right: auto;
    width: 94%
}

.drop-down-overlay.hide {
    opacity: 0;
    -webkit-transform: translateY(24px);
    transform: translateY(24px);
    -webkit-transition: max-height 1ms linear .5s, opacity .25s ease-out .1s, visibility 1ms linear .35s, z-index 1ms linear .35s, -webkit-transform .25s ease-out .1s;
    transition: max-height 1ms linear .5s, opacity .25s ease-out .1s, visibility 1ms linear .35s, z-index 1ms linear .35s, transform .25s ease-out .1s;
    -webkit-transition-timing-function: var(--ease-out-quad);
    transition-timing-function: var(--ease-out-quad);
    visibility: hidden;
    z-index: -100
}

.ui-mobile .drop-down-overlay.hide {
    z-index: 60
}

.drop-down-overlay .btn-close {
    border-radius: inherit;
    font-size: .8em;
    position: absolute;
    right: 0;
    top: 0
}

.drop-down-overlay ul {
    float: left;
    list-style: none;
    margin: 0;
    padding: 0;
    -webkit-transition: background-color .25s ease-in, opacity .1s ease-out .25s;
    transition: background-color .25s ease-in, opacity .1s ease-out .25s;
    -webkit-transition-timing-function: var(--ease-in-quad);
    transition-timing-function: var(--ease-in-quad);
    width: 50%
}

.ui-mobile .drop-down-overlay ul {
    width: 100%
}

.ui-mobile .drop-down-overlay ul:last-child {
    padding-bottom: 22px
}

.drop-down-overlay.hide ul {
    opacity: 0;
    -webkit-transition: background-color .25s ease-in, opacity .1s ease-out;
    transition: background-color .25s ease-in, opacity .1s ease-out;
    -webkit-transition-timing-function: var(--ease-in-quad);
    transition-timing-function: var(--ease-in-quad)
}

.ui-mobile .drop-down-overlay.hide ul {
    opacity: 1
}

.drop-down-overlay .filter-selection-drop-down:nth-child(odd) {
    border-right: 4px solid #ededed
}

.drop-down-overlay .filter-selection-drop-down:nth-child(3), .drop-down-overlay .filter-selection-drop-down:nth-child(4) {
    border-top: 4px solid #ededed
}

.drop-down-overlay li {
    background-color: #fff;
    border-top: none;
    cursor: pointer;
    height: auto;
    overflow: hidden;
    padding: 12px;
    position: relative;
    text-overflow: ellipsis;
    white-space: nowrap
}

.ui-mobile .drop-down-overlay li {
    display: none
}

.ui-mobile .drop-down-overlay li.show, .ui-mobile .drop-down-overlay li.title {
    display: list-item
}

.no-touchevents .drop-down-overlay li:hover {
    background-color: #eee;
    -webkit-transition: background-color .25s ease-out, opacity .1s ease-out;
    transition: background-color .25s ease-out, opacity .1s ease-out;
    -webkit-transition-timing-function: var(--ease-out-quad);
    transition-timing-function: var(--ease-out-quad)
}

.ui-mobile .drop-down-overlay li.title:after {
    content: "+";
    padding-left: 12px;
    position: relative
}

.ui-mobile .drop-down-overlay li.title.show:after {
    content: "-"
}

.no-touchevents .drop-down-overlay li.title:hover {
    background-color: inherit
}

.drop-down-overlay li.active {
    background-color: #bfd9d5
}

.drop-down-overlay li.title {
    cursor: default;
    font-size: 1.2em;
    margin: 0;
    padding: 22px 12px 0
}

.drop-down-overlay li.title:first-child {
    padding-top: 12px
}

.ui-mobile .drop-down-overlay li.title:first-child {
    padding-top: 22px
}

.page-link-filter .filter {
    margin-right: 12px
}

.page-link-filter .filter-area {
    float: right;
    margin: 32px 12px 0 0;
    text-align: right
}

.ui-mobile .page-link-filter .filter-area {
    margin-top: 0
}

.page-link-filter h3 {
    display: inline-block;
    font-size: 1.3em
}

.ui-mobile .page-link-filter h3 {
    font-size: 1.2em
}

.page-link-filter .filter-area h3 {
    cursor: pointer
}

.page-link-filter .drop-down-handle {
    height: 24px;
    margin: -6px 0 0;
    width: 24px
}

.page-link-filter .filter-count {
    font-size: .8em;
    margin-top: 4px
}

.cols {
    display: grid;
    grid-template-columns:1fr 1fr;
    list-style: none;
    margin: 0;
    padding: 0
}

.ui-mobile .cols {
    display: block
}

.cols.cols-3 .col-full-width {
    grid-column: 1/4
}

.cols.cols-3 {
    grid-template-columns:1fr 1fr 1fr
}

.cols.cols-2-1 {
    grid-template-columns:2fr 1fr
}

.no-grid .cols {
    font-size: 0
}

.cols li {
    width: 100%
}

.no-grid .cols li {
    width: auto
}

.sticky-polyfill:after, .sticky-polyfill:before {
    content: "";
    display: table
}

.old-ie .datepicker--cell, .old-ie .datepicker--day-name {
    display: inline-block;
    width: 14%
}

.old-ie .datepicker--cells, .old-ie .datepicker--days-names, .old-ie .datepicker--nav {
    display: inline-block;
    width: 100%
}

.old-ie .datepicker--nav-action, .old-ie .datepicker--nav-title {
    display: inline-block
}

.hotel-widget table.rate-calendar tbody {
    font-size: .8em
}

.ui-mobile table.rate-calendar {
    grid-row: 1
}

.hotel-widget .calendar-wrapper .rate-calendar-widget .viewport, .page-link-filter .calendar-wrapper .rate-calendar-widget .viewport {
    grid-column-gap: 12px;
    grid-row-gap: 12px;
    display: grid;
    font-size: .9rem;
    grid-template-columns:1fr 1fr;
    padding: 12px;
    position: relative
}

.hotel-widget .calendar-wrapper .rate-calendar-widget.widget-has-footer, .page-link-filter .calendar-wrapper .rate-calendar-widget.widget-has-footer {
    padding-bottom: 48px
}

.ui-mobile .hotel-widget .calendar-wrapper .rate-calendar-widget .viewport, .ui-mobile .page-link-filter .calendar-wrapper .rate-calendar-widget .viewport {
    grid-template-columns:repeat(12, 100%)
}

.hotel-widget .calendar-wrapper .rate-calendar-widget .rate-calendar.hide, .page-link-filter .calendar-wrapper .rate-calendar-widget .rate-calendar.hide {
    display: none
}

.calendar-wrapper .footer {
    bottom: 12px;
    height: 24px;
    left: 12px;
    position: absolute;
    right: 12px
}

.calendar-wrapper .footer .close {
    float: right
}

.calendar-wrapper .footer .legend-item {
    display: none;
    position: relative
}

.calendar-wrapper .footer .legend-item + .legend-item {
    margin-left: 32px
}

.calendar-wrapper .rate-calendar-widget.show-special-offers .footer .legend-item {
    display: inline-block
}

.calendar-wrapper .footer .legend-item:before {
    content: "";
    display: inline-block;
    height: 24px;
    margin-right: 4px;
    position: relative;
    vertical-align: middle;
    width: 24px
}

.rate-calendar th.title {
    font-size: 1.5em
}

.rate-calendar td {
    background-color: #9e9e9e;
    color: #fff;
    cursor: pointer;
    padding: 8px 4px;
    position: relative;
    text-align: center;
    vertical-align: middle;
    width: 14%
}

.rate-calendar td.blank {
    cursor: default
}

.ui-mobile .rate-calendar td {
    padding: 8px 6px
}

.rate-calendar td:first-child {
    border-left: none
}

.rate-calendar td:last-child {
    border-right: none
}

.rate-calendar td.special-offer, .rate-calendar td.special-offer.day-highlight.day-check-out {
    background: linear-gradient(180deg, #d52228 8%, #9e9e9e 0, #9e9e9e)
}

.rate-calendar-widget .footer .special-offer:before {
    background: linear-gradient(180deg, #d52228 15%, #9e9e9e 0, #9e9e9e)
}

.no-touchevents .rate-calendar td.day-highlight.day-check-out:hover, .no-touchevents .rate-calendar td:hover {
    background-color: hsla(0, 0%, 62%, .87)
}

.no-touchevents .rate-calendar td:hover + td.day-check-in .day-marker:before {
    border-left-color: #a9a9a9
}

.no-touchevents .rate-calendar td:hover + td.day-check-out .day-marker:before {
    border-left-color: #1f8878
}

.no-touchevents .rate-calendar td.special-offer.day-highlight.day-check-out:hover, .no-touchevents .rate-calendar td.special-offer:hover {
    background: linear-gradient(180deg, #d52228 16%, hsla(0, 0%, 62%, .87) 0, hsla(0, 0%, 62%, .87))
}

.no-touchevents .rate-calendar td.no-data:hover {
    background-color: #9e9e9e
}

.no-touchevents .rate-calendar td.blank:hover {
    background-color: #eee
}

.rate-calendar .day-marker {
    display: none;
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 15px
}

.rate-calendar td.day-check-in .day-marker, .rate-calendar td.day-check-out .day-marker {
    display: block
}

.rate-calendar td.special-offer + td.day-check-in .day-marker:after, .rate-calendar td.special-offer.day-check-out .day-marker:after {
    background-color: #d52228;
    content: "";
    height: 8%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.no-touchevents .rate-calendar td.special-offer + td.special-offer.day-check-in:hover .day-marker:after, .no-touchevents .rate-calendar td.special-offer.day-check-out:hover .day-marker:after {
    height: 16%
}

.rate-calendar td.day-check-in .day-marker:before, .rate-calendar td.day-check-out .day-marker:before {
    border-bottom: 60px solid transparent;
    border-left: 15px solid #9e9e9e;
    border-top: 10px solid transparent;
    content: "";
    height: 0;
    left: 0;
    position: absolute;
    top: -10px;
    width: 0
}

.rate-calendar td.day-check-out .day-marker:before {
    border-left-color: #007966
}

.rate-calendar td[data-tooltip]:after {
    -webkit-transition: none;
    transition: none
}

.rate-calendar td.day-highlight, .rate-calendar-widget .footer .day-highlight:before {
    background-color: #007966
}

.rate-calendar td.day-highlight.day-check-out {
    background-color: #9e9e9e
}

.rate-calendar td.day-highlight.special-offer {
    background: linear-gradient(180deg, #d52228 8%, #007966 0, #007966)
}

.no-touchevents .rate-calendar td.day-highlight:hover {
    background-color: rgba(0, 121, 102, .87)
}

.no-touchevents .rate-calendar td.day-highlight.special-offer:hover {
    background: linear-gradient(180deg, #d52228 16%, rgba(0, 121, 102, .87) 0, rgba(0, 121, 102, .87))
}

.rate-calendar td.no-rates a, .rate-calendar td.no-rates div, .rate-calendar td.no-rates span {
    font-size: 0
}

.rate-calendar td.day-highlight a {
    color: #fff
}

.rate-calendar td.no-data {
    color: hsla(0, 0%, 100%, .54)
}

.rate-calendar td.blank {
    background-color: #eee;
    border-color: #eee
}

.rate-calendar th {
    padding: 4px;
    text-align: center
}

.rate-calendar td a {
    color: #fff;
    display: block
}

.rate-calendar td .spacer {
    opacity: 0
}

.rate-calendar td .day-number {
    display: none
}

.rate-calendar td[data-day-number] .day-number {
    display: block;
    font-size: 1.25em;
    position: relative
}

.rate-calendar td.blank[data-day-number] .day-number {
    color: #000;
    color: rgba(0, 0, 0, .17)
}

.rate-calendar td .day-price {
    font-size: .8em
}

.at-hide-by-default {
    visibility: hidden !important
}

.at-element-marker .at-hide-by-default, .at-hide-by-default.at-element-marker {
    visibility: visible !important
}

.grecaptcha-badge, .sticky_sentinel {
    visibility: hidden
}

.sticky_sentinel {
    left: 0;
    position: absolute;
    right: 0
}

.sticky_sentinel.sticky_sentinel--top {
    height: 1px;
    top: -106px
}

.ui-mobile .sticky_sentinel.sticky_sentinel--top {
    height: 1px;
    top: 47px
}

.sticky_sentinel.sticky_sentinel--bottom {
    bottom: 0;
    height: 100px
}

.ui-mobile .sticky_sentinel.sticky_sentinel--bottom {
    bottom: 0;
    height: 60px
}

.no-csspositionsticky .sticky_sentinel.sticky_sentinel--top {
    top: 85px
}

.ui-mobile.no-csspositionsticky .sticky_sentinel.sticky_sentinel--top {
    top: -60px
}

.page-links-all_items_hidden .body-container-scroller {
    position: relative
}

.page-links-all_items_hidden .body-container-scroller:after {
    content: "No rooms match your filter selections for this tower." !important;
    position: relative;
    width: auto !important
}

@media print {
    .print-hide {
        display: none !important
    }

    .print-only {
        display: block !important
    }

    #header {
        display: none
    }

    .body-container {
        page-break-inside: avoid
    }

    .right-side-content {
        background: transparent !important;
        margin: 36px 0 0 !important;
        padding: 16px !important;
        position: relative !important;
        right: auto !important;
        top: auto !important;
        width: auto !important
    }

    .page-links .item {
        opacity: 1 !important;
        padding-bottom: 82% !important;
        -webkit-transform: none !important;
        transform: none !important;
        width: 48% !important
    }

    .page-links .item.item-second, .page-links .item.item-second.item-third {
        margin-right: 0 !important;
        width: 49% !important
    }

    .page-links .item.item-3 {
        margin-top: 3% !important
    }

    .page-links .item.item-third {
        margin-right: 3% !important;
        width: 48% !important
    }

    #footer .above-the-fold {
        bottom: 0 !important;
        opacity: 1 !important;
        position: absolute !important;
        top: 0 !important;
        transform: none !important
    }

    #footer .map {
        height: 150px !important;
        width: 100% !important
    }

    #footer .contact, #footer .links {
        float: none !important;
        height: auto !important;
        width: auto !important
    }

    @page {
        margin: 25mm
    }
}

/*!
 * Copyright (C) 2015-2024 Peppermill Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are not permitted.
 */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.pepvalidate-v3 p .data-protect ~ label, .pepvalidate-v3 p .data-protect ~ label *, .pepvalidate-v3.protect-data {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.pepvalidate-v3 p .data-protect {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 20
}

.pepvalidate-v3 {
    margin: 0 auto;
    max-width: 400px;
    min-height: 0;
    position: relative;
    -webkit-transition: min-height .25s ease-out;
    transition: min-height .25s ease-out
}

.pepvalidate-v3.full-width {
    margin: 0;
    max-width: none
}

.pepvalidate-v3.highlight {
    background: #fff url(/library/images/global/bg-content.png) top repeat-x;
    border: 2px solid #d1d2d4;
    padding: 32px
}

.pepvalidate-v3 .full-width, html .pepvalidate-v3.full-width p.full-width {
    clear: both;
    padding: 16px 0
}

.pepvalidate-v3.left-align {
    margin-left: 0
}

.pepvalidate-v3 input.hidden, .pepvalidate-v3 p.hidden {
    display: none
}

.pepvalidate-v3 h2 {
    clear: both;
    margin: 16px;
    padding-top: 0
}

.pepvalidate-v3 h2 ~ h2 {
    padding-top: 2em
}

.pepvalidate-v3.full-width.show-steps {
    padding-bottom: 64px;
    padding-left: 64px
}

.pepvalidate-v3.show-steps .content-block:before {
    background-color: #9e9e9e;
    bottom: -64px;
    content: "";
    left: -64px;
    position: absolute;
    top: -120px;
    -webkit-transition: background-color .25s ease-in;
    transition: background-color .25s ease-in;
    width: 2px
}

.pepvalidate-v3.show-steps .content-block ~ .content-block:before {
    top: 0
}

.pepvalidate-v3.show-steps .content-block[data-step=DONE]:before {
    bottom: 64px
}

.pepvalidate-v3.show-steps .content-block.step-complete:before, .pepvalidate-v3.show-steps .content-step.step-complete + .content-block:before, .pepvalidate-v3.show-steps.all-steps-complete .content-block:before {
    background-color: #3f51b5;
    -webkit-transition: background-color .25s ease-out;
    transition: background-color .25s ease-out
}

.pepvalidate-v3.show-steps.all-steps-complete .content-step.icon[data-step=clear]:before {
    background-position: -61px -25px;
    content: ""
}

.pepvalidate-v3.show-steps .content-block[data-step=DONE] ~ .content-block:before {
    display: none
}

.pepvalidate-v3.show-steps .content-step[data-step] {
    height: 0;
    position: relative;
    width: 0
}

.pepvalidate-v3.show-steps .content-step[data-step]:before {
    background-color: #545454;
    background-image: url(/library/images/form/form_sprite.png);
    background-position: 32px 0;
    background-repeat: no-repeat;
    border: 20px solid #fafafa;
    border-radius: 50%;
    color: #fff;
    content: attr(data-step);
    font-size: 1em;
    height: 32px;
    left: -100px;
    line-height: 32px;
    position: absolute;
    text-align: center;
    top: 54px;
    -webkit-transition: background-color .25s ease-in, -webkit-transform .25s ease-in;
    transition: background-color .25s ease-in, transform .25s ease-in;
    vertical-align: middle;
    width: 32px;
    z-index: 10
}

.pepvalidate-v3.show-steps .content-step[data-step][data-step-desc]:after {
    background-color: #fafafa;
    border: solid #fafafa;
    border-width: 0 0 20px;
    color: #000;
    content: "";
    left: -114px;
    position: absolute;
    text-align: center;
    top: 116px;
    -webkit-transition: color .25s ease-in;
    transition: color .25s ease-in;
    width: 100px;
    z-index: 20
}

.pepvalidate-v3.show-steps .content-step.step-complete[data-step]:before {
    background-color: #3f51b5;
    background-position: -59px 8px;
    content: "";
    -webkit-transform: rotateY(1turn);
    transform: rotateY(1turn);
    -webkit-transition: background-color .25s ease-out, -webkit-transform .25s ease-out;
    transition: background-color .25s ease-out, transform .25s ease-out
}

.pepvalidate-v3.show-steps .content-step.step-complete[data-step][data-step-desc]:after {
    color: #3f51b5;
    -webkit-transition: color .25s ease-out;
    transition: color .25s ease-out
}

.pepvalidate-v3.show-steps .content-step.icon[data-step]:before {
    font-family: Material Icons
}

.pepvalidate-v3.loading, .pepvalidate-v3.loading a {
    cursor: wait
}

.pepvalidate-v3 p {
    margin: 15px 0;
    position: relative
}

.pepvalidate-v3.full-width p {
    float: left;
    width: 50%
}

.pepvalidate-v3.full-width td > p, html .pepvalidate-v3.full-width td > p:nth-child(n) {
    margin: 0;
    padding: 0;
    width: 100%
}

html .pepvalidate-v3.full-width p.full-width {
    float: none;
    margin-right: 0;
    width: 100%
}

html .pepvalidate-v3 p.textarea {
    padding-top: 70px !important
}

.pepvalidate-v3.full-width p:nth-of-type(odd) {
    margin-right: 3%;
    width: 47%
}

.ui-mobile .pepvalidate-v3.full-width p {
    float: none;
    padding: 12px 0;
    width: 100%
}

.pepvalidate-v3.loading > div.pepvalidate-child, .pepvalidate-v3.loading > h2, .pepvalidate-v3.loading > p {
    -webkit-transition: opacity .25s ease-out;
    transition: opacity .25s ease-out
}

.pepvalidate-v3.loading > div.pepvalidate-child, .pepvalidate-v3.loading > h2, .pepvalidate-v3.loading > p, .pepvalidate-v3.overlay-active > div.pepvalidate-child, .pepvalidate-v3.overlay-active > h2, .pepvalidate-v3.overlay-active > p {
    opacity: .35
}

.pepvalidate-v3.full-width p:nth-of-type(odd) {
    margin-right: 0;
    padding-right: 16px;
    width: 50%
}

.ui-mobile .pepvalidate-v3.full-width p:nth-of-type(odd) {
    padding-right: 0;
    width: 100%
}

.pepvalidate-v3.full-width p:nth-of-type(2n) {
    padding-left: 16px
}

.ui-mobile .pepvalidate-v3.full-width p:nth-of-type(2n) {
    padding-left: 0
}

.ui-mobile .pepvalidate-v3.full-width p.submit-wrapper {
    padding-left: 16px;
    padding-right: 16px
}

.pepvalidate-v3 .divider {
    margin: 15px 0;
    text-align: center
}

.pepvalidate-v3 .divider:after, .pepvalidate-v3 .divider:before {
    background: #ccc;
    content: "";
    height: 2px;
    left: 0;
    margin: -1px 0 0;
    position: absolute;
    top: 50%;
    width: 40%
}

.pepvalidate-v3 .divider:after {
    left: 60%
}

.pepvalidate-v3 label {
    cursor: text;
    display: block;
    height: 80px;
    overflow: initial !important;
    position: relative
}

.pepvalidate-v3 td > label {
    height: 48px
}

.pepvalidate-v3 .multiselect label {
    height: 260px
}

.pepvalidate-v3 .multiselect.multi-half label {
    height: 140px
}

.pepvalidate-v3 .checkbox label, .pepvalidate-v3 .radio label {
    cursor: pointer
}

.pepvalidate-v3 .checkbox label:after, .pepvalidate-v3 .checkbox label:before, .pepvalidate-v3 .radio label:after, .pepvalidate-v3 .radio label:before {
    background: transparent url(/library/images/form/form_sprite.png) 0 0 no-repeat;
    content: "";
    height: 32px;
    left: 50%;
    margin: 0 0 0 -16px;
    position: absolute;
    top: 50%;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    width: 32px;
    z-index: 10
}

.pepvalidate-v3 .checkbox label:after, .pepvalidate-v3 .radio label:after {
    background-position: -32px 0;
    opacity: 0;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear .25s;
    transition: opacity .25s ease-out, visibility 1ms linear .25s;
    visibility: hidden;
    z-index: 20
}

.pepvalidate-v3 .checkbox.checked label:after, .pepvalidate-v3 .radio.checked label:after {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    visibility: visible
}

.pepvalidate-v3 .radio label:before {
    background-position: 0 -32px
}

.pepvalidate-v3 .radio label:after {
    background-position: -32px -32px
}

.pepvalidate-v3 .checkbox label input[type=checkbox], .pepvalidate-v3 .radio label input[type=radio] {
    left: -9999px;
    position: absolute
}

.pepvalidate-v3.loading label {
    cursor: wait
}

.pepvalidate-v3 label > .note, .pepvalidate-v3 label > .text {
    bottom: 12px;
    color: #000;
    left: 10px;
    position: absolute;
    -webkit-transition: bottom .25s ease-in 125ms, left .25s ease-in 125ms, color .25s ease-in 125ms;
    transition: bottom .25s ease-in 125ms, left .25s ease-in 125ms, color .25s ease-in 125ms;
    will-change: bottom, color;
    z-index: 1
}

.pepvalidate-v3 label > .note {
    font-size: .8em
}

.pepvalidate-v3 label > .text svg * {
    fill: currentColor
}

.pepvalidate-v3 label > .note {
    bottom: 44px
}

.pepvalidate-v3 .active.filled label > .note, .pepvalidate-v3 .active.filled label > .text, .pepvalidate-v3 .active.validated label > .note, .pepvalidate-v3 .active.validated label > .text {
    color: #3f51b5
}

.pepvalidate-v3 .textarea label > .note {
    bottom: 82px
}

.pepvalidate-v3 .textarea label > .text, .pepvalidate-v3 .textarea.active label > .text {
    -webkit-transition-duration: 375ms;
    transition-duration: 375ms
}

.pepvalidate-v3.low-profile label > .note, .pepvalidate-v3.low-profile label > .text {
    color: #000;
    left: 0
}

.pepvalidate-v3 label > .text svg {
    margin-bottom: -2px
}

.pepvalidate-v3.low-profile label > .note {
    bottom: 12px
}

.pepvalidate-v3 .active label > .note, .pepvalidate-v3 .active label > .text, .pepvalidate-v3 .error label > .note, .pepvalidate-v3 .error label > .text, .pepvalidate-v3 .split-fields-2 label > .note, .pepvalidate-v3 .split-fields-2 label > .text {
    bottom: 44px;
    color: #000;
    left: 0;
    -webkit-transition: bottom .25s ease-out, left .25s ease-out, color .25s ease-out;
    transition: bottom .25s ease-out, left .25s ease-out, color .25s ease-out
}

.pepvalidate-v3 .active.multiselect label > .note, .pepvalidate-v3 .active.multiselect label > .text, .pepvalidate-v3 .error.multiselect label > .note, .pepvalidate-v3 .error.multiselect label > .text, .pepvalidate-v3 .split-fields-2.multiselect label > .note, .pepvalidate-v3 .split-fields-2.multiselect label > .text {
    bottom: 244px
}

.pepvalidate-v3 .active.multiselect.multi-half label > .note, .pepvalidate-v3 .active.multiselect.multi-half label > .text, .pepvalidate-v3 .error.multiselect.multi-half label > .note, .pepvalidate-v3 .error.multiselect.multi-half label > .text, .pepvalidate-v3 .split-fields-2.multiselect.multi-half label > .note, .pepvalidate-v3 .split-fields-2.multiselect.multi-half label > .text {
    bottom: 124px
}

.pepvalidate-v3 .textarea.active label > .note, .pepvalidate-v3 .textarea.active label > .text, .pepvalidate-v3 .textarea.error label > .note, .pepvalidate-v3 .textarea.error label > .text {
    bottom: 114px
}

.pepvalidate-v3 label > .note {
    left: auto !important;
    position: absolute;
    right: 0
}

.pepvalidate-v3 .note-content {
    display: none;
    max-width: 100%
}

.pepvalidate-v3 .note-content img {
    max-width: 100%
}

.pepvalidate-v3 .active.error label > .text, .pepvalidate-v3 .error label > .text {
    color: orange
}

.pepvalidate-v3 label > .text:after {
    content: " Here";
    position: relative;
    -webkit-transition: opacity .25s ease-in 125ms;
    transition: opacity .25s ease-in 125ms;
    will-change: opacity
}

.pepvalidate-v3 .checkbox label .text:after, .pepvalidate-v3 .radio label .text:after, .pepvalidate-v3 p.no-text-here label > .text:after, .pepvalidate-v3.no-text-here label > .text:after {
    display: none
}

.pepvalidate-v3 .active label > .text:after, .pepvalidate-v3 .error label > .text:after {
    opacity: 0;
    -webkit-transition: opacity .25s ease-out;
    transition: opacity .25s ease-out
}

.pepvalidate-v3 .split-fields-2 label > .note > .material-icons, .pepvalidate-v3 .split-fields-2 label > .text > .material-icons, .pepvalidate-v3 label > .note > .material-icons, .pepvalidate-v3 label > .text > .material-icons {
    margin-bottom: -2px;
    vertical-align: bottom
}

.pepvalidate-v3 input, .pepvalidate-v3 select, .pepvalidate-v3 textarea {
    background: transparent;
    border: solid #e0e0e0;
    border-width: 0 0 2px;
    bottom: 3px;
    font-family: BodyFont, sans-serif;
    height: 35px;
    left: 0;
    margin: 5px 0 0;
    padding: 0 2%;
    position: absolute;
    -webkit-transition: height .25s ease-in 125ms, border-color .25s ease-in 125ms, border-width .25s ease-in 125ms;
    transition: height .25s ease-in 125ms, border-color .25s ease-in 125ms, border-width .25s ease-in 125ms;
    width: 100%;
    will-change: height, border-color, border-width;
    z-index: 5
}

.pepvalidate-v3 input[type=button], .pepvalidate-v3 input[type=submit] {
    z-index: 0
}

.pepvalidate-v3 select {
    width: 100%
}

.pepvalidate-v3 .multiselect select {
    height: 235px
}

.pepvalidate-v3 .multiselect.multi-half select {
    height: 115px
}

.pepvalidate-v3 textarea {
    height: 100px
}

.pepvalidate-v3 .split-fields-2 input, .pepvalidate-v3 .split-fields-2 select, .pepvalidate-v3 .split-fields-2 textarea {
    width: 48%
}

.pepvalidate-v3 .split-fields-2 input + input, .pepvalidate-v3 .split-fields-2 select + select, .pepvalidate-v3 .split-fields-2 textarea + textarea {
    left: 50%
}

.pepvalidate-v3.low-profile input, .pepvalidate-v3.low-profile select, .pepvalidate-v3.low-profile textarea {
    height: 0
}

.pepvalidate-v3.loading input, .pepvalidate-v3.loading select, .pepvalidate-v3.loading textarea {
    cursor: wait
}

.pepvalidate-v3 .active input, .pepvalidate-v3 .active select, .pepvalidate-v3 .active textarea, .pepvalidate-v3 .error input, .pepvalidate-v3 .error select, .pepvalidate-v3 .error textarea {
    border-color: #3f51b5;
    border-width: 0 0 2px;
    height: 35px;
    line-height: 35px;
    -webkit-transition: height .25s ease-out, border-color .25s ease-out, border-width .25s ease-out;
    transition: height .25s ease-out, border-color .25s ease-out, border-width .25s ease-out;
    vertical-align: middle
}

.pepvalidate-v3 .active.multiselect select, .pepvalidate-v3 .error.multiselect select {
    height: 235px
}

.pepvalidate-v3 .active.multiselect.multi-half select, .pepvalidate-v3 .error.multiselect.multi-half select {
    height: 115px
}

.pepvalidate-v3 .active textarea, .pepvalidate-v3 .error textarea {
    height: 100px;
    resize: none
}

.pepvalidate-v3 .active.error input, .pepvalidate-v3 .active.error select, .pepvalidate-v3 .active.error textarea, .pepvalidate-v3 .error input, .pepvalidate-v3 .error select, .pepvalidate-v3 .error textarea {
    border-color: orange
}

.pepvalidate-v3 .filled input, .pepvalidate-v3 .filled select, .pepvalidate-v3 .validated input, .pepvalidate-v3 .validated select, .pepvalidate-v3 .validated textarea
.pepvalidate-v3 .filled textarea {
    border-color: #3f51b5
}

.pepvalidate-v3 .text:hover + input, .pepvalidate-v3 .text:hover + select, .pepvalidate-v3 .text:hover + textarea, .pepvalidate-v3 input:hover, .pepvalidate-v3 select:hover, .pepvalidate-v3 textarea:hover {
    border-color: #000
}

.pepvalidate-v3 .submit-wrapper, .pepvalidate-v3.loading .submit-wrapper {
    opacity: 1;
    text-align: center
}

.pepvalidate-v3.loading .submit-wrapper.bounce {
    -webkit-animation: pepvalidate-v3-error-bounce .25s ease-in-out 1ms 2;
    -moz-animation: pepvalidate-v3-error-bounce .25s ease-in-out 1ms 2;
    animation: pepvalidate-v3-error-bounce .25s ease-in-out 1ms 2
}

.pepvalidate-v3 .submit-wrapper:before {
    background: #000 url(/library/images/global/dual-ring-loader.png) 50% no-repeat;
    border: 4px solid #fff;
    border-radius: 50%;
    content: "";
    height: 36px;
    left: 50%;
    margin: -13px 0 0 -22px;
    opacity: 0;
    position: absolute;
    top: 50%;
    -webkit-transition: opacity .25s ease-out;
    transition: opacity .25s ease-out;
    width: 36px;
    z-index: -1
}

.pepvalidate-v3.loading .submit-wrapper:before {
    -webkit-animation: pepvalidate-v3-loading-spinner 1.25s linear 1ms infinite;
    animation: pepvalidate-v3-loading-spinner 1.25s linear 1ms infinite
}

.no-cssanimations .pepvalidate-v3 .submit-wrapper:before {
    background-image: url(/library/images/global/dual-ring-loader-ani.gif)
}

.pepvalidate-v3.loading .submit-wrapper:before {
    opacity: 1;
    z-index: 1
}

.pepvalidate-v3 input[type=button], .pepvalidate-v3 input[type=submit] {
    background-color: #3f51b5;
    border: none;
    border-radius: 4px;
    color: #fff;
    cursor: pointer;
    height: 40px;
    line-height: 40px;
    outline: none;
    padding: 0;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    -webkit-transition: background-color 125ms ease-out, border-radius .25s ease-out, width .25s ease-out, box-shadow .12s ease-out, color .25s ease-out;
    transition: background-color 125ms ease-out, border-radius .25s ease-out, width .25s ease-out, box-shadow 125ms ease-out, color .25s ease-out;
    vertical-align: middle;
    width: 100%
}

.pepvalidate-v3 input[type=button]:active, .pepvalidate-v3 input[type=submit]:active {
    background: #ccc;
    box-shadow: 0 2px 4px 2px rgba(0, 0, 0, .35)
}

.pepvalidate-v3 input[type=button]:focus, .pepvalidate-v3 input[type=button]:hover, .pepvalidate-v3 input[type=submit]:focus, .pepvalidate-v3 input[type=submit]:hover {
    background-color: #3f51b5;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .35)
}

.pepvalidate-v3.loading input[type=button], .pepvalidate-v3.loading input[type=submit] {
    border-radius: 20px;
    width: 40px
}

.pepvalidate-v3 fieldset {
    margin: 0;
    padding: 5px
}

.pepvalidate-v3 .honey {
    display: none
}

.pepvalidate-v3 .overlay {
    background: #000;
    background: rgba(0, 0, 0, .95);
    bottom: 0;
    color: #fff;
    left: 0;
    max-height: 0;
    min-height: 0;
    opacity: 0;
    overflow: hidden;
    padding: 10px 30px 10px 10px;
    position: absolute;
    right: 0;
    -webkit-transition: opacity .25s ease-out, max-height .25s ease-out, min-height .25s ease-out, -webkit-box-shadow .25s ease-out;
    transition: opacity .25s ease-out, max-height .25s ease-out, min-height .25s ease-out, box-shadow .25s ease-out;
    z-index: 8
}

.pepvalidate-v3.overlay-active .overlay {
    -webkit-box-shadow: 0 0 96px hsla(0, 0%, 100%, .35);
    box-shadow: 0 0 96px hsla(0, 0%, 100%, .35);
    max-height: 100%;
    min-height: 50px;
    opacity: 1
}

.pepvalidate-v3 .overlay .close {
    border: 2px solid #fff;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    font-family: trajan-pro-3, serif;
    font-size: 15px;
    height: 20px;
    line-height: 20px;
    position: absolute;
    right: 0;
    text-align: center;
    text-decoration: none;
    top: 0;
    vertical-align: middle;
    width: 20px
}

.pepvalidate-v3 .error-msg {
    zoom: 1;
    background: #fbfbfb;
    border: 1px solid #000;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    bottom: -22px;
    color: #000;
    cursor: default;
    filter: alpha(opacity=0);
    left: 10%;
    opacity: 0;
    padding: 6px 8px 4px;
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: opacity .25s ease-out, background-color .25s ease-in, -webkit-transform .25s ease-out;
    transition: opacity .25s ease-out, background-color .25s ease-in, transform .25s ease-out;
    vertical-align: middle;
    white-space: nowrap;
    z-index: 8
}

.no-touchevents .pepvalidate-v3 .error-msg:hover {
    background-color: #eee;
    -webkit-transition: opacity .25s ease-out, background-color .25s ease-out, -webkit-transform .25s ease-out;
    transition: opacity .25s ease-out, background-color .25s ease-out, transform .25s ease-out
}

.pepvalidate-v3 .error .error-msg {
    cursor: pointer;
    filter: alpha(opacity=100);
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.pepvalidate-v3 .error.bounce .error-msg {
    -webkit-animation: pepvalidate-v3-error-bounce .25s ease-in-out 1ms 2;
    animation: pepvalidate-v3-error-bounce .25s ease-in-out 1ms 2
}

.pepvalidate-v3 .error-msg .icon {
    color: orange;
    margin-right: 5px;
    margin-top: -3px;
    vertical-align: middle
}

.pepvalidate-v3 .error-msg:after, .pepvalidate-v3 .error-msg:before {
    border-bottom: 6px solid #fbfbfb;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    content: "";
    height: 0;
    left: 10px;
    position: absolute;
    top: -5px;
    -webkit-transition: border-color .25s ease-in;
    transition: border-color .25s ease-in;
    width: 0;
    z-index: 4
}

.pepvalidate-v3 .error-msg:before {
    border-bottom: 6px solid #000;
    top: -6px;
    z-index: 2
}

.no-touchevents .pepvalidate-v3 .error-msg:hover:after {
    border-bottom-color: #eee;
    -webkit-transition: border-color .25s ease-out;
    transition: border-color .25s ease-out
}

@-webkit-keyframes pepvalidate-v3-loading-spinner {
    0% {
        -webkit-transform: rotate(0deg)
    }
    to {
        -webkit-transform: rotate(1turn)
    }
}

@keyframes pepvalidate-v3-loading-spinner {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(1turn)
    }
}

@-webkit-keyframes pepvalidate-v3-error-bounce {
    0% {
        -webkit-transform: translateX(0)
    }
    25% {
        -webkit-transform: translateX(-10px)
    }
    75% {
        -webkit-transform: translateX(10px)
    }
}

@-moz-keyframes pepvalidate-v3-error-bounce {
    0% {
        -moz-transform: translateX(0)
    }
    25% {
        -moz-transform: translateX(-10px)
    }
    75% {
        -moz-transform: translateX(10px)
    }
}

@keyframes pepvalidate-v3-error-bounce {
    0% {
        transform: translateX(0)
    }
    25% {
        transform: translateX(-10px)
    }
    75% {
        transform: translateX(10px)
    }
}

.pepvalidate-v3 p.show-password-timer:after {
    -webkit-animation: password-timer 10s linear forwards;
    animation: password-timer 10s linear forwards;
    opacity: 1;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    transition: opacity .25s ease-out, visibility 1ms linear 1ms;
    visibility: visible
}

.pepvalidate-v3 p:after {
    background-color: #3f51b5;
    bottom: 3px;
    content: "";
    height: 6px;
    left: 32px;
    opacity: 0;
    position: absolute;
    right: 32px;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transition: opacity .25s ease-out, visibility 1ms linear .25s;
    transition: opacity .25s ease-out, visibility 1ms linear .25s;
    visibility: hidden;
    z-index: 10
}

.pepvalidate-v3.full-width p:nth-of-type(odd):after {
    right: 16px
}

.pepvalidate-v3.full-width p:nth-of-type(2n):after {
    left: 16px
}

@-webkit-keyframes password-timer {
    0% {
        background-color: #3f51b5;
        opacity: 0;
        -webkit-transform: scaleX(0)
    }
    10% {
        background-color: #3f51b5;
        opacity: 1
    }
    90% {
        background-color: orange;
        opacity: 1
    }
    to {
        background-color: orange;
        opacity: 0;
        -webkit-transform: scaleX(1)
    }
}

@keyframes password-timer {
    0% {
        opacity: 0;
        transform: scaleX(0)
    }
    10% {
        opacity: 1
    }
    90% {
        opacity: 1
    }
    to {
        opacity: 0;
        transform: scaleX(1)
    }
}

.pepvalidate-v3 .handle, .pepvalidate-v3 .help {
    color: #000;
    position: absolute;
    right: 8px;
    top: 26px;
    -webkit-transition: color .25s ease-in;
    transition: color .25s ease-out;
    z-index: 30
}

.pepvalidate-v3 .handle.hide, .pepvalidate-v3 .help.hide {
    display: none
}

.no-touchevents .pepvalidate-v3 .handle:hover, .no-touchevents .pepvalidate-v3 .help:hover {
    color: #3f51b5
}

.pepvalidate-v3 p.inline-datepicker {
    margin-top: 32px;
    text-align: left
}

.pepvalidate-v3 p.inline-datepicker .note, .pepvalidate-v3 p.inline-datepicker .text {
    bottom: 12px;
    position: relative
}

.pepvalidate-v3 p.inline-datepicker .handle, .pepvalidate-v3 p.inline-datepicker input.date {
    display: none
}

.pepvalidate-v3 p.inline-datepicker label {
    cursor: default;
    height: auto
}

.pepvalidate-v3 p.inline-datepicker .datepicker-inline .datepicker {
    width: 100%
}

input:nth-last-child(3):first-child, input:nth-last-child(3):first-child ~ select, select:nth-last-child(3):first-child, select:nth-last-child(3):first-child ~ select, textarea:nth-last-child(3):first-child, textarea:nth-last-child(3):first-child ~ select {
    left: 0;
    width: 33%
}

input:nth-last-child(3):first-child ~ select:nth-child(2), select:nth-last-child(3):first-child ~ select:nth-child(2), textarea:nth-last-child(3):first-child ~ select:nth-child(2) {
    left: 34%
}

input:nth-last-child(3):first-child ~ select:nth-child(3), select:nth-last-child(3):first-child ~ select:nth-child(3), textarea:nth-last-child(3):first-child ~ select:nth-child(3) {
    left: 68%
}