/* Custom Site Styles */
/*HEADER MENU*/
.f8-book-stay.menu-item a {
  background: #002b39 !important;
  color: #fff !important;
  border-radius: 8px !important;
  transition: all .25s ease !important;
  margin-left: 20px;
  padding: 0 30px 0 30px !important;
}

.f8-book-stay.menu-item a:hover {
  background: #b88a52 !important;
}

.f8-book-stay.menu-item a:hover {
  background: #b88a52 !important;
}

.f8-book-stay.menu-item.menu-item-type-post_type.menu-item-object-page a span.link-inner::after {
	display: none !important;
	background: none !important;
}

/*HERO*/
.f80-circle-arrow-rt a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #002b39;
	font-size: 16px;
	text-decoration: none;
	transition: all .3s ease;
}

.f80-circle-arrow-rt a i {
	border: 2px solid currentColor;
	border-radius: 50%;
	width: 35px;
	height: 35px;

	display: flex !important;
	align-items: center;
	justify-content: center;

	font-family: "Font Awesome 6 Pro" !important;
	font-size: 20px !important;
	line-height: 1 !important;

	transition: all .25s ease;
}

.f80-circle-arrow-rt a span {
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase;
}

.f80-circle-arrow-rt a:hover {
	color: #b88a52;
	text-decoration: none;
}

.f80-revslider-btn {
	background-color: #002b39 !important;
	transition: all .25s ease!important;
}

.f80-revslider-btn:hover {
	background-color: #b88a52 !important;
	text-decoration: none !important;
}

/*SECTION*/
#f80-section-hp {
}

#f80-section {
}

/*PAGE*/
.f80-page {
}

.f80-cta-page {
  margin: 0;
  padding: 0;
}

.f80-cta-page-sub {
  padding: 3px 0 3px 0;
}

.f80-page-cta p {
  margin: 0;
  padding: 0;
}

/*ROWS*/
.f80-row {
  padding-top: 80px;
  padding-bottom: 80px;
}

.f80-inner-row {
  padding-top: 80px;
  padding-bottom: 80px;
}

.f80-inner-row-top {
  padding-top: 80px;
}

.f80-inner-row-bottom {
  padding-bottom: 80px;
}

.f80-row-top {
  padding-bottom: 80px;
}

.f80-row-center {
  padding-top: 80px;
  padding-bottom: 80px;
}

.f80-row-icons {
  padding-top: 80px;
  padding-bottom: 80px;
}

/*SEP*/
.f80-sep {
  background: #c08d57;
  height: 3px;
  width: 50px;
  display: block;
}

.f80-border-sep {
	border-top: 1px solid #e5e5e5;
	padding: 60px 0 60px 0;
}

.f80-sep.center {
  background: #c08d57;
  height: 3px;
  width: 50px;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

.f80-icon-row {
    display: flex;
}

.f80-icon-row > .wpb_column {
    border-right: 1px solid #e5e5e5;
}

.f80-icon-row > .wpb_column:last-child {
    border-right: none;
}

/*TITLES*/
.f80-top-title h3 {
  margin-top: 0;
}

.f80-center-title {
  text-align: center;
}

.f80-center-title h3 {
  margin-top: 0;
}

.f80-title h1 {
  margin: 0;
  padding: 30px 0 30px 0;
  line-height: 48px;
}

.f80-page-title h1 {
  margin: 0;
  padding: 30px 0 30px 0;
  line-height: 48px;
}

.f80-cta-page-sub .f80-page-title h1 {
  margin: 0;
  padding: 30px 0 0 0;
  line-height: 48px;
}

/*COPY*/
.f80-cta-copy p {
  margin: 0;
  padding: 0 0 30px 0;
}

.f80-cta-news p {
  margin: 0;
  padding: 0;
}


/*BTN STORY*/
.f80-story-btn a {
  color: #002e3d;	
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
}

.f80-story-btn a i {
  color: #c08d57;
}

.f80-story-btn a:hover {
  color: #c08d57;
  text-decoration: none;
}

/*LINKS*/
a {
  transition: all .25s ease;
}

/*BTN VIEW*/
.f80-view-btn a {
  color: #002e3d;
  border: 1px solid #002b39;
  border-radius: 8px;
  padding: 15px 30px 15px 30px;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
}

.f80-view-btn a:hover {
  color: #c08d57;
  border-color: #c08d57;
  text-decoration: none;
}

/*SEC1*/
.f80-sec1 {
  background-color: #f7f6f5;
}

/*SEC 2*/
.f80-sec2 {
	background-color: #f4f1ee;
}

.f80-story-img {
  width: 50vw;
  max-width: none;
  height: auto;
  display: block;
}


/*SEC 3*/
.f80-sec3 {
  background-color: #f7f6f5;
}

.f80-icon-title {
  margin-bottom: 0px;
  color: #002b39;
  font-size: 14px;
  letter-spacing: 2px;
  font-family: var(--wpex-inter-font);
  font-weight: 700;
  text-transform: uppercase;
}

.f80-icon-row.amenity .f80-icon-title p {
  text-transform: none;
  font-weight: 400;
  margin-top: 10px;
  letter-spacing: normal;
}

.f80-icon-row {
  margin-top: 25px;
}

.f80-icon-row.amenity.last {
  padding-bottom: 20px;
}

/*SEC 4*/
.f80-sec4 {
	background-color: #f4f1ee;
}

.f80-villa-img {
  width: 50vw;
  max-width: none;
  position: relative;
  left: -260px;
}

/*SEC 5*/
.f80-sec5 {
  padding-top: 5px;
  padding-bottom: 5px;
}

.f80-gl-dis {
  text-align: center;
  font-size: 12px;
  margin-top: 15px;
}

#nf-form-3-cont .nf-form-fields-required {
  display: none;
}

.f80-guest-list input {
}

#nf-form-3-cont .nf-field-element input {
  width: 100%;
  padding: 15px 20px 15px 20px;
  transition: all .25s ease;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700;
}

#nf-form-3-cont .nf-error-wrap.nf-error {
  display: none;
}

