@font-face {
    font-family: 'pf';
    src: url('fonts/pf-webfont.eot');
    src: url('fonts/pf-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/pf-webfont.woff') format('woff'),
         url('fonts/pf-webfont.ttf') format('truetype'),
         url('fonts/pf-webfont.svg#pfregular') format('svg');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'pf';
    src: url('fonts/pf-bold-webfont.eot');
    src: url('fonts/pf-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/pf-bold-webfont.woff') format('woff'),
         url('fonts/pf-bold-webfont.ttf') format('truetype'),
         url('fonts/pf-bold-webfont.svg#pfbold') format('svg');
    font-weight: bold;
    font-style: normal;

}
@font-face {
    font-family: 'pf';
    src: url('fonts/pf-italic-webfont.eot');
    src: url('fonts/pf-italic-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/pf-italic-webfont.woff') format('woff'),
         url('fonts/pf-italic-webfont.ttf') format('truetype'),
         url('fonts/pf-italic-webfont.svg#pfitalic') format('svg');
    font-weight: normal;
    font-style: italic;

}




.mobile-visible-only {
	display: none;
}
.desktop-visible-only {
	display: block;
}
tr.desktop-visible-only {
	display: table-row;
}

/*
#topMenu {
	transition: height 0.2s linear;
}
*/

#hamburgerHolder {
	position: absolute;
	z-index: 150;
	bottom: 0px;
	right: 0px;
	
	padding: 120px 20px 15px 120px; 
	cursor: pointer;
}
#hamburgerMenu {
	display: block;
	width: 35px;
	height: 35px;

	
	background-image: url('images/hamburger.svg');
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	filter: invert(1);
}



html, body {
	margin: 0px;
	padding: 0px;
	min-height: 100%;
}
html {
	height: 100%;
}
body {
	background: #e7e7e2;
	min-height: 100%;

	min-width: 1020px;
	position: relative;
}


/* sizing sand borders */
#paRappa, .shadow, .sandBG {
	max-width: 1500px;
}
.shadowHolder, #paRappa {
	padding: 0px 60px;
}


.sandBGHolder, .shadowHolder {
	position: absolute;
	z-index: 5;
	top: 0px;
	left: 0px;
	right: 0px;
	height: 100%;
}
.sandBG {
	height: 100%;
	margin: 0px auto;
	padding: 0px 300px;

	background-image: url('images/sand-lh.jpg'), url('images/sand-rh.jpg');
	background-size: 300px auto, 300px auto;
	background-position: top left, top right;
	background-repeat: no-repeat;

	background-color: #f9f5f1;
}
.shadow {
	height: 100%;
	margin: 0px auto;
	background-color: #ffffff;
	box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.6);
}
#paRappa {
	position: relative;
	z-index: 25;
	margin: 0px auto;
	min-height: 100%;
	
	font-family: 'Century Gothic', pf, sans-serif;
	font-size: 20px;
	color: #302f2f;
}


/* sizing & positioning classes */
.centered {
	max-width: 1200px;
	margin: 0px auto;
}
.width-45 {
	width: 45%;

	margin: 0px 20px 20px 0px;
}
.width-50 {
	width: 50%;

	padding-right: 3%; 
	padding-bottom: 0; 
	padding-left: 0px;
}
.width-60 {
	width: 60%;
}
.width-100 {
	width: 100%;
}


a {
	color: #e20680;
	text-decoration: none;
}
a:hover {
	color: #e20680;
	text-decoration: underline;
}

header {
	position: relative;
	background-color: #e7e7e2;
}
#logo {
	width: 100%;
	display: block;
}
#logo-mobile {
	display: none;
	z-index: 100;
}
nav {
	font-family: 'Century Gothic', pf, sans-serif;
	font-size: 0.9em;

	display: block;
	text-align: justify;
	height: 35px;
	padding: 0%;
	margin: 1% 8% 0% 8%;
	overflow: hidden;
	
	margin-top: 0px;
	line-height: 35px;
}
nav a {
	color: #020202;
	text-decoration: none;
	display: inline-block;
}
nav a:hover, nav a.active {
	color: #e20680;
	text-decoration: none;
}
nav:after {
	content: '';
	display: inline-block;
	width: 100%;
}





