@font-face{font-family:"Atari";src:url(/assets/fonts/AtariBold.woff) format("woff");} 
@font-face{font-family:"FeijoaTest";src:url(/assets/fonts/FeijoaTest-Display.woff) format("woff");font-weight:normal;font-style:normal;} 
@font-face{font-family:"FeijoaTest";src:url(/assets/fonts/FeijoaTest-Medium.woff) format("woff");font-weight:500;font-style:normal;}
@font-face{font-family:"FeijoaTest";src:url(/assets/fonts/FeijoaTest-MediumItalic.woff) format("woff");font-weight:500;font-style:italic;} 
@font-face{font-family:"FeijoaTest";src:url(/assets/fonts/FeijoaTest-Bold.woff) format("woff");font-weight:bold;font-style:normal;} 
@font-face{font-family:"mars-extendedregular";src:url(/assets/fonts/marsextendedweb-regular.eot) format("embedded-opentype"), url(/assets/fonts/marsextendedweb-regular.woff) format("woff");}

body,html {
	min-height: 100%;
}

body {
	background: rgb(255, 251, 210);
	color: rgb(44, 82, 52);
	font-family: "mars-extendedregular", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-feature-settings: "kern";
	-webkit-font-feature-settings: "kern";
	font-size: 16px;
	margin: 0;
	padding: 95px 0 0 0;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

a {
	color: inherit;
	border-bottom: 1px solid;
	outline: none;
	text-decoration: none;
}

a.tel {
}

a:hover {
	color: inherit;
}

a:active { color: #000; }

a:focus { color: #000; }

a img { border: 0; }

h1, h2, h3, h4 {
	font-weight: 300;
	margin: 0;
	padding: 0;
}

h1 {
	color: inherit;
	font-size: 50px;
	line-height: 60px;
}

h2 {
	color: inherit;
	font-family:"Atari";
	font-size: 29px;
	letter-spacing: 0.1em;
	line-height: 38px; 
	margin: 0 0 15px 0;
	text-transform: uppercase;
}

h3 {
	color: inherit;
	font-family:"FeijoaTest";
	font-size: 20px;
	line-height: 25px;
	margin-bottom: 5px;
}

h3 a {
	border: none;
	color: inherit;
}

h3 a:hover {
	opacity: 0.5;
}

h4 {
	color: inherit;
	font-family: 'basis-grotesque-bold-pro';
	font-size: 16px;
	line-height: 24px;
	margin: 0 0 15px 0;
	text-transform: uppercase;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child {
	margin-bottom: 0;
}

p {
	font-size: 16px;
	line-height: 25px;
	margin: 0 0 20px 0;
	padding: 0;
}

p.feijoatest-font {
	font-family: "FeijoaTest";
	font-size: 24px;
	line-height: 38.4px;
	margin: 0 0 30px 0;
}

p.atari-font {
	font-family:"Atari";
	letter-spacing: 0.2em;
}

em {
	color: inherit;
	font-style: italic;
}

iframe {
	display: block;
	margin: 0 auto;
	max-width: 100%;
}

.cb { clear: both; }

.content-block img {
	max-width: 100%;
	height: auto !important;
}

.hr {
	border-top: 1px solid;
	margin-top: 3rem;
	padding-bottom: 3rem;
	position: relative;
}

.hr:before {
	background: rgb(255, 251, 210) url(/assets/images/icons/hotel-peter-and-paul-cross-icon.svg) 50% 50% no-repeat;
	background-size: 24px 24px;
	content: '';
	height: 24px;
	left: 50%;
	position: absolute;
	transform: translate(-50%,-50%);
	width: 56px;
}

.hr hr {
	display: none;
}

.section-wrap[id]::before {
  content: '';
  display: block;
  height:      45px;
  margin-top: -45px;
  visibility: hidden;
}

@media screen and (max-width: 600px) {
	p {
		font-size: 12px;
		line-height: 1.6;
	}
	
	p.feijoatest-font {
		font-size: 16px;
		line-height: 1.5;
		margin: 0 0 20px;
	}	
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Header ---------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.header {
	background: rgb(255, 251, 210);
	left: 0;
	height: 50px;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 98;
}

.header a {
	border: none;
}

.main-logo {
	display: block;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.main-logo img {
	display: block;
	height: 17.71px;
	width: 208px;
}

.secondary-logo {
	position: absolute;
	right: 13px;
	top: 9px;
}

.secondary-logo img {
	display: block;
	height: 30.86px;
	width: 24px;
}

@media screen and (max-width: 600px) {
	.main-logo img {
		height: 12.26px;
		width: 144px;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Nav Toggle ------------------------------------------------------------------------------------------------------------ */
/* ----------------------------------------------------------------------------------------------------------------------- */
.nav-toggle {
	-webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
	cursor: pointer;
	display: block;
	height: 18.5px;
	left: 15px;
	position: fixed;
	top: 15px;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	width: 32px;
	z-index: 15;
}

.nav-toggle img {
	display: block;
	width: 100%;
}

body.nav-active .nav-toggle {
	opacity: 0;
	visibility: hidden;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Primary Navigation ---------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.primary-navigation-wrap { 
	background: rgb(247, 234, 72);
	box-sizing: border-box;
	left: -336px;
	bottom: 0px;
	position: fixed;
	overflow-y: auto;
	padding: 50px;
	top: 0px;
	transition: left 0.25s ease;
	width: 336px;
	z-index: 100;
}

body.nav-active .primary-navigation-wrap {
	box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 32px;
	left: 0;
}

body.nav-active .main-content:before {
	background: rgba(74, 91, 61, 0.15);
	bottom: 0px;
	content: '';
	cursor: url(/assets/images/icons/close-x.svg), auto;
	left: 0px;
	opacity: 1;
	pointer-events: auto;
	position: fixed;
	right: 0px;
	top: 0px;
	transform: translateZ(0px);
	transition: opacity 0.25s ease 0s;
	will-change: opacity;
	z-index: 99;
	visibility: visible;
}

@media screen and (max-width: 768px), (max-height: 870px) {
	.primary-navigation-wrap {
		overflow-y: scroll; /* has to be scroll, not auto */
		-webkit-overflow-scrolling: touch;
	}
}

.back-to-home-nav-logo {
	display: block;
	margin: 0 0 60px;	
	text-align: center;
}

.back-to-home-nav-logo img {
	display: block;
	margin: 0 auto;
	width: 20px;
}

.primary-navigation-wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.primary-navigation-wrap ul a,
.primary-navigation-wrap .back-to-home-nav-logo {
	border: none;
	text-decoration: none;
}

.primary-navigation-wrap > ul > li {
    margin: 0 0 10px;
    max-width: 12rem;
}

.primary-navigation-wrap > ul > li > a {
	font-size: 14px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.primary-navigation-wrap > ul > li > ul {
	padding: 10px 0 10px 20px;
}

.primary-navigation-wrap > ul > li > ul > li > a {
	font-size: 14px;
}

/* primary nav form */
.book-a-room-wrap {
	margin-top: 50px;
}

.book-a-room-wrap .button {
	display: block;
	font-size: 16px;
	padding: 15px 10px;
	text-align: center;
}

body.show-book-a-room-form .book-a-room-wrap .button {
	display: none;
}

.book-a-room-wrap form {
	display: none;
	position: relative;
}

body.show-book-a-room-form .book-a-room-wrap form {
	display: block;
}

.book-a-room-wrap .close-form-link {
	border: none;
	position: absolute;
	right: 0;
	top: -25px;
}

.book-a-room-wrap .close-form-link:hover {
	opacity: 0.5;
}

.book-a-room-wrap .field-wrap {
	box-sizing: border-box;
	border-top: 1px solid rgb(44, 82, 52);
	padding: 15px 0;
}

.book-a-room-wrap .field-wrap.last {
	border-bottom: 1px solid rgb(44, 82, 52);
}

.book-a-room-wrap .field-wrap:after {
	clear: both;
	content: '';
	display: table;
}

.book-a-room-wrap .field-wrap label {
	float: left;
	font-size: 11px;
	font-family: "mars-extendedregular", sans-serif;
	text-transform: uppercase;
}

.book-a-room-wrap input {
	float: right;
	background: none;
	border: 0;
	color: rgb(44, 82, 52);
	font-size: 11px;
	font-family: "mars-extendedregular", sans-serif;
	padding: 0;
	text-align: right;
	text-transform: uppercase;
}

.book-a-room-wrap .submit {
	background: none;
	border: 1px solid rgb(44, 82, 52);
	box-sizing: border-box;
	color: rgb(44, 82, 52);
	cursor: pointer;
	display: block;
	font-family: "mars-extendedregular", sans-serif;
	font-size: 12px;
	margin-top: 20px;
	padding: 10px 20px;
	text-transform: uppercase;
	text-align: center;
	width: 100%;
}

.book-a-room-wrap .submit:hover {
	opacity: 0.5;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Main Content Wrap ----------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.wrapper {
}

.main-content {
}

.main-content,
.footer {
	-webkit-transition: transform 0.5s ease, opacity 0.5s ease;
	transition: transform 0.5s ease, opacity 0.5s ease;
}

body.slide-in .main-content {
	opacity: 0;
	transform: translateY(50px);	
}

body.slide-away .main-content,
body.slide-away .footer {
	opacity: 0;
	transform: translateY(-75px);
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Footer ---------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.footer {
	background: rgb(255, 251, 210);
	padding-bottom: 30px;
	padding-top: 1px;
	position: relative;
	z-index: 2;
}

.footer .wrapper {
	max-width: 100%;
	margin: 0 50px;
}

@media screen and (max-width: 600px) {
	.footer .wrapper {
		margin: 0 25px;
	}
}

.footer .hr {

}

.footer a {
	border: none;
}

.footer a:hover {
	opacity: 0.5;
}


.footer .cols-wrap {
	display: flex;
	flex-wrap: wrap;
	max-width: 75rem;
	margin: 0 auto;
}

.footer .col {
	display: inline-block;
	width: 25%;
}

.footer .col h3 {
	font-family: mars-extendedregular, sans-serif;
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0.25em;
	margin-bottom: 0px;
	margin-top: 0px;
	text-transform: uppercase;
}

.footer .col p {
	font-family: FeijoaTest, georgia, times, serif;	
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 1px;
	max-width: 30em;
}

.footer .col.fourth {

}

.footer .col.fourth a {
	display: inline-block;
}

.footer .col.fourth img {
	display: inline-block;
	max-height: 30px;
}

@media screen and (max-width: 1000px) {
	.footer .col {
		width: 50%;
	}
}

@media screen and (max-width: 500px) {
	.footer .col {
		text-align: center;
		width: 100%;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Buttons --------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.button {
	background: none;
	border: 0;
	border-top: 1px solid;
	border-bottom: 1px solid;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	color: rgb(44, 82, 52);
	display: inline-block;
	font-family: "mars-extendedregular", sans-serif;
	font-size: 12px;
	letter-spacing: 3px;
	padding: 5px 20px;
	position: relative;
	text-transform: uppercase;
}

.button.bigger {
	letter-spacing: 2px;
	padding: 10px 10px;
}

a.button:before,
a.button:after,
a.button span:before,
a.button span:after {
	background: rgb(44, 82, 52);
	border-radius: 100%;
	content: '';
	height: 3px;
	position: absolute;
	width: 3px;
}

a.button:before,
a.button:after {
	top: -1.5px;
}

a.button span:before,
a.button span:after {
	bottom: -1.5px;
}

a.button:before,
a.button span:before {
	left: -5px;
}

a.button:after,
a.button span:after {
	right: -5px;
}

.button:hover {
	opacity: 0.5;
}

.next-section-link {
	background: url(/assets/images/icons/next-section-link-down-arrow.svg) 50% 100% no-repeat;
	background-size: 18px 15px;
	border: none;
	display: inline-block;
	font-size: 12px;
	letter-spacing: 3px;
	padding-bottom: 20px;
	text-transform: uppercase;
}

.next-section-link:hover {
	opacity: 0.5;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Miscellaneous --------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.dn { display: none; }

.tac { text-align: center; }

.smt { margin-top: 15px; }

.cb { clear: both; }
.fl { float: left; }
.fr { float: right; }

.clear:after {
	clear: both;
	content: '';
	display: table;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Global Animations ----------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
@-webkit-keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Alerts ---------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.good-alert, 
.bad-alert {
	background: #e7ffe6;
	border: 1px solid #beffbb;
	color: #000000;
	margin: 10px 0;
	position: relative;
	z-index: 10000;
}

.alert-inside {
	margin: 0 auto;
	font-size: 18px;
	padding: 20px 25px 20px 10px;
}

.bad-alert {
	background: #ffe6e6;
	border: 1px solid #ffbbbb;
}

.close-it {
	background: url(/admin/images/icons/hide.png) 0 0 no-repeat;
	height: 20px;
	position: absolute;
	right: 5px;
	top: 5px;
	width: 56px;
}

.close-it span {
	display: none;
}

.good-alert.fixed, 
.bad-alert.fixed {
	border-top: 0;
	border-left: 0;
	border-right: 0;
	left: 0;
	margin: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 10000;
}

.good-alert.fixed .alert-inside, 
.bad-alert.fixed .alert-inside {
	margin: 0 auto;
	position: relative;
	width: 960px;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Global Layouts -------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.section-wrap {
	margin-bottom: 80px;
}

.content-block {
	box-sizing: border-box;
	margin: 0 25px 20px;
	text-align: left;
}

@media screen and (max-width: 600px) {
	.section-wrap {
		margin-bottom: 40px;
	}
	
	.content-block.has-slick-gallery {
		margin: 0 0 20px;
	}
}

.content-block p:last-child {
	margin: 0;
}

@media screen and (min-width: 600px) {
	.section-wrap-inner {
		max-width: 1250px;
		margin: 0 auto;		
	}
	
	.section-wrap.full-bleed-hr {
		margin-bottom: 0;
	}
	
	.section-wrap.full-bleed-hr .section-wrap-inner {
		max-width: 100%;
		margin: 0 25px;
	}

	.section-wrap.desktop-no-margin-bottom {
		margin-bottom: 0;
	}
	
	.content-block {
		box-sizing: border-box;
		margin: 0 25px;
		width: calc(100% - 50px);
		vertical-align: top;
	}

	.section-wrap.align-middle .content-block {
		vertical-align: middle;	
	}
	
	.content-block.col-1 {
		margin-bottom: 40px;
	}

	.content-block.col-1:last-child {
		margin-bottom: 0;
	}

	.content-block.col-2,
	.content-block.col-3,
	.content-block.col-2-3,
	.content-block.col-2-5,
	.content-block.col-3-5,
	.content-block.col-3-4,
	.content-block.col-4-5,
	.content-block.col-4 {
		display: inline-block;
		width: calc(50% - 50px);
		vertical-align: top;
	}

	.content-block.col-3 {
		width: calc((100% / 3) - 50px);
	}

	.content-block.col-2-3 {
		width: calc(((100% / 3) * 2) - 50px);
	}

	.content-block.col-2-5 {
		width: calc(40% - 50px);
	}

	.content-block.col-3-5 {
		width: calc(60% - 50px);
	}

	.content-block.col-3-4 {
		width: calc(75% - 50px);
	}

	.content-block.col-4-5 {
		width: calc(80% - 50px);
	}

	.content-block.col-4 {
		width: calc(25% - 50px);
	}
}

.content-block h1:last-child,
.content-block h2:last-child,
.content-block h3:last-child,
.content-block p:last-child {
	margin-bottom: 0;
}

.image-col img {
	display: block;
}

@media screen and (min-width: 769px) {
	.text-inner {
		padding: 0 25px;
	}
}

@media screen and (min-width: 1025px) {
	.text-inner {
		padding: 0 70px;
	}

	.content-block.col-2:first-child .text-inner {
		padding-left: 118px;
		padding-right: 0;
	}	

	.content-block.col-2:last-child .text-inner {
		padding-right: 120px;
	}

	.content-block.col-2.gator-icon-after:last-child .text-inner {
		padding-right: 70px;
	}
}

.grounds-subsection-intro-text p {
	font-family: Atari, georgia, times, serif;
	font-size: 13px;
	letter-spacing: 2px;
	padding-left: 60px;
	line-height: 22px;
	text-transform: uppercase;
}

@media screen and (max-width: 600px) {
	.grounds-subsection-intro-text p {
		padding-left: 0;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Lazy Load Images ------------------------------------------------------------------------------------------------------ */
/* ----------------------------------------------------------------------------------------------------------------------- */
.lazy-load-wrap {
	display: inline-block;
	position: relative;
}

.lazy-load-wrap img.full-image {
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	transition: opacity 0.5s ease;
	width: 100%;
	z-index: 1;
}

.lazy-load-wrap.full-image-loaded img.full-image {
	opacity: 1;
}

.lazy-load-wrap.full-image-loaded.full-image-only img.full-image {
	position: static;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Embedded Galleries ---------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.slick-list,
.slick-track {
	display: flex;
}

.slide {
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	width: 100%;
}

.slide .image {
}

.slide img,
.slide .lazy-load-wrap img.full-image {
	opacity: 0;
	width: 100%;
}

.slick-no-slide .slick-track {
    width: 100% !important;
    transform: none !important;
    text-align: center;
}

.slick-no-slide .slick-slide {
    float: none;
    display: inline-block;
}

.embedded-gallery {
}

.slick-arrow {
	background: url(/assets/images/icons/white-arrow-left.svg) 50% 50% no-repeat;
	background-size: 12px 21px;
	border: 0;
	cursor: pointer;
	height: 60px;
	left: 0;
	outline: none;
	position: absolute;
	top: calc(50% - 30px);
	text-indent: -9999px;
	width: 50px;
	z-index: 99;
}

.slick-arrow:hover {
	color: pointer;
}

.slick-arrow.slick-next {
	background-image: url(/assets/images/icons/white-arrow-right.svg);
	left: auto;
	right: 0;
}

.slick-slide {
	outline: none;
}

.slick-slide .caption {
	margin-top: 8px;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Miscellaneous Editor Styles ------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.room-price {
	font-size: 12px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.room-price a {
	border: none;
}

.room-price a:hover {
	opacity: 0.5;
}

p.small-body-copy {
	font-size: 12px;
	line-height: 20px;
}

.small-body-copy a {
	border: none;
}

.small-body-copy a:hover {
	opacity: 0.5;
}

.padded-content {
	box-sizing: border-box;
	padding: 50px;
}

@media screen and (max-width: 600px) {
	.padded-content {
		padding: 0;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Before/After Image Set ------------------------------------------------------------------------------------------------ */
/* ----------------------------------------------------------------------------------------------------------------------- */
.before-after-wrap {
	margin-bottom: 150px;
}

.before-after-wrap .content-block {
	text-align: center;
	margin-bottom: 75px;
}

.before-after-image-set {
	box-sizing: border-box;
	display: inline-block;
	position: relative;
}

.before-after-image-set img {
	background: #808080;
	display: block;
	height: auto !important;
	opacity: 0;
	width: 100%;
}

.before-after-image-set .after-image img {
	display: none;
}

.before-after-image-set .before-image {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}

.before-after-image-set .after-image {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0;
	box-sizing: border-box;
	left: 0;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.5s ease;
	z-index: 1;
}

.before-after-image-set:hover .after-image {
	opacity: 1;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Quote Wrap ------------------------------------------------------------------------------------------------------------ */
/* ----------------------------------------------------------------------------------------------------------------------- */
.quote-wrap {
	box-sizing: border-box;
	position: relative;
}

.quote-wrap:before {
	border-top: 1px solid;
	content: '';
	display: block;
	margin: 2rem auto;
	max-width: 4rem;
	width: 100%;
}

.quote-wrap .quote-text {
	font-family: Atari, georgia, times, serif;
	font-size: 0.8rem;
	letter-spacing: 0.15em;
	line-height: 2.5;
	margin: 0px 0px 1rem;	
	text-align: center;
	text-transform: uppercase;
}

.quote-wrap .quote-author {
	font-size: 0.5rem;
	letter-spacing: 0.25em;
	text-align: center;
	text-transform: uppercase;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Homepage -------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
body.viewing-page-home {
	padding-top: 0;
}

body.viewing-page-home .header {
	background: none;
	transition: background 0.3s ease;
}

body.viewing-page-home.past-splash .header {
	background: rgb(255, 251, 210);
}

body.viewing-page-home .main-logo {
	opacity: 0;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	visibility: hidden;
}

body.viewing-page-home.past-splash .main-logo {
	opacity: 1;
	visibility: visible;
}

body.viewing-page-home .secondary-logo,
body.viewing-page-home .nav-toggle {
	background: url(/assets/images/template/peter-and-paul-hotel-crest-tan.svg) 50% 50% no-repeat;
	background-size: contain;
}

body.viewing-page-home .secondary-logo img,
body.viewing-page-home .nav-toggle img {
	opacity: 0;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	visibility: hidden;
}

body.viewing-page-home .nav-toggle {
	background-image: url(/assets/images/icons/nav-toggle-tan.svg);
}

body.viewing-page-home.past-splash .secondary-logo img,
body.viewing-page-home.past-splash .nav-toggle img {
	opacity: 1;
	visibility: visible;
}

.homepage-splash {
	background-size: 100% auto;
	background-attachment: fixed;
	margin: 0;
}

@media screen and (max-width: 600px) {
	.homepage-splash {
		background: none !important;
	}
	
	.homepage-content-wrap:after {
		background: url(/assets/images/template/mobile-homepage-image.jpg) 50% 50% no-repeat;
		background-size: cover;
		bottom: 0;
		content: '';
		left: 0;
		position: fixed;
		right: 0;
		top: 0;
		z-index: -1;
	}
}

.homepage-content-wrap:before {
	background: rgba(74, 91, 61, 0.333);
	bottom: 0;
	content: '';
	left: 0;
	pointer-events: none;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity 0.25s ease 0s;
	z-index: 0;
}

.homepage-content-wrap .content-block {
	position: relative;
	z-index: 1;
}

.homepage-logo-wrap {
	height: 100vh;
	line-height: 100vh;
	position: relative;
	text-align: center;
	z-index: 1;
}

.homepage-logo-wrap svg {
	margin: 0 auto;
	display: inline-block;
	line-height: 100%;
	max-width: 20vw;
	vertical-align: middle;
}

@media screen and (max-width: 600px) {
	.homepage-logo-wrap svg {
		max-width: 50vw;
	}
}

#locked-svg {
	display: none;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	position: fixed;
	max-width: 400px;
}

body.lock-homepage-svg .homepage-logo-wrap svg {
	visibility: hidden;
}

body.lock-homepage-svg #locked-svg {
	display: block;
}

.grounds-wrap {
	background: rgb(255, 251, 210);
	padding-top: 100px;
	position: relative;
	z-index: 2;
}

@media screen and (max-width: 800px) {
	.grounds-wrap {
		padding-top: 1px;
	}
}

#homepage-foreground-image {
	position: relative; 
	z-index: 2;
}

.homepage-lower-text {
	height: 175vh;
	line-height: 175vh;
	opacity: 0;
}

.homepage-lower-text .button {
	border-color: rgb(255, 251, 210);
	color: rgb(255, 251, 210);
    left: 50%;
    font-size: 16px;
    padding: 10px 20px;
    margin-top: 90px;
    position: absolute;
    transform: translateX(-50%);
}

.homepage-lower-text .button:before,
.homepage-lower-text .button:after,
.homepage-lower-text .button span:before,
.homepage-lower-text .button span:after {
	background-color: rgb(255, 251, 210);
}

.homepage-lower-text .text-inner {
	left: 50%;
	line-height: 100%;
	position: fixed;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 50vw;
	z-index: 0;
}

.homepage-lower-text .text-inner h1 {
	color: rgb(255, 251, 210);
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 4vw;
	line-height: 1.2;
	text-align: center;
}

@media screen and (max-width: 700px) {
	.homepage-lower-text .text-inner { 
		width: 100%;
	}
	
	.homepage-lower-text .text-inner h1 {
		font-size: 8vw;
		margin: 0 20px;
	}
	
	.homepage-lower-text .button {
		font-size: 12px;
	}
}

.homepage-icons .animated-svg-wrap,
.homepage-icons a {
	position: fixed;
	z-index: 2;
}

.homepage-icons .animated-svg-wrap {
	max-width: 1.4rem;
	width: 100%;
}

.homepage-icons .animated-svg-wrap svg {
	height: auto;
	width: 100%;
}

.homepage-icons .animated-svg-wrap.bell {
	left: 20vw;
	top: 20vh;
}

.homepage-icons .animated-svg-wrap.hands {
	bottom: 20vh;
	left: 20vw;
	max-width: 2.5rem;
}

.homepage-icons .animated-svg-wrap.newQuill {
	bottom: 20vh;
	right: 20vw;
}

.homepage-icons .animated-svg-wrap.lobster {
	max-width: 3rem;
	right: 20vw;
	top: 20vh;
}

@media screen and (max-width: 600px) {
	.homepage-icons .animated-svg-wrap.bell {
		left: 10vw;
		top: 10vh;
	}

	.homepage-icons .animated-svg-wrap.hands {
		bottom: 10vh;
		left: 10vw;
	}

	.homepage-icons .animated-svg-wrap.newQuill {
		bottom: 10vh;
		right: 10vw;
	}

	.homepage-icons .animated-svg-wrap.lobster {
		right: 10vw;
		top: 10vh;
	}
	
	.viewing-page-grounds .button.bigger {
		margin: 0 0 15px 0;
	}
}

.homepage-icons a {
	border: none;
}

.homepage-icons a:hover {
	opacity: .5;
}

.homepage-history-icon {
	bottom: 25px;
	left: 25px;
	position: fixed;
}

.homepage-book-icon {
	bottom: 25px;
	right: 25px;
	position: fixed;
}

.grounds-wrap .section-wrap:last-child {
	margin-bottom: 0;
	padding-bottom: 80px;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Animated SVGs --------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.animated-svg-wrap {
	position: relative;
}

.animated-svg-wrap.bell svg {
	animation: scrollLeftBellAnimation 2s infinite;
	transform-origin: top left;
}

.animated-svg-wrap.hands {
	animation: scrollBigTassleAnimation 2s infinite 0.5s;
	transform-origin: top left;
}

.animated-svg-wrap.newQuill {
	animation: scrollBigTassleAnimation 2s infinite 1s;
	transform-origin: top left;
}

.animated-svg-wrap.lobster {
	animation: scrollBigTassleAnimation 2s infinite 1.5s;
	transform-origin: top left;

}

.svg-icon {
	position: relative;
	text-align: center;
}

.svg-icon svg {
	transform-origin: top left;
}

.svg-icon.animate svg {
	animation: scrollBigTassleAnimation 2s infinite;
}

.svg-icon:hover svg {
	animation: scrollBigTassleAnimation 2s infinite;
}

.svg-icon.stairs.animate svg,
.svg-icon.stairs:hover svg {
	animation: none;
}

.svg-icon.stairs svg g g {
	transform: translate(-12%, 20%) 
}

.svg-icon.stairs.animate svg g g,
.svg-icon.stairs:hover svg g g {
	animation: scrollStairsAnimation 2s infinite;
}

.beads-icon-left,
.hand-icon-left,
.hat-icon-left,
.wreath-icon-left {
	position: relative;
}

.section-wrap-inner.has-svg-icon {
	position: relative;
}

.beads-icon-left .svg-icon,
.hand-icon-left .svg-icon,
.hat-icon-left .svg-icon,
.wreath-icon-left .svg-icon {
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.section-wrap-inner.has-svg-icon .svg-icon {
	left: 25%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
}

.section-wrap-inner.has-svg-icon.right-icon .svg-icon {
	left: auto;
	right: 25%;
	transform: translateX(100%);
}

.svg-icon.tassles svg {
	max-width: 33px;
}

.svg-icon.write svg {
	max-width: 48px;
}

.svg-icon.drink svg {
	max-width: 32px;
}

.svg-icon.leaf svg {
	max-width: 41px;
}

@media screen and (max-width: 600px) {
	.tassle-icon-above,
	.leaf-icon-above,
	.drink-icon-above {
		padding-right: 60px;
		position: relative;
	}	
	
	.bell-icon-above,
	.write-icon-above,
	.wreath-icon-above {
		padding-left: 60px;
		position: relative;
	}
	
	.tassle-icon-above .svg-icon,
	.leaf-icon-above .svg-icon,
	.drink-icon-above .svg-icon {
		left: auto;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.bell-icon-above .svg-icon,
	.write-icon-above .svg-icon,
	.wreath-icon-above .svg-icon {
		left: 0;
		position: absolute;
		right: auto;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.svg-icon.wreath svg,
	.svg-icon.bells svg,
	.svg-icon.tassles svg,
	.svg-icon.write svg,
	.svg-icon.drink svg,
	.svg-icon.leaf svg  {
		max-width: 40px;
	}
}



.gator-icon-after .svg-icon,
.bell-icon-after .svg-icon,
.stairs-icon-after .svg-icon,
.cherub-icon-after .svg-icon {
	display: block;
	margin: 70px auto 0 auto;
	width: 58px;
}

@keyframes scrollCrossAnimation {
  0% { transform: translate(40%, 95%) rotate(0) translate(-40%, -95%); }
  37.5% { transform: translate(40%, 95%) rotate(15deg) translate(-40%, -95%); }
  75% { transform: translate(40%, 95%) rotate(0) translate(-40%, -95%); }
  100% { transform: translate(40%, 95%) rotate(0) translate(-40%, -95%); }
}

@keyframes scrollBeadsAnimation {
  0% { transform: translate(50%, 80%) rotate(0) translate(-50%, -80%); }
  37.5% { transform: translate(50%, 80%) rotate(-15deg) translate(-50%, -80%); }
  75% { transform: translate(50%, 80%) rotate(0) translate(-50%, -80%); }
  100% { transform: translate(50%, 80%) rotate(0) translate(-50%, -80%); }
}

@keyframes scrollLeftBellAnimation {
  0% { transform: translate(50%, -5%) rotate(0) translate(-50%, 5%); }
  3.75% { transform: translate(50%, -5%) rotate(20deg) translate(-50%, 5%); }
  7.5% { transform: translate(50%, -5%) rotate(-2deg) translate(-50%, 5%); }
  11.25% { transform: translate(50%, -5%) rotate(30deg) translate(-50%, 5%); }
  15% { transform: translate(50%, -5%) rotate(-5deg) translate(-50%, 5%); }
  18.75% { transform: translate(50%, -5%) rotate(16deg) translate(-50%, 5%); }
  22.5% { transform: translate(50%, -5%) rotate(0deg) translate(-50%, 5%); }
  26.25% { transform: translate(50%, -5%) rotate(-4deg) translate(-50%, 5%); }
  30% { transform: translate(50%, -5%) rotate(6deg) translate(-50%, 5%); }
  33.75% { transform: translate(50%, -5%) rotate(-4deg) translate(-50%, 5%); }
  37.5% { transform: translate(50%, -5%) rotate(1deg) translate(-50%, 5%); }
  50% { transform: translate(50%, -5%) rotate(0) translate(-50%, 5%); }
  100% { transform: translate(50%, -5%) rotate(0) translate(-50%, 5%); }
}
@keyframes scrollRightBellAnimation {
  0% { transform:  translate(100%, -5%) rotate(0) translate(-100%, 5%); }
  50% { transform:  translate(100%, -5%) rotate(0) translate(-100%, 5%); }
  53.75% { transform:  translate(100%, -5%) rotate(20deg) translate(-100%, 5%); }
  57.5% { transform:  translate(100%, -5%) rotate(-2deg) translate(-100%, 5%); }
  61.25% { transform:  translate(100%, -5%) rotate(30deg) translate(-100%, 5%); }
  65% { transform:  translate(100%, -5%) rotate(-5deg) translate(-100%, 5%); }
  68.75% { transform:  translate(100%, -5%) rotate(16deg) translate(-100%, 5%); }
  72.5% { transform:  translate(100%, -5%) rotate(0deg) translate(-100%, 5%); }
  76.25% { transform:  translate(100%, -5%) rotate(-4deg) translate(-100%, 5%); }
  80% { transform:  translate(100%, -5%) rotate(6deg) translate(-100%, 5%); }
  83.75% { transform:  translate(100%, -5%) rotate(-4deg) translate(-100%, 5%); }
  87.5% { transform:  translate(100%, -5%) rotate(1deg) translate(-100%, 5%); }
  100% { transform:  translate(100%, -5%) rotate(0) translate(-100%, 5%); }
}

@keyframes scrollPointingAnimation {
  0% { transform: translate(50%, 50%) rotate(0) translate(-50%, -50%) }
  22.5% { transform: translate(50%, 50%) rotate(10deg) translate(-50%, -50%) }
  37.5% { transform: translate(50%, 50%) rotate(-10deg) translate(-50%, -50%) }
  52.5% { transform: translate(50%, 50%) rotate(10deg) translate(-50%, -50%) }
  75% { transform: translate(50%, 50%) rotate(0deg) translate(-50%, -50%) }
}

@keyframes scrollBellsAnimation {
  0% { transform: translate(50%, 0%) rotate(0) translate(-50%, 0%) }
  25% { transform: translate(50%, 0%) rotate(-25deg) translate(-50%, 0%) }
  50% { transform: translate(50%, 0%) rotate(0deg) translate(-50%, 0%) }
  75% { transform: translate(50%, 0%) rotate(25deg) translate(-50%, 0%) }
  100% { transform: translate(50%, 0%) rotate(0deg) translate(-50%, 0%) }
}

@keyframes scrollSkullAnimation {
  0% { transform: translate(0%, 0%) rotate(0) }
  22.5% { transform: translate(50%, -50%) rotate(60deg) }
  75% { transform: translate(0%, 0%) rotate(0deg) }
  100% { transform: translate(0%, 0%) }
}

@keyframes scrollSkullTopAnimation {
  0% { transform: translate(100%, 50%) rotate(0) translate(-100%, -50%) }
  25% { transform: translate(100%, 50%) rotate(-15deg) translate(-100%, -50%) }
  50% { transform: translate(100%, 50%) rotate(10deg) translate(-100%, -50%) }
  100% { transform: translate(100%, 50%) rotate(0deg) translate(-100%, -50%) }
}

@keyframes scrollHatAnimation {
  0% { transform: translate(0%, 0%) rotate(0) }
  25% { transform: translate(0%, 0%) rotate(15deg) }
  50% { transform: translate(0%, 0%) rotate(15deg) }
  75% { transform: translate(0%, 0%) rotate(0deg) }
  100% { transform: translate(0%, 0%) rotate(0deg) }
}

@keyframes scrollTassleAnimation {
  0% { transform: translate(90%, 50%) rotate(0) translate(-90%, -50%) }
  25% { transform: translate(90%, 50%) rotate(-15deg) translate(-90%, -50%) }
  50% { transform: translate(90%, 50%) rotate(-5deg) translate(-90%, -50%) }
  55% { transform: translate(90%, 50%) rotate(-15deg) translate(-90%, -50%) }
  60% { transform: translate(90%, 50%) rotate(-25deg) translate(-90%, -50%) }
  70% { transform: translate(90%, 50%) rotate(-5deg) translate(-90%, -50%) }
  75% { transform: translate(90%, 50%) rotate(-15deg) translate(-90%, -50%) }
  100% { transform: translate(90%, 50%) rotate(0deg) translate(-90%, -50%) }
}

@keyframes scrollStairsAnimation {
  0% { transform: translate(-12%, 20%) }
  100% { transform: translate(-5%, 30%) }
}

@keyframes scrollLeftBranchAnimation {
  0% { transform: translate(0%, 0%) rotate(0) }
  25% { transform: translate(0%, 0%) rotate(15deg) }
  50% { transform: translate(0%, 0%) rotate(15deg) }
  75% { transform: translate(0%, 0%) rotate(0deg) }
  100% { transform: translate(0%, 0%) rotate(0deg) }
}
@keyframes scrollRightBranchAnimation {
  0% { transform: translate(100%, 0%) rotate(0) translate(-100%, 0%) }
  25% { transform: translate(100%, 0%) rotate(-15deg) translate(-100%, 0%) }
  50% { transform: translate(100%, 0%) rotate(-15deg) translate(-100%, 0%) }
  75% { transform: translate(100%, 0%) rotate(0deg) translate(-100%, 0%) }
  100% { transform: translate(100%, 0%) rotate(0deg) translate(-100%, 0%) }
}

@keyframes scrollCherubAnimation {
  0% { transform: translate(40%, 95%) rotate(0) translate(-40%, -95%); }
  37.5% { transform: translate(40%, 95%) rotate(-15deg) translate(-40%, -95%); }
  75% { transform: translate(40%, 95%) rotate(0) translate(-40%, -95%); }
  100% { transform: translate(40%, 95%) rotate(0) translate(-40%, -95%); }
}

@keyframes scrollCherubWingAnimation {
  0% { transform: translate(20%, 35%) rotate(0) translate(-20%, -35%); }
  37.5% { transform: translate(20%, 35%) rotate(-15deg) translate(-20%, -35%) }
  75% { transform: translate(20%, 35%) rotate(0) translate(-20%, -35%); }
  100% { transform: translate(20%, 35%) rotate(0) translate(-20%, -35%); }
}

@keyframes scrollCherubArrowAnimation {
  0% { transform: translate(0%, 0%)  }
  25% { transform: translate(50%, 0%) }
  50% { transform: translate(50%, 0%); opacity: 0 }
  100% { transform: translate(50%, 0%); opacity: 0 }
}

@keyframes scrollBigTassleAnimation {
  0% { transform: translate(50%, 0%) rotate(0) translate(-50%, 0%) }
  22.5% { transform: translate(50%, 0%) rotate(10deg) translate(-50%, 0%) }
  37.5% { transform: translate(50%, 0%) rotate(-10deg) translate(-50%, 0%) }
  52.5% { transform: translate(50%, 0%) rotate(10deg) translate(-50%, 0%) }
  75% { transform: translate(50%, 0%) rotate(0deg) translate(-50%, 0%) }
}

@keyframes scrollWritingAnimation {
  0% { transform: translate(100%, 0%) rotate(0) translate(-100%, 0%) }
  25% { transform: translate(100%, 0%) rotate(-20deg) translate(-100%, 0%) }
  50% { transform: translate(100%, 0%) rotate(-20deg) translate(-100%, 0%) }
  55% { transform: translate(100%, 0%) rotate(-22deg) translate(-100%, 0%) }
  60% { transform: translate(100%, 0%) rotate(-20deg) translate(-100%, 0%) }
  65% { transform: translate(100%, 0%) rotate(-22deg) translate(-100%, 0%) }
  90% { transform: translate(100%, 0%) rotate(0deg) translate(-100%, 0%) }
  100% { transform: translate(100%, 0%) rotate(0deg) translate(-100%, 0%) }
}

@keyframes scrollGlassAnimation {
  0% { transform: translate(0%, 0%) rotate(0) }
  30% { transform: translate(-10%, -15%) rotate(10deg) }
  65% { transform: translate(0%, 0%) rotate(-10deg) }
  100% { transform: translate(0%, 0%) }
}

@keyframes scrollPalmAnimation {
  0% { transform: translate(100%, 50%) rotate(0) translate(-100%, -50%) }
  25% { transform: translate(100%, 50%) rotate(-30deg) translate(-100%, -50%)  }
  50% { transform: translate(100%, 50%) rotate(-30deg) translate(-100%, -50%)  }
  75% { transform: translate(100%, 50%) rotate(0deg) translate(-100%, -50%)  }
  100% { transform: translate(100%, 50%) rotate(0deg) translate(-100%, -50%)  }
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Grounds --------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.grounds-graphic {
	-webkit-box-pack: justify;
	align-items: flex-start;
	display: flex;
	height: 0px;
	justify-content: space-between;
	margin: 0 auto 150px auto;
	padding-top: 280px;
	position: relative;
	width: 760px;
}

@media screen and (max-width: 800px) {
	.grounds-graphic {
		display: none;
	}
}

.grounds-graphic a {
	border: 0;
}

.grounds-graphic a .text {
	backface-visibility: hidden;
	color: inherit;
	display: block;
	margin-top: 1rem;
	max-width: 14rem;
	padding: 0.5rem;
	position: relative;
	text-align: center;
	text-decoration: none;
	transition: opacity 0.25s ease 0s;
	will-change: opacity;
	z-index: 2;
}

.grounds-graphic a .title {
    display: block;
    font-family: Atari, georgia, times, serif;
    font-size: 0.875rem;
    font-weight: 300;
    letter-spacing: 0.15em;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.grounds-graphic a .desc {
	display: block;
	font-size: 0.725rem;
	font-family: FeijoaTest, georgia, times, serif;
	margin: 0px;
}

.grounds-graphic img {
	bottom: 0px;
	left: 13%;
	position: absolute;
	top: 0px;
	transition: opacity 0.25s ease 0s;
	width: 90%;
	z-index: -1;
}

.grounds-graphic a:before {
	background: none;
	content: '';
	opacity: .5;
	position: absolute;
	z-index: 4;
}

.grounds-graphic a.the-school-house:before {
	height: 79%;
	left: 13%;
	top: 26%;
	width: 32%;
}

.grounds-graphic a.the-rectory:before {
	height: 49%;
	left: 45%;
	top: 56%;
	width: 16%;
}

.grounds-graphic a.the-church:before {
	height: 105%;
	left: 61%;
	top: 0%;
	width: 20%;
}

.grounds-graphic a.the-convent:before {
	height: 45%;
	left: 81%;
	top: 60%;
	width: 8%;
}

.grounds-graphic a:hover img,
.grounds-graphic a:hover .text {
	opacity: 0.5;
}

.viewing-page-grounds .slide {
	max-height: 800px;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Calendar -------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.events-wrap {
	margin: 0 auto 100px;
	text-align: center;
	width: calc(100% - 8rem);
}

@media screen and (max-width: 600px) {
	.events-wrap {
		width: calc(100% - 4rem);
	}
}

.every-week-events h2,
.upcoming-events h2 {
	border-top: 1px solid;	
	font-size: 1rem;
	margin: 0 0 -15px;
	padding-top: 30px;
	text-align: center;
    font-family: mars-extendedregular, sans-serif;
    font-weight: 400;
    letter-spacing: 0.75em;
    text-transform: uppercase;
}

.every-week-events .event-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	margin: 0 auto;
    max-width: 60rem;
}

.every-week-events .day-item {
	align-items: center;
	display: flex;
	flex-direction: column;
	margin-bottom: 4rem;
}

.every-week-events .day-item > h3 {
	font-size: 0.8em;
    font-family: mars-extendedregular, sans-serif;
    font-weight: 400;
    letter-spacing: 0.15em;
    line-height: 1.3;
    margin: 0px;
    text-transform: uppercase;
}

.every-week-events .day-item .event-item {
	-webkit-box-align: center;
	-webkit-box-pack: start;
	align-items: center;
	display: flex;
	flex-direction: column;
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 0.875rem;
	justify-content: flex-start;
	line-height: 1.5;
	max-width: 16rem;
	padding: 1rem 2rem 0rem;
	text-align: center;
}

@media screen and (max-width: 600px) {
	.every-week-events .day-item .event-item {
		padding: 1rem 0 0;
	}
}

.every-week-events .day-item .event-item h3 {
	margin-bottom: 15px;
}

.every-week-events .day-item .event-item .description,
.every-week-events .day-item .event-item .description p {
	font-size: 0.875rem;
}

.every-week-events .day-item .event-item .description {

}

.upcoming-events {
	margin-top: 70px;
}

.weeks-out-links {
	margin-left: -20px;
	margin-right: -20px;
}

.weeks-out-links a {
	border: none;
	display: inline-block;
	font-family: Atari, georgia, times, serif;
	font-size: 0.875rem;
	font-weight: 300;
	letter-spacing: 0.15em;
	margin: 0 15px 30px;
}

.weeks-out-links a .range {
	display: block;
}

.weeks-out-links a .title {
	display: block;
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 0.725rem;
	letter-spacing: 0;
	margin: 0px;
}

.weeks-out-links a:hover {
	opacity: 0.5;
}

.weeks-out-sections {
	max-width: 40rem;
	margin: 0 auto;
	width: 100%;
}

.weeks-out-section {
	margin-bottom: 0;
	padding-top: 100px;
}

@media screen and (max-width: 600px) {
	.weeks-out-section {
		padding-top: 70px;
	}
}

.weeks-out-section .section-title {
	margin-bottom: 20px;
	position: relative;
}

.weeks-out-section .section-title:before {
	border-top: 1px solid;
	content: '';
	left: 0;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.weeks-out-section .section-title span {
	background: rgb(255, 251, 210);
	display: inline-block;
	padding: 0 20px;
	position: relative;
	z-index: 1;
}

.weeks-out-section .event-item {
	padding: 2rem 0;
}

@media screen and (min-width: 600px) {
	.weeks-out-section .event-item {
		padding: 2rem;
	}
}	

.weeks-out-section .event-item > .date {
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 0.8em;
	font-weight: 400;
	letter-spacing: 0.15em;
	line-height: 1.3;
	text-transform: uppercase;
}

.weeks-out-section .event-item h3 {
	font-size: 1.5em;
	font-weight: 400;
	line-height: 1.3;
	margin-top: 0.5em;
}

.weeks-out-section .event-item h3 .date {
	display: inline-block;
	margin-top: 10px;
}

.weeks-out-section .event-item .description {
	margin-top: 15px;
}

.weeks-out-section .event-item .description,
.weeks-out-section p {
	font-family: FeijoaTest, georgia, times, serif;
}

.weeks-out-section .event-item .description p {

}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Libations ------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
body.viewing-page-libations {
	padding-top: 0;
}

.libations-new-menu {
	display: none;
}

body.viewing-page-libations .libations-new-menu {
	display: block;
}

@media screen and (min-width: 780px) {
	body.viewing-page-libations .section-wrap-inner {
		max-width: 978px;
	}
	
	body.viewing-page-libations .content-block:nth-child(2) .text-inner {
		padding: 0 30px 0 0;
	}
	
	body.viewing-page-libations .content-block:nth-child(3) .text-inner {
		padding: 0 0 0 30px;
	}
}

body.viewing-page-libations p.feijoatest-font {
	font-size: 1.25rem;
	line-height: 1.6;
}

.intro-section .section-wrap-inner {
	height: 75vh;
	line-height: 75vh;
	text-align: center;
}

.intro-section .content-block {
	display: inline-block;
	line-height: 100%;
	vertical-align: middle;
}

.intro-section h1 {
	color: rgb(255, 251, 210);
	font-family: Atari, georgia, times, serif;
	font-size: 7vw;
	font-weight: 400;
	letter-spacing: 0.1em;
	margin: 0px;
	padding: 0px;
	text-transform: uppercase;
}

body.viewing-page-libations h2 {
	font-family: Atari, georgia, times, serif;
	font-size: 2.5rem;
	letter-spacing: 0.1em;
	line-height: 1.2;
	margin-bottom: 30px;
}

@media screen and (max-width: 600px) {
	body.viewing-page-libations h2 {	
		font-size: 22px;
	}
	
	body.viewing-page-libations p.feijoatest-font {
		font-size: .9rem;
	}
}

@media screen and (min-width: 1025px) {
	body.viewing-page-libations .content-block:first-child .text-inner {
		margin-left: -10px;
		padding-left: 0;
		padding-right: 50px;
	}

	body.viewing-page-libations .content-block:last-child .text-inner {
		margin-right: -10px;
		padding-left: 50px;
		padding-right: 0;
	}
	
	body.viewing-page-libations .content-block.intro-text-block .text-inner {
		margin-left: 0;
		margin-right: 0;
		padding: 0;
	}
}

body.viewing-page-libations h3 {
	font-size: 1.5rem;
	line-height: 1.2;
}

body.viewing-page-libations p.small-body-copy {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.6;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Gallery --------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.viewing-page-gallery,
.viewing-page-gallery .header,
.viewing-page-gallery .hr:before,
.viewing-page-gallery .footer {
	background-color: rgb(247, 234, 72);
}

.viewing-page-gallery .content-block {
	vertical-align: middle;
}

@media screen and (max-width: 600px) {
	.viewing-page-gallery .section-wrap {
		margin: 0;
	}

	.viewing-page-gallery .section-wrap:last-child {
		margin-top: 80px;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* History --------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width: 1300px) {
	body.viewing-page-history {
		padding-top: 150px;
	}
	
	body.viewing-page-history .section-wrap-inner {
		max-width: 100%;
		margin: 0 50px;
	}
	
	body.viewing-page-history .content-block.col-3-5 {
		max-width: 816px;
	}
	
	body.viewing-page-history .padding-right {
		padding-right: 150px;
	}

	body.viewing-page-history .content-block .text-inner .padded-content {
		padding-left: 150px;
	}
}

body.viewing-page-history p {
	font-size: 1.25rem;
	line-height: 1.6;	
}

body.viewing-page-history p.feijoatest-font {
	font-size: 1.75rem;
	line-height: 1.2;	
}

body.viewing-page-history .section-wrap:first-child p.feijoatest-font {
	font-size: 2.25rem;
}

body.viewing-page-history h2 {
	font-family: Atari, georgia, times, serif;
	font-size: 2.5rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.2;
	margin-bottom: 15px;
	margin-top: 3.5rem;
	text-align: center;
	text-transform: uppercase;
}

@media screen and (min-width: 1025px) {
	body.viewing-page-history .content-block .text-inner {
		max-width: 784px;
		padding: 0;
	}
}

body.viewing-page-history p.small-body-copy {
	font-size: 12px;
}

body.viewing-page-history .history-intro-section p.small-body-copy {
	font-size: 16px;
}

@media screen and (min-width: 600px) {
	.history-middle-section {
		max-width: 1280px; 
		margin: 0 auto;
	}
}

@media screen and (max-width: 600px) {
	body.viewing-page-history .section-wrap:first-child p.feijoatest-font {
		font-size: 1.5rem;
	}
	
	body.viewing-page-history p {
		font-size: 0.9rem;
	}
	
	body.viewing-page-history h2 {
		font-size: 1.75rem;
	}
	
	body.viewing-page-history p.room-price {	
		font-size: .75rem;
	}
	
	body.viewing-page-history p.small-body-copy {
		font-size: 0.625rem;
	}
	
	.before-after-wrap .content-block {
		margin-bottom: 25px;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* The Marigny & New Orleans (Maps) -------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.viewing-page-new-orleans .section-wrap:first-child p.feijoatest-font,
.viewing-page-new-orleans .section-wrap p.feijoatest-font big {
	font-size: 2.25rem;
	line-height: 1.2;
}

.marigny-map-and-guide .section-wrap-inner {
	max-width: 100%;
}

.marigny-map-wrap {
	background: rgb(255, 251, 210);
	position: relative;
}

.marigny-map-image {
	mix-blend-mode: multiply;
	overflow: hidden;
	position: relative;
}

.marigny-map-image img {
	display: block;
	max-width: none;
	width: 100%;
}

.marigny-map-pins .map-pin {
	background: rgb(113, 133, 108);
	border-radius: 50%;
	color: rgb(255, 251, 210);
	cursor: pointer;
	font-size: 0.5rem;
	line-height: 1.5rem;
	position: absolute;
	text-align: center;
	transform: translate(-50%, -50%);
	width: 1.5rem;
	z-index: initial;
}

.marigny-map-pins .map-pin:hover {
    background: rgb(44, 82, 52);
    z-index: 200;
}

.marigny-map-pins .map-pin.active {
    background: rgb(247, 234, 72);
    color: rgb(44, 82, 52);
    z-index: 200;
}

.marigny-map-pins .map-pin .counter {
	
}

.marigny-map-pins .map-pin .counter:hover,
.marigny-map-pins .map-pin.active .counter {
	text-indent: -9999px;
}

.marigny-map-pins .map-pin .counter:hover:before,
.marigny-map-pins .map-pin.active .counter:before {
	bottom: 0;
	content: '+';
	left: 0;
	font-size: 12px;
	position: absolute;
	right: 0;
	text-align: center;
	text-indent: 0;
	top: 0;
	line-height: 24px;
}

.marigny-map-pins .map-pin.active .counter:before {
	content: '-';
}

.marigny-map-pins .map-pin .overlay {
	background: rgb(44, 82, 52);
	color: rgb(255, 251, 210);
	font-size: 0.5rem;
	left: 50%;
	line-height: 140%;
	max-width: 10rem;
	opacity: 0;
	padding: 0.25rem 1rem;
	pointer-events: none;
	position: absolute;
	text-align: center;
	top: 26px;
	transform: translateX(-50%);
	width: 125px;
	z-index: -1;
}

.marker-content {
	text-align: center;
}

.marigny-map-pins .map-pin:hover .overlay,
.marigny-map-pins .map-pin.active .overlay {
	pointer-events: inherit;
	opacity: 1;
    z-index: 200;
}

.marigny-map-pins .map-pin.active .overlay {
    background: rgb(247, 234, 72);
    color: rgb(44, 82, 52);
}

.marker-content .title,
.marigny-map-pins .map-pin .overlay .title {
	display: block;
}

.marigny-map-pins .map-pin .overlay .description,
.marigny-map-pins .map-pin .overlay .map-url {
	display: none;
}

.marker-content .description,
.marker-content .map-url,
.marigny-map-pins .map-pin.active .overlay .description,
.marigny-map-pins .map-pin.active .overlay .map-url {
	display: block;
}

.marker-content .map-url,
.marigny-map-pins .map-pin.active .overlay .map-url {
	padding: 5px 0;
}

.marker-content .map-url a:hover,
.marigny-map-pins .map-pin.active .overlay .map-url a:hover {
	opacity: 0.5;
}

.marker-content .description:before,
.marker-content .description:after,
.marigny-map-pins .map-pin.active .overlay .description:before,
.marigny-map-pins .map-pin.active .overlay .description:after {
	background: rgb(44, 82, 52);
	content: '';
	display: block;
	height: 0.5px;
	margin: 5px auto;
	width: 10px;
}

.map-categories-and-pins-wrap {
	display: flex;
	flex-wrap: wrap;
	margin: 70px;
}

.map-categories-and-pins-wrap .map-categories {
	box-sizing: border-box;
	vertical-align: top;
	width: 250px;
}

.map-categories-and-pins-wrap .map-categories ul {
	list-style: none;
	margin: 0;
	padding: 0;
	max-width: 160px;
}

.map-categories-and-pins-wrap .map-categories ul li {
	margin-bottom: 8px;
}

.map-categories-and-pins-wrap .map-categories ul li a {
	border: none;
	display: inline-block;
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 0.75rem;
	padding-left: 16px;
	position: relative;
}

.map-categories-and-pins-wrap .map-categories ul li a:before {
	box-sizing: border-box;
	content: '';
	display: block;
	position: absolute;
    border-color: initial;
    border-image: initial;
    border-radius: 50%;
    border-style: solid;
    border-width: 1px;
    height: 10px;
    left: 0px;
    top: 3px;
    width: 10px;
}

.map-categories-and-pins-wrap .map-categories ul li a.selected:before {
	background: rgb(44, 82, 52);
}

.map-categories-and-pins-wrap .map-categories ul li a:hover {
	opacity: 0.5;
}

.map-categories-and-pins-wrap .map-locations {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	vertical-align: top;
	width: calc(100% - 250px);
}

.map-categories-and-pins-wrap .map-locations .map-item {
	margin-bottom: 2.5rem;
	margin-right: 2.5rem;
	max-width: 100%;
	position: relative;
	width: 13rem;
}

.map-categories-and-pins-wrap .map-locations .map-item .counter {
	background: rgb(44, 82, 52);
	border-radius: 50%;
	color: rgb(255, 251, 210);
	cursor: pointer;
	font-size: 0.5rem;
	left: -10%;
	line-height: 1.5rem;
	overflow: hidden;
	position: absolute;
	text-align: center;
	top: 1em;
	transform: translate(-50%, -50%);
	width: 1.5rem;
	z-index: initial;
}

.map-categories-and-pins-wrap .map-locations .map-item .title {
	cursor: pointer;
	font-size: 0.8rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	margin: 0 0 5px 0;
	text-transform: uppercase;
}

.map-categories-and-pins-wrap .map-locations .map-item .counter:hover {
	text-indent: -9999px;
}

.map-categories-and-pins-wrap .map-locations .map-item .counter:hover:before {
	bottom: 0;
	content: '+';
	left: 0;
	font-size: 16px;
	position: absolute;
	right: 0;
	text-align: center;
	text-indent: 0;
	top: 0;
	line-height: 22px;
}

.map-categories-and-pins-wrap .map-locations .map-item .counter:hover,
.map-categories-and-pins-wrap .map-locations .map-item .title:hover {
	opacity: 0.5;
}

.map-categories-and-pins-wrap .map-locations .map-item .description,
.map-categories-and-pins-wrap .map-locations .map-item .description p {
	display: inline;
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 0.8rem;
}

.map-categories-and-pins-wrap .map-locations .map-item .address1 {
	display: inline;
	font-family: FeijoaTest, georgia, times, serif;
	font-size: 0.8rem;
	font-style: italic;
	opacity: 0.75;
	margin-left: 5px;
	white-space: nowrap;
}

.greater-new-orleans-map {
	background: #fffbd2;
	height: 75vh;
}

.greater-new-orleans-map-wrap .map-categories-and-pins-wrap .map-locations .map-item .description,
.greater-new-orleans-map-wrap .map-categories-and-pins-wrap .map-locations .map-item .address1 {
	display: none;
}

.custom-marker {
	background: url(/assets/images/map-pin-icons/map-pin.svg) 50% 50% no-repeat;
	background-size: contain;
	height: 15px;
	width: 18px;
}

.custom-marker.cat-13 {
	background-image: url(/assets/images/map-pin-icons/fork-and-knife.png);
}

.custom-marker.cat-14 {
	background-image: url(/assets/images/map-pin-icons/bag.png);
}

.custom-marker.cat-15 {
	background-image: url(/assets/images/map-pin-icons/music-note.svg);
}

.custom-marker.cat-16 {
	background-image: url(/assets/images/map-pin-icons/star.svg);
}

.custom-marker.cat-17 {
	background-image: url(/assets/images/map-pin-icons/camera.png);
}

.custom-marker.cat-18 {
	background-image: url(/assets/images/map-pin-icons/activity.svg);
}

.custom-marker.cat-19 {

}

.custom-marker.cat-20 {

}

.custom-marker.main-location {
	width: 	40px;
	height: 120px;
	line-height: 120px;
	background: url(/assets/images/icons/building-icon.svg) 50% 50% no-repeat;
	background-size: 30px auto;
	/*
	h622
	w191
	*/
}

.gm-style .gm-style-iw-c {
	background: rgb(247, 234, 72) !important;
	color: rgb(44, 82, 52) !important;
}

.gm-style .gm-style-iw-d {
	overflow: auto !important;
}

.gm-style .gm-style-iw-t::after {
	background: linear-gradient(45deg,rgba(247, 234, 72,1) 50%,rgba(247, 234, 72,0) 51%,rgba(247, 234, 72,0) 100%) !important;
}

.marker-content {
	width: 250px;
	padding: 0 0 20px;
}

.marker-content h3 {
	font-size: 15px;
	margin: 0 0 5px 0;
}

.marker-content a {
	text-decoration: none;
}

.marker-content a:hover {
	opacity: .7;
}

.mobile-map-select {
	display: none;
}

@media screen and (max-width: 600px) {
	.viewing-page-new-orleans .section-wrap:first-child p.feijoatest-font, 
	.viewing-page-new-orleans .section-wrap p.feijoatest-font big {
		font-size: 1.5rem;
	}
	
	.map-categories-and-pins-wrap {
		margin: 25px;
	}
	
	.map-categories {
		display: none;
	}
	
	.map-categories-and-pins-wrap .map-locations {
		width: auto;
	}
	
	.map-categories-and-pins-wrap .map-locations .map-item {
		display: none;
	}
	
	.greater-new-orleans-map {
		height: 45vh;
	}
	
	.mobile-map-select {
		background: rgb(255, 251, 210);
		border: 1px solid rgb(204, 204, 204);
		color: rgb(128, 128, 128);
		display: block;
		font-family: mars-extendedregular, sans-serif;
		font-size: 16px;
		padding: 8px;
		width: 100%;
	}
}



/* ----------------------------------------------------------------------------------------------------------------------- */
/* Lagniappe ------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.viewing-page-lagniappe h1,
.viewing-page-the-holy-ghosts h1 {
	line-height: 1.2;
	font-size: 2.5rem;	
	margin-bottom: 20px;
}

body.viewing-page-the-holy-ghosts {
	padding-top: 130px;
}

body.viewing-page-the-holy-ghosts p {
	font-size: 1.25rem;
	line-height: 1.4;
}

body.viewing-page-the-holy-ghosts p.room-price {
	font-size: 12px;
}

.viewing-page-the-holy-ghosts .content-block {
	margin-bottom: 75px;
}

.viewing-page-the-holy-ghosts iframe {
	margin-bottom: 15px;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Press ----------------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.press-section-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-top: 50px;
	text-align: center;
}

.press-item {
	-webkit-box-align: center;
	-webkit-box-pack: justify;
	align-items: center;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	font-family: FeijoaTest, georgia, times, serif;
	justify-content: space-between;
	margin: 0px 7vw 6rem;
	position: relative;
	text-align: center;
	width: 18vw;
}

@media screen and (max-width: 1320px) {
	.press-item {
		width: 25vw;
	}
}

@media screen and (max-width: 600px) {
	.press-item {
		width: 100%;
	}
}

@media screen and (min-width: 600px) {
	.press-item:after {
		background: url(/assets/images/icons/hotel-peter-and-paul-cross-icon.svg) no-repeat;
		content: "";
		display: block;
		height: 1.25rem;
		left: calc(100% + 7vw);
		position: absolute;
		top: calc(50% + 30px);
		transform: translate(-50%, -50%);
		width: 1.25rem;
	}

	.press-item:last-child:after { display: none; }
}

@media screen and (min-width: 600px) and (max-width: 1320px) {
	.press-item:nth-child(2n):after { display: none; }
}

@media screen and (min-width: 1320px) {
	.press-item:nth-child(3n):after { display: none; }
}

.press-item h3 {

}

.press-item h3 a {
	border: none;
}

.press-item h3 a:hover {
	opacity: 0.5;
}

.press-item .title {
	font-size: 13px;
    margin-bottom: 1rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.5rem;
    max-width: 14rem;
}

.press-item .article-image {
	border: none;
}

.press-item .article-image:hover {
	opacity: 0.5;
}

.press-item .article-image img {
	display: block;
	width: 100%;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Responsive Styles ----------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.mobile-only {
	display: none;
}



/* ---------------------------------------------------------------------------------------------------------------------- */
/* iPhone Landscape (Rotate) -------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------------------- */
.mobile-message {
	display: none;
}

@media only screen 
  and (min-device-width: 414px) 
  and (max-device-width: 736px) 
  and (-webkit-min-device-pixel-ratio: 3)
  and (orientation: landscape),
  
  only screen 
  and (min-device-width: 375px) 
  and (max-device-width: 667px) 
  and (-webkit-min-device-pixel-ratio: 2)
  and (orientation: landscape) { 	
  	body {
  		background: #fff;
  	}
  	
  	#page-content-wrap {
  		opacity: 0.1 !important;
  		overflow: hidden;
  		max-height: 100%;
  	}
  	
  	.mobile-message {
  		bottom: 0;
  		position: fixed;
  		display: block;
  		top: 0;
  		left: 0;
  		line-height: 100vh;
  		right: 0;
  		text-align: center;
  		z-index: 9999;
  	}
  	
  	.mobile-message img {
  		display: block;
  		margin: 0 auto 30px auto;
  	}
  	
  	.mobile-message div {
  		color: #484848;
  		display: inline-block;
  		line-height: 25px;
  		font-size: 24px;
  		vertical-align: middle;
  	}
}


/* ---------------------------------------------------------------------------------------------------------------------- */
/* Covid Site Alert ----------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------------------- */
.covid-site-alert {
	background: #fff;
	box-shadow: 0 0 30px rgba(0,0,0,0.5);
	left: 50%;
	min-width: 300px;
	max-width: 600px;
	padding: 30px;
	position: fixed;
	text-align: center;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 10001;
}

.covid-site-alert h1 {
	font-size: 26px;
	margin-bottom: 20px;
}

.covid-site-alert p {
	font-size: 13px;
}

.covid-site-alert p:last-child {
	margin-bottom: 0;
}

.close-covid-site-alert {
	position: absolute;
	top: -40px;
	right: 0;
	height: 30px;
	width: 30px;
	transform: rotate(-45deg);
	text-decoration: none;
	border: 0;
}

.close-covid-site-alert:hover {
	opacity: .8;
}

.close-covid-site-alert:after {
	background: #fff;
	content: '';
	height: 2px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
}

.close-covid-site-alert:before {
	background: #fff;
	content: '';
	height: 30px;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 2px;
}

.covid-site-alert-underlay {
	background: #000;
	bottom: 0;
	left: 0;
	opacity: .7;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 10000;
}

.covid-site-alert.overflow {
	bottom: 0;
	left: 0;
	overflow-y: scroll; /* has to be scroll, not auto */
	-webkit-overflow-scrolling: touch;
	right: 0;
	top: 0;
	transform: none;
}

.covid-site-alert.overflow .close-covid-site-alert { 
	right: 15px;
	top: 15px;
}

.covid-site-alert.overflow .close-covid-site-alert:after,
.covid-site-alert.overflow .close-covid-site-alert:before {
	background: #000;
}