/*******************************************************************
	CONTENT
*******************************************************************/
#masthead {
	height: 600px ;
}
h1:after {
	content: '';
	position: absolute;
	bottom: -10px;
	width: 33%;
	height: 2px;
	left: 50%;
	transform: translateX(-50%);
	background: #dfae03;
}
#backstretch {
	position: relative;
	z-index: 10;
}

.ada h2 {
	font: 300 26px/36px 'Open Sans', 'Myriad Pro', Arial, sans-serif;
}

.special-list {
	background: rgba(0, 0, 0, 0.25) none repeat scroll 0% 0%;
	padding: 5px 25px;
	border-radius: 10px; 
	box-shadow: 1px 1px 2px rgba(0,0,0,0.5)
}

.stack ul:first-child {
	margin-top: 0;
}
#displayCalendarText {
	display: none;
}


#masthead .scroll {
	bottom: -25px;
	left: 50%;
	background: #fff;
	color: #dfae03;
	padding: 15px 15px 25px 15px;
	border-radius: 40%;
	font-size: 24px;
	line-height: 24px;
}

.heading-small {
	font: 700 16px/26px 'Open Sans', 'Myriad Pro', Arial, sans-serif;
	text-align: center;
}

/*******************************************************************
  ACCESSIBILITY
*******************************************************************/

#accessibility h2 {
	margin-top: 40px;
}

#accessibility h3 {
	font-size: 16px;
	margin: 0 0 5px 0;
	padding: 10px;
}

#accessibility h4 {
	background: #dfae03;
	color: #FFF;
	cursor: pointer;
	font: 700 16px/26px 'Open Sans', 'Myriad Pro', Arial, sans-serif;
	letter-spacing: 1px;
	margin: 0 0 1px 0;
	padding: 10px;
}

#accessibility h4:hover {
	background: #0f5b8f;
	color: #FFF;
}

#accessibility .accordion div {
	display: none;
	padding: 10px;
}

#accessibility hr {
	background: #000;
}

#site-map {
	text-align: center;
}

#site-map li {
	list-style: none;
}

/*******************************************************************
	MEDIA LOGOS
*******************************************************************/

.media-links {
	margin: 30px 0 80px 0;
	text-align: center;
}

.media-links #customArea .customAreaItem {
	display: inline-block;
	width: 24%;
}

.media-links a:link,
.media-links a:visited {
	background: #FBFBFB;
	display: block;
	font-size: 16px;
	padding: 20px 0;
	text-decoration: none;
}

.media-links a:hover,
.media-links a:focus {
	background: #f7f7f7;
}

.media-links a:focus {
	outline: 2px solid #dfae03;
}

.media-links img {
	background: #FFF;
	border: 1px solid #ededed;
	display: block;
	margin: 0 auto 20px auto;
	padding: 5px;
}

.media-links .span {
	display: block;	
	width: 100%;
}

.featured {
	margin: 40px 0 0 0;
	text-align: center;
}

/*******************************************************************
	SPECIALS
*******************************************************************/

#specials .special {
	overflow: hidden;
	clear: both;
	padding-bottom: 5px;
	margin: 20px 0;
	padding: 20px 25px 15px 25px;
}

#specials .special:nth-child(even) a:link,
#specials .special:nth-child(even) a:visited,
#specials .special:nth-child(even) h2,
#specials .special:nth-child(even) h3 {
	color: #fff;
}
#specials .special:nth-child(even) {
	
	background: url(../images/bknd.png);
	color: #fff;
	border-radius: 10px; 
}

#specials .special:first-child {
	margin-top: 50px;
}

#specials .special:last-child {
	border-bottom: none;
}

#specials h2 {
	margin-top: 0;
}

#specials .photoborder {
	max-width: 33%;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.2);
}