#nf-form-3-cont .nf-error-msg {
  text-align: center;
  padding: 0;
  margin-top: 0;
  font-size: 14px;
}

#nf-form-3-cont input.f80-guest-list {
  margin-bottom: 10px;
  padding: 15px 20px 15px 20px;
  text-align: center;
  font-weight: 400;
  text-transform: none;
}

#nf-form-3-cont .nf-field-container {
  margin-bottom: 0px;
}


/*SEC 6*/
.f80-sec6 {
  background-color: #f7f6f5;
}

/*PAGE SECTIONS*/
.f80-page-header {
	min-height: 500px;
  position: relative;
  overflow: hidden;
}

.f80-sub-header {
  padding-bottom: 60px;
}

.f80-page-header::before {
  content: "";
  position: absolute;
  display: flex !important;
  inset: 0;

background: linear-gradient(
  90deg,
  rgba(255,255,255,.92) 0%,
  rgba(255,255,255,.75) 20%,
  rgba(255,255,255,.35) 50%,
  rgba(255,255,255,0) 75%
);
  z-index: 1;
}

.f80-page-header > * {
  position: relative;
  z-index: 2;
}

.f80-icon-title h4 {
  margin-top: 10px;
}

.f80-gallery {
  background-color: #f4f1ee;
}

.f80-gallery-page {
  margin-top: 5px;
}

.f80-local {
  background-color: #f7f6f5;
}

/*FAQ*/
.f80-faq-row {
  /*border: 1px solid #e5e5e5;*/
  /*background-color: #F7F6F5;*/
 /*border-radius: 8px;*/
}

.f80-faq-list-sec {
  background-color: #F7F6F5;
  padding: 80px 0 80px 0; 
}

.f80-faq-list-set {
  /*background-color: #F7F6F5;*/
  border-radius: 8px;
}

.f80-faq-list {
  background: #fff;
  /*border: 1px solid #e5e5e5;*/
  padding: 34px 30px 34px 30px;
  border-radius: 8px;
  margin-bottom: 20px;
  /*box-shadow: 0 4px 20px rgba(0,0,0,.08);*/
}

.f80-faq-list p {
  line-height: 30px;
  text-align: left;
  padding: 10px 0 0 0;
}

.f80-faq-list .vcex-toggle__content {
  margin-bottom: 0;
}

.f80-faq-list-icon {
  background: #fff;
  border-radius: 8px;
  margin-bottom: 20px;
  /*border: 1px solid #e5e5e5;*/
  /*border-top: 4px solid #c08d57;*/
  /*box-shadow: 0 4px 20px rgba(0,0,0,.08);*/
}

.f80-faq-list-icon-title {
}

.f80-faq-list a {
}

.f80-faq-list a .vcex-toggle__title {
  color: #002b39;
  font-weight: 600;	
}

.f80-faq-list-icon-title .vcex-icon-box-symbol {
}

.f80-faq-list-icon-title img {
}

.f80-faq-list-title {
  color: #002b39;
  font-size: 14px;
  letter-spacing: 2px;
  font-family: var(--wpex-inter-font);
  font-weight: 700;
  text-transform: uppercase; 
}

.vcex-toggle__icon-open::after {
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  content: "\f107";
  color: #1a1d1a;
  font-size: 22px;
  line-height: normal;
  margin-top: 0;
}

.vcex-toggle__icon-close::after {
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  content: "\f106";
  color: #1a1d1a;
  font-size: 22px;
  line-height: normal;
  position: relative;
  top: 0;
}

.vcex-toggle__icon-close svg {
  display: none;
}

.vcex-toggle__icon-open svg {
  display: none;
}

/*VILL PAGE*/
.f80-villa-sec {
  background-color: #f7f6f5;
}

.f80-villa-list {
}

/*CONTACT PAGE*/
.nf-form-fields-required {
	display: none;
}

.f80-contact-left {
}

.f80-contact-right {
	border-left: 1px solid #e5e5e5;
	padding-left: 180px;
}

.f80-plan-top {
	background: #f3f1f0;
}

.f80-plan {
	background: #f7f6f5;
}

.f80-page-title.contact {
  margin-top: 30px;
}

.f80-top-title.contact {
	margin-bottom: 30px;
}

.f80-page-title.contact p {
  margin: 0;
}

.f80-center-title.plan p {
  margin-top: 20px;
  margin-bottom: 30px;
}

.f80-view-faq-btn {
	text-align: center;
	margin-top: 30px;
}

.f80-contact-info {
}

.f80-contact-phone {
	padding-bottom: 40px;
}

.f80-contact-location {
	padding-bottom: 40px;
}

.f80-contact-hours {
}

/*FOOTER*/
.f80-footer {
  background-color: #003342;
  color: #fff;
}

.f80-footer-logo {
  margin-top: 12px;
}

.f80-footer-socials {
  padding-top: 30px;
}

.f80-footer-about p {
  padding-top: 30px;
  max-width: 80%;
}

.f80-footer-menu {
}

.f80-footer-menu h2 {
  color: #fff;
  font-size: 16px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin: 30px 0px 30px 0px;
}

.f80-footer-menu a {
  color: #fff;
  text-decoration: none;
}

.f80-footer-menu a:hover {
  color: #c08d57;
  text-decoration: none;
}

.f80-footer-menu ul {
  line-height: 30px;
}

.f80-copyright {
  color: #fff;
  font-size: 14px;
  font-weight: 200;
  margin-top: 30px;
}

/*SEARCH BAR*/
.f80-villa-search-row {
  background-color: #f7f6f5;
}

/*MOTOPRESS CSS MODS*/
/* Main wrapper */
.mphb_sc_search-form {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    align-items: flex-end;

    background: #fff;
    padding: 30px;
    border-radius: 8px;
    /*box-shadow: 0 4px 20px rgba(0,0,0,.08);*/
}

/* Hide annoying required notice */
.mphb-required-fields-tip,
.mphb_sc_search-form > p:first-child {
    display: none;
}

