/* WEBFONT */
h1, .h1 { letter-spacing: 1px; }
.footer-map-container { font-size: 14px; }
.pull-left { float: left; }

/* SVG LOGO ADJUSTMENTS */
#headerlogo { margin-top: 0px; padding-top: 6px; padding-bottom: 6px; }
#headerlogo img { height: 70px; }
#footerLogo img { max-width: 100%; width: auto !important; height: 100%; max-height: 80px; }

/* CAROUSELS */
.slick-track { margin: 0px auto; }
.ct-tab-title { max-width: 180px; min-height: 45px; }

/* MOBILE PROCESS ARROWS */
.css-mobile-process-slider .slick-next, 
.css-mobile-process-slider .slick-prev { top: 76px; width: unset; height: unset; padding: 16px 10px; }
.css-mobile-process-slider .slick-next { right: 0px; }
.css-mobile-process-slider .slick-prev { left: 0px; }
.css-mobile-process-slider .slick-prev:before, 
.css-mobile-process-slider .slick-next:before { font: normal normal normal 14px/1 FontAwesome; font-size: 20px; }
.css-mobile-process-slider .slick-prev:before { content: "\f053"; }
.css-mobile-process-slider .slick-next:before { content: "\f054"; }

/* MOBILE PROCESS DOTS */
.slick-dots { margin: 0px; bottom: -36px; }
.slick-dots li button:before { font-size: 14px; color: #FFFFFF; }
.slick-dots li.slick-active button:before { opacity: 1; color: #FFFFFF; }

/* SOCIAL HEADER */
.sh-col { letter-spacing: 1.5px; }
.sh-cta-container { margin-left: 20%; }
.sh-cta { padding: 0px 32px; }
.sh-cta-container .sh-cta:not(:first-child) { border-left: 1px solid #FFF; }

/* MENU ADJUSTMENTS */
.menu-height { height: 82px; }
.pi-row-md .pi-full-height>li>a { line-height: 82px; }
.pi-header-row-fixed .pi-header { padding-bottom: 85px; }
.pi-simple-menu>li>a { padding: 0 10px; }
.pi-section-base .pi-social-icons.pi-full-height.pi-bordered li { border: none; }
.pi-section-base .pi-social-icons.pi-full-height a { background-color: rgba(0,0,0,0.2); }
.pi-section-base .pi-social-icons.pi-full-height a:hover { background-color: rgba(0,0,0,0.4) !important; }
.pi-menu-mobile-white li, .pi-menu-mobile-white li:hover { background: #FFF; color: #666e70; }
.pi-menu-mobile-white li>a { color: #666e70; }
#headerlogo { margin: 0px; line-height: 82px; padding: 0px; }
#headerlogo img { width: 226px; height: unset; max-height: unset; }

/* MENU BUTTONS */
.menu-button-wrapper { line-height: 80px; padding: 0px 15px; }
/* MENU BUTTONS - DESKTOP */
.menu-button-wrapper a.btn { display: inline; }
.menu-button-wrapper a.btn.pi-btn-grey { border: 1px solid #a5b3b4 !important; }
.menu-button-wrapper a.btn.pi-btn-dark { border: 1px solid var(--dark-color) !important; }
.menu-button-wrapper a.btn.pi-btn-base { border: 1px solid var(--light-accent) !important; }
.menu-button-wrapper a.btn.pi-btn-outline { border: 2px solid var(--light-accent) !important; }
/* MENU BUTTONS - MOBILE */
.mobile-menu-button-wrapper { padding: 14px 20px; border-top: 1px solid #2e343a; }
.mobile-menu-button-wrapper a.btn { display: inline-block; padding: 9px 12px; }
.mobile-menu-button-wrapper a.pi-btn-grey { border: 1px solid #a5b3b4 !important; }
.mobile-menu-button-wrapper a.pi-btn-dark { border: 1px solid var(--dark-color) !important; }
.mobile-menu-button-wrapper a.pi-btn-base { border: 1px solid var(--light-accent) !important; }
.mobile-menu-button-wrapper a.pi-btn-outline { border: 2px solid var(--light-accent) !important; }

/* ACCENT OVERRIDES */
.pi-has-base-border:after { background-color: var(--light-accent) !important; }
.pi-base-underline { border-width: 0px 0px 5px 0px; border-style: solid; padding-bottom: 8px; }

/* PAGE ANCHORS */
.page-anchor { display: block; position: relative; top: -85px; visibility: hidden; }

/* DARK SECTION LINKS */
.pi-section-dark a { color: #EEE; }
.pi-section-dark a:hover { color: #FFF; }

/* BUTTONS AND FORMS */
.btn { box-shadow: none; }
.pi-section-base .form-control,
.pi-section-base .form-control:hover { background: #FFFFFF; color: #333333; }
.pi-section-base .pi-btn-base {
    background-color: #FFF;
    color: var(--light-accent) !important;
    border-color: #FFF;
    box-shadow: none;
}

/* SECTION COLORS */
.pi-section-base, .pi-section-dark { color: #FFFFFF; }
.pi-section-grey { background-color: #EEEEEE; }
.pi-section-grey a.pi-link-no-style:hover { color: inherit; }
.pi-section-base .pi-text-base,
.pi-section-dark .pi-text-base { color: #FFFFFF !important; }
.pi-section-base a.pi-link-no-style:hover, 
.pi-section-dark a.pi-link-no-style:hover { color: #FFFFFF !important; }
.pi-section-base .pi-border-color-base, 
.pi-section-dark .pi-border-color-base { border-color: #FFFFFF !important; }

/* BORDER SHORTCUTS */
.pi-border-top-grey { border-top: 1px solid #555; }
.pi-border-bottom-base { border-bottom: 1px solid var(--light-accent); }

/* NUMBER OVERRIDES */
input[type="number"] { -moz-appearance: textfield; }
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* FIXED BACKGROUNDS */
.bg-fixed, .bg-cover { background-position: 50% 50% !important; background-size: cover !important; -webkit-background-size: cover !important; -moz-background-size: cover !important; -o-background-size: cover !important; }
html.touchless-display .bg-fixed { background-attachment: fixed !important; }
.bg-size-cover { background-size: cover !important; }

/* DESKTOP BANNER */
.desktop-banner-semitrans-slice-gradient {
	padding: 4%;
	width: 490px;
	background-color: rgba(0, 0, 0, 0.75);
}
.cf-banner-cutout {
    position: absolute;
    left: 50%;
    bottom: 0px;
    max-height: 90%;
    height: auto;
}
@media (max-width: 960px) {
	.cf-banner-cutout { display: none; }
}

/* DESKTOP BANNER VIDEO */
.desktop-banner-video {
	width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0px; top: 0px; right: 0px; bottom: 0px;
}

/* MOBILE BANNER */
.mobile-banner-semitrans-slice {
	padding: 8% 10% 7% 10%;
	background-color: rgba(0, 0, 0, 0.6);
}

/* OUTLINE BUTTONS */
.pi-btn-outline {
	border-width: 2px;
	border-style: solid;
	background-color: transparent;
	text-shadow: none;
	box-shadow: none;
}
.pi-section-white .pi-btn-outline, 
.pi-section-grey .pi-btn-outline {
	color: #333;
	border-color: var(--light-accent);
}
.pi-section-base .pi-btn-outline {
	color: #FFF;
	border-color: #FFFFFF;
}
.pi-section-dark .pi-btn-outline {
	color: #FFF;
	border-color: var(--light-accent);
}

/* H1 */
.scaling-h1-font-size { font-size: 24px; }
@media all and (max-width: 767px) {
	.scaling-h1-font-size { font-size: 18px; }
}
.scaling-subheader-h1-font-size { font-size: 42px; }
@media all and (max-width: 767px) {
	.scaling-subheader-h1-font-size { font-size: 24px; }
}

/* ELEVATOR ROUNDING/SHADOW */
.jumper-nav-desktop-container .nav-rightside-shell {
	border-radius: 4px 0px 0px 4px;
}
.jumper-nav-desktop-container .nav-rightside-shell {
	-webkit-box-shadow: -2px 2px 11px 0px rgba(0,0,0,0.25), 0 1px 3px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: -2px 2px 11px 0px rgba(0,0,0,0.25), 0 1px 3px 0px rgba(0,0,0,0.4);
    box-shadow: -2px 2px 11px 0px rgba(0,0,0,0.25), 0 1px 3px 0px rgba(0,0,0,0.4);
}

/* CALL US TAB ROUNDING/SHADOW */
.widget-contactslider-padding-10 {
    border-radius: 0px 4px 4px 0px;
    box-shadow: 0 1px 3px 0px rgba(0,0,0,0.4), -2px 2px 11px 0px rgba(0,0,0,0.25);
}
#widget-contactslider-container {
	box-shadow: none;
	-webkit-box-shadow: none;
	z-index: 20;
}

.base-gradient-l-r {
    background-image: linear-gradient(to right, var(--dark-accent), var(--light-accent));
}

/* ADDITIONAL SIDE TAB */
.additional-side-tab {
	background-color: var(--light-accent);
	color: #FFFFFF;
	z-index: 20;
    position: fixed;
    left: 0px;
    top: 278px;
	cursor: pointer;
	display: inline-block;
    vertical-align: middle;
    writing-mode: vertical-lr;
    text-orientation: sideways-right;
    text-transform: uppercase;
    font-size: 20px;
    padding: 22px 18px 22px 19px;
    line-height: 26px;
    text-align: center;
    border-radius: 0px 4px 4px 0px;
    box-shadow: 0 1px 3px 0px rgba(0,0,0,0.4), -2px 2px 11px 0px rgba(0,0,0,0.25);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.additional-side-tab:hover, .additional-side-tab:active, .additional-side-tab:focus {
	color: #FFFFFF;
	text-decoration: none;
	outline: none;
}
@media all and (max-width: 1175px) {
	.additional-side-tab { display: none; }
}

/* MOBILE ELEVATORS */
.mobile-fixed-nav-bar {
	background-color: var(--dark-accent) !important;
	border: 0px;
}

/* LINE CLAMP */
.two-lines,
.three-lines, 
.four-lines {
	display: -webkit-box;
	-webkit-box-orient: vertical;  
	overflow: hidden;
	visibility: visible;
}
.two-lines { -webkit-line-clamp: 2; }
.three-lines { -webkit-line-clamp: 3; }
.four-lines { -webkit-line-clamp: 4; }

/* SECTION HEADERS */
.lined-section-title {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;    
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 32px;
    margin-top: 8px;
}
.lined-section-title:before,
.lined-section-title:after {
    content: '';
    border-top: 2px solid var(--light-accent);
    margin: 0 20px 0 0;
    flex: 1 0 20px;
    opacity: 0.4;
}
.pi-section-base .lined-section-title:before,
.pi-section-base .lined-section-title:after,
.pi-section-dark .lined-section-title:before,
.pi-section-dark .lined-section-title:after {
	border-color: #FFF;
}
.lined-section-title:after { margin: 0 0 0 20px; }

/* EMBEDDED FORM ACCORDIONS MOD */
.embeddable-forms-accordion .pi-accordion-title { border-radius: 3px; }
.embeddable-forms-accordion .pi-accordion-title a { text-decoration: none; padding: 12px 0px 12px 36px; }
.embeddable-forms-accordion .pi-accordion-title .pi-accordion-toggle { top: 11px; left: 8px; background-color: transparent !important; border: none !important; text-shadow: none !important; box-shadow: none !important; }

.pi-section-white .embeddable-forms-accordion .pi-accordion-title .pi-accordion-toggle, 
.pi-section-grey .embeddable-forms-accordion .pi-accordion-title .pi-accordion-toggle { color: #FFFFFF !important; }
.pi-section-white .embeddable-forms-accordion .pi-accordion-title, 
.pi-section-grey .embeddable-forms-accordion .pi-accordion-title { background-color: var(--light-accent); }
.pi-section-white .embeddable-forms-accordion .pi-accordion-title a, 
.pi-section-grey .embeddable-forms-accordion .pi-accordion-title a, 
.pi-section-white .embeddable-forms-accordion .pi-accordion-title a:hover, 
.pi-section-grey .embeddable-forms-accordion .pi-accordion-title a:hover { color: #FFFFFF !important; }

.pi-section-base .embeddable-forms-accordion .pi-accordion-title .pi-accordion-toggle, 
.pi-section-dark .embeddable-forms-accordion .pi-accordion-title .pi-accordion-toggle { color: var(--light-accent) !important; }
.pi-section-base .embeddable-forms-accordion .pi-accordion-title, 
.pi-section-dark .embeddable-forms-accordion .pi-accordion-title { background-color: #FFFFFF; }
.pi-section-base .embeddable-forms-accordion .pi-accordion-title a, 
.pi-section-dark .embeddable-forms-accordion .pi-accordion-title a, 
.pi-section-base .embeddable-forms-accordion .pi-accordion-title a:hover, 
.pi-section-dark .embeddable-forms-accordion .pi-accordion-title a:hover { color: var(--light-accent) !important; }

/* REGULAR ACCORDIONS */
.pi-accordion .pi-accordion-item { border-bottom: none; }
.pi-accordion .pi-accordion-title .pi-accordion-toggle { top: 8px; }
.pi-accordion .pi-accordion-title a { padding-top: 8px; padding-bottom: 8px; }

/* FEEDBACK BUBBLES */
.css-feedback-bubble {
	position: absolute;
	z-index:999; 
	color:#FFF;
	padding: 8px;
	font-size: 14px;
	font-weight: bold;
	border-radius: 6px;
	-moz-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.25);
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.25);
}
.gfx-fade-up {
	-webkit-animation: fadeup 1800ms ease-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: ease-out;
}
@-webkit-keyframes fadeup {
	0% {   
		-ms-transform: scale(0.1, 0.1);
    	-webkit-transform: scale(0.1, 0.1);
    	transform: scale(0.1, 0.1);
    }
    10% {
    	-ms-transform: scale(1, 1);
    	-webkit-transform: scale(1, 1);
    	transform: scale(1, 1);
    }
    30% {
    	opacity: 1.0;
    }
    100% { 
    	opacity: 0; 
    	margin-top: -16px; 
    }
}

/* CIRCLE TABS */
.ct-tabs-wrapper { text-align: center; vertical-align: top; }

.ct-tab-wrapper { cursor: pointer; display: inline-block; margin: 0px 8px; }
.ct-tab-circle { background-color: var(--light-accent); border: 2px solid var(--light-accent); height: 180px; width: 180px; line-height: 180px; border-radius: 90px; margin: 0px auto; -o-transition: .3s; -ms-transition: .3s; -moz-transition: .3s; -webkit-transition: .3s; transition: .3s; }
.ct-tab-circle img {}
.ct-tab-title { font-weight: bold; font-size: 16px; text-transform: uppercase; margin-top: 16px; margin-bottom: 8px; }
.ct-tab-v-line { height: 24px; display: inline-block; margin-bottom: -6px; }

.ct-tab-wrapper.active .ct-tab-circle, 
.ct-tab-wrapper:hover .ct-tab-circle { background-color: transparent; border-color: #FFFFFF; }
.ct-tab-wrapper.active .ct-tab-v-line { border-left: 2px solid #FFFFFF; }

.ct-content-block { display: none; padding: 32px 16px 8px 16px; background-color: rgba(0,0,0,0.5); border-top: 1px solid #FFFFFF; }
.ct-content-block.active { display: block; }

/* RESERVATION SYSTEM */
.floating-cart-link {
	position: fixed;
	bottom: 12px;
	right: 12px;
	z-index: 30;
}
.floating-cart-link span {
	cursor: pointer;
    border-radius: 50%;
    padding: 11px 13px 11px 11px;
    box-shadow: 2px 2px 6px rgba(0,0,0, 0.35);
}
.floating-cart-link span:hover { box-shadow: 2px 2px 6px rgba(0,0,0, 0.35); }
.floating-cart-link span i { font-size: 32px; }
.floating-cart-link num {
	position: absolute;
	left: 0px;
	bottom: 0px;
	background-color: var(--dark-color);
	z-index: 31;
    width: 22px;
    height: 22px;
    line-height: 22px;
    color: #FFF;
    text-align: center;
    vertical-align: middle;
    border-radius: 50%;
    font-weight: bold;
    box-shadow: 2px 2px 4px rgba(0,0,0, 0.2);
}
@media (max-width: 767px) {
	.floating-cart-link { bottom: 78px; }
}

/* FORMS */
.form-control { border-color: transparent !important; }

/* BOOTSTRAP 3 GRID HELPERS */
.pi-visible-only-lg { display: none; }
.pi-visible-only-md { display: none; }
.pi-visible-only-sm { display: none; }
.pi-visible-only-xs { display: none; }
@media (min-width: 1120px) {
	.pi-visible-only-lg { display: block !important; }
}
@media (max-width: 1119px) and (min-width: 992px) {
	.pi-visible-only-md { display: block !important; }
}
@media (max-width: 991px) and (min-width: 768px) {
	.pi-visible-only-sm { display: block !important; }
}
@media (max-width: 767px) and (min-width: 480px) {
	.pi-visible-only-xs { display: block !important; }
}

/* READ MORE MASKS */
.js-css-read-more-mask, 
.js-css-read-less-mask { overflow-y: hidden; cursor: pointer; position: relative; margin-bottom: 20px; }
.js-css-read-more-mask:after, 
.js-css-read-less-mask:after {
    position: absolute;
    left: 0; right: 0; bottom: 0;
    text-align: center;
    font-size: 13px;
}

div.pi-section-white .js-css-read-more-mask:after, 
div.pi-section-white .js-css-read-less-mask:after,
div.pi-section-grey .js-css-read-more-mask:after, 
div.pi-section-grey .js-css-read-less-mask:after { color: var(--light-accent); }

div.pi-section-base .js-css-read-more-mask:after, 
div.pi-section-base .js-css-read-less-mask:after,
div.pi-section-dark .js-css-read-more-mask:after, 
div.pi-section-dark .js-css-read-less-mask:after { color: #FFFFFF; }

.js-css-read-less-mask { padding-bottom: 1rem; }
.js-css-read-more-mask:after { content: "Read more..."; }
.js-css-read-less-mask:after { content: "Read less..."; }

.js-css-read-more-mask:before {
	position: absolute;
    left: 0; right: 0; top: 0; bottom: 0;
    content: "";
}
div.pi-section-white .js-css-read-more-mask:before {
    background: -moz-linear-gradient(top, rgb(255,255,255,0) 0%, rgb(255,255,255,1) 90%, rgb(255,255,255,1) 100%);
    background: -webkit-linear-gradient(top, rgb(255,255,255, 0) 0%, rgba(255,255,255,1) 90%, rgba(255,255,255,1) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%,rgba(255,255,255,1) 100%);
}
div.pi-section-grey .js-css-read-more-mask:before {
    background: -moz-linear-gradient(top, rgb(238,238,238,0) 0%, rgb(238,238,238,1) 90%, rgb(238,238,238,1) 100%);
    background: -webkit-linear-gradient(top, rgb(238,238,238, 0) 0%, rgba(238,238,238,1) 90%, rgb(238,238,238,1) 100%);
    background: linear-gradient(to bottom, rgba(238,238,238,0) 0%, rgba(238,238,238,1) 90%, rgb(238,238,238,1) 100%);
}
div.pi-section-base .js-css-read-more-mask:before {
    background: -moz-linear-gradient(top, var(--light-accent-clear) 0%, var(--light-accent) 90%, var(--light-accent) 100%);
    background: -webkit-linear-gradient(top, var(--light-accent-clear) 0%, var(--light-accent) 90%, var(--light-accent) 100%);
    background: linear-gradient(to bottom, var(--light-accent-clear) 0%, var(--light-accent) 90%, var(--light-accent) 100%);
}
div.pi-section-dark .js-css-read-more-mask:before {
    background: -moz-linear-gradient(top, var(--dark-color-clear) 0%, var(--dark-color) 90%, var(--dark-color) 100%);
    background: -webkit-linear-gradient(top, var(--dark-color-clear) 0%, var(--dark-color) 90%, var(--dark-color) 100%);
    background: linear-gradient(to bottom, var(--dark-color-clear) 0%, var(--dark-color) 90%, var(--dark-color) 100%);
}

/* RESPONSIVE TEXT ALIGNMENT */
@media (min-width: 1120px) {
	.text-lg-left { text-align: left!important; }
	.text-lg-center { text-align: center!important; }
	.text-lg-right { text-align: right!important; }
}
@media (min-width: 991px) and (max-width: 1119px) {
	.text-md-left { text-align: left!important; }
	.text-md-center { text-align: center!important; }
	.text-md-right { text-align: right!important; }
}
@media (min-width: 768px) and (max-width: 991px) {
	.text-sm-left { text-align: left!important; }
	.text-sm-center { text-align: center!important; }
	.text-sm-right { text-align: right!important; }
}
@media (max-width: 767px) {
	.text-xs-left { text-align: left!important; }
	.text-xs-center { text-align: center!important; }
	.text-xs-right { text-align: right!important; }
}

/* RECAPTCHA */
.grecaptcha-badge { display: none !important; }