/*******************************************************************
	TABLES
*******************************************************************/
/* Tables */
table {
	background: white;
	margin-bottom: 1.25em;
	border: solid 1px #dddddd; 
}
table thead,
table tfoot {
	background: whitesmoke;
	font-weight: bold; 
}
table thead tr th,
table thead tr td,
table tfoot tr th,
table tfoot tr td {
	padding: 0.5em 0.625em 0.625em;
	font-size: 0.875em;
	color: #222222;
	text-align: left; 
}
table tr th,
table tr td {
	padding: 0.5625em 0.625em;
	font-size: 0.875em;
	color: #222222; 
}
table tr.even, table tr.alt, table tr:nth-of-type(even) {
	background: #f9f9f9; }
table thead tr th,
table tfoot tr th,
table tbody tr td,
table tr td,
table tfoot tr td {
	display: table-cell;
	line-height: 1.125em; 
}



/*******************************************************************
	TESTIMONIALS
*******************************************************************/

.testimonials .quotes {
	display: none;
}

.testimonial-sender {
	text-align: right;
	font: 600 18px Libreville Baskerville, Georgia, serif;
	margin: 0 0 10px 0;
}

/*******************************************************************
  GALLERY
*******************************************************************/

.gallery {
	text-align: justify;
}

.magnific.gallery:after {
	content: ' ';
	display: inline-block;
	width: 100%;
}

#accordion .slick.gallery {
	max-width: none;
}

#accordion .gallery a.visible {
	max-width: 100%;
	display: block;
	padding: 10px 10px 5px 10px;
	margin: 12px 0 0 12px;
	box-shadow: 0 2px 5px #666;
}

.gallery a.visible {
	max-width: 32%;
	box-shadow: none;
	margin-bottom: 10px;
	margin-left: 10px;
	margin-right: 0;
	display: inline-block;
	font-size: 0;
}

.gallery a.visible:focus {
	outline: 2px solid #dfae03;
	outline-offset: 4px;
}

.gallery a.visible img {
	vertical-align: bottom;
	max-width: 417px;
}

.photoborder .gallery a.visible {
	max-width: none;
}

/*******************************************************************
  GALLERY - 2025
*******************************************************************/

.gallery-container {
	margin-inline: auto;
	width: min(1300px, 100%);
}

@media (max-width: 1360px) {
	.gallery-container {
		width: min(860px, 100%);
	}
}

@media (max-width: 920px) {
	.gallery-container {
		width: min(420px, 100%);
	}
}

.gallery-container .gallery {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr 1fr 1fr;
}

@media (max-width: 1360px) {
	.gallery-container .gallery {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 920px) {
	.gallery-container .gallery {
		grid-template-columns: 1fr;
	}
}

.gallery-container .gallery a.visible {
	margin: 0;
	max-width: 100%;
	width: min(417px, 100%);
}

.gallery-container .gallery a.visible img {
	width: 100%;
	max-width: 100%;
}

/*******************************************************************
	FLEX
*******************************************************************/
.flex-video {
	margin-bottom: 1em;
	max-width: 100%;
	width: 100%;
}
.flex-video.widescreen {
	padding-bottom: 57.25%; 
}
.flex-video.vimeo {
	padding-top: 0; 
}
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%; 
}

/*******************************************************************
	ACCOMMODATIONS
*******************************************************************/
.accommodations #content {
	background: url(../images/bknd.png);
	color: #fff;
}

.accommodations h1 {
	color: #fff;
}

.room .book {
	text-align: center;
}

.room .book a.button {
	padding: 8px 75px;
}

/*******************************************************************
	ADA
*******************************************************************/

#content .content.ada h2 {
	text-align: center;
}

#content .content.ada .button {
	display: block;
	margin: 0 auto;
	text-align: center;
	width: 240px;
}

#content .content.ada h1,
#content .content.ada h2 {
	font-family: 'Open Sans', 'Myriad Pro', Arial, sans-serif;
	font-weight: 700;
}

/*******************************************************************
  Vendor Logos
*******************************************************************/

.vendors {
	text-align: center;
}
.vendorLogo {
	max-width: 170px;
	display: inline-block;
	margin: 0 30px 25px 0;
	background-color: white;
	padding: 15px 15px;
}

.vendorLogo:hover,
.vendorLogo:hover > h2{
	background-color: #0f5b8f;
	color: white;
}

.vendorLogo h2 {
	text-align: center;
	font-size: 1em;
	color: #0f5b8f;
	margin: 0 0 15px 0;
	height: 30px;
}

