/* import css for special functions */
@import url(jquery-ui.min.css);
@import url(jquery-ui.structure.min.css);
@import url(jquery-ui.theme.css);
@import url(slick.css);
@import url(slick-theme.css);


/* font-face declarations */

@font-face {
    font-family: 'roboto_slabbold';
    src: url('robotoslab-bold-webfont.eot');
    src: url('robotoslab-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('robotoslab-bold-webfont.woff') format('woff'),
         url('robotoslab-bold-webfont.ttf') format('truetype'),
         url('robotoslab-bold-webfont.svg#roboto_slabbold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'roboto_slablight';
    src: url('robotoslab-light-webfont.eot');
    src: url('robotoslab-light-webfont.eot?#iefix') format('embedded-opentype'),
         url('robotoslab-light-webfont.woff') format('woff'),
         url('robotoslab-light-webfont.ttf') format('truetype'),
         url('robotoslab-light-webfont.svg#roboto_slablight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'ralewaylight';
    src: url('raleway-light-webfont.woff2') format('woff2'),
         url('raleway-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'ralewaysemibold';
    src: url('raleway-semibold-webfont.woff2') format('woff2'),
         url('raleway-semibold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
  font-family: 'FontAwesome';
  src: url('fontawesome-webfont.eot?v=4.7.0');
  src: url('fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('fontawesome-webfont.woff?v=4.7.0') format('woff'), url('fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}


/* viewport */

@-ms-viewport{
    width: extend-to-zoom;
    zoom: 1.0;
}
@viewport{
    width: extend-to-zoom;
    zoom: 1.0;
}

/* structure */

* {
	box-sizing: border-box;
 	 min-height: 0;
 	 min-width: 0;

}
body {
	margin: 0px;
	padding: 0px;
	font: normal 1em/1.7em 'ralewaylight';
	color: #505050;
}

a {
	text-decoration: none;
	border: none !important;
}

.mobilesidemenu input[type="checkbox"] {
	display: none;
}
.mobileoverlay {
	display: none;
}

/* header related styles */

#header {
	width: 100%;
	height: 100px;
	position: relative;
}
.cottage-logo {
	position: absolute;
	max-width: 400px;
	max-height: 100px;
	left: 50%;
	transform: translateX(-50%);
}
#logo {
	max-width: 100%;
	max-height: 100%;
	text-align: center;
}
.home-link {
	position: absolute;
	width: 50px;
	height: 50px;
	top: 35px;
	left: 50%;
	margin: 0 0 0 220px;
	background: orange;
	border-radius: 100%;
}
.home-link a {
	position: relative;
	display: inline-block;
	width: 50px;
	height: 50px;
	background: url(images/home-icon.png);
	background-size: 80% 70%;
	background-repeat: no-repeat;
	background-position: center;
}
.home-link:hover {
	background-color: #6ABDFD;
}
.home-link a:hover {
	filter: invert(100%);
}
.home-link span {
	position: absolute;
	left: -9999px;
	color: transparent;
}

h2 {
	text-align: center;
	font: normal 1.5em 'ralewaysemibold';
}
strong {
	font-family: 'ralewaysemibold';
}

/* body */
#main-wrapper {
	padding: 0 25px;
}
#maincontainer {
	max-width: 1200px;
	margin: 15px auto;
	padding: 15px;
	background: #FFF;
	border: 1px solid #EEE;
}
.details-container {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	border-bottom: 1px solid #EEE;
	padding: 20px 0 0 0;
}
.left-column {
	width: 60%;
	margin: 15px 0 0 0;
}
.main-pic {
	width: 100%;
	height: auto;
}
.slide-pic {
	width: 100%;
	min-height: 400px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.main-pic img {
	width: 100%;
	height: auto;
}
.rigid {
	height: 400px;
	overflow: hidden;
}
.description {

}
.executive-container {
	width: 100%;
	margin: 15px 0 0 0;
	padding: 5px;
	border: 1px solid #EEE;
}
.executive-status {
	font: normal 3em 'FontAwesome';
	margin: auto;
	color: gold;
	width: 50px;
	height: 50px;
	display: block;
	cursor: default;
}
.right-column {
	width: 38%;
	margin: 15px 0 0 0;
}
.details {
	border: 1px solid #EEE;
	padding: 0;
	font-size: 1.2em;
	text-align: center;
}
.address, .amenity-title, .photo-gallery-title {
	width: 100%;
	background: #C9E0F2;
	border-bottom: 1px solid #EEE;
}
.address p {
	font-family: 'ralewaysemibold';
	padding: 6px 0;
	margin: 0;
	text-align: center;
}
.cap-parking {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	border-bottom: 1px solid #EEE;
}
.sleeps {
	border-right: 1px solid #EEE;
	flex: 0 1 50%;
	padding: 5px 0;
}
.sleeps p {
	margin: 0;
}
.parking {
	flex: 0 1 50%;
	padding: 5px 0;
}
.parking p {
	margin: 0;
}
.cost-detail {
	position: relative;
	padding: 5px 0;
}
.cost-detail p {
	margin: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
}
.price-label {
}
.price-point {
	font: normal 1.7em 'roboto_slabbold';
	margin: 0 6px;
}

/* disclaimer */

.disclaimer {
	font: normal 17px/15px 'ralewaylight';
	display: block;
	width: 20px;
	height: 20px;
	margin: 0 0 0 10px;
	background: #FFAD31;
	text-align: center;
	color: #FFF;
	position: absolute;
	top: 50%; right: 10px;
	transform: translateY(-50%);
	padding: 2px;
	border: 1px solid #FFAD31;
	border-radius: 100%;
	cursor: pointer;
}
.disclaimer:hover {
	background: #006D84;
	border: 1px solid #006D84;
}
.disclaimer-text {
	display: none;
	background: #EFEFEF;
	box-shadow: 0 2px 4px 1px hsla(0,5%,73%,.14);
	border: 1px solid #CECECE;
	border-radius: 3px;
	position: absolute;
	bottom: 35px;
	padding: 35px;
	right: -15px;
	width: 300px;
	height: 250px;
	z-index: 1000;
	color: #3F3F3F !important;
}
.disclaimer-text p {
	margin: 0;
	line-height: 1.3em;
}
.disclaimer-arrow {
	overflow: hidden;
	position: absolute;
	width: 40px;
	height: 15px;
	top: 100%;
	right: 5px;
}
.disclaimer-arrow:after {
	top: -25px;
	left: 5px;
	background-color: #EFEFEF;
	border: 1px solid #CECECE;
	box-shadow: 0 2px 4px 1px hsla(0,5%,73%,.14);
	content: "";
	height: 30px;
	position: absolute;
	transform: rotate(45deg);
	width: 30px;
}


.amenities-container {
	border: 1px solid #EEE;
	margin: 15px 0 0 0;
}
.amenity-title p, .photo-gallery-title p {
	font-family: 'ralewaysemibold';
	font-size: 1.2em;
	padding: 6px 0;
	margin: 0;
	text-align: center;
}
.amenity-list {
	padding: 20px;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
}
.amitem {
	padding: 4px 11px;
	background: #EEE;
	margin: 0 5px 5px 0;
}
.photo-gallery {
	border: 1px solid #EEE;
	margin: 15px 0 0 0;
}
#photos {
	margin: 0;
	padding: 20px;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
#photos li {
	list-style: none;
}
.pic {
	position: relative;
}
.vid-icon {
	position: absolute;
	left: 75%;
	margin-left: -62px;
	top: -55px;
}

/* navigation */

#navigation {
	width: 100%;
	height: 35px;
	border-bottom: 1px solid #EEE;
}
nav ul {
	padding: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
}
nav ul li {
	list-style: none;
	padding: 0 15px;
	border-right: 1px solid #EEE;
}
nav ul li:first-child {
	border-left: 1px solid #EEE;
}

/* map */

.map-container {
	margin: 20px 0;
	border: 1px solid #DDD;
}

.popup-title {
	width: 150px;
	height: auto;
	display: block;
	margin: auto;
}
.popup-text {
	font: normal 1.3em 'ralewaylight';
	text-align: center;
	margin: 0 0 10px 0 !important;
}
.leaflet-popup-close-button {
	display: none !important;
}

/* Comments AKA testimonials */

.t-placeholder {
	width: 100%;
	height: 100%;
	background: url(images/placeholder.jpg) no-repeat center center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
}
.no-comment {
	max-width: 80%;
	font: normal 1.2em 'ralewaysemibold';
	text-align: center;
}
.CommentList {
	margin: 0px;
	padding: 0px;
}
.CommentListItem {
	padding: 15px;
	background-color: #FFF;
	margin-top: 6px;
	margin-bottom: 6px;
	border: 1px solid #8BBBBA;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	list-style-type: none;
}
.CommentListItem p {
	margin-top: 0px;
	margin-bottom: 6px;
}
.CommentHeader {
	font-family: georgia, serif;
	font-size: 12px;
	color: #555555;
	font-style: italic;
}
.CommentHeader span {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #276766;
}
.CommentText {
	font-family: 'ralewaysemibold';
	font-size: 13px;
	line-height: 18px;
	text-align: justify;	
}
#CommentForm {
	margin-top: 15px;
	display: none;
}
#CommentForm h4 {
	display: block;
	text-align: center;
	margin-top: -8px;
	font: normal 1.2em 'roboto_slabbold';
}
#CommentForm_form input {
	background-color: #FFF;
	width: 100%;
	min-height: 25px;
	color: #444;
	text-indent: 10px;
	border: 1px solid #EEE;
	padding: 5px;
}
#CommentForm_form textarea {
	background-color: #FFF;
	width: 100%;
	height: 100px;
	padding: 10px;
	color: #444;
	resize: vertical;
	border: 1px solid #EEE;
}
#CommentForm_form button {
	font-family: 'roboto_slabbold';
	font-size: 1.1em;
	color: #444;
	background-color: #C9E0F2;
	padding: 3px 7px;
	border: 1px solid #EEE;
}
#CommentForm_form button:hover {
	color: #FFF;
	background-color: #6ABDFD;
}
.CommentStars > span,
.CommentForm .CommentStars > span,
.CommentList .CommentStars > span {
	display: inline-block;
	position: relative;
	width: 1.1em;
	color: #ccc;
}
span.CommentStarOn,
.CommentForm .CommentStars > span.CommentStarOn,
.CommentList .CommentStars > span.CommentStarOn {
	color: #FAA002;
}
span.CommentStarOff {
	color: transparent;
}
span.CommentStarPartial {
	position: relative;
}
span.CommentStarPartial span.CommentStarOn {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	overflow-x: hidden;
	line-height: 0;
}