/* Fields */
.mphb_sc_search-check-in-date,
.mphb_sc_search-check-out-date,
.mphb_sc_search-adults,
.mphb_sc_search-children {
    flex: 1;
    min-width: 220px;
    margin: 0;
}

/* Button wrapper */
.mphb_sc_search-submit-button-wrapper {
    width: 260px;
    margin: 0 !important;
}

/* Labels */
.mphb_sc_search-form label {
    display: block;
    margin-bottom: 10px;

    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #002b39;
}

/* Remove line breaks */
.mphb_sc_search-form br {
    display: none;
}

/* Inputs */
.mphb_sc_search-form input[type="text"],
.mphb_sc_search-form select {
    width: 100%;
    height: 58px;

    border: 1px solid #e4e4e4;
    border-radius: 6px;

    padding: 0 18px;
    font-size: 16px;
}

/* Button */
.mphb_sc_search-submit-button-wrapper input {
    width: 100%;
    height: 58px;

    background: #00384b;
    color: #fff;

    border: none;
    border-radius: 6px;

    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.f80-villa-page-bg {
  background-color: #f7f6f5;
  padding: 0 0 80px;
}
/*TITLE*/
.f80-villa-title {
  margin: 0;
  padding: 30px 0 30px 0;
  line-height: 48px;
}

/*OVERVIEW*/
.f80-villa-overview {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 60px 0;
	border-bottom: 1px solid #e5e5e5;
	margin-bottom: 60px;
}

.f80-villa-stats {
	display: flex;
	gap: 40px;
	flex-wrap: wrap;
}

.f80-villa-stat {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 18px;
	font-weight: 500;
}

.f80-villa-stat i {
	font-size: 20px;
	color: #b89a6a;
	width: 20px;
	text-align: center;
}

.f80-villa-price {
  font-weight: 400;
  font-size: 16px;
  color: #002b39;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.f80-villa-price span {
  font-weight: 700;
}

/*GALLERY*/
/*.f80-villa-image {
	width: 100%;
	height: 650px;
	object-fit: cover;
	border-radius: 12px;
	display: block;
}*/

.f80-villa-gallery {
	display: grid;
	grid-template-columns: 1.7fr 1.3fr;
	gap: 10px;
}

.f80-hidden-gallery {
	display: none;
}

.f80-villa-gallery-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 10px;
}

.f80-villa-gallery-main,
.f80-villa-gallery-item {
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	isolation: isolate;
}

.f80-villa-gallery-main-image,
.f80-villa-gallery-item img {
	width: 100%;
	display: block;
	object-fit: cover;

	transition: transform 500ms ease;

	cursor: pointer;

	backface-visibility: hidden;
	will-change: transform;
	transform-origin: center center;
}

.f80-villa-gallery-main-image {
	height: 650px;
}

.f80-villa-gallery-item img {
	height: 319px;
}

.f80-villa-gallery-main:hover .f80-villa-gallery-main-image,
.f80-villa-gallery-item:hover img {
	transform: scale(1.1);
}

/*DESRIPTION*/
.f80-villa-description {
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 60px;
  padding-bottom: 60px;
}

.f80-villa-description h3 {
  font-weight: 600;
  font-size: 16px;
  color: #002b39;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 0;
}

.f80-villa-description p {
  margin: 0;
  padding: 25px 0 0 0;
}

.f80-villa-booking-card h3 {
  font-weight: 600;
  font-size: 16px;
  color: #002b39;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 0;
}

.f80-villa-amenities p,
.f80-villa-property-details p,
.f80-villa-availability p,
.f80-villa-reviews p,
.f80-villa-booking-card p,
.f80-villa-booking-info p {
  margin: 0;
  padding: 25px 0 0 0;
}

.f80-villa-booking-card p {
  margin: 0;
  padding: 20px 0 0 0;
}

.f80-villa-sidebar .f80-villa-booking-card p.mphb-rooms-quantity-wrapper {
  margin: 0;
  padding: 25px 0 20px 0;
}

.f80-villa-sidebar .f80-villa-booking-card p.mphb-reserve-btn-wrapper {
  margin: 0;
  padding: 25px 0 0 0;
}

.mphb-reserve-room-section p {
  padding: 0 0 25px 0;
}

.f80-villa-description {
	max-width: 800px;
}

.f80-villa-booking-price {
	font-size: 32px;
	font-weight: 600;
	color: #002b39;
	margin-bottom: 25px;
}

.f80-villa-content-layout {
	display: grid;
	grid-template-columns: minmax(0, 2fr) 380px;
	gap: 60px;
}

.f80-villa-main-content {
	min-width: 0;
}

.f80-villa-description,
.f80-villa-amenities,
.f80-villa-property-details,
.f80-villa-availability {
	padding-bottom: 60px;
	margin-bottom: 60px;
	border-bottom: 1px solid #e5e5e5;
}

.f80-villa-sidebar {
	position: relative;
}

.f80-villa-booking-card {
	position: sticky;
	top: 50px;
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	padding: 25px;
	margin-bottom: 50px;
}

.f80-villa-sidebar .f80-villa-booking-card label {
  margin-bottom: 5px;
  display: inline-block;
}

.f80-villa-sidebar .f80-villa-booking-card input {
	width: 100%;
}

.f80-villa-sidebar .f80-villa-booking-card select {
  color: inherit;
  background-color: var(--wpex-input-bg);
  border: 1px solid var(--wpex-input-border-color);
  outline: 0;
  width: 100%;
  padding: 12px 0px 12px 20px;
  border-radius: 8px;
}

.f80-villa-booking-info {
	margin-top: 20px;
}

.f80-villa-booking-card p.f80-disclosure {
	font-size: 14px;
	color: #888;
}

/*AMENITIES*/
.f80-villa-amenities-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 15px 30px;
	padding: 25px 0 0 0;
}

.f80-villa-amenity {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 16px;
}

.f80-villa-amenity i {
	font-size: 18px;
	color: #b89a6a;
	width: 24px;
	text-align: center;
}

/*PROPERTY DETAILS*/
.f80-property-details-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px 60px;
  padding: 25px 0 0 0;
}