.vendorLogo img {
	width: 100%;
}



/*******************************************************************
	TOURS
*******************************************************************/
.tours {
	margin: 20px 0;
	text-align: center;
}

/*******************************************************************
  RFP
*******************************************************************/


.rfp {
	padding: 20px;
}
/*******************************************************************
  CONTACT FORM
*******************************************************************/

.form {
	margin: 0 0 20px 0;
}

/* Contact form inputs and text areas*/
.form input[type='text'], .form textarea {
	max-width: 50%;
	font-size: 16px;
	border: 1px solid #cccccc;
	padding: 0.25em 0.5em;
	background-color: white;
	font-family: inherit;
	color: rgba(0, 0, 0, 0.75);
	-webkit-transition: -webkit-box-shadow 0.45s, border-color 0.45s ease-in-out;
	-moz-transition: -moz-box-shadow 0.45s, border-color 0.45s ease-in-out;
	transition: box-shadow 0.45s, border-color 0.45s ease-in-out; 
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* Resizes the text area*/
.form textarea {
	width: 90%;
	max-width: 95%;
	height: 150px;
}

/* Removes the Chrome outline on focus, and produces an animation*/
.form input[type='text']:focus, .form textarea:focus {
	-webkit-box-shadow: 0 0 5px #999999;
    -moz-box-shadow: 0 0 5px #999999;
    box-shadow: 0 0 5px #999999;
    border-color: #999999; 
    border-color: #999999;
    outline: none;
}

.form input[type="radio"]:last-of-type {
	margin-left: 25px;
}

/* Submit button for the form*/
.form .submit {
	display: inline-block;
	width: 180px;
	border-style: none;
	padding: 10px 35px 10px 35px;

	background: #2d2a1d; 
	font: 16px 'Raleway', Myriad Pro, sans-serif;
	line-height: 14px;
	text-decoration: none;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
	vertical-align: middle;
	cursor: pointer;

	border-radius: 2px;
}

/* Submit hover state*/
.form .submit:hover {
	background: #0f5b8f; 
	color: #fff;
	box-shadow:  inset 0px 1px 1px 0px rgba(255,255, 255, 0.2), inset 0px -1px 1px 0px rgba(0,0, 0, 0.2);
	text-decoration: none;
}

/* Contact form error messages*/
.form strong.required, .form div.error {color: #ff0000}

/* Displays a GIF loading animation once the form is submitted*/
.form .throbber {
	display: none;
	padding-left: 10px;
}

/* Surrounds the inputs witha  red border if an error is found on submit*/
.form input.error,.form textarea.error {border: 1px solid #ff0000}

/* Hides error messages above individual inputs*/
.form p.error {display: none !important} 

/* The contact form success container. Displays a thank-you messgae*/
.form_success {
	display: none;
	font-weight: bold;
	margin: 20px 0 40px 0;
    text-align: center;
}

/*******************************************************************
  MAIN PAGE INCLUDE
*******************************************************************/

#mainPageLists {
	margin: 20px 0;
}

/*******************************************************************
  MEDIA QUERIES
*******************************************************************/

@media handheld, only screen and (max-width: 1080px) {
	#masthead {
		height: 250px;
	}
}

@media handheld, only screen and (max-width: 600px) {

	.form a.reload {
		display: block;
	}

	.form .submit {
		margin: 0 auto;
	}
}	

@media handheld, only screen and (max-width: 540px) {
	.locImage,
	.locInfo {
		float: none;
		text-align: center;
		width: 100%;
	}

	.locImage {
		margin: 0 auto 10px auto;
		max-width: 210px;
	}

	.gallery a.visible {
		max-width: 49%;
	}
}




/*******************************************************************
  ROOMS
*******************************************************************/
.rooms {
	display: flow-root;
}

.rooms__item {
}

@media (max-width: 1080px) {
	.rooms__photos .photoborder {
		float: none;
		max-width: 100%;
		margin: 0;
	}

	.rooms__photos .gallery a.visible img {
		max-width: 100%;
	}
}




/*******************************************************************
  TIKI MENU
*******************************************************************/
.tiki-menu {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.tiki-menu img {
	display: block;
	margin-inline: auto;
}