.CommentForm .CommentStarsInput > span:hover {
	cursor: pointer;
}
.CommentStars {
	display: flex;
	justify-content: flex-start;
}
.success, .error {
	text-align: center !important;
	font-size: 18px !important;
}
.success {
	background: #00a400;
	color: #FFF !important;
}
.error {
	color: #CB2424 !important;
}
#CommentForm_form input:focus, #CommentForm_form textarea:focus {
	background-color: #F9F9F9;
}
.feedback-container {
	margin: 20px 0;
	display: flex;
	flex-flow: row nowrap;
}
.feedback-box {
	flex: 1 1 60%;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	border: 1px solid #EEE;
}
.comment {
	flex: 1 1 49%;
	padding: 25px;
	border-right: 1px dotted #E6E6E6;
}
.comment-cite {
	display: block;
	font-family: 'roboto_slabbold';
	text-align: right;
}
.comment p {
	font-size: 90%;
}
.comment p:first-child {
	margin-top: 0;
}
.comment p:last-child {
	margin-bottom: 0;
}
.feedback-form {
	flex: 1 1 38%;
	padding: 20px;
    border: 1px solid #EEE;
    margin-left: 15px;
}
.caution {
	text-align: center;
	color: #CB2524;
}
.caution span {
	font-size: 110%;
}