/* content table */
#contentTable {
	width: 100%;
	margin: 0px auto;
	font-size: 0.8125em;
	line-height: 1.4;
	background-color: #ffffff;
}
.contentTD {
	width: 80%;
	padding: 2% 4% 5% 6%;
	text-align: left;
	/* font-size: 1.2em; */
	line-height: 1.5;
	
	position: relative;
}
.sidebarTD {
	width: 20%;
	text-align: left;
	padding: 2% 3% 5% 0%;
	min-width: 210px;
	font-size: 0.9em;
}
.contentTD2 {
	width: 80%;
	padding: 2% 6% 5% 3%;
	text-align: left;
}

.sidebarTD2 {
	width: 20%;
	text-align: left;
	padding: 2% 3% 5% 3%;
}



/* content */
h1 {
	font-family: 'Century Gothic', pf, sans-serif;
	font-size: 1.9em;
	font-weight: normal;
	color: #0b99f8;
	margin: 1px 0px 10px 0px;
	padding: 0px;
	text-align: left;
	
}
h2 {
	font-family: 'Century Gothic', pf, sans-serif;
	font-size: 1.3em;
	font-weight: normal;
	color: #fefefe;
	
	margin: 0px 0px 10px 0px;
	padding: 0px;
}
h3 {
	font-family: 'Century Gothic', pf, sans-serif;
	font-size: 1.3em;
	font-weight: normal;
	color: #f7fa05;
	
	margin: 30px 0px 10px 0px;
	padding: 0px;
}
h3 i {
	font-size: 0.9em;
	color: #fefefe;
}
h4 {
	font-family: 'Century Gothic', pf, sans-serif;
	font-size: 1.7em;
	font-weight: normal;
	font-style: italic;
	color: #f7fa05;
	
	margin: 0px 0px 10px -20px;
	padding: 0px;
	border-top: solid #f7fa05 1px;
}
u {
	text-decoration: none;
	color: #f7fa05;
}
.indented {
	 margin-left: 4%;
}
.flimright {
	float: right;
	width: 30%;
	margin-left: 2%;
	margin-bottom: 2%;
}
.flimleft {
	float: left;
	width: 40%;
	margin-right: 2%;
	margin-bottom: 2%;
}
.flimright img, .flimleft img {
	display: block;
	width: 100%;
	margin-bottom: 10px;
}


.two-column {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	-ms-column-count: 2;
	column-count: 2;

	-webkit-column-gap: 60px;
	-moz-column-gap: 60px;
	-ms-column-gap: 60px;
	column-gap: 60px;
	
	text-align: left;
}



.attractions-group {
	position: relative;
}

.attractions-group img {
	width: 100%;
	display: block;
	margin-bottom: 30px;
}
.rh-images .attractions-images {
	position: absolute;
	top: 0px;
	right: 0px;
	padding-left: 20px;
}
.lh-images .attractions-images {
	position: absolute;
	top: 0px;
	left: 0px;
	padding-right: 20px;
}


.rh-images .attractions-text {
	display: block;
	padding-right: 20px;
}
.lh-images .attractions-text {
	display: block;
	padding-left: 20px;
}
.clear-float {
	clear: both;
}