.f80-detail {
	display: flex;
	justify-content: space-between;
	padding-bottom: 12px;
	border-bottom: 1px solid #e6e6e6;
}

.f80-detail .label {
	font-weight: 600;
	color: #002b39;
}

.f80-detail .value {
	color: #666;
}

/*AVAILABILITY CALENDAR*/
.f80-villa-availability h3 {
  margin-top: 0;
}
.f80-villa-availability {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #e5e5e5;
  padding: 25px;
}

.f80-villa-availability-sec {
  padding: 25px 0 0 0;
}

/* CALENDAR WRAPPER */
.f80-villa-availability .datepick {
	width: 100% !important;
	max-width: 700px;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-ctrl, .datepick-popup .mphb-datepicker-minimal .datepick-ctrl {
	border: 0 !important;
	margin-top: 0;
}

/* NAVIGATION */
.f80-villa-availability .datepick-nav {
	display: flex;
	gap: 10px;
	margin-bottom: 25px;
}

.f80-villa-availability .datepick-nav .datepick-cmd {
	flex: 1;
	text-align: center;
}

.f80-villa-availability .datepick-cmd {
	color: #002b39;
	font-weight: 600;
	text-decoration: none;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-nav, .datepick-popup .mphb-datepicker-minimal .datepick-nav {
  border: 0 !important;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-nav a, .datepick-popup .mphb-datepicker-minimal .datepick-nav a {
  transition: all .25s ease !important;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-nav a:hover, .datepick-popup .mphb-datepicker-minimal .datepick-nav a:hover {
	background-color: #fff !important;
	color: #c08d57 !important;
	border-color: #c08d57;
}

/* MONTH HEADERS */
.f80-villa-availability .datepick-month-header {
	margin-bottom: 10px;
	padding-bottom: 0;
	/*border-bottom: 1px solid #e5e5e5;*/
}

/* TABLE */
.f80-villa-availability table {
	border-collapse: collapse;
	width: 100%;
}

.f80-villa-availability th {
	font-size: 13px;
	font-weight: 600;
	color: #002b39;
	padding: 8px;
	text-align: center;
}

.f80-villa-availability table,
.f80-villa-availability td,
.f80-villa-availability th {
	border: 0 !important;
}

/* DAYS */
.f80-villa-availability .mphb-date-cell {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: auto;
	margin: 2px auto !important;
	border: 1px solid transparent;
	transition: all .25s ease !important;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-month span, .datepick-popup .mphb-datepicker-minimal .datepick-month span {
	padding: 0;
	font-size: 14px;
	font-weight: 600;
	color: #002b39;
}

/*MONTHS*/
.f80-villa-availability .datepick-month {
	border: 0 !important;
}


.f80-villa-availability-sec .datepick-month.first {
	border-right: 0 !important;
	padding-right: 8px !important;
}

.f80-villa-availability-sec .datepick-month.last {
	padding-left: 8px !important;
}

/*popup*/
.mphb-datepick-popup .datepick-month.first {
	padding-right: 10px !important;
}

.mphb-datepick-popup .datepick-month.last {
	padding-left: 10px !important;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-month-header, .mphb-calendar .mphb-datepicker-minimal .datepick-month-header select, .mphb-calendar .mphb-datepicker-minimal .datepick-month-header input, .datepick-popup .mphb-datepicker-minimal .datepick-month-header, .datepick-popup .mphb-datepicker-minimal .datepick-month-header select, .datepick-popup .mphb-datepicker-minimal .datepick-month-header input {
	color: #002b39!important;
	font-size: 16px !important;
	font-weight: 600 !important;
}

/* AVAILABLE DAYS */
.f80-villa-availability .mphb-available-date:hover {
	background: #002b39;
	color: #fff;
}

/* SELECTED DAYS */
.f80-villa-availability .datepick-selected,
.f80-villa-availability .mphb-selected-date,
.f80-villa-availability .mphb-selected-date--check-in,
.f80-villa-availability .mphb-selected-date--check-out {
	background: rgba(184,154,106,.15) !important;
	color: #002b39 !important;
}

.mphb-selectable-date--check-in.mphb-selected-date--check-in.datepick-selected,
.mphb-selectable-date--check-in.mphb-selected-date--check-out.datepick-selected {
	background-color: #022435 !important;
	color: #fff !important;
}

/*day selected range*/
.f80-villa-availability .datepick-selected {
	background: rgba(184,154,106,.15) !important;
	color: #022435 !important;
	/*font-weight: 600 !important;*/
	border-radius: 100% !important;
	width: 32px;
}

.mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td .mphb-selected-date, .mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td .mphb-selected-date--check-in, .mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td .mphb-selected-date--check-out {
	/*background: #F7F6F5 !important;*/
	text-decoration: none;
	/*color: #022435 !important;*/
	/*border: 1px solid #022435 !important;*/
	border-radius: 100% !important;
	width: 32px;
}

.mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td .mphb-selectable-date--check-in:hover, .mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td .mphb-selectable-date--check-out:hover {
	background: #fff !important;
	text-decoration: none;
	color: #022435 !important;
	border: 1px solid #022435 !important;
	border-radius: 100% !important;
	width: 32px;
}

.mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td a, .mphb-calendar.mphb-datepick .mphb-datepicker-minimal .datepick-month td span {
	border-radius: 100% !important;
}

.datepick-month thead {
  border: 0 !important;
}

/*POP UP*/
.mphb-calendar .mphb-datepicker-minimal.datepick, .datepick-popup .mphb-datepicker-minimal.datepick {
	width: 100% !important;
	max-width: 100%;

}

.datepick-popup {
	width: 35%;
	max-width: 100%;
	padding: 25px !important;
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
}

.datepick-popup .mphb-datepicker-minimal.mphb-datepick-popup .datepick-month td .mphb-selectable-date {
	padding: 0;
	background-color: #fff;
	color: #4e4e4e;
	text-decoration: none;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-month td a, .mphb-calendar .mphb-datepicker-minimal .datepick-month td span, .datepick-popup .mphb-datepicker-minimal .datepick-month td a, .datepick-popup .mphb-datepicker-minimal .datepick-month td span {
	max-width: inherit !important;
	width: 32px;
}

.datepick-popup .mphb-datepicker-minimal.mphb-datepick-popup .datepick-month td .datepick-selected {
	background-color: #fff !important;
	color: #022435 !important;
	border: 1px solid #022435 !important;
}

.datepick-popup .mphb-datepicker-minimal .datepick-ctrl a {
  color: #022435 !important;
  border: 0 !important;
  text-decoration: none;
  padding-bottom: 0 !important;
}

.datepick-popup .mphb-datepicker-minimal .datepick-ctrl a:hover {
	color: #c08d57 !important;
	background-color: transparent !important;
	/*width: 30px !important;*/
}

.datepick-popup .mphb-datepicker-minimal.mphb-datepick-popup .datepick-month td .mphb-selectable-date {
	padding: 0;
	background-color: #fff !important;
	color: #022435 !important;
	border: 1px solid #fff !important;
	transition: all .25s ease !important;
	width: 32px;
}

.datepick-popup .mphb-datepicker-minimal.mphb-datepick-popup .datepick-month td .mphb-check-in-date {
	background-color: #fff !important;
	color: #022435 !important;
	text-decoration: none;
	border: 1px solid #022435 !important;
	width: 32px;
}

.datepick-popup .mphb-datepicker-minimal.mphb-datepick-popup .datepick-month td a.datepick-highlight {
	background-color: #fff !important;
	border: 1px solid #022435 !important;
	color: #022435 !important;
}

.datepick-popup .mphb-datepicker-minimal.mphb-datepick-popup .datepick-month td .datepick-selected {
	background-color: #fff !important;
	color: #022435 !important;
	border: 1px solid #022435 !important;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-month + .datepick-month, .datepick-popup .mphb-datepicker-minimal .datepick-month + .datepick-month {
	border-left: 0 !important;
}

.datepick-popup .mphb-datepicker-minimal .datepick-ctrl::before {
	border-left: 0 !important;
}

.datepick-popup .mphb-datepicker-minimal .datepick-nav {
	border: 0 !important;
	display: flex;
	gap: 10px;
	margin-bottom: 15px;
}

.datepick-popup .mphb-datepicker-minimal .datepick-nav a {
  flex: 1;
  text-align: center;
  text-decoration: none;
}

.datepick-popup .mphb-datepicker-minimal .datepick-month {
	border: 0 !important;
}

.datepick-popup .mphb-datepicker-minimal .datepick-month + .datepick-month {
	border-right: 0 !important;
}

.mphb-datepick-popup.mphb-check-in-datepick.mphb-datepicker-minimal div.datepick-month-row div.datepick-month.first table {
	border-right: 1px solid #022435 !important;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-month-header, .datepick-popup .mphb-datepicker-minimal .datepick-month-header {
	border-bottom: 0 !important;
}

/* SELECTED DATE RANGE TEXT */
.f80-villa-availability .mphb-calendar__selected-dates {
	font-weight: 600;
	color: #002b39;
	padding-top: 15px;
}

/* CLEAR BUTTON */
.f80-villa-availability a.datepick-cmd.datepick-cmd-clear  {
	background-color: transparent;
	color: #b89a6a;
	font-weight: 600;
	border: 0 !important;
}

.f80-villa-availability a.datepick-cmd.datepick-cmd-clear:hover {
	color: #c08d57 !important;
	background-color: transparent !important;
}

.datepick-cmd {
	padding: 6px 12px;
	border: 1px solid #e5e5e5;
	border-radius: 6px;
	background: #fff;
}

.mphb-calendar .mphb-datepicker-minimal .datepick-ctrl {
	margin-top: 10px !important;
}

/*REVIEWS*/
.f80-villa-reviews-sec {
  padding: 25px 0 0 0;
}

/*WPBAKERY CARD*/
.f80-villa-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

@media (max-width: 1200px) {
	.f80-villa-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.f80-villa-grid {
		grid-template-columns: 1fr;
	}
}

.f80-villa-card {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	width: 100%;
}

.f80-villa-card-content {
	padding: 25px;
}

.f80-villa-card-image {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	display: block;
	border-radius: 10px 10px 0 0;
}

.f80-villa-card-content {
	background: #fff;
	border-radius: 0 0 10px 10px;
}

.f80-villa-list-sec {
  background-color: #f7f6f5;
  padding-top: 80px;
  padding-bottom: 80px;
}

.f80-villa-card-collection {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 15px;
}

.f80-villa-card-title {
	font-family: "Cormorant Garamond";
	font-size: 30px;
	line-height: 1.1;
	margin: 0 0 16px;
	text-transform: none;
}

.f80-villa-card-meta {
	font-size: 15px;
	margin-bottom: 16px;
}

.f80-villa-card-meta span {
  padding-right: 15px;
}

.f80-villa-card-meta span i {
  color: #b89a6a;
  width: 15px;
  text-align: center;
}

.f80-villa-card-price {
  font-size: 14px;
  font-weight: 400;
  color: #002b39;
  margin-bottom: 20px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.f80-villa-card-price span {
  font-weight: 700;
}

.f80-villa-card-button {
  width: 100%;
  color: #002e3d;
  border: 1px solid #002b39;
  border-radius: 8px;
  padding: 15px 30px 15px 30px;
  text-transform: uppercase;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

.f80-villa-card-button:hover {
  color: #c08d57;
  border-color: #c08d57;
  text-decoration: none;
}

/*CHECKOUT*/
/* ==========================================
   MOTOPRESS CHECKOUT
========================================== */
.mphb_sc_checkout-wrapper .mphb-login-form-wrap {
  margin-bottom: 20px !important;
}

.mphb_sc_checkout-wrapper {
	max-width: 1440px;
	margin: 0 auto;
	padding: 60px 0;
}

.mphb_sc_checkout-form {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) 400px;
	gap: 30px;
	align-items: start;
}

/* ==========================================
   LEFT COLUMN
========================================== */

#mphb-booking-details,
#mphb-customer-details {
	grid-column: 1;
}

/* ==========================================
   RIGHT SIDEBAR
========================================== */

#mphb-price-details {
	grid-column: 2;
	grid-row: 1 / span 3;

	background: #fff;
	/*border: 1px solid #e5e5e5;*/
	border-radius: 8px;
	padding: 25px;

	position: sticky;
	top: 0;
	height: fit-content;
	margin-top: 0;
	margin-bottom: 0;
}

/* ==========================================
   SECTION HEADINGS
========================================== */

.mphb-booking-details-title,
.mphb-customer-details-title,
.mphb-gateway-chooser-title {
	display: flex;
	align-items: center;
	gap: 15px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #002b39;
	margin: 0 0 30px;
}

.mphb-reserve-rooms-details .mphb-room-details h3.mphb-room-number {
    display: block;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #002b39;
	margin: 0 0 20px;
}

.mphb-price-breakdown-title {
	display: block;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #002b39;
	margin: 0 0 30px;
}

.mphb-price-breakdown-title:after,
.mphb-room-details h3.mphb-room-number:after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #c08d57;
	margin-top: 20px;
}

.f80-step-1 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #003b4a;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	flex-shrink: 0;
}

.f80-step-2 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #c08d57;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	flex-shrink: 0;
}

.f80-step-3 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #003b4a;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	flex-shrink: 0;
}

/*USER ACCOUNT*/

.f80-account-layout {
	display: grid;
	grid-template-columns: 320px 1fr;
	gap: 30px;
	align-items: start;
}

.mphb-account-content {
	width: 100% !important;
}

.f80-account-sidebar {
	position: sticky;
	top: 0;
}

.f80-account-sidebar-title {
	font-size: 14px;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 25px;
	color: #002b39;
}

.f80-account-nav {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 30px;
}

.f80-account-nav a {
	display: block;
	padding: 18px 22px;
	background: #fff;
	/*border: 1px solid #e7ecef;*/
	border-radius: 8px;
	text-decoration: none;
	color: #002b39;
	font-weight: 600;
	transition: .25s;
}

.f80-account-nav a:hover,
.f80-account-nav a.active {
	background: #002b39;
	color: #fff;
	border-color: #002b39;
	text-decoration: none
}

.f80-account-sidebar-cta {
	background: #fff;
	/*border: 1px solid #e7ecef;*/
	border-radius: 12px;
	padding: 30px;
}

.f80-account-sidebar-cta h5 {
	font-family: "Cormorant Garamond", serif;
	font-size: 34px;
	line-height: 1.1;
	margin-top: 0;
	margin-bottom: 15px;
	color: #002b39;
}

.f80-account-sidebar-cta p {
	margin-bottom: 20px;
}

.f80-account-content {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.f80-account-dashboard {
	display: flex;
	flex-direction: column;
	gap: 50px;
}

.f80-account-hero {
	/*display: grid;
	grid-template-columns: 1fr 400px;
	gap: 40px;
	align-items: center;*/
	background: #fff;
	border: 1px solid #e7ecef;
	border-radius: 12px;
	padding: 40px;
}

.f80-account-eyebrow {
	display: block;
	margin-top: 0;
	margin-bottom: 25px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #002b39;
}

.f80-account-eyebrow:after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #c08d57;
	margin-top: 20px;
}

.f80-account-hero h2 {
	margin: 0 0 20px;
	font-size: 34px;
	line-height: 1;
	font-family: "Cormorant Garamond", serif;
	color: #002b39;
}

.f80-account-hero p {
	line-height: 1.8;
	max-width: 650px;
}

.f80-account-actions {
	display: flex;
	gap: 25px;
	flex-wrap: wrap;
}

.f80-account-link {
	font-weight: 600;
	text-decoration: none;
	color: #002b39;
	border-bottom: 1px solid #c49a6c;
}

.f80-account-hero-image img {
	display: block;
	width: 100%;
	height: 300px;
	object-fit: cover;
	border-radius: 8px;
}

.f80-account-section {
	background: #fff;
	border: 1px solid #e7ecef;
	border-radius: 12px;
	padding: 40px;
}

.f80-account-resource-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
	margin-top: 20px;
}

.f80-resource-card {
	display: block;
	padding: 25px;
	border: 1px solid #e7ecef;
	border-radius: 8px;
	text-decoration: none;
	color: inherit;
	transition: .3s;
}

.f80-resource-card:hover {
	transform: translateY(-3px);
	border-color: #c49a6c;
}

/*ACCOUNT SETTINGS*/
/* Account Details Form */
.mphb-account-details-form {
	max-width: 100%;
}

/* Section Cards */
.mphb-account-details,
.mphb-account-change-password {
	background: #fff;
	/*border: 1px solid #e5e7eb;*/
	border-radius: 8px;
	padding: 30px;
	margin-bottom: 30px;
}

/* Grid Layout */
.mphb-account-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px 30px;
}