/* footer */

#footer {
	background-color: #FFF;
	max-width: 1200px;
	margin: 10px auto 0 auto;
	padding: 0;
	border: 1px solid #EEE;
}
#footer p {
	text-align: center;
}
.owner-cite {
	font-family: 'ralewaysemibold';
}
.footer-link {
	padding: 4px 12px;
	font-family: 'ralewaysemibold';
	margin: 0 10px;
	border-radius: 2px;
	border: 1px solid #EEE !important;
	background-color: #EEE;
	color: #000;
}
.footer-link:hover {
	background-color: #444;
	color: #FFF;
}

/* announcement */

#announcement {
	width: 100%;
	background: #F30B21;
	min-height: 50px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.7);
	position: fixed;
	top: 0;
	z-index: 10000;
	display: flex;
	justify-content: center;
	align-items: center;
}
#announcement-text {
	max-width: 950px;
	margin: 0 auto;
	padding: 5px 10px;
	font: bold 17px/17px Arial;
	color: #FFF;
	text-align: center;
}
#announcement-text a {
	color: #FAEE00;
}
#announcement-text a:hover {
	color: #4FCAFB;
}


/* calendar styles */

.longterm {
	display: none;
}
#calendar {
	overflow: hidden;
	margin: 20px 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: stretch;
}
.calendar-year {
	display: block;
	text-align: center;
	padding: 5px 0 1px 0;
	margin-bottom: 5px;
	background: #e0f5ff;
	border: 1px solid #A0A0A0;
	font: bold 1.2em 'roboto_slablight';
	color: #00718C;
	border-radius: 5px;
}
.calendar-item {
	position: relative;
	background: #FFF;
	min-width: 100px;
	width: 18%;
	padding: 4px;
	margin: 0 10px 20px 10px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #DDD;
	flex: 0 1 18.2%;
}
.fill-object {
    position: relative;
    background: transparent;
    min-width: 100px;
    width: 18%;
    padding: 4px;
    margin: 0 10px 20px 10px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    flex: 0 1 18.2%;
}
.calendar-item em {
	text-transform: lowercase;
	font-weight: normal;
}
.overlay-b {
	background: rgba(220, 33, 23, 0.8);
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	box-sizing: content-box !important;
	display: flex;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.overlay-e {
	background: rgba(109, 109, 109, 0.9);
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	box-sizing: content-box !important;
	display: flex;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.overlay-hold {
	background: rgba(255, 208, 0, 0.8);
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	box-sizing: content-box !important;
	display: flex;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.booked, .passed, .hold {
	position: relative;
	width: 100%;
	height: 25px;
	text-align: center;
	top: 40%;
	font: bold 1.6em Arial;
	color: #FFF;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.7);
	transform: rotate(-15deg);
}
.available-dates {
	display: block;
	padding: 4px;
	background: #01A5CC;
	font: bold 15px/18px Arial;
	color: #FFF;
	text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.7);
	text-transform: uppercase;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.date-text {
	display: inline-block;
	width: 75%;
	text-align: center;
}
.rate {
	text-transform: uppercase;
	font: bold 20px/20px Arial;
	color: #2e3d59;
	text-align: center;
	border-top: 1px solid #B1B1B1;
	border-bottom: 1px solid #B1B1B1;
	margin: 3px 0;
	padding: 3px 0;
	display: block;
}
.deposit {
	font: normal 15px/15px Arial;
	text-align: center;
	display: block;
}
.res-data-input {
	position: absolute;
	width: 50px;
	height: 50px;
	top: 10px;
	right: 10px;
	text-align: center;
	border-radius: 50%;
	background: #FFF;
	border: 3px solid #36C6E8 !important;
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6);
	font: normal 1em/.8em 'roboto_slabbold';
	display: flex;
	flex-flow: column wrap;
	justify-content: center;
	align-content: center;
}
.res-data-input span {
	color: #36C6E8;
	padding-top: 6px;
}
.res-data-input:hover {
	background: #ffef1e;
}
.notes {
	font-size: 85%;
	font-style: italic;
	margin: -15px 0 0 8px;
}

/* end of table style begin form */

#reservations {
	background-color: #FFF;
	width: auto;
	padding: 30px;
	border: 1px solid #EEE;
}
#reservations div {
	text-align: left;

}
.calpic {
	border: none !important;
	width: 20px !important;
	height: 20px !important;
	vertical-align: middle;
}
#reservations input[type="text"], #reservations input[type="email"], select {
	height: 35px;
	background-color: #EEE;
	border: 1px solid #FFF;
	border-radius: 3px;
	padding-left: 10px;
} 
#reservations textarea {
	border: 1px solid #FFF;
	background-color: #EEE;
	border-radius: 3px;
	height: 150px;
	resize: vertical;
}
#reservations button[type="submit"] {
	background-color: #C9E0F2;
	padding: 0 10px;
	font-family: 'roboto_slabbold';
	font-size: 1.1em;
	color: #444;
	border: 1px solid #EEE;
}
#reservations button[type="submit"]:hover {
	background-color: #6ABDFD;
	color: #FFF;
}
#reservations input:focus, #reservations textarea:focus {
	-webkit-box-shadow: 0 0 12px rgba(0, 95, 119, 0.5);
	-moz-box-shadow: 0 0 12px rgba(0, 95, 119, 0.5);
	box-shadow: 0 0 12px rgba(0, 95, 119, 0.5);
}
.defaultcolor {
	color: #ee2406;
}
.filledcolor {
	color: #333;
}
.sub-hd {
	font-size: 20px;
	font-weight: bold;
	text-align: center !important;
	border-top: 1px solid #888;
	border-bottom: 1px solid #888;
	margin: 18px 0px 10px 0px !important;
}
#reservations label {
	text-align: left;
	padding-right: 10px;
	font-size: 15px;
	line-height: 25px;
	color: #005F77;
}
.f-link {
	color: #006FDE !important;
	text-transform: uppercase;
}
.divider {
	margin: 0px 4px 0px 8px;
}
.smallfield {
	width: 120px !important;
}
.cap {
	display: none;
}
.InputfieldForm textarea, .InputfieldForm .InputfieldMaxWidth {
    width: 100%;
}
.InputfieldFormWidths .InputfieldColumnWidth > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidth > .InputfieldContent {
    padding-left: 1.5em;
}
.FormBuilder.InputfieldForm .InputfieldStateRequired > .InputfieldHeader:first-child::after {
    color: red;
    content: "*";
}
.InputfieldStateRequired > .InputfieldHeader:first-child::after {
    content: "*";
    margin-left: 0.25em;
    color: red;
}
.FormBuilder.InputfieldForm .Inputfield {
    margin-bottom: 2em;
}
.InputfieldFormWidths .InputfieldColumnWidth {
    float: left;
    clear: none;
    margin-left: 0;
    margin-right: 0;
}
.InputfieldForm input[type="radio"], .InputfieldForm input[type="checkbox"] {
    transform: scale(1.4) !important;
    position: relative !important;
    top: 2px !important;
}
.InputfieldCheckbox input {
	margin-right: 0.5em; 
}