/* sidebar */
#sidebarFooter {
	text-align: left;
	font-size: 0.85em;
	font-size: 1em;
	line-height: 1.2em;
	margin-bottom: 20px;
	max-width: 231px;
}
.greenButtons {
	width: 100%;
	margin: 10px 0px;
}
.greenButtons a {
	display: block;
	
	color: #ffffff;
	text-decoration: none;
	line-height: 1;
	text-align: center;
	
	background: #6ba046;
	padding: 6px 0px 6px 0px;
	margin: 0px 0px 5px 0px;
}
.greenButtons a:hover {
	background: #59873a;
}
.halvsies a {
	width: 50%;
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.halvsies a:first-child {
	border-right: solid #e7e7e2 3px;
}
.halvsies a:last-child {
	border-left: solid #e7e7e2 2px;
}
#socials {
	display: block;
	width: 182px;
	height: 32px;
}




/* image slideshow */
.ssHolderHolder {
	position: relative;
}
.ssHolder {
	position: relative;
	overflow: hidden;
	min-height: 500px;
	height: auto;
}
.ssImgDivKenBurnsActive, .ssImgDivKenBurnsInactive {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	width: 100%;
	height: 100%;
	z-index: 30;
	cursor: pointer;

	-webkit-transition: opacity linear 2s, -webkit-transform linear 10s;
	-moz-transition: opacity linear 2s, -moz-transform linear 10s;
	-o-transition: opacity linear 2s, -o-transform linear 10s;
	-ms-transition: opacity linear 2s, -ms-transform linear 10s;
	transition: opacity linear 2s, transform linear 10s;
	
	-webkit-transform-origin: top center;
	-moz-transform-origin: top center;
	-o-transform-origin: top center;
	-ms-transform-origin: top center;
	transform-origin: top center;
	
	opacity: 0;

	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.ssImgDivKenBurnsInactive {
	-webkit-transform: scale(1.2, 1.2);
	-moz-transform: scale(1.2, 1.2);
	-o-transform: scale(1.2, 1.2);
	-ms-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
}
.ssImgDivKenBurnsActive {
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	transform: scale(1, 1);
}
.ssImgDivActive, .ssImgDivInactive {
	width: 100%;

	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	height: 100%;
	z-index: 30;
	cursor: pointer;

	-webkit-transition: opacity linear 1s;
	-moz-transition: opacity linear 1s;
	-o-transition: opacity linear 1s;
	-ms-transition: opacity linear 1s;
	transition: opacity linear 1s;
	
	opacity: 0;

	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
#ssImg0 {
	opacity: 0;
}
#ssImgSizer {
	position: relative;
	top: 0px;
	right: 0px;
	opacity: 0;
	height: auto;
	
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	transform: scale(1, 1);
}








#theDeets {
	position: absolute;
	top: 2%;
	left: 2%;
	bottom: 2%;
	z-index: 50;
	width: 20%;
	min-width: 240px;
	
	color: #020202;
}

#theDeets h2 {
	font-size: 1.6em;
	font-weight: normal;
	color: #0489e3; /* make it blue! */
	margin: 0px 0px 10px 15px;
}
#theDeets h2.house-name {
	font-size: 1em;
	color: #020202;
	margin: 0px;
	padding-top: 3em;
}
#theDeets.indented {
	margin-left: 35px;
}
#theDeets ul {
	color: #020202;
	padding-left: 20px;
	margin: 0px 15px 15px 15px;
}
#theDeets li {
	line-height: 1.3;
	margin-top: 8px;
	list-style-image: url('images/dashing.png');
}
#theDeets a {
	color: #020202;

	display: inline-block;
	margin-top: 2em;
}
#theDeets a.active, #theDeets a:hover {
	color: #0489e3; /* make it blue! */
	text-decoration: none;
}
#theDeets .numbers-holder a {
	color: #0489e3; /* make it blue! */
}
#theDeets .nums {
	position: absolute;
	bottom: 20px;
	left: 5%;
	width: 90%;
	text-align: left;
}
#theDeets .nums a {
	padding: 3% 2%;
	line-height: 0;
}
.numbers-holder {
	padding-right: 30%;
	margin-top: -1em;
}

#theDeets .numbers-holder {
	line-height: 0.1;
}