/* Full Width Fields */
.mphb-customer-address1,
.mphb-customer-country {
	grid-column: 1 / -1;
}

/* Remove Paragraph Margins */
.mphb-account-details p,
.mphb-account-change-password p {
	margin: 0;
}

/* Labels */
.mphb-account-details label,
.mphb-account-change-password label {
	display: inline-block;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #002b39;
}

/* Inputs */
.mphb-account-details input,
.mphb-account-details select,
.mphb-account-change-password input {
	width: 100%;
	height: 52px;
	padding: 0 16px;
	border: 1px solid #d7dde2;
	border-radius: 8px;
	background: #fff;
	font-size: 15px;
	transition: all .2s ease;
}

/* Focus */
.mphb-account-details input:focus,
.mphb-account-details select:focus,
.mphb-account-change-password input:focus {
	outline: none;
	border-color: #002b39;
	box-shadow: 0 0 0 3px rgba(0,43,57,.08);
}

/* Readonly Username */
.mphb-customer-username input {
	background: #f5f7f8;
	cursor: not-allowed;
}

/* Password Section */
.mphb-account-change-password {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.mphb-account-change-password p:first-child {
	grid-column: 1 / -1;
	margin-bottom: 10px;
}

.mphb-account-change-password strong {
	font-family: "Cormorant Garamond", serif;
	font-size: 34px;
	font-weight: 500;
	color: #002b39;
}

/* Save Button */
.mphb-account-details-form .button {
	background: #002b39;
	color: #fff;
	border: 0;
	border-radius: 8px;
	padding: 14px 30px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	min-width: 220px;
	transition: all .2s ease;
}

.mphb-account-details-form .button:hover {
	background: #01475e;
	color: #fff;
}

/* Mobile */
@media (max-width: 768px) {

	.mphb-account-details,
	.mphb-account-change-password {
		grid-template-columns: 1fr;
	}

}

/*MY RESERVATIONS*/
.mphb-account-bookings {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #fff;
	/*border: 1px solid #e5e7eb;*/
	border-radius: 12px;
	overflow: hidden;
}

.mphb-account-bookings thead {
	background: #022435;
}

.mphb-account-bookings th {
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 18px 20px;
	border: 0;
}

.mphb-account-bookings td {
	padding: 20px;
	font-size: 16px;
	border: 0
	vertical-align: top;
	border: 0;
}

.mphb-account-bookings tr:last-child td {
	border-bottom: 0;
}

.booking-number {
	font-weight: 600;
	color: #002b39;
}

.mphb-account-bookings .booking-status,
.mphb-account-bookings .payment-status {
	display: inline-block;
	margin-top: 4px;
	padding: 4px 10px;
	border-radius: 30px;
	background: #eef7f5;
	color: #26735f;
	font-size: 12px;
	font-weight: 400;
	text-transform: uppercase;
}

.booking-actions a {
	display: inline-block;
	padding: 10px 18px;
	background: #002b39;
	color: #fff;
	text-decoration: none;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.booking-actions a:hover {
	background: #c08d57;
	color: #fff;
	text-decoration: none;
}

/*
|--------------------------------------------------------------------------
| Reservation Details Page
|--------------------------------------------------------------------------
*/

.mphb_sc_booking_confirmation {
}

/*
|--------------------------------------------------------------------------
| Success Messages
|--------------------------------------------------------------------------
*/

.mphb-booking-confirmation-messages,
.mphb-payment-messages {
	background: #eef7f5;
	border: 1px solid #cfe6df;
	border-radius: 12px;
	padding: 30px;
	margin-bottom: 30px;
}

.mphb-booking-confirmation-messages h3,
.mphb-payment-messages h3 {
	font-family: "Cormorant Garamond", serif;
	font-size: 42px;
	font-weight: 500;
	color: #002b39;
	margin-bottom: 10px;
}

/*
|--------------------------------------------------------------------------
| Booking / Payment Sections
|--------------------------------------------------------------------------
*/
.mphb-booking-details-section.booking .accommodations span.accommodations-title.f80-accommodation-title {
  margin-top: 20px;
  display: inline-block;
}

.mphb-booking-details-section.booking .accommodations span.accommodations-list {
  font-family: "Cormorant Garamond";
  font-size: 34px;
  font-weight: 600;
}

.mphb-booking-details-section.booking,
.mphb-booking-details-section.payment {
	background: #fff;
	/*border: 1px solid #e5e7eb;*/
	border-radius: 8px;
	padding: 25px;
	margin-bottom: 25px;
}

.mphb-booking-details-section.booking .accommodations h3.mphb-booking-details-title {
	margin-top: 25px;
	margin-bottom: 20px;
}

.mphb-booking-details-section.booking h3.mphb-booking-details-title,
.mphb-booking-details-section.payment h3.mphb-booking-details-title {
  display: block;
  margin-top: 0;
  margin-bottom: 30px;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #002b39;
}

.mphb-booking-details-section.booking h3.mphb-booking-details-title:after, 
.mphb-booking-details-section.payment h3.mphb-booking-details-title:after
{
content: "";
  display: block;
  width: 50px;
  height: 3px;
  background: #c08d57;
  margin-top: 20px;
}

/*
|--------------------------------------------------------------------------
| Details Grid
|--------------------------------------------------------------------------
*/
.mphb-booking-details-section.booking ul.mphb-booking-details,
.mphb-booking-details-section.payment ul.mphb-booking-details
 {
	list-style: none;
	padding: 0;
	margin: 0;

	display: flex !important;
	/*grid-template-columns: repeat(2, minmax(0, 1fr));*/
	gap: 20px;
}

.mphb-booking-details-section.booking ul.mphb-booking-details li,
.mphb-booking-details-section.payment ul.mphb-booking-details li {
  border: 0 !important;
  margin: 0 !important;
}

/*
|--------------------------------------------------------------------------
| Labels
|--------------------------------------------------------------------------
*/

.mphb-booking-details .label {
  display: block !important;
  font-size: 14px !important;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #022435;
  margin-bottom: 6px;
}

/*
|--------------------------------------------------------------------------
| Values
|--------------------------------------------------------------------------
*/

.mphb-booking-details .value {
  display: block;
  font-size: 16px;
  font-weight: 400 !important;
  color: #002b39;
}

.mphb-booking-details .value a {
	color: #002b39;
	text-decoration: none;
}

.mphb-booking-details .value a:hover {
	text-decoration: underline;
}

.f80-status,
.mphb-booking-details-section.booking ul.mphb-booking-details li.booking-status span.value.f80-status,
.mphb-booking-details-section.payment ul.mphb-booking-details li.payment-number.payment-status span.value.f80-status
 {
  display: inline-block;
  margin-top: 0;
  padding: 4px 10px;
  border-radius: 30px;
  background: #eef7f5;
  color: #26735f;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
}

/*
|--------------------------------------------------------------------------
| Status Badge
|--------------------------------------------------------------------------
*/

.mphb-booking-details .status,
.mphb-booking-details .value .mphb-status {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 999px;
	background: #eef7f5;
	color: #26735f;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}

/*
|--------------------------------------------------------------------------
| Payment Instructions
|--------------------------------------------------------------------------
*/

.mphb-payment-instructions {
	background: #c08d57;
	color: #fff;
	border-radius: 12px;
	padding: 30px;
	margin-top: 30px;
}

.mphb-payment-instructions p:last-child {
	margin-bottom: 0;
}

.mphb-payment-instructions a {
	color: #fff;
	text-decoration: underline;
}

/*
|--------------------------------------------------------------------------
| Mobile
|--------------------------------------------------------------------------
*/

@media (max-width: 768px) {

	.mphb-booking-details {
		grid-template-columns: 1fr;
	}

	.mphb-booking-details-title,
	.mphb-booking-confirmation-messages h3,
	.mphb-payment-messages h3 {
		font-size: 32px;
	}

}

/* ==========================================
   BOOKING DETAILS CARD
========================================== */

#mphb-booking-details{
	background: #fff;
	/*border: 1px solid #e5e5e5;*/
	border-radius: 8px;
	padding: 25px;
	margin-top: 0;
}

.mphb-reserve-rooms-details {
	margin-top: 30px;
}

.mphb-room-details p.mphb-room-type-title {
  font-family: "Cormorant Garamond";
  font-size: 34px;
  font-weight: 600
  line-height: 1.1;
  margin: 0px 0px 30px 0px;
  padding: 0 0px 30px 0;
  border-bottom: 1px solid #e5e5e5;
  text-transform: none;
}

/* ==========================================
   CUSTOMER INFO SECTION
========================================== */

#mphb-customer-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px 30px;
	margin-top: 50px;
	
	background: #fff;
	/*border: 1px solid #e5e5e5;*/
	border-radius: 12px;
	padding: 25px;
	margin-top: 25px;
}

.mphb-customer-details-title,
.mphb-required-fields-tip,
.mphb-customer-note {
	grid-column: 1 / -1;
}

.mphb-required-fields-tip {
	display: none;
}

/* ==========================================
   FORM LABELS
========================================== */

.mphb_sc_checkout-form label {
	display: block;
	margin-bottom: 8px;
	font-size: 14px;
	font-weight: 600;
	color: #002b39;
}

/* ==========================================
   INPUTS
========================================== */

.mphb_sc_checkout-form input[type="text"],
.mphb_sc_checkout-form input[type="email"],
.mphb_sc_checkout-form input[type="tel"],
.mphb_sc_checkout-form select,
.mphb_sc_checkout-form textarea {
	width: 100%;
	border: 1px solid #d9d9d9;
	border-radius: 8px;
	background: #fff;
	font-size: 16px;
	color: #002b39;
}

.mphb_sc_checkout-form input[type="text"],
.mphb_sc_checkout-form input[type="email"],
.mphb_sc_checkout-form input[type="tel"],
.mphb_sc_checkout-form select {
	height: 52px;
	padding: 0 18px;
}

.mphb_sc_checkout-form textarea {
	height: 150px;
	padding: 15px 18px;
	resize: vertical;
}

/* ==========================================
   BOOKING DETAIL SPACING
========================================== */

.mphb-check-in-date,
.mphb-check-out-date {
	margin-bottom: 15px;
	color: #002b39;
}

/* ==========================================
   PRICE BREAKDOWN TABLE
========================================== */

.mphb-price-breakdown {
	width: 100%;
	border-collapse: collapse;
	margin-top: 20px;
	margin-bottom: 0;
}

.mphb-price-breakdown th,
.mphb-price-breakdown td {
	padding: 12px 15px;
	border-bottom: 1px solid #ececec;
	/*text-align: right;*/
}

.mphb-table-price-column {
	text-align: right;
}

.mphb-price-breakdown-total th,
.mphb-price-breakdown-total td {
	font-size: 16px;
	font-weight: 700;
	color: #002b39;
}

.mphb-price-breakdown tbody tr.mphb-price-breakdown-booking.mphb-price-breakdown-group td a.mphb-price-breakdown-accommodation.mphb-price-breakdown-expand {
	display: none;
}

/* ==========================================
   PRICE BREAKDOWN LINK
========================================== */

.mphb-price-breakdown-accommodation {
	color: #002b39;
	text-decoration: none;
	font-weight: 600;
}

/* ==========================================
   TOTAL PRICE
========================================== */

.mphb-total-price {
	grid-column: 1;

	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 20px;
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	color: #002b39;
}

.mphb-total-price output {
	display: block;
}

/* ==========================================
   ERRORS
========================================== */

.mphb-errors-wrapper {
	grid-column: 1;
	margin: 0;
}

/*payment*/
.mphb_cb_checkout_form > .mphb-checkout-section:not(:first-of-type), .mphb_sc_checkout-form > .mphb-checkout-section:not(:first-of-type) {
	margin-top: 0 !important;
}

#mphb-billing-details {
  background: #fff;
  /*border: 1px solid #e5e5e5;*/
  border-radius: 12px;
  padding: 25px;
  margin-top: 25px;
}

/* ==========================================
   BOOK NOW BUTTON
========================================== */

.mphb_sc_checkout-submit-wrapper {
	grid-column: 1;
	margin: 0;
}

.mphb_sc_checkout-submit-wrapper .button {
	width: 100%;
	background: #003342;
	border: none;
	border-radius: 8px;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 1px;
	text-transform: uppercase;
	padding: 18px;
	transition: all .25s ease;
}

.mphb_sc_checkout-submit-wrapper .button:hover {
	background: #c08d57;
	color: #fff;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 991px) {

	.mphb_sc_checkout-form {
		grid-template-columns: 1fr;
	}

	#mphb-booking-details,
	#mphb-customer-details,
	#mphb-price-details,
	.mphb-total-price,
	.mphb-errors-wrapper,
	.mphb_sc_checkout-submit-wrapper {
		grid-column: auto;
		grid-row: auto;
	}

	#mphb-price-details {
		position: static;
	}

	#mphb-customer-details {
		grid-template-columns: 1fr;
	}
}