.InputfieldCheckbox .InputfieldContent label {
	display: inline-block;
}

.InputfieldCheckbox.InputfieldStateRequired > .InputfieldHeaderHidden:after {
	display: none;
}
.InputfieldCheckbox.InputfieldStateRequired > .InputfieldContent > label > span.pw-no-select:after {
	content: '*';	
	margin-left: 0.25em;
	color: red;
}
.pw-content .ui-datepicker,#content .ui-datepicker {
	font-size:1.1em;
}
.pw-content .ui-datepicker-calendar,#content .ui-datepicker-calendar {
	margin-top:0;
}
.pw-content .ui-datepicker-inline,#content .ui-datepicker-inline {
	padding-bottom:.5em;
	font-size:14px;
}
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month, 
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }

.ui-timepicker-div .ui-widget-header,#content .ui-timepicker-div .ui-widget-header {
	margin-bottom:8px;
}
.ui-timepicker-div dl,#content .ui-timepicker-div dl {
	text-align:left;
	border:none;
	margin:0;
	padding:0 0 0 5px;
}
.ui-timepicker-div dl dt,#content .ui-timepicker-div dl dt {
	height:25px;
	margin-bottom:-25px;
	padding-top:0;
	border:none;
	font-weight:normal
}
.ui-timepicker-div dl dd,#content .ui-timepicker-div dl dd {
	margin:0 10px 10px 65px;
	padding:0;
}
.ui-timepicker-div td,#content .ui-timepicker-div td {
	font-size:90%;
}
.ui-tpicker-grid-label,#content .ui-tpicker-grid-label {
	background:none;
	border:none;
	margin:0;
	padding:0;
}
#ui-datepicker-div {
	font-size:12px;
	line-height:14px;
	display:none;
}
button.ui-datepicker-trigger,a.pw-ui-datepicker-trigger {
	margin:0 0 0 .5em;
}
input.InputfieldDatetimeDatepicker {
	position:relative;
	z-index:10;
}
input.InputfieldDatetimeDatepicker2 {
	display:none;
}
.InputfieldDatetime input[type=date],.InputfieldDatetime input[type=time] {
	width:auto;
}
.InputfieldDatetime.InputfieldDatetimeMulti input,.InputfieldDatetime.InputfieldDatetimeMulti select {
	margin-bottom:4px;
}
.InputfieldDatetime.InputfieldDatetimeMulti select {
	width:auto;
}
.InputfieldSelect ul, .InputfieldRadios ul, .InputfieldCheckboxes ul {
    margin: 0;
    padding: 0 !important;
}
.InputfieldSelect ul li, .InputfieldRadios ul li, .InputfieldCheckboxes ul li {
	list-style: none !important;
	display: inline;
	margin-right: 10px !important;
}
.InputfieldRadios input {
    margin-right: 0.5em;
}
.good-alert {
    padding: 20px;
    width: 800px;
    background-color: #2DB235;
    border: 3px solid #117317;
    color: white;
    margin: 10px auto 15px -400px;
    position: fixed;
    left: 50%;
    top: 50%;
    border-radius: 4px;
    box-shadow: 4px 4px 15px rgba(0, 0, 0, 0.6);
    z-index: 1000000;
}
.closebtn {
	margin-left: 15px;
	color: white;
	font-weight: bold;
	float: right;
	font-size: 22px;
	line-height: 20px;
	cursor: pointer;
	transition: 0.3s;
}
.closebtn:hover {
	color: black;
}
.btn-close {
	display: none;
}
.FormBuilder .alert-success {
	display: none;
}