.active, #theDeets .numbers-holder a.active, #theDeets .numbers-holder a:hover {
	color: #e20680; /* make it pink! */
}








/* index page */
#breakoutSidebarBG {
	position: absolute;
	top: 0%;
	left: 0%;
	bottom: 0%;
	width: 20%;
	min-width: 260px;
}
#breakoutSidebarBG.photos-page {
	min-width: 160px;
}
#breakoutSidebar {
	position: absolute;
	top: 0px;
	left: 0px;
	bottom: 0px;
	z-index: 50;
	width: 20%;
	min-width: 250px;
	
	background-image: url('images/breakout-sidebar-bg.png');
	background-size: contain;
	
	padding: 2% 0%;
}
#breakoutSidebar.photos-page {
	min-width: 200px;
	line-height: 2.5em;
}
#breakoutSidebar #theDeets {
	position: static;
	width: auto;
	height: auto;
	padding: 10px 5px;
	margin-bottom: 20px;
}
#breakoutSidebar #sidebarFooter {
	margin-left: 10px;
}












/* rates calendar */
.rates-special-notice {
	font-size: 0.8em; 
	margin: 10px 0px 20px 0px;
}
.season {
	height: 30px;
	width: 30px;
	
	font: 13px 'Century Gothic', sans-serif;
	line-height: 28px;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
}
.season a {
	color: #ffffff;
	text-decoration: none;
}

.low {
	background-color: #e0d016;
}
.mid {
	background-color: #e08816;
}
.high {
	background-color: #c83f4c;
}
.ultra {
	background-color: #935bad;
}
.reserved {
	background-color: #8c8c89;
	text-decoration: line-through;
}
.past {
	color: #cccccc;
	background-color: #ffffff;
}

.dayHolder {
	position: relative;
	width: 30px;
	height: 30px;
	overflow: hidden;
}

.lastDay {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-image: url('images/lastDay.png');
}
.firstDay {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-image: url('images/firstDay.png');
}


#property-calendars {
	position: relative;
	width: 100%;
	margin-top: 40px;
	overflow: hidden;
}
#property-calendars > table {
	width: 100%;
}
#property-calendars table > td {
	width: 50%;
}

.calendar {
	padding: 2px;
	border: solid #cccccc 2px;
	background-color: #ffffff;
	min-height: 195px;
}
.calendar td {
	font: 12px Verdana, sans-serif;
}


.calendarTable {
	font-size: 1.2em;
}
.ultraSeason {
 font-size: .875em;
 background: #935bad;
 margin: 8px 8px 0px 0px;
 padding: 2px 0px;
 border: solid #935bad 2px;
 color: #ffffff;
 text-align: center;
 white-space: nowrap;
}
.highSeason {
 font-size: .875em;
 background: #c83f4c;
 margin: 8px 8px 0px 0px;
 padding: 2px 0px;
 border: solid #c83f4c 2px;
 color: #ffffff;
 text-align: center;
 white-space: nowrap;
}
.midSeason {
 font-size: .875em;
 background: #e08816;
 margin: 8px 8px 0px 0px;
 padding: 2px 0px;
 border: solid #e08816 2px;
 color: #ffffff;
 text-align: center;
 white-space: nowrap;
}
.lowSeason {
 font-size: .875em;
 background: #e0d016;
 margin: 8px 8px 0px 0px;
 padding: 2px 0px;
 border: solid #e0d016 2px;
 color: #ffffff;
 text-align: center;
 white-space: nowrap;
}
.unavailable {
 font-size: .875em;
 background: #8c8c89;
 margin: 8px 8px 0px 0px;
 padding: 2px 0px;
 border: solid #8c8c89 2px;
 color: #ffffff;
 text-align: center;
 text-decoration: line-through;
 white-space: nowrap;
}
.ask {
	border: solid #030303 2px;
	color: #030303;
	text-align: center;
}
.season.ask {
	width: 28px;
	height: 28px;
	line-height: 28px;
	border: solid #030303 1px;
	color: #030303;
	text-align: center;
}