/* end of form style begin map */

.clearfloat {
	clear:both; 
	height:0; 
	font-size: 1px; 
	line-height: 0px;
}
#mapit {
	width:100%;
}
#mapit_main {
	float:left;  
	width:100%; 
	clear:both;
}
.addrinput {
	padding:4px 0 0 12px; 
	margin:0; 
	font-size:1em; 
	width:220px !important; 
	height:25px; 
	line-height:25px;
}
.buttonalign {
	vertical-align:top; 
	height:30px;
}
#map_canvas_wrapper { 
	padding:10px; 
	margin-top:15px; 
	background:#eee; 
	border-top:1px solid #777; 
	border-left:1px solid #777; 
	border-right:1px solid #999; 
	border-bottom:1px solid #999; 
	-moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5); 
	-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5); 
	box-shadow: inner 0 0 5px rgba(0, 0, 0, 0.5);
}
.map_canvas {
	height:500px;
}
.map_canvas img {
	border: none !important;
}

/* attractions */

#property-attractions {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	margin: 20px 0 0 0;
}
.attraction-container {
	position: relative;
	flex: 1 1 30%;
	max-width: 360px;
	margin: 1.5%;
	border: 1px solid #EEE;
}
.attraction-pic {
	width: 100%;
	height: 250px;
	margin-bottom: -20px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.attraction-writeup {
	padding: 20px;
}
.attraction-link {
	position: absolute;
	z-index: 10;
	top: 0; right: 0; bottom: 0; left: 0;
	width: 100%;
	height: 100%;
}
.attraction-link:hover {
	background: rgba(255, 165, 0, 0.3);
}
.sharing {
	position: relative;
	top: 0;
}
.MarkupSocialShareButtons{
    list-style-type: none;
    overflow: hidden;
    padding: 0px;
    margin: 0px;
	text-align: center;
}
.MarkupSocialShareButtons li{
    list-style-type: none;
	display: inline-block;
    margin: 0 8px;
}
.MarkupSocialShareButtons li a{
    display: inline-block;
    text-decoration: none;
    border: none;
    width: 25px;
    height: 25px;
    opacity: 1;

}
.MarkupSocialShareButtons li a:hover{
    opacity: 0.8;
}

.MarkupSocialShareButtons img{
    width: 25px;
    height: auto;
}


/* media queries for common elements */

/* media queries */

@media screen and (max-width: 1000px) {
	.details-container {
    	flex-flow: column wrap;
    }
    .left-column {
	    width: 100%;
	}
	.rigid {
    	height: 600px;
	}
	.slide-pic {
    	min-height: 600px;
    }
    .right-column {
    	width: 100%;
	}
}
@media screen and (max-width: 900px) {
	.calendar-item {
    	width: 29%;
    	flex: 0 1 29%;
	}
	#property-attractions {
    	justify-content: center;
	}
	.attraction-container {
    	flex: 1 1 50%;
    	max-width: auto;
	}
}
@media screen and (max-width: 800px) {
	
	#maincontainer {
		padding: 15px;		
	}
	.rigid {
    	height: 400px;
	}
	.slide-pic {
    	min-height: 400px;
    }
	#responsivespacer {
		width: 100%;
		height: 28px;
		background: rgba(255, 255, 255, 0.8);
	}
	#leftcolumn, #leftside {
		display: block;
		box-sizing: border-box;
		min-width: 100%;
		width: 100% !important;
		margin-top: 25px;
		padding: 0;
		border: 0;
		background: #FFF;
		padding: 10px;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		float: none;
		
	}
	.feedback-container {
	    flex-flow: column nowrap;
	}
	#leftcolumn img, #leftside img {
		width: 100%;
	}
	#rightcolumn, #rightside {
		margin-top: 0;
		margin-left: auto;
		margin-right: auto;
		float: none;
		display: block;
		width: 100% !important;
		border: 0;
	}
	#footer {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	#navigation {
		width: 300px;
		height: 100%;
		border-bottom: 1px solid #EEE;
	}
	nav ul {
		padding: 0;
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
	}
	.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    	padding: .5em 0;
	}
	.mobilesidemenu {
    	width: 0;
	}
	.mobilesidemenu, .mobilesidemenu * {
    	-moz-box-sizing: border-box;
    	box-sizing: border-box;
	}
	.mobilesidemenu input[type="checkbox"] {
		/* checkbox used to toggle menu state */
    	position: absolute;
    	left: 0;
    	top: 0;
    	visibility: hidden;
	}
	.mobilesidemenu .toggler {
    	z-index: 100;
		display: block;
		position: absolute;
		font-size: 6px;
		width: 3.5em;
		height: 2.6em;
		top: 10px;
		left: 50%;
		margin-left: -1.75em;
		background: transparent;
		text-indent: -1000px;
		border: .6em solid #333;
		border-width: .6em 0;
		cursor: pointer;
		-moz-transition: all 0.3s ease-in;
		-webkit-transition: all 0.3s ease-in;
		transition: all 0.3s ease-in;
	}
	.mobilesidemenu .toggler::before, .mobilesidemenu .toggler::after {
    	/* inner stripes inside label */
    	content: "";
    	display: block;
    	position: absolute;
    	width: 100%;
    	height: 0.5em;
    	top: 50%;
    	margin-top: -0.3em;
    	left: 0;
    	background: #333;
    	/* stripes background color. Change to match border color of parent label above */
    	-moz-transform: rotate(0);
    	-webkit-transform: rotate(0);
    	transform: rotate(0);
    	-moz-transition: all 0.3s ease-in;
    	-webkit-transition: all 0.3s ease-in;
    	transition: all 0.3s ease-in;
    	/* transition for flipping label */
	}
	.mobilesidemenu nav {
    	/* NAV menu inside container */
    	margin: 0;
    	padding: 40px 0 0 0;
    	position: fixed !important;
    	text-transform: uppercase;
    	border-left: 1px solid #013c48;
    	width: 100%;
    	/* width of nav menu */
    	height: 100%;
    	right: -100%;
    	/* set left to -width of menu */
    	top: 0;
    	z-index: 10000;
    	overflow: scroll;
		-webkit-transform: translate3d(0, 0, 0); /* trigger hardware acceleration */
		transform: translate3d(0, 0, 0);
    	background: rgba(255, 255, 255, 0.9);
    	/* Old browsers */
    	-moz-transition: all 0.3s ease-in;
    	-webkit-transition: all 0.3s ease-in;
    	transition: all 0.3s ease-in;
    	/* transition for animating nav in and out */
	}
	.mobilesidemenu nav h2 {
    	color: black;
    	margin-bottom: 10px;
    	border-bottom: 2px solid #73462d;
	}
	.mobilesidemenu ul {
    	/* UL menu inside container */
    	list-style: none;
    	margin: 0;
    	padding: 0;
    	width: 100%;
	}
	.mobilesidemenu li {
	}
	.mobilesidemenu li a {
    	display: block;
    	text-decoration: none;
    	font-size: 1.4em;
    	/* font size of menu links */
    	color: #3b3b3b;
    	margin: 0;
    	padding: 12px;
	}
	.mobilesidemenu li a:hover {
    	color: #9b9b9b;
	}
	.mobilesidemenu nav #navtoggler {
    	/* label button inside nav to close menu */
    	cursor: pointer;
    	position: absolute;
    	left: 0;
    	top: 7px;
    	-moz-border-radius: 0 0 40px 0;
    	-webkit-border-radius: 0 0 40px 0;
    	border-radius: 0 0 40px 0;
    	width: 40px;
    	height: 30px;
    	text-align: center;
	}
	.mobilesidemenu nav #navtoggler::after {
    	/* label button x */
    	content: "X";
    	color: #333;
    	display: block;
    	font: normal 20px Arial;
    	margin-top: 2px;
    	margin-left: -4px;
    	-moz-transition: all 0.3s ease-in;
    	-webkit-transition: all 0.3s ease-in;
    	transition: all 0.3s ease-in;
	}
	.mobilesidemenu .mobileoverlay {
    	/* overlay that covers entire page when menu is open */
    	position: fixed;
    	display: flex;
    	width: 100%;
    	height: 100%;
    	left: 0;
    	top: 0;
    	opacity: .6;
    	background: black;
    	z-index: 1001;
    	visibility: hidden;
	}
	.mobilesidemenu .mobileoverlay #navtoggler {
    	/* label of overlay that closes menu when clicked on */
    	width: 100%;
    	height: 100%;
    	position: absolute;
	}
	.mobilesidemenu nav #navtoggler:hover::after {
    	/* state of NAV label::after when mouse moves over */
    	-moz-transform: rotatey(180deg);
    	-ms-transform: rotatey(180deg);
    	-webkit-transform: rotatey(180deg);
    	transform: rotatey(180deg);
    	/* flip labels vertically onMouseover */
	}
	.mobilesidemenu input[type="checkbox"]:checked ~ label {
    	/* state of main menu label when menu is open  */
    	border-color: transparent;
	}
	.mobilesidemenu input[type="checkbox"]:checked ~ label::before {
    	/* state of main menu label::before when menu is open  */
    	transform: rotate(-45deg);
	}
	.mobilesidemenu input[type="checkbox"]:checked ~ label::after {
    	/* state of main menu label::after when menu is open  */
    	transform: rotate(45deg);
	}
	.mobilesidemenu input[type="checkbox"]:checked ~ nav {
    	/* state of NAV when menu is open  */
    	right: 0;
    	/* set left to 0 to animate it into view  */
	}
	.mobilesidemenu input[type="checkbox"]:checked ~ div.mobileoverlay {
    	/* state of overlay when menu is open  */
    	visibility: visible;
	}
	#photos {
		width: 100%;
		margin: 10px auto;
	}
	#photos h2 {
		width: 100%;
	}
	.feedback-container {
		display: none;
	}
	.Inputfield {
		width: 100% !important;
	}
	.InputfieldFormWidths .InputfieldColumnWidth > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidth > .InputfieldContent {
    	padding-left: 0 !important;
	}
	#reservations {
    	padding: 10px;
	}
}
@media screen and (max-width: 600px) {
	.calendar-item {
    	width: 44.5%;
    	flex: 0 1 44.5%;
	}
	.cottage-logo {
    	max-width: 330px;
    	max-height: 100px;
    	left: 25px;
    	transform: none;
	}
	.home-link {
		left: initial;
    	right: 25px;
    	margin: 0 0 0 220px;
	}
	.rigid {
    	height: 250px;
	}
	.slide-pic {
    	min-height: 250px;
    }
}
@media screen and (max-width: 500px) {

	#header {
		text-align: center;
	}
	#map_canvas_wrapper {  
		margin-top:45px;
	}

}
@media screen and (max-width: 480px) {
	#photos li {
		margin-left: 3px;
		margin-right: 3px;
	}
	.calendar-item {
    	width: 100%;
    	flex: 0 1 100%;
	}
	.cottage-logo {
	    max-width: 250px;
	}
	.description p {
		hyphens: auto;
	}
	#photos {
    	justify-content: center;
	}
	.details {
		font-size: 1.1em;
	}
	.price-point {
		font: normal 1.4em 'roboto_slabbold';
	}
}
@media screen and (max-width: 380px) {
	
	#header {
		width: 100%;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	#leftcolumn h2, #leftside h2 {
	font-size: 28px;
	}
	#footer {
		padding: 0;
	}
	#calendar {
		text-align: center;
	}
	.calendar-item {
		float: none;
	}
	.details {
		font-size: 1em;
	}
	.price-point {
		font: normal 1.3em 'roboto_slabbold';
	}
}