.keyTable {
	font-size: 1em;
}
.keyTable .ultraSeason, .keyTable .highSeason, .keyTable .midSeason, .keyTable .lowSeason, .keyTable .unavailable {
	padding: 5px 0px;
	font-size: 0.9em;
}
.keyTable .ask {
 margin: 8px 8px 0px 0px;
 padding: 2px 0px;
 border: solid #030303 2px;
 color: #030303;
 text-align: center;
}

.calendar-month-td {
	padding: 0px 15px 15px 0px;
}
td.calendar-month-header {
	background-color: #5ab4e5;
	padding: 4px;
	color: #ffffff;
	font-weight: bold;"
}
td.calendar-day-of-the-week-header {
	background-color: #a2cee7;
	color: #000000;
}

	tr.calendar-month-tr {
		display: inline;
	}
	td.calendar-month-td {
		display: inline-block;
	}



/* publications */
.publication {
	display: block;
	float: left;
	width: 26%;
	margin-right: 5%;
	margin-bottom: 5%;
}
.publication img {
	width: 100%;
	display: block;
}


/* area map border */
a, a:hover, a:visited, a:active, area {
   border:none;
   outline:none;
}

#paRappa {
	-webkit-text-size-adjust: none;
}







/* responsive css */
@media screen and (max-width: 1560px) {
	#paRappa {
		font-size: 19px;
	}
}
@media screen and (max-width: 1490px) {
	#paRappa {
		font-size: 17px;
	}
}
@media screen and (max-width: 1420px) {
	#paRappa {
		font-size: 16px;
	}

	#theDeets .numbers-holder {
		padding-right: 35%;
	}
}
@media screen and (max-width: 1300px) {
	#paRappa {
		font-size: 15px;
	}
	#theDeets ul {
		padding-left: 15px;
	}
	#theDeets .numbers-holder {
		padding-right: 40%;
	}

}
@media screen and (max-width: 1240px) {
	#theDeets h2 {
		font-size: 1.5em;
	}
}
@media screen and (max-width: 1200px) {
	#theDeets li {
		margin-top: 6px;
	}
	#theDeets h2 {
		font-size: 1.4em;
	}
}
@media screen and (max-width: 1180px) {
	#theDeets li {
		margin-top: 4px;
	}
	#theDeets h2.house-name {
		margin-top: 5px;
	}
	#theDeets {
		font-size: 0.95em;
		line-height: 1.3;
	}
}
@media screen and (max-width: 1160px) {
	#theDeets li {
		margin-top: 2px;
	}
	.calendar-month-td {
		padding: 0px 5px 5px 0px;
	}
}
@media screen and (max-width: 1130px) {
	#theDeets li {
		margin-top: 0px;
	}
	#theDeets ul {
		padding-left: 15px;
	}
	.season {
		font-size: 11px;
	}
	
}



@media screen and (max-width: 1100px) {
	#paRappa {
		font-size: 15px;
	}
	#theDeets li {
		margin-top: 0px;
	}
	.contentTD {
		padding-left: 40px;
		padding-right: 40px;
	}
	#property-calendars h1 {
		font-size: 1.5em;
	}
	
	.attractions-group {
		text-align: left;
	}
	.rh-images .attractions-images {
		position: static;
		float: right;
	}
	.lh-images .attractions-images {
		position: static;
		float: left;
	}
	.rh-images .attractions-text, .lh-images .attractions-text {
		display: inline;
		vertical-align: top;
		margin-top: 0px;
	}
	h1 {
		font-size: 1.5em;
	}
}

@media screen and (max-width: 1050px) {
	.two-column {
		-webkit-column-count: 1;
		-moz-column-count: 1;
		-ms-column-count: 1;
		column-count: 1;
	
		text-align: left;
		padding-right: 10px;
	}
}


@media screen and (max-width: 1010px) {
	nav {
		font-size: 0.9em;
	}

	.season {
		font-size: 10px;
	}
}

@media screen and (max-width: 980px) {
}

























/*
MOBILE CSS
*/
@media screen and (max-width: 700px) {
	body {
		min-width: inherit;
		background-color: #ffffff;
	}
	#paRappa {
		font-size: 30px;

		left: 0px;
		width: 700px;
		margin: 0px;
		padding: 120px 0px 550px 0px;
	}

	#logo-mobile {
		width: 100%;
		display: block;
		box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.9);

	}
	#logo {
		display: none;
	}




	#navHeader {
		top: 0px;
		left: 0px;
		width: 700px;
		margin-bottom: -20px;
	}
	nav {
		padding: 0px;
		margin: 13px 0px 20px 0px;
		height: auto;
		box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.9);

	}
	nav:after {
		display: none;
	}
	nav a {
		display: block;
		border-bottom: solid #4444 1px;
		padding: 10px 30px;
	}
	nav a:hover {
		border-bottom: solid #4444 1px;
	}
	#homeLink {
		margin-top: 5px;
	}
	
	#topMenu.inactive {
		height: 1px;
	}
	#topMenu.active {
		height: 504;
	}
	
	
	td.sidebarTD, td.sidebarTD2, td.contentTD, td.contentTD2, .width-50, .width-60, .width-100 {
		display: block;
		width: 636px;
		padding: 10px 32px 32px 32px;
	}
	.width-45 {
		display: block;
		width: 636px;
		padding: 0px;
		margin: 0px 0px 10px 0px;
	}
	#sidebarFooter {
		position: absolute;
		bottom: 0px;
		line-height: 1.5;
	}
	#sidebarFooter, #contactInfo {
		text-align: center;
		width: 636px;
		max-width: inherit;
		margin: 0px auto;
	}	
	.greenButtons a {
		line-height: 3;
		margin: 20px 30px;
		font-weight: bold;
	}
	#socials {
		margin: 10px auto 50px auto;
		transform: scale(2);
	}
	.sandBGHolder, .shadowHolder {
		display: none;
	}
	
	input {
		height: 30px;
		font-size: 30px;
	}
	textarea {
		font-size: 30px;
	}
	
	.indented {
		margin: 0px;
	}
	
	
	#publicationsThumbnailsTable td {
		display: inline-block;
		width: 33%;
	}
	
	
	.mobile-flex {
		display: flex; 
		flex-flow: column wrap;
	}
	.order-1 {
		order: 1;
		display: block;
		position: relative;
	}
	.order-2 {
		order: 2;
		display: block;
		position: relative;
	}
	.order-3 {
		order: 3;
		display: block;
		position: relative;
	}
	
	
	.ssHolder {
		margin-left: 0px;
	}
	
	#breakoutSidebar {
		position: relative;
		width: 636px;
		padding: 20px 32px 0px 32px;
	}
	#theDeets {
		position: relative;
		width: 636px;
		padding: 20px 32px 0px 32px;
	}
	#breakoutSidebar.photos-page {
		line-height: inherit;
		padding-top: 0px;
	}
	#breakoutSidebar.photos-page #theDeets {
		margin-top: 0px;
		padding-top: 0px;
		padding-bottom: 50px;
	}
	#theDeets .numbers-holder {
		padding-right: 30px;
	}
	#theDeets a {
		line-height: 0;
	}
	.numbers-holder a {
		padding-right: 10px;
	}
	
	.rates-special-notice {
		font-size: 1em;
	}
	.keyTable {
		width: 50%;
	}
	.calendar-month-td {
	}
	.dayHolder, .season {
		width: 40px;
	}
	.season {
		font-size: 1.5em;
	}
	
	
	.mobile-visible-only {
		display: block;
	}
	.desktop-visible-only, a.desktop-visible-only {
		display: none;
	}

}

