/*
Theme Name: Hotel Piet Hein Eek
Theme URI: http://pietheineek.com/
description: Hotel Piet Hein Eek Bootstrap (WP Bootstrap Starter) Shell Theme
Author: Mettennie
Author URI: http://mettennie.com
Template: wp-bootstrap-starter
Version: 1.2.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hotel-phe
*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
@import "fonts/helvetica-nueue/stylesheet.css";
@import "fonts/montserrat/stylesheet.css";
@import "fonts/momo-trust-display/stylesheet.css";

body {
    margin: 0;
    -webkit-font-smoothing: auto;

    background-position: 50% 50%;
    background-size: cover;
    padding-top: 105px;
    padding-bottom: 105px;
    background-attachment: fixed!important;

    font-family: "Helvetica Neue LT Std", "Helvetica Neue", Helvetica, sans-serif!important;
    font-weight: normal;
    background-color: #fff!important;
    overflow-x: hidden;
}
body.post-type-archive-hphe_rooms,
body.post-type-archive-hphe_holiday_homes {
    padding-top: 50px;
    padding-bottom: 150px;
}

body.disable-vert-scroll {
    /*overflow-y: hidden!important;*/
}
@media only screen and (max-width: 768px) {
    body {
        padding-top: 75px;
        padding-bottom: 105px;
    }
    body.disable-vert-scroll {
        overflow-y: hidden!important;
    }
}
@media only screen and (max-width: 420px) {
    body {
        padding-top: 65px;
    }
}
@media only screen and (max-width: 345px) {
    body {
        padding-top: 55px;
    }
}

img {
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;

    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-drag: none;
}

.ui-page {
    min-height: 0px!important;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
}

a:active,
a:hover {
    outline: 0;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 1em 2.5rem;
}

hr {
    box-sizing: content-box;
    height: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: bold;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td,
th {
    padding: 0;
}

.btn {
    border-radius: 0px;
    cursor: pointer;
}
.btn-primary {
    color: #fff;
    background-color: #000;
    border-color: #000;
    border-width: 2px;
    padding-bottom: 2px;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):active{
    color: #000;
    background-color: #fff;
    border-color: #000;
}

.btn-green {
    background-color: #007d56;
    border: 1px #007d56 solid;
    color: #000;
    box-shadow: none!important;
    text-shadow: none!important;
    padding: .375rem .75rem .175rem .75rem!important;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
    clear: both;
    color: #24292e;
    font-weight: 600;
    margin-top: 24px;
    margin-bottom: 15px;
}
h1 {
    font-size: 32px;
    padding-bottom: 0px;
}
h2 {
    font-size: 24px;
    padding-bottom: 0.3em;
    line-height: 1.25;
}
h3 {
    font-size: 18px;
    line-height: 25px;
}
h4 {
    font-size: 16px;
    line-height: 20px;
}
h5 {
    font-size: 14px;
    line-height: 17.5px;
}

b, strong {
    font-weight: 600;
}

.order-total b, .order-total strong {
    font-weight: 800;
}

p {
    margin-bottom: 1.5em;
}
/*h1.entry-title {
    font-size: 1.31rem;
    border-bottom: 1px solid #eaecef;
}
h2.entry-title {
    border-bottom: 1px solid #eaecef;
}
h3.widget-title {
    font-size: 1.2rem;
}*/

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
body {
    background-color: #000;
    /* Fallback for when there is no custom background color defined. */
    overflow-x: hidden;
}
body.has-banner {
    background-position: 50% 0%;
    background-size: cover;
    background-repeat: no-repeat;
}

img {
    height: auto;
    /* Make sure images are scaled correctly. */
    max-width: 100%;
    /* Adhere to container width. */
}

figure {
    margin: 1em 0;
    /* Extra wide images within figure tags don't overflow the content area. */
}

table {
    margin: 0 0 1.5em;
    width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
header#masthead {
    margin-bottom: 0;
    background-color: #000000;
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,.05), inset 0 -1px 0 rgba(0,0,0,.1);
    padding: 8px 0px;
    position: fixed;
    top: 0px;
    left: 0px;
    height: 50px;
    width: 100vw;
    z-index: 9999;
    margin: 0px;


    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
header#masthead .container {
    width: 100vw!important;
    max-width: 100%!important;
    height: 100%;
}
body.domain-holiday-homes header#masthead {
    background-color: #195500;
    padding: 16px 0px;
    height: 80px;
}
body.domain-holiday-homes header#masthead .site-title {
    font-family: 'Momo Trust Display';
    color: #ffb7f3;
    text-align: center;
    height: 48px;
    font-size: 1.7em;
    padding-top: 0px;
    font-weight: 900;
}
body.domain-holiday-homes header#masthead .site-title a {
    display: block;
    color: #ffb7f3;
    text-decoration: none;
    line-height: 35px;
    padding-top: 5px;

}
body.domain-holiday-homes header#masthead .site-title a:hover {
    color: #ffb7f3;
    text-decoration: none;
    opacity: 0.8;
}
.navbar-brand {
    padding: 0px;
    margin-right: 0px;
}
.navbar-brand > a {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    color: rgba(0, 0, 0, 0.9);
    font-size: 1.1rem;
    outline: medium none;
    text-decoration: none;
    color: #fff;
    font-weight: 700;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
}
body.domain-holiday-homes .navbar-brand > a {
    color: #ffb7f3;
}
.navbar-brand img {
    /*max-height: 30px;*/
    width: 100%;
    height: 100%;
    object-fit: contain;
    opacity: 0;
}

.navbar-brand > a:visited, .navbar-brand > a:hover {
    text-decoration: none;
}

header .social-urls,
header .info-urls {
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%);
    font-size: 25px;
    height: 27px;
    z-index: 2;
}
header .social-urls {
    left: 24px;
}
header .info-urls {
    right: 24px;
}
header .social-urls a,
header .info-urls a{
    position: relative;
}
header .social-urls a i,
header .info-urls a i{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
header .info-urls .fa.fa-phone {
    font-size: 14px;
}
header .info-urls .fa.fa-phone:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    z-index: 2;
}
header .info-urls .fa.fa-phone:after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    content: '';
    display: block;
    width: 26px;
    height: 26px;
    border-radius: 26px;
    background-color: #fff;
}

header .info-urls a.language-select span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    display: block;
    width: 26px;
    height: 26px;
    border-radius: 26px;
    background-color: #fff;
    color: #000;
    font-size: 13px;
    text-align: center;
    font-weight: 600;
}
body.domain-holiday-homes header .info-urls a.language-select span {
    background-color: #ffb7f3;
    color: #195500;
    width: 35px;
    height: 35px;
    border-radius: 35px;
    font-size: 18px;
    font-weight: normal;
}
body.domain-holiday-homes header .info-urls a.language-select span svg path {
    fill: #195500;
}

header .social-urls a,
header .info-urls a {
    display: inline-block;
    margin-left: 15px;
    color: #fff;
    width: 27px;
    height: 27px;
}
body.domain-holiday-homes header .social-urls a,
body.domain-holiday-homes header .info-urls a {
    color: #ffb7f3;
    width: 35px;
    height: 35px;
    font-size: 35px;
}
body.domain-holiday-homes header .social-urls,
body.domain-holiday-homes header .info-urls {
    height: 35px;
}
header .social-urls a:first-of-type,
header .info-urls a:first-of-type {
    margin-left: 0px;
}
@media only screen and (max-width: 655px) {
    header .social-urls {
        display: none;
    }
    body.domain-holiday-homes header .social-urls {
        display: block;
        top: 104px;
        left: 10px;
    }

    header .info-urls {
        font-size: 25px;
        position: relative;
        float: right;
        transform: none;
        right: 15px;
        height: 27px;
    }
    header .info-urls a {
        margin-left: 10px;
    }
    /*header.total-social-links-1 .navbar { padding-right: 35px!important; }
    header.total-social-links-2 .navbar { padding-right: 70px!important; }
    header.total-social-links-3 .navbar { padding-right: 105px!important; }


    header.total-social-links-3 .navbar {
        padding-right: 0px!important;
    }*/
}
@media only screen and (max-width: 380px) {
    header .info-urls {
        font-size: 20px;
    }
    header .info-urls a {
        margin-left: 0px;
    }
    header .info-urls {
        height: 24px;
    }
    header .info-urls .fa.fa-phone {
        font-size: 12px;
    }
    header .info-urls .fa.fa-phone:after {
        width: 21px;
        height: 21px;
    }

    header .info-urls a.language-select span {
        width: 20px;
        height: 20px;
        border-radius: 20px;
    }
}

#page-sub-header {
    position: relative;
    padding-top: 5rem;
    padding-bottom: 0;
    text-align: center;
    font-size: 1.25rem;
    background-size: cover !important;
}

body:not(.theme-preset-active) #page-sub-header h1 {
    line-height: 1.6;
    font-size: 4rem;
    color: #563e7c;
    margin: 0 0 1rem;
    border: 0;
    padding: 0;
}

#page-sub-header p {
    margin-bottom: 0;
    line-height: 1.4;
    font-size: 1.25rem;
    font-weight: 300;
}
body:not(.theme-preset-active) #page-sub-header p {
    color: #212529;
}
a.page-scroller {
    color: #333;
    font-size: 2.6rem;
    display: inline-block;
    margin-top: 2rem;
}

@media screen and (min-width: 768px) {
    body:not(.theme-preset-active) #page-sub-header h1 {
        font-size: 3.750rem;
    }
    body:not(.theme-preset-active) #page-sub-header {
        font-size: 1.25rem;
    }
}
@media screen and (min-width: 992px) {
    #page-sub-header p {
        max-width: 43rem;
        margin: 0 auto;
    }
}

body.has-banner:before {
    content: '';
    display: block;
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-color: #000;
    opacity: 0.2;
}
.header-banner {
    position: absolute;
    top:25%;
    left: 50%;
    width: 100%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #fff;
    text-shadow: 1px 1px rgba(0,0,0,0.5);
    z-index: 10;
}
.header-banner .container {
    max-width: none!important;
    padding-left: 3px;
    padding-right: 3px;
}
.header-banner h1 {
    color: #fff;
    font-weight: 600;
    font-size: 4em;
    margin-top: 0px;
    margin-bottom: 0px;
}
.header-banner p {
    font-size: 2em;
    margin-bottom: 0px;
    font-weight: 600;
}
.site-header .book-now-button {
    position: absolute;
    top: 100%;
    right: 0px;
    margin-top: 30px;
    margin-right: 30px;
    z-index: 999;
    border: 1px #000000 solid;
    padding: 5px;
    background-color: #fff;
    text-decoration: none;
    white-space: nowrap;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.site-header .book-now-button.book-now-button-left {
    right: auto;
    left: 0px;
    margin-right: 0px;
    margin-left: 30px;
}
body.single-hphe_rooms .site-header .book-now-button,
body.single-hphe_holiday_homes .site-header .book-now-button,
body.post-type-archive-hphe_rooms .site-header .book-now-button,
body.post-type-archive-hphe_holiday_homes .site-header .book-now-button,
body.woocommerce-page .site-header .book-now-button
{
    display: none;
}
.site-header .book-now-button:hover span {
    /*opacity: 0.8;*/
}
.site-header .book-now-button span {
    display: block;
    background-color: #000000;
    border: 1px #000000 solid;
    padding: 5px 15px 5px 15px;
    color: #007d56;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 30px;
    line-height: 30px;
    height: 40px;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.site-header .book-now-button span svg {
    display: block;
    height: 100%;
}
.site-header .book-now-button span svg path,
.site-header .book-now-button span svg polygon {
    fill:#007d56;
}
.site-header .book-now-button:hover {

}
.site-header .book-now-button:hover span {
    background-color: #007d56;
    color: #000000;
    border: 1px #000000 solid;
}
.site-header .book-now-button:hover span svg path,
.site-header .book-now-button:hover span svg polygon {
    fill:#000;
}
.site-header .book-now-button.hidden-on-desktop {
    display: none;
}

header .navbar {
    height: 100%;
    width: 100%;
}
header .navbar-brand {
    height: 100%;
    width: 100%;
}
/*header.total-social-links-0 .navbar {  }
header.total-social-links-1 .navbar { padding-right: 45px!important; }
header.total-social-links-2 .navbar { padding-right: 90px!important; }
header.total-social-links-3 .navbar { padding-right: 135px!important; }*/



/*@media only screen and (max-width: 850px) {
    .navbar-brand > a {
        background-position: 0% 50%;
    }
}*/
@media only screen and (max-width: 768px) {
    .header-banner {
        top: 50%;
    }
    .header-banner h1 {
        font-size: 3em;
    }
}
@media only screen and (max-width: 655px) {
    header#masthead {
        height: auto;
        padding: 5px;
    }
    header#masthead .container {
        padding-right: 0px;
        padding-left: 0px;
    }
    header#masthead:after {
        content: '';
        display: block;
        clear: both;
    }
    header .navbar-brand {
        display: block;
    }
    .navbar-brand > a{
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        margin: 0px auto;
        height: auto;
    }
    .navbar-brand > img {
        height: auto;
    }

    .site-header .book-now-button {
        position: relative;
        right: auto;
        left: auto;
        float: left;
        transform: none;
        margin-left: 10px!important;
        padding: 0px;
        top: auto;
        border: 0px;
        margin-top: 0px;
        margin-right: 0px;
    }
    .site-header .book-now-button span {
        padding: 0px 5px 0px 5px;
        height: 27px;
        line-height: 27px;
        border: 0px;
    }
    .site-header .book-now-button.hidden-on-desktop {
        display: block;
    }
}
@media only screen and (max-width: 575px) {
}
@media only screen and (max-width: 392px) {
    .header-banner h1 {
        font-size: 2.3em;
    }

}
@media only screen and (max-width: 380px) {
    .site-header .book-now-button span {
        height: 24px;
        line-height: 24px;
        font-size: 20px;
        padding: 0px 2px 0px 2px;
    }
    .site-header .book-now-button span svg {
        max-width: 100px;
    }
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
#masthead nav {
    padding-left: 0;
    padding-right: 0;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a {
    color: #cdbfe3;
    padding: 0.5rem;
    font-weight: 500;
    font-size: 0.875rem;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a:hover,
body:not(.theme-preset-active) #masthead .navbar-nav > li.current_page_item > a {
    color: #fff;
    font-weight: 600;
    /*background: #f9f9f9;*/
}

.navbar-brand {
    height: auto;
}

.navbar-toggle .icon-bar {
    background: #000 none repeat scroll 0 0;
}

.dropdown-menu .dropdown-toggle::after {
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
    border-top: 0.3em solid transparent;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children {
    position: relative;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}
/*.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>.dropdown-menu {
    display: block;
}*/

.dropdown.menu-item-has-children .dropdown.menu-item-has-children>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>a:after {
    border-left-color: #fff;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children.pull-left {
    float: none;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
    display: block;
}

.dropdown-item {
    line-height: 1.2;
    padding-bottom: 0.313rem;
    padding-top: 0.313rem;
}

.dropdown-menu {
    min-width: 12.500rem;
}

.dropdown .open .dropdown-menu {
    display: block;
    left: 12.250em;
    top: 0;
}

.dropdown-menu .dropdown-item {
    white-space: normal;
    background: transparent;
    line-height: 1.6;
}
.dropdown-menu .dropdown-item:hover {
    background: transparent;
}

@media screen and (min-width: 37.5em) {
    .menu-toggle {
        display: none;
    }
}
@media screen and (min-width: 769px) {
    .dropdown-menu li > .dropdown-menu {
        right: -9.875rem;
        top: 1.375rem;
    }
}
@media screen and (max-width: 991px) {
    .navbar-nav .dropdown-menu {
        border: medium none;
        margin-left: 1.250rem;
        padding: 0;
    }

    .dropdown-menu li a {
        padding: 0;
    }

    #masthead .navbar-nav > li > a {
        padding-bottom: 0.625rem;
        padding-top: 0.313rem;
    }

    .navbar-light .navbar-toggler {
        border: medium none;
        outline: none;
    }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
    margin: 0 0 1.5em;
    overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}
.comment-content.card-block {
    padding: 20px;
}

.navigation.post-navigation {
    padding-top: 1.875rem;
}

.post-navigation .nav-previous a,
.post-navigation .nav-next a {
    border: 1px solid #ddd;
    border-radius: 0.938rem;
    display: inline-block;
    padding: 0.313rem 0.875rem;
    text-decoration: none;
}

.post-navigation .nav-next a::after {
    content: " \2192";
}

.post-navigation .nav-previous a::before {
    content: "\2190 ";
}

.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
    background: #eee none repeat scroll 0 0;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 0.313rem;
    line-height: normal;
    padding: 0.938rem 1.438rem 0.875rem;
    text-decoration: none;
    top: 0.313rem;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
    outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

a img.alignright {
    float: right;
    margin: 0.313rem 0 1.25rem 1.25rem;
}

a img.alignnone {
    margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.alignleft {
    float: left;
    margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption.alignnone {
    margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignleft {
    margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignright {
    margin: 0.313rem 0 1.25rem 1.25rem;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
    content: "";
    display: table;
    table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
    clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
    margin: 0 0 1.5em;
    font-size: 0.875rem;
    /* Make sure select elements fit in widgets. */
}
.widget select {
    max-width: 100%;
}
.widget_search .search-form:after {
    content: '';
    display: block;
    clear: both;
}
.widget_search .search-form label {
    width: 60%;
    display: inline-block;
    float: left;
}
.widget_search .search-form label,
.widget_search .search-form .form-control{
    margin-bottom: 0px;
}
.widget_search .search-form input[type="submit"] {
    /*display: none;*/
    width: 40%;
    background-color: #000;
    color: #fff;
    border-radius: 0px;
    border: 0px;
    float: left;
    height: 38px;
}
.widget_search .search-form .form-control{
    width: 100%;
    border-radius: 0px;
}
.widget_search .search-form label,
.widget_search .search-form .form-control,
.widget_search .search-form input[type="submit"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.nav > li > a {
    background-color: #eee;
    margin-top: 1px;
}
.nav > li > a:focus,
.nav > li > a:hover {
    background-color: #eee;
    text-decoration: none;
}
.half-rule {
    width: 6rem;
    margin: 2.5rem 0;
}
.widget_categories .nav-link {
    display: inline-block;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
#content.site-content {
    padding-bottom: 0px;
    padding-top: 0px;
}
body.domain-holiday-homes:not(:has(.holiday-homes-v3-info-block)) #content.site-content {
    min-height: calc(100vh - 385px);
}
/*#content.site-content > .container {
    background-color: #fff;
    padding-top: 15px;
    padding-bottom: 15px;
}*/
.page-template-default #content.site-content > .container {
    max-width: 700px;
}
/*.page-template-default .page-main-row .entry-content {
    padding-right: 100px;
}
@media only screen and (max-width: 1580px) {
    .page-template-default .page-main-row .entry-content {
        padding-right: 0px;
    }
}*/
#primary article,
#primary .comments-area,
#primary .page-header{
    background-color: #fff;
    padding: 15px 15px 65px 15px;
}
#primary article p:last-of-type {
    margin-bottom: 0px;
}
#primary article.article-separator {
    margin-top: 15px;
}
#primary article.article-separator .entry-content:first-of-type {
    margin-top: 0px;
}
#primary .page-header h1 {
    margin: 0px;
    padding: 0px;
}
#primary .page-header {
    margin-bottom: 15px;
}
#primary article .entry-title,
#primary .comments-title{
    margin-top: 0px;
}
#secondary section{
    background-color: #fff;
    padding: 15px;
}
#secondary section .widget-title {
    margin-top: 0px;
}
a {
    color: #000;
}
a:hover {
    color: #333;
}

.sticky .entry-title::before {
    content: '\f08d';
    font-family: "Font Awesome\ 5 Free";
    font-size: 1.563rem;
    left: -2.5rem;
    position: absolute;
    top: 0.375rem;
    font-weight: 900;
}

.sticky .entry-title {
    position: relative;
}

.single .byline,
.group-blog .byline {
    display: inline;
}

.page-content,
.entry-content,
.entry-summary {
    margin: 1.5em 0 0;
}

.page-links {
    clear: both;
    margin: 0 0 1.5em;
}

.page-template-blank-page .entry-content,
.blank-page-with-container .entry-content {
    margin-top: 0;
}

.post.hentry {
    margin-bottom: 4rem;
}

.posted-on, .byline, .comments-link {
    color: #9a9a9a;
}

.entry-title > a {
    color: inherit;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
    word-wrap: break-word;
}

.bypostauthor {
    display: block;
}

.comment-body .pull-left {
    padding-right: 0.625rem;
}

.comment-list .comment {
    display: block;
}

.comment-list {
    padding-left: 0;
}

.comments-title {
    font-size: 1.125rem;
}

.comment-list .pingback {
    border-top: 1px solid rgba(0, 0, 0, 0.125);
    padding: 0.563rem 0;
}

.comment-list .pingback:first-child {
    border: medium none;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
    /* Theme Footer (when set to scrolling) */
    display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
    display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
    max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
    background: #f1f1f1 none repeat scroll 0 0;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 0.313rem 0.313rem 0;
    text-align: center;
}
.wp-caption img[class*="wp-image-"] {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 100%;
    padding: 0;
    width: auto;
}
.wp-caption .wp-caption-text {
    font-size: 0.688rem;
    line-height: 1.063rem;
    margin: 0;
    padding: 0.625rem;
}

.wp-caption-text {
    text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
    margin-bottom: 1.5em;
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
}
.gallery-item .gallery-columns-2 {
    max-width: 50%;
}
.gallery-item .gallery-columns-3 {
    max-width: 33.33333%;
}
.gallery-item .gallery-columns-4 {
    max-width: 25%;
}
.gallery-item .gallery-columns-5 {
    max-width: 20%;
}
.gallery-item .gallery-columns-6 {
    max-width: 16.66667%;
}
.gallery-item .gallery-columns-7 {
    max-width: 14.28571%;
}
.gallery-item .gallery-columns-8 {
    max-width: 12.5%;
}
.gallery-item .gallery-columns-9 {
    max-width: 11.11111%;
}

.gallery-caption {
    display: block;
}

/*--------------------------------------------------------------
# Plugin Compatibility
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Woocommerce
--------------------------------------------------------------*/
.woocommerce-cart-form .shop_table .coupon .input-text {
    width: 8.313rem !important;
}

.variations_form .variations .value > select {
    margin-bottom: 0.625rem;
}

.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2 {
    max-width: 100%;
}

/*--------------------------------------------------------------
## Elementor
--------------------------------------------------------------*/
.elementor-page article .entry-footer {
    display: none;
}

.elementor-page.page-template-fullwidth #content.site-content {
    padding-bottom: 0;
    padding-top: 0;
}

.elementor-page .entry-content {
    margin-top: 0;
}

/*--------------------------------------------------------------
## Visual Composer
--------------------------------------------------------------*/
.vc_desktop article .entry-footer {
    display: none;
}

.vc_desktop #content.site-content {
    padding-bottom: 0;
    padding-top: 0;
}

.vc_desktop .entry-content {
    margin-top: 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer {
    font-size: 85%;
    position: fixed;
    bottom: -500px;
    left: 0px;
    width: 100vw;
    z-index: 10;
    background-color: #000000;
    color: #000;
    z-index: 9999;

    -webkit-transition: bottom 500ms ease-out 0.0s;
    -moz-transition: bottom 500ms ease-out 0.0s;
    -o-transition: bottom 500ms ease-out 0.0s;
    transition: bottom 500ms ease-out 0.0s;
}
footer .container {
    max-width: 900px;
}
footer .dropdown-menu.show,
footer .dropdown.item-has-children.show {
    display: block;
}

/*footer:before {*/
footer .bg {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    z-index: 0;
    background-color: #000000;
}
.domain-holiday-homes footer,
.domain-holiday-homes footer .bg {
    background-color: unset;
}

footer .navbar {
    display: block;
    width: 100%;
}

footer .navbar {
    text-align: center;
}

#main-nav {
    font-size: 0px;
}

/*footer:before,*/
footer .bg,
#menu-main-menu li {
    height: 45px;
}
#menu-main-menu a {
    height: 45px;
}
/*footer[data-size="1"]:before,*/
footer .bg {/*,#menu-main-menu*/
    height: 60px;
}
#menu-main-menu ul {
    height: 45px;
}

#menu-main-menu a {
    position: relative;
    /*line-height: 60px;*/
    text-transform: uppercase;
}
#menu-main-menu li.text-2-rows > a  {
    line-height: 20px;
    padding-top: 9px;
    padding-bottom: 9px;
}
#menu-main-menu li.text-3-rows > a {
    line-height: 15px;
    padding-top: 6.5px;
    padding-bottom: 6.5px;
}
#menu-main-menu li > a > span  {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0%;
    transform: translate(0%, -50%);
    width: 100%;
}
#menu-main-menu li.break-on-space > a > span  {
    display: block;
    width: min-content;
    white-space: break-spaces;
    margin-left: auto;
    margin-right: auto;
}

#menu-main-menu .dropdown-menu {
    bottom: 56px;
}
#menu-main-menu .dropdown-menu .dropdown-menu {
    bottom: 56px;
}

/*footer[data-size="2"]:before {footer .bg
    height: 135px;
}
footer[data-size="3"]:before {
    height: 200px;
}
footer[data-size="4"]:before {
    height: 265px;
}*/

#menu-main-menu,
#menu-main-menu *,
#menu-main-menu *:before,
#menu-main-menu *:after{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

#menu-main-menu {
    position: relative;
    width: auto;
    display:inline-block;
    padding: 8px 0px;
    margin: 0px auto;
    text-align: center;
}
#menu-main-menu ul {
    text-align: center;
}
footer .dropdown.menu-item-has-children .dropdown.menu-item-has-children>a:after,
#menu-main-menu .dropdown-toggle::after {
    content: '';
    display: none;
}
#menu-main-menu li {
    width: 110px;
    height: 45px;
    display: block;
    text-align: center;
    position: initial;
    margin-left: 8px;
    float: left;
    /*margin-top: -1px;
    margin-bottom: -1px;*/
}
#menu-main-menu li:first-of-type {
    margin-left: 0px;
}
#menu-main-menu li.square {
    width: 45px;
}


#menu-main-menu a {
    display: block;
    color: #fff;
    margin: 0px;
    font-size: 9px;
    line-height: 11px;
    padding: 0px;
    font-weight: 600;
    border: 1px #fff solid;
}
#menu-main-menu a.with-icon {
    border: 0px;
}
#menu-main-menu li.menu-item-is-open > a,
#menu-main-menu li:hover > a,
#menu-main-menu li > a:hover {
    background-color: #007d56;
    border-color: #007d56;
    color:#000000;
}

#menu-main-menu li > a.with-icon > span > span.active-icon{
    display: none;
}

#menu-main-menu li > a.with-icon > span > svg,
#menu-main-menu li > a.with-icon > span > span.active-icon > svg,

#menu-main-menu li > a.with-icon > span > svg rect,
#menu-main-menu li > a.with-icon > span > span.active-icon > svg rect{
    fill: #fff !important;
}

#menu-main-menu li.menu-item-is-open > a.with-icon,
#menu-main-menu li:hover > a.with-icon,
#menu-main-menu li > a.with-icon:hover{
    border-color: transparent;
    background-color: transparent;
}
#menu-main-menu li.menu-item-is-open > a.with-icon > span > svg,
#menu-main-menu li:hover > a.with-icon > span > svg,
#menu-main-menu li > a.with-icon:hover > span > svg,
#menu-main-menu li.menu-item-is-open > a.with-icon > span > svg rect,
#menu-main-menu li:hover > a.with-icon > span > svg rect,
#menu-main-menu li > a.with-icon:hover > span > svg rect,

#menu-main-menu li.menu-item-is-open > a.with-icon > span > span.active-icon > svg,
#menu-main-menu li:hover > a.with-icon > span > span.active-icon > svg,
#menu-main-menu li > a.with-icon:hover > span > span.active-icon > svg,
#menu-main-menu li.menu-item-is-open > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu li:hover > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu li > a.with-icon:hover > span > span.active-icon > svg rect {
    fill: #007d56!important;
}

#menu-main-menu li.empty > a {
    border:0px;
    background: transparent!important;
}

#menu-main-menu li.bold > a {
    font-weight: bold;
}

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent > a,
.post-type-archive-hphe_reviews #menu-main-menu li.review > a,
.single-hphe_reviews #menu-main-menu li.review-parent > a,
.single-hphe_reviews #menu-main-menu li.review > a,

.single-hphe_rooms #menu-main-menu li.room > a,
.single-hphe_holiday_homes #menu-main-menu li.room > a,
#menu-main-menu li.current-menu-ancestor > a,
#menu-main-menu li.active > a {
    background-color: #007d56;
    border-color: #007d56;
    color:#000000;
}

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent > a.with-icon,
.post-type-archive-hphe_reviews #menu-main-menu li.review > a.with-icon,
.single-hphe_reviews #menu-main-menu li.review-parent > a.with-icon,
.single-hphe_reviews #menu-main-menu li.review > a.with-icon,

.single-hphe_rooms #menu-main-menu li.room > a.with-icon,
.single-hphe_holiday_homes #menu-main-menu li.room > a.with-icon,
#menu-main-menu li.current-menu-ancestor > a.with-icon,
#menu-main-menu li.active > a.with-icon {
    background-color: transparent;
}

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent > a.with-icon > span > svg,
.post-type-archive-hphe_reviews #menu-main-menu li.review > a.with-icon > span > svg,
.single-hphe_reviews #menu-main-menu li.review-parent > a.with-icon > span > svg,
.single-hphe_reviews #menu-main-menu li.review > a.with-icon > span > svg,

.single-hphe_rooms #menu-main-menu li.room > a.with-icon > span > svg,
#menu-main-menu li.current-menu-ancestor > a.with-icon > span > svg,
#menu-main-menu li.active > a.with-icon > span > svg,

#menu-main-menu li.current-menu-ancestor > a.with-icon.with-active-icon > span > svg,
#menu-main-menu li.active > a.with-icon.with-active-icon > span > svg {
    display: none;
}
#menu-main-menu li.current-menu-ancestor > a.with-icon.with-active-icon > span > span.active-icon,
#menu-main-menu li.active > a.with-icon.with-active-icon > span > span.active-icon {
    display: block;
}


.post-type-archive-hphe_reviews #menu-main-menu li.review-parent:hover > a,
.post-type-archive-hphe_reviews #menu-main-menu li.review:hover > a,
.single-hphe_reviews #menu-main-menu li.review-parent:hover > a,
.single-hphe_reviews #menu-main-menu li.review:hover > a,

.single-hphe_rooms #menu-main-menu li.room:hover > a,
.single-hphe_holiday_homes #menu-main-menu li.room:hover > a,
#menu-main-menu li.current-menu-ancestor:hover > a,
#menu-main-menu li.active:hover > a,

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent > a:hover,
.post-type-archive-hphe_reviews #menu-main-menu li.review > a:hover,
.single-hphe_reviews #menu-main-menu li.review-parent > a:hover,
.single-hphe_reviews #menu-main-menu li.review > a:hover,

.single-hphe_rooms #menu-main-menu li.room > a:hover,
.single-hphe_holiday_homes #menu-main-menu li.room > a:hover,
#menu-main-menu li.current-menu-ancestor > a:hover,
#menu-main-menu li.active > a:hover {
    background-color: #007d56;
}

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent:hover > a.with-icon,
.post-type-archive-hphe_reviews #menu-main-menu li.review:hover > a.with-icon,
.single-hphe_reviews #menu-main-menu li.review-parent:hover > a.with-icon,
.single-hphe_reviews #menu-main-menu li.review:hover > a.with-icon,

.single-hphe_rooms #menu-main-menu li.room:hover > a.with-icon,
.single-hphe_holiday_homes #menu-main-menu li.room:hover > a.with-icon,
#menu-main-menu li.current-menu-ancestor:hover > a.with-icon,
#menu-main-menu li.active:hover > a.with-icon,

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent > a.with-icon:hover,
.post-type-archive-hphe_reviews #menu-main-menu li.review > a.with-icon:hover,
.single-hphe_reviews #menu-main-menu li.review-parent > a.with-icon:hover,
.single-hphe_reviews #menu-main-menu li.review > a.with-icon:hover,

.single-hphe_rooms #menu-main-menu li.room > a.with-icon:hover,
.single-hphe_holiday_homes #menu-main-menu li.room > a.with-icon:hover,
#menu-main-menu li.current-menu-ancestor > a.with-icon:hover,
#menu-main-menu li.active > a.with-icon:hover {
    background-color: transparent;
}

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent:hover > a.with-icon > span > svg,
.post-type-archive-hphe_reviews #menu-main-menu li.review:hover > a.with-icon > span > svg,
.single-hphe_reviews #menu-main-menu li.review-parent:hover > a.with-icon > span > svg,
.single-hphe_reviews #menu-main-menu li.review:hover > a.with-icon > span > svg,

.single-hphe_rooms #menu-main-menu li.room:hover > a.with-icon > span > svg,
.single-hphe_holiday_homes #menu-main-menu li.room:hover > a.with-icon > span > svg,
#menu-main-menu li.current-menu-ancestor:hover > a.with-icon > span > svg,
#menu-main-menu li.active:hover > a.with-icon > span > svg

.single-hphe_rooms #menu-main-menu li.room:hover > a.with-icon > span > svg rect,
.single-hphe_holiday_homes #menu-main-menu li.room:hover > a.with-icon > span > svg rect,
#menu-main-menu li.current-menu-ancestor:hover > a.with-icon > span > svg rect,
#menu-main-menu li.active:hover > a.with-icon > span > svg rect,

.post-type-archive-hphe_reviews #menu-main-menu li.review-parent > a.with-icon:hover > span > svg,
.post-type-archive-hphe_reviews #menu-main-menu li.review > a.with-icon:hover > span > svg,
.single-hphe_reviews #menu-main-menu li.review-parent > a.with-icon:hover > span > svg,
.single-hphe_reviews #menu-main-menu li.review > a.with-icon:hover > span > svg,

.single-hphe_rooms #menu-main-menu li.room > a.with-icon:hover > span > svg,
.single-hphe_holiday_homes #menu-main-menu li.room > a.with-icon:hover > span > svg,
#menu-main-menu li.current-menu-ancestor > a.with-icon:hover > span > svg,
#menu-main-menu li.active > a.with-icon:hover > span > svg

.single-hphe_rooms #menu-main-menu li.room > a.with-icon:hover > span > svg rect,
.single-hphe_holiday_homes #menu-main-menu li.room > a.with-icon:hover > span > svg rect,
#menu-main-menu li.current-menu-ancestor > a.with-icon:hover > span > svg rect,
#menu-main-menu li.active > a.with-icon:hover > span > svg rect {
    fill: #007d56!important;
}
.single-hphe_rooms #menu-main-menu li.room > a.with-icon > span > span.active-icon > svg,
.single-hphe_holiday_homes #menu-main-menu li.room > a.with-icon > span > span.active-icon > svg,
#menu-main-menu li.current-menu-ancestor > a.with-icon > span > span.active-icon > svg,
#menu-main-menu li.active > a.with-icon > span > span.active-icon > svg,

.single-hphe_rooms #menu-main-menu li.room > a.with-icon > span > span.active-icon > svg rect,
.single-hphe_holiday_homes #menu-main-menu li.room > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu li.current-menu-ancestor > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu li.active > a.with-icon > span > span.active-icon > svg rect {
    fill: #007d56!important;
}

/*.post-type-archive-hphe_reviews #menu-main-menu li.review-parent:hover > a > span > img,
.post-type-archive-hphe_reviews #menu-main-menu li.review:hover > a > span > img,
.single-hphe_reviews #menu-main-menu li.review-parent:hover > a > span > img,
.single-hphe_reviews #menu-main-menu li.review:hover > a > span > img,

.single-hphe_rooms #menu-main-menu li.room:hover > a > span > img,
.single-hphe_holiday_homes #menu-main-menu li.room:hover > a > span > img,
#menu-main-menu li.current-menu-ancestor:hover > a > span > img,
#menu-main-menu li.active:hover > a > span > img{
    -webkit-filter: invert(1);
    filter: invert(1);
}*/

#menu-main-menu div.dropdown-menu {
    position: absolute;
    width: 100%;
    height: 60px;
    padding: 0px 0px 0px 0px;
    margin: 0px;
    background-color: transparent;
    border: 0px;
}
#menu-main-menu ul {
    width: 100%;
    padding: 0px;
    margin: 0px;
    border: 0px;
}

#menu-main-menu .dropdown-menu > button {
    position: absolute;
    top: 0px;
    text-align: center;
    color: #000;
    cursor: pointer;
    z-index: 2;
    background-color: transparent;
    border: 0px;
    border-radius: 0px;
    padding: 0px;
    outline: none;
    width: 60px;
    height: 60px;
    line-height: 60px;
}

#menu-main-menu .dropdown-menu  > button.left  {
    right: 50%;
    margin-right: 131px;
    text-align: right;
}
#menu-main-menu .dropdown-menu  > button.left:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-left: auto;
    margin-right: 0px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #000;
}
#menu-main-menu .dropdown-menu  > button.right {
    left: 50%;
    margin-left: 131px;
}
#menu-main-menu .dropdown-menu  > button.right:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #000;
}

/*#menu-main-menu div.dropdown-menu > div:before {
    content: '';
    position: absolute;
    top: 0px;
    right: 50%;
    margin-right: 127px;
    height: 100%;
    width: 5px;

    background: rgb(255,255,255);
    background: -moz-linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
}
#menu-main-menu div.dropdown-menu > div:after {
    content: '';
    position: absolute;
    top: 0px;
    left: 50%;
    margin-left: 127px;
    height: 100%;
    width: 5px;

    background: rgb(255,255,255);
    background: -moz-linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background: linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
}*/

#menu-main-menu div.dropdown-menu > div {
    width: 100%;
    margin: 0px auto;
    height: 100%;
    overflow: hidden;
}

.dropdown .open .dropdown-menu
.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>.dropdown-menu {
    display: none;
}

#menu-main-menu .dropdown-menu {
    top: auto;
    left: 0px;
    border-radius: 0px;
}
/*#menu-main-menu > li > div > ul {
    bottom: 100%;
}*/



#menu-main-menu div.dropdown-menu {
    height: auto;
}
#menu-main-menu .dropdown-menu > div {
    margin-left: -4px!important;
    width: calc(100% + 8px)!important;
}
#menu-main-menu .dropdown-menu > div > ul {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    height: auto;
}
#menu-main-menu .dropdown-menu > div > ul > li {
    display: flex;
    flex-direction: column;
    flex-basis: 100%;
    flex: 1;
    margin-left: 0px;
    width: auto;
    height: auto;
    padding: 4px;
}
#menu-main-menu .dropdown-menu > div > ul > li > a {
    width: 100%;
    padding-top: 100%;
    position: relative;
    border: 1px #fff solid;
}
#menu-main-menu .dropdown-menu > div > ul > li:hover > a,
#menu-main-menu .dropdown-menu > div > ul > li > a:hover,
#menu-main-menu .dropdown-menu > div > ul > li.current-menu-item > a {
    background-color: #007d56!important;
    border-color:  #007d56;
}

#menu-main-menu .dropdown-menu > div > ul > li > a.with-icon span.menu-item-title {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 30%;
    line-height: 10px;
}
#menu-main-menu .dropdown-menu > div > ul > li > a.with-icon span.menu-item-title span {
    position: absolute;
    top: 50%;
    left: 0px;
    width: 100%;
    transform: translate(0%, -50%);
}

#menu-main-menu .dropdown-menu > div > ul > li > a:hover > span > svg,
#menu-main-menu .dropdown-menu > div > ul > li > a:hover > span > svg rect,
#menu-main-menu .dropdown-menu > div > ul > li.current-menu-item > a.with-icon > span.active-icon > svg,
#menu-main-menu .dropdown-menu > div > ul > li.current-menu-item > a.with-icon > span.active-icon > svg rect {
    fill: #000!important;
}

#menu-main-menu .dropdown-menu li.room > a.with-icon > span > span.active-icon > svg,
#menu-main-menu .dropdown-menu li.current-menu-ancestor > a.with-icon > span > span.active-icon > svg,
#menu-main-menu .dropdown-menu li.active > a.with-icon > span > span.active-icon > svg,

#menu-main-menu .dropdown-menu li.room > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu .dropdown-menu li.current-menu-ancestor > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu .dropdown-menu li.active > a.with-icon > span > span.active-icon > svg rect {
    fill: #000!important;
}

#menu-main-menu .dropdown-menu li.room:hover > a.with-icon:hover > span > span.active-icon > svg,
#menu-main-menu .dropdown-menu li.current-menu-ancestor:hover > a.with-icon > span > span.active-icon > svg,
#menu-main-menu .dropdown-menu li.active:hover > a.with-icon > span > span.active-icon > svg,

#menu-main-menu .dropdown-menu li.room:hover > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu .dropdown-menu li.current-menu-ancestor:hover > a.with-icon > span > span.active-icon > svg rect,
#menu-main-menu .dropdown-menu li.active:hover > a.with-icon > span > span.active-icon > svg rect {
    fill: #000!important;
}

#menu-main-menu li.dropdown > a:before {
    position: absolute;
    top: -5px;
    left: 50%;
    transform: translate(-50%, -0%);

    content: '';
    display: block;
    width: 10px;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 4px solid #fff;
}
#menu-main-menu li.dropdown:hover > a:before,
#menu-main-menu li.dropdown.current-menu-item > a:before,
#menu-main-menu li.dropdown.menu-item-is-open > a:before,
#menu-main-menu li.dropdown.active > a:before {
    border-bottom: 5px solid #007d56;
}
#menu-main-menu li.dropdown.menu-item-is-open > a:before {
    transform: translate(-50%, -0%) rotate(180deg);
    top: -8px;
}
.domain-holiday-homes #menu-main-menu li,
.domain-holiday-homes #menu-main-menu a {
    height: 54px;
}
.domain-holiday-homes #menu-main-menu li.square {
    width: 54px;
}
.domain-holiday-homes #menu-main-menu li:not(.square) {
    width: auto;
}
.domain-holiday-homes #menu-main-menu li:not(.square) > a {
    display: flex;
    align-items: center;
}
.domain-holiday-homes #menu-main-menu li:not(.square) > a > span {
    position: relative;
    top: unset;
    left: unset;
    transform: unset;
    padding-left: 30px;
    padding-right: 30px;
}
.domain-holiday-homes #menu-main-menu li > a.with-icon > span > svg,
.domain-holiday-homes #menu-main-menu li > a.with-icon > span > span.active-icon > svg,

.domain-holiday-homes #menu-main-menu li > a.with-icon > span > svg rect,
.domain-holiday-homes #menu-main-menu li > a.with-icon > span > span.active-icon > svg rect{
    fill: #ffb7f3 !important;
}
.domain-holiday-homes #menu-main-menu li > a.with-icon:hover > span > svg,
.domain-holiday-homes #menu-main-menu li > a.with-icon:hover > span > span.active-icon > svg,

.domain-holiday-homes #menu-main-menu li > a.with-icon:hover > span > svg rect,
.domain-holiday-homes #menu-main-menu li > a.with-icon:hover > span > span.active-icon > svg rect{
    fill: #195500 !important;
}
.domain-holiday-homes #menu-main-menu li > a {
    background-color: #ffb7f3;
    color: #195500;
    /*font-family: "Helvetica Neue LT Std", "Helvetica Neue", Helvetica, sans-serif !important;*/
    font-family: 'Momo Trust Display' !important;
    text-transform: unset;
}
.domain-holiday-homes #menu-main-menu li > a:not(.with-icon) > span {
    font-size: 20px;
    height: 20px;
    line-height: 20px;
}
.domain-holiday-homes #menu-main-menu li > a.with-icon {
    background-color: #195500;
}
.domain-holiday-homes #menu-main-menu a,
.domain-holiday-homes #menu-main-menu a.with-icon {
    border: 2px solid #000!important;
}
.domain-holiday-homes #menu-main-menu li > a:hover {
    background-color: #195500;
    color: #ffb7f3;
    border-color: #000;
}
.domain-holiday-homes #menu-main-menu li > a.with-icon:hover {
    background-color: #ffb7f3;
}
/*.domain-holiday-homes #menu-main-menu li > a.with-icon > span > svg {
    margin-top: -1px;
}*/

@media only screen and (max-width: 768px) {
    footer .container {
        padding-left: 0px;
        padding-right: 0px;
    }
    #menu-main-menu .dropdown-menu > div > ul > li > a.with-icon span.menu-item-title {
        font-size: 8px;
        line-height: 9px;
    }
}
@media only screen and (max-width: 575px) {

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

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

}
/*body:not(.theme-preset-active) footer#colophon {
    color: #99979c;
    background-color: #f7f7f7;
}*/
.navbar-dark .site-info {
    color: #fff;
}
.copyright {
    font-size: 0.875rem;
    margin-bottom: 0;
    text-align: center;
}

.copyright a, footer#colophon a {
    color: inherit;
}

@media screen and (max-width: 767px) {
    #masthead .navbar-nav > li > a {
        padding-bottom: 0.938rem;
        padding-top: 0.938rem;
    }
}


/*ROOMS*/
.room-woocommerce-popup {
    z-index: 99999;
}
.room-woocommerce-popup .modal-dialog {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) !important;
    width: 100%;
    margin-top: 0px;
    margin-bottom: 0px;
}
.room-woocommerce-popup .modal-content {
    border-radius: 0px;
    border: 3px #000 solid;
}
.room-woocommerce-popup .modal-title {
    margin-top: 0px;
}
.woocommerce div.product p.price, .woocommerce div.product span.price {
    color: #000;
}
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
#room-woocommerce-popup-all .modal-footer button,
.room-woocommerce-popup .modal-footer button {
    display: block;
    width: auto;
    min-width: 180px;
    height: 45px;
    color: #000000!important;
    background-color: #fff!important;
    font-size: 1.1em;
    padding-top: 0px;
    padding-bottom: 0px;
    line-height: 45px;
    outline: 0px!important;
    box-shadow: none!important;
    transition: color .15s ease-in-out, background-color .15s ease-in-out;
    border: 2px #000 solid;
    font-weight: 600;
    border-radius: 0px;
    float: none;
    clear: both;
    margin-top: 15px;
}

#room-woocommerce-popup-all .modal-footer button:hover,
.room-woocommerce-popup .modal-footer button:hover,
.woocommerce div.product form.cart .button:hover,
.rooms-top-buttons-holder .btn:hover {
    color: #fff!important;
    background-color: #000!important;
}
.woocommerce div.product form.cart {
    margin-bottom: 0px!important;
}

.rooms-filter-btns {
    text-align: center;
    padding-bottom: 25px;
}
.rooms-filter-btns > button {
    background-color: #000;
    border: 1px #fff solid;
    color: #fff;
    font-size: 12px;
    padding: 3px 10px;
    margin-left: 20px;
}
.rooms-filter-btns > button.as-btn {
    background-color: #007d56;
    border: 1px #007d56 solid;
    color: #000;
}
.rooms-filter-btns > button.as-text {
    background-color: transparent;
    border: 0px;
    color: #fff;
    margin-top: 10px;
}
.rooms-filter-btns > button:focus {
    outline: 0px;
    outline: 0px;
}
.rooms-filter-btns > button:hover {
    background-color: #007d56;
    border: 1px #007d56 solid;
    color: #000;
}
.rooms-filter-btns > button.as-text:hover {
    background-color: transparent;
    border: 0px;
    color: #fff;
    opacity: 0.7;
}
.rooms-filter-btns > button:first-of-type {
    margin-left: 0px;
}
@media only screen and (max-width: 910px) {
    #rooms-date-filer-clear-submit {
        display: block;
        margin-left: auto!important;
        margin-right: auto;
        margin-top: 10px;
    }
}
@media only screen and (max-width: 840px) {
    #rooms-date-filer-submit {
        display: block;
        margin-left: auto!important;
        margin-right: auto;
        margin-top: 10px;
    }
}
@media only screen and (max-width: 350px) {
    .rooms-filter-btns > button {
        display: block;
        margin-left: auto!important;
        margin-right: auto;
        margin-top: 10px;
    }
    .rooms-filter-btns > button:first-of-type {
        margin-top: 0px;
    }
}


.rooms-header {
    /*position: fixed;*/
    position: relative;
    width: 100%;
    /*height: 50vh;*/
    height: auto;
    background-color: #000000;
    padding: 40px 0px;
    z-index: 9;
}
.rooms-header .container {
    height: 100%;
}
.rooms-header-spacing {
    /*width: 100%;
    height: 50vh;*/
    margin-bottom: 25px;
}
.rooms-header-images {
    position: relative;
    /* height: 100%; */
    width: 100%;
    margin: 0px auto;
    max-width: 600px;
    /* display: flex; */
    /* flex-direction: column; */
    /* justify-content: flex-end; */
}
.rooms-header-images.holiday-homes-header-images {
    max-width: unset;
}
.rooms-header-images > div.compass {
    position: absolute;
    bottom: 6px;
    left: -40px;
    width: 30px;
}
.rooms-header-images > div.compass img {
    width: 100%;
}
.rooms-back-to-top {
    display: none;
    text-align: center;
}
.rooms-back-to-top svg,
.rooms-back-to-top img {
    width: 100%;
    height: auto;
}
.rooms-back-to-top a {
    display: inline-block;
    width: 100%;
    max-width: 160px;
}
.rooms-header-text {
    text-align: center;
    text-transform: uppercase;
    margin-top: 30px;
    color: #fff;
    font-size: 12px;
}
.rooms-header-images > svg {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
.rooms-header-images [id^="phe-hotel-froorplan-hover-room-bg-"]:not(.is-active) {
    display: none;
}
.rooms-header-images [id^="phe-hotel-froorplan-hover-holiday-home-bg-"]:not(.is-active) {
    display: none;
}
.rooms-header-images [id^="phe-hotel-froorplan-hover-room-hover-"] {
    cursor: pointer;
}
.rooms-header-images [id^="phe-hotel-froorplan-hover-holiday-home-hover-"] {
    cursor: pointer;
}
.phe-hotel-froorplan-name-popup {
    position: absolute;
    z-index: 999;
    background-color: #fff;
    padding: 8px 10px;
    display: none;
    font-size: 12px;
    line-height: 12px;
    border: 1px #000000 solid;
    white-space: nowrap;
}
.phe-hotel-froorplan-name-popup span {
    font-weight: 600;
}

.post-type-archive-hphe_holiday_homes .container-text {
    padding: 100px 0px;
}

.post-type-archive-hphe_rooms .site-main article,
.post-type-archive-hphe_holiday_homes .site-main article {
    font-size: 0.9rem;
}
.post-type-archive-hphe_holiday_homes .site-main article {
    border: 0px!important;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes {
    margin-top: 25px;
    border: 3px #333 solid;
    padding: 0px!important;
}
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes {
    margin-top: 100px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms:first-of-type,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes:first-of-type {
    margin-top: 0px;
}
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes:last-of-type {
    margin-bottom: 100px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:first-of-type,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:first-of-type {
    padding-right: 0px!important;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type {
    padding-left: 0px!important;
    border-left: 3px #333 solid;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type {
    position: relative;
    padding-bottom: 50px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type h2,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type h2 {
    padding-top: 10px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type h2,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type h2,
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type div {
    padding-left: 15px;
    padding-right: 15px;
}
.single-hphe_rooms .site-main ul,
.post-type-archive-hphe_rooms .site-main article.hphe_rooms ul,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes ul {
    margin: 0px;
    padding-left: 20px;
}
.single-hphe_rooms .site-main ul,
.single-hphe_holiday_homes .site-main ul {
    margin: 20px 0px 40px 0px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .entry-title,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .entry-title {
    text-align: right;
    border-bottom:  3px #000 solid;
    padding: 0px 5px 10px 5px;
}
/*.post-type-archive-hphe_rooms .site-main,
.post-type-archive-hphe_holiday_homes .site-main{
    counter-reset: my-room-counter;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .entry-title::before,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .entry-title::before {
    counter-increment: my-room-counter;
    content: counter(my-room-counter);
    display: inline-block;
    float: left;
}*/
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .entry-title span,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .entry-title span {
    display: inline-block;
    float: left;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .room-price-from,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .room-price-from {
    margin-bottom: 15px;
}

body.domain-holiday-homes article.type-hphe_holiday_homes .room-price-from {
    margin-bottom: 1.5em;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .post-thumbnail,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail {
    position: absolute;
    top: 0px;
    left: 15px;
    right: 0px;
    bottom: 0px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .post-thumbnail img,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;

    transition: opacity .15s ease-in-out;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .post-thumbnail:hover img,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail:hover img {
    opacity: 0.7;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .post-thumbnail:after,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail:after {
    content: "";
    display: block;
    padding-bottom: 60%;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type div:last-of-type {
    padding-right: 30px;
    position: absolute;
    bottom: 15px;
    right: 0px;
    width: auto;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn {
    width: 100%;
    font-size: 1.3em;
    line-height: 1.3em;
    padding: 0px 20px 0px 20px;
    height: 38px;
    text-align: center;
}
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn {
    background-color: #fff;
    height: 45px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn svg,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn svg {
    display: inline-block;
    height: 100%;
    max-width: 100px;
}
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn svg {
    max-width: 120px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn svg path,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn svg path,
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn svg polygon,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn svg polygon {
    fill: #000;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn:hover,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn:hover{
    background-color: #000;
    color: #fff;
    border-color: #000;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn:hover svg path,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn:hover svg path,
.post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn:hover svg polygon,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn:hover svg polygon{
    fill: #fff;
}

.post-type-archive-hphe_rooms .read-more,
.post-type-archive-hphe_holiday_homes .read-more {
    margin: 15px 0px 0px 0px;
}
.single-hphe_rooms .entry-content,
.single-hphe_holiday_homes .entry-content {
    margin-top: 0px;
    font-size: 1.2em;
    padding-bottom: 140px;
}
.single-hphe_rooms .btn,
.single-hphe_holiday_homes .btn,
.post-type-archive-hphe_rooms .btn,
.post-type-archive-hphe_holiday_homes .btn {
    border: 2px #000 solid;
    border-radius: 0px;
}

.post-navigation .nav-previous a, .post-navigation .nav-next a {
    border-radius: 0px;
    background-color: #fff;
}
.post-navigation .nav-previous a::before {
    content: '';
}

.post-type-archive-hphe_rooms .site-main article.hphe_rooms ul,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes ul,
.single-hphe_rooms .entry-content ul,
.single-hphe_holiday_homes .entry-content ul{
    list-style-type: none;
    padding-left: 30px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms ul > li,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes ul > li,
.single-hphe_rooms .entry-content ul > li,
.single-hphe_holiday_homes .entry-content ul > li{
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms ul > li:before,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes ul > li:before,
.single-hphe_rooms .entry-content ul > li:before,
.single-hphe_holiday_homes .entry-content ul > li:before{
    /*content: "\2014";*/
    content: "-";
    padding-right: 5px;
}
.single-hphe_holiday_homes .entry-content ul > li:before{
    content: "";
}

.post-type-archive-hphe_holiday_homes .inner-content {
    margin: 20px 0px;
}
.post-type-archive-hphe_holiday_homes .calendars-overview {
    margin: 20px 0px;
    text-align: center;
}
.post-type-archive-hphe_holiday_homes .footer-buttons {
    text-align: center;
    margin: 20px 0px;
}
.post-type-archive-hphe_holiday_homes .footer-buttons .btn{
    width: auto!important;
}
.post-type-archive-hphe_holiday_homes .calendars-overview {
    margin: 50px 0px;
}
.post-type-archive-hphe_holiday_homes .map-holder {
    margin: 50px 0px 0px 0px;
    width: 100%;
    height: 35vh;
}
.post-type-archive-hphe_holiday_homes .map-holder iframe {
    width: 100%;
    height: 100%;
}

/*
#ROOMS SINGLE
*/
body.single-hphe_rooms #content .container,
body.single-hphe_holiday_homes #content .container {
    max-width: none;
    padding-left: 0px;
    padding-right: 0px;
}
body.single-hphe_rooms #content .container > .row,
body.single-hphe_holiday_homes #content .container > .row {
    margin-left: 0px;
    margin-right: 0px;
}
body.single-hphe_rooms #primary,
body.single-hphe_holiday_homes #primary {
    padding-left: 0px;
    padding-right: 0px;
}
body.single-hphe_rooms,
body.single-hphe_holiday_homes {
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #fff!important;
    overflow-y: hidden;
}
body.single-hphe_rooms #primary article,
body.single-hphe_holiday_homes #primary article {
    padding: 0px;
    background-color: #fff!important;
    color: #000000;
}
body.domain-holiday-homes.single-hphe_holiday_homes {
    padding-top: 0px;
    padding-bottom: 0px;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article,
body.domain-holiday-homes.single-hphe_holiday_homes #primary article h1 {
    border-bottom: 0px;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article {
    /*font-family: 'Momo Trust Display';*/
    font-family: 'Montserrat';
    font-weight: 900;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article b,
body.domain-holiday-homes.single-hphe_holiday_homes #primary article strong {
    font-family: 'Momo Trust Display';
    font-weight: normal;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article h1 {
    font-size: 6em;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article#holiday-home-le-moulin,
body.domain-holiday-homes.single-hphe_holiday_homes:has(#primary article#holiday-home-le-moulin) {
    background-color: #195500!important;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article#holiday-home-le-moulin,
body.domain-holiday-homes.single-hphe_holiday_homes #primary article#holiday-home-le-moulin h1 {
    color: #ffb7f3;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article#holiday-home-le-four,
body.domain-holiday-homes.single-hphe_holiday_homes:has(#primary article#holiday-home-le-four) {
    background-color: #619B00!important;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article#holiday-home-le-four,
body.domain-holiday-homes.single-hphe_holiday_homes #primary article#holiday-home-le-four h1 {
    color: #ffff00;
}
body.domain-holiday-homes.single-hphe_holiday_homes .room-single-footer {
    bottom: 0px;
}
body.domain-holiday-homes.single-hphe_holiday_homes .room-single-footer .book-now-redirect-holder {
    text-align: right;
    padding: 40px;
}
body.domain-holiday-homes.single-hphe_holiday_homes .room-single-footer > .row > div {
    padding-right: 0px;
    padding-left: 0px;
    background-color: unset;
}
body.domain-holiday-homes.single-hphe_holiday_homes .book-now-redirect-holder a {
    display: inline-block;
    font-family: 'Momo Trust Display';
    font-weight: 900;
    padding: 5px 10px;
    text-decoration: none;
    font-size: 2em;
}
@media only screen and (max-width: 768px) {
    body.domain-holiday-homes.single-hphe_holiday_homes .book-now-redirect-holder a {
        display: block;
        text-align: center;
    }
}
body.domain-holiday-homes.single-hphe_holiday_homes article#holiday-home-le-four .book-now-redirect-holder a {
    background-color: #ffff00;
    color: #619B00;
}
body.domain-holiday-homes.single-hphe_holiday_homes article#holiday-home-le-moulin .book-now-redirect-holder a {
    background-color: #ffb7f3;
    color: #195500;
}
body.domain-holiday-homes.single-hphe_holiday_homes #primary article .inner {
    padding: 40px;
}

body.single-hphe_rooms #primary article .inner,
body.single-hphe_holiday_homes #primary article .inner {
    padding: 30px 15px;
}
body.single-hphe_rooms #primary article h1,
body.single-hphe_holiday_homes #primary article h1 {
    color: #000000;
    text-align: right;
    margin-bottom: 40px;
    border-bottom: 1px #000 solid;
}
body.single-hphe_rooms #primary article h1:after,
body.single-hphe_holiday_homes #primary article h1:after {
    content: '';
    display: block;
    clear: both;
}
body.single-hphe_rooms #primary article h1 span,
body.single-hphe_holiday_homes #primary article h1 span {
    display: inline-block;
    float: left;
}
body.single-hphe_rooms #primary article h1 small,
body.single-hphe_holiday_homes #primary article h1 small {
    font-size: 0.6em;
    margin-right: 5px;
}
body.single-hphe_rooms #primary article h1.no-bottom-margin,
body.single-hphe_holiday_homes #primary article h1.no-bottom-margin {
    margin-bottom: 5px;
}
.post-type-archive-hphe_rooms .site-main article.hphe_rooms div.artist-name,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes div.artist-name,
body.single-hphe_rooms #primary article div.artist-name,
body.single-hphe_holiday_homes #primary article div.artist-name {
    text-align: right;
    font-size: 20px;
}
body.single-hphe_rooms #primary article div.artist-name,
body.single-hphe_holiday_homes #primary article div.artist-name {
    margin-bottom: 40px;
}

.post-type-archive-hphe_rooms .site-main article.hphe_rooms div.artist-name small,
.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes div.artist-name small,
body.single-hphe_rooms #primary article div.artist-name small,
body.single-hphe_holiday_homes #primary article div.artist-name small {
    font-size: 0.6em;
    margin-right: 5px;
}
.row room-single-main-row .room-single-main-col-image{
    position: relative;
}
.room-single-images-holder {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
.full-width-images-holder {
    position: relative;
    width: 100%;
    /*height: calc(100vh - 50px - 61px);*/
    aspect-ratio: 16/9;
    overflow: hidden;
}
.full-width-images-holder h1,
.full-width-images-holder h2 {
    position: absolute;
    left: 50px;
    top: 50px;
    z-index: 3;
    margin: 0px;
    color: #fff!important;
    text-transform: uppercase;
    font-size: 3em;
    text-shadow: 0px 0px 14px black;
}
.full-width-images-holder h1 {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.full-width-images-holder h1 span{
    font-size: 0.75em;
    display: block;
    text-align: center;
}
.full-width-images-holder h2 a{
    color: #fff!important;
}
.full-width-images-holder h2:hover,
.full-width-images-holder h2 a:hover{
    text-decoration: unset;
}
.full-width-images-holder .book-now-holder {
    display: block;
    position: absolute;
    right: 50px;
    top: 50px;
    z-index: 3;
}

.full-width-images-holder .more-info {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 50px;
    z-index: 3;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #fff;
    padding-top: 10px;
    font-weight: 600;
}
.full-width-images-holder .more-info:hover {
    color: #fff;
    background-color: #000;
}

.room-single-images-holder > div,
.full-width-images-holder > div {
    position: relative;
    height: 100%;
}
.room-single-images-holder .post-thumbnail,
.full-width-images-holder .post-thumbnail {
    margin: 0px;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
}
.full-width-images-holder .post-thumbnail {
    left: 0px!important;
}
.room-single-images-holder .post-thumbnail div,
.full-width-images-holder .post-thumbnail div {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: hidden;
}
.room-single-images-holder .post-thumbnail img,
.full-width-images-holder .post-thumbnail img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.room-single-images-holder .post-thumbnail ul,
.full-width-images-holder .post-thumbnail ul {
    display: block;
    height: 100%;
    white-space: nowrap;
    margin: 0px!important;
    padding: 0px!important;
}
.room-single-images-holder .post-thumbnail ul li,
.full-width-images-holder .post-thumbnail ul li {
    display: inline-block;
    height: 100%;
    position: relative;
    margin: 0px!important;
    padding: 0px!important;
    background-color: #242424;

    /*background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-attachment: fixed;*/
}
.room-single-images-holder .post-thumbnail ul li img {
    /*opacity: 0;*/
    cursor: pointer;
}

.room-single-images-holder .post-thumbnail .navigator,
.full-width-images-holder .post-thumbnail .navigator {
    display: none;
    position: absolute;
    bottom: 80px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.room-single-images-holder .post-thumbnail .navigator ul,
.full-width-images-holder .post-thumbnail .navigator ul {
    padding: 0;
}
.room-single-images-holder .post-thumbnail .navigator ul li,
.full-width-images-holder .post-thumbnail .navigator ul li {
    float: left;
    list-style-type: none;
    margin: 10px 10px 0 0;
    padding: 0;
    width: 25px;
    height: 25px;
    border: 1px solid white;
    background-color: #000;
    border-radius: 0%;
    -webkit-transition: all 500ms linear;
    transition: all 500ms linear;

    -webkit-box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);

}
.room-single-images-holder .post-thumbnail .navigator ul li span,
.full-width-images-holder .post-thumbnail .navigator ul li span {
    display: none;
}
.room-single-images-holder .post-thumbnail .navigator ul li:hover,
.full-width-images-holder .post-thumbnail .navigator ul li:hover {
    background: white;
    background-image: url('img/robot_small_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.room-single-images-holder .post-thumbnail .navigator ul li.active,
.full-width-images-holder .post-thumbnail .navigator ul li.active {
    background: #fff;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    background-image: url('img/robot_small_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.room-single-images-holder .post-thumbnail .prev,
.room-single-images-holder .post-thumbnail .next,
.full-width-images-holder .post-thumbnail .prev,
.full-width-images-holder .post-thumbnail .next,
.full-width-images-thumbs .prev,
.full-width-images-thumbs .next{
    display: block;
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    background: none;
    bordeR:0px;
    z-index: 10;
    color:#fff;
    font-size: 50px;
    line-height: 50px;
    text-align: center;
    opacity: 1;

    transition: opacity .15s ease-in-out;

    -webkit-text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    -moz-text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
}
.room-single-images-holder .post-thumbnail .prev:focus,
.room-single-images-holder .post-thumbnail .prev:active,

.room-single-images-holder .post-thumbnail .next:focus,
.room-single-images-holder .post-thumbnail .next:active,

.full-width-images-holder .post-thumbnail .prev:focus,
.full-width-images-holder .post-thumbnail .prev:active,

.full-width-images-holder .post-thumbnail .next:focus,
.full-width-images-holder .post-thumbnail .next:active,

.full-width-images-thumbs .prev:focus,
.full-width-images-thumbs .prev:active,

.full-width-images-thumbs .next:focus,
.full-width-images-thumbs .next:active{
    background: none;
    border:0px;
    outline: none;
}
.room-single-images-holder .post-thumbnail .prev:before,
.full-width-images-holder .post-thumbnail .prev:before,
.full-width-images-thumbs .prev:before {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 2;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-right: 16px solid #fff;
}

.room-single-images-holder .post-thumbnail .prev:hover,
.room-single-images-holder .post-thumbnail .next:hover,

.full-width-images-holder .post-thumbnail .prev:hover,
.full-width-images-holder .post-thumbnail .next:hover,

.full-width-images-thumbs .prev:hover,
.full-width-images-thumbs .next:hover{
    opacity: 0.7;
}
.room-single-images-holder .post-thumbnail .prev:after,
.full-width-images-holder .post-thumbnail .prev:after,
.full-width-images-thumbs .prev:after {
    position: absolute;
    top: -2px;
    left: -1px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-right: 18px solid #000000;
}

.room-single-images-holder .post-thumbnail .next:before,
.full-width-images-holder .post-thumbnail .next:before,
.full-width-images-thumbs .next:before {
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: 2;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-left: 16px solid #fff;
}
.room-single-images-holder .post-thumbnail .next:after,
.full-width-images-holder .post-thumbnail .next:after,
.full-width-images-thumbs .next:after {
    position: absolute;
    top: -2px;
    right: -1px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-left: 18px solid #000000;
}
.room-single-images-holder .post-thumbnail .prev,
.full-width-images-holder .post-thumbnail .prev,
.full-width-images-thumbs .prev {
    left: 15px;
}
.room-single-images-holder .post-thumbnail .next,
.full-width-images-holder .post-thumbnail .next,
.full-width-images-thumbs .next {
    right: 15px;
}

body.domain-holiday-homes .room-single-images-holder .post-thumbnail .prev:before,
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .prev:after,
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .next:before,
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .next:after {
    content:unset!important;
    display:none!important;
}
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .prev,
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .next {
    border-right: 10px solid;
    border-bottom: 10px solid;
    height: 30px;
    width: 30px;
    transform: rotate(-45deg);
    color: #ffff00;
    transition: opacity 0.6s ease-out, right 0.3s ease-out;
}
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .prev {
    transform: rotate(135deg);
}

body.domain-holiday-homes article#holiday-home-le-moulin .room-single-images-holder .post-thumbnail .prev,
body.domain-holiday-homes article#holiday-home-le-moulin .room-single-images-holder .post-thumbnail .next {
    color: #ffb7f3;
}
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .prev:hover{
    left: 12px;
    opacity: 1;
}
body.domain-holiday-homes .room-single-images-holder .post-thumbnail .next:hover {
    right: 12px;
    opacity: 1;
}


/*.full-width-images-holder.with-thumbs-bar {
    height: calc(100vh - 50px - 61px - 200px);
}*/
.full-width-images-thumbs {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
}
.full-width-images-thumbs > div {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: hidden;
}

.full-width-images-thumbs > div > ul {
    display: block;
    height: 100%;
    white-space: nowrap;
    margin: 0px!important;
    padding: 0px!important;
}
.full-width-images-thumbs > div > ul > li {
    float: left;
    list-style-type: none;
    margin: 0px;
    padding: 0px;
    height: 100%;
    border: 0px;
    background-color: #fff;
    border-radius: 0%;
    -webkit-transition: all 500ms linear;
    transition: all 500ms linear;
}
.full-width-images-thumbs > div > ul > li:before {
    display: none;
}
.full-width-images-thumbs > div > ul > li > div {
    box-sizing: border-box;
    padding: 5px;
    height: 100%;
}
.full-width-images-thumbs > div > ul > li > div > div {
    display: block;
    float: left;
    height: 100%;
    padding: 5px;
    box-sizing: border-box;
}
.full-width-images-thumbs > div > ul > li.items-7 > div > div { width: 14.285714286%; }
.full-width-images-thumbs > div > ul > li.items-6 > div > div { width: 16.666666667%; }
.full-width-images-thumbs > div > ul > li.items-5 > div > div { width: 20%; }
.full-width-images-thumbs > div > ul > li.items-4 > div > div { width: 25%; }
.full-width-images-thumbs > div > ul > li.items-3 > div > div { width: 33.333333333%; }
.full-width-images-thumbs > div > ul > li.items-2 > div > div { width: 50%; }
.full-width-images-thumbs > div > ul > li.items-1 > div > div { width: 100%; }

.full-width-images-thumbs > div > ul > li > div > div > img {
    cursor: pointer;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}


@media only screen and (max-width: 798px) {
    .post-type-archive-hphe_holiday_homes .container-text {
        padding: 30px 0px;
    }
    .full-width-images-holder h1{
        font-size: 3em;
        width: 100%;
        max-width: calc(100% - 100px);
        text-align: center;
        left: 50%;
        top: 50%;
        -webkit-transform:  translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
    }
    .post-type-archive-hphe_holiday_homes .full-width-images-holder {
        /*padding-top: 50px;*/
        /*aspect-ratio: 4/3;*/
        aspect-ratio: unset;
    }
    .post-type-archive-hphe_holiday_homes .full-width-images-holder .post-thumbnail {
        /*aspect-ratio: 4/3;*/
        height: calc(100vh - 69px - 61px);
    }
    /*.post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail {
        aspect-ratio: 16/9;
    }*/

    .post-type-archive-hphe_holiday_homes .full-width-images-holder h2{
        font-size: 2em;
        top: unset;
        left: unset;
        position: relative;
        text-align: center;
        color: #000!important;
        text-shadow: unset;
    }
    .post-type-archive-hphe_holiday_homes .full-width-images-holder h2 a {
        color: #000!important;
    }
    .full-width-images-holder .more-info {
        bottom: 10px;
        padding: 4px 4px 2px 4px;
        font-size: 10px;
        display: none;
    }
    .full-width-images-holder:has(.book-now-holder) {
        padding-bottom: 50px;
    }
    .full-width-images-holder .book-now-holder {
        position: absolute;
        left: 0px;
        right: unset;
        top: calc(100% - 45px);
        bottom: unset;
        width: 100vw;
        text-align: center;
        padding-left: 15px;
        padding-right: 15px;
    }
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn {
        padding: 0px;
    }
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn svg {
        height: 100%;
        width: 100%;
    }
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail:after {
        display: none;
    }
}
@media only screen and (max-width: 450px) {
    .full-width-images-holder h1{
        font-size: 2em;
    }
    .full-width-images-holder h2{
        font-size: 1.2em;
    }
}






body.single-hphe_rooms .col-lg-7,
body.single-hphe_holiday_homes .col-lg-7 {

}
body.single-hphe_rooms .col-lg-5,
body.single-hphe_holiday_homes .col-lg-5 {
    padding-top: 30px;
    padding-bottom: 120px;
    padding-right: 30px;
}

.room-single-footer {
    position: fixed;
    bottom: 60px;
    left: 0px;
    width: 100%;
    z-index: 3;
}
.room-single-footer > .row {
    margin-left: 0px;
    margin-right: 0px;
}
.room-single-footer > .row > div {
    padding-right: 20px;
    padding-left: 20px;
    background-color: #ccc;
}
.calendar-row .calendar-a-col .calendar-arrow-close,
.calendar-row .calendar-a-col .calendar-arrow-right {
    display: none;
}


.btn-book{
    display: block;
    width: auto;
    min-width: 180px;
    height: 45px;
    color: #000000;
    background-color: #fff;
    border: 1px #000 solid;
    font-size: 1.1em;
    padding-top: 0px;
    padding-bottom: 0px;
    margin: 25px 0px;
    line-height: 45px;
    outline: 0px!important;
    box-shadow: none!important;

    transition: color .15s ease-in-out, background-color .15s ease-in-out;
}
.btn-book:hover{
    color: #fff;
    background-color: #000000;
}


body.single-hphe_rooms .availability-btn-holder,
body.single-hphe_holiday_homes .availability-btn-holder {
    position: absolute;
    padding-left: 30px;
    padding-right: 30px;
    bottom: 30px;
    right: 0px;
    width: auto;
    z-index: 8;
}
body.single-hphe_rooms .availability-btn-holder .btn,
body.single-hphe_holiday_homes .availability-btn-holder .btn{
    display: block;
    width: auto;
    min-width: 180px;
    height: 45px;
    color: #000000;
    background-color: #fff;
    font-size: 1.1em;
    padding-top: 0px;
    padding-bottom: 0px;
    line-height: 45px;
    outline: 0px!important;
    box-shadow: none!important;

    transition: color .15s ease-in-out, background-color .15s ease-in-out;
}
body.single-hphe_rooms .availability-btn-holder .btn:first-of-type,
body.single-hphe_holiday_homes .availability-btn-holder .btn:first-of-type{
    margin-bottom: 10px;
}
body.single-hphe_rooms .availability-btn-holder .btn:last-of-type,
body.single-hphe_holiday_homes .availability-btn-holder .btn:last-of-type{
    /*line-height: 22px;*/
}
body.single-hphe_rooms .availability-btn-holder .btn:hover,
body.single-hphe_holiday_homes .availability-btn-holder .btn:hover{
    color: #fff;
    background-color: #000000;
}
body.single-hphe_rooms .back-btn,
body.single-hphe_holiday_homes .back-btn {
    position: absolute;
    bottom: 0px;
    left: 0px;
    color: #000000;
    text-decoration: none;
    padding-left: 14px;
    z-index: 5;

    width: 100%;
    padding: 20px 20px 20px 34px;
    background-color: #fff;

    transition: color .15s ease-in-out;
}
body.single-hphe_rooms .back-btn i,
body.single-hphe_holiday_homes .back-btn i{
    font-size: 1.3em;
    display: block;
    position: absolute;
    top: 22px;
    left: 20px;
}
body.single-hphe_rooms .back-btn:hover,
body.single-hphe_holiday_homes .back-btn:hover {
    color: #666;
}
.room-single-main-row {
    margin-left: 0px;
    margin-right: 0px;
}


.rooms-top-buttons-holder {
    text-align: center;
    padding-bottom: 25px;
}
.rooms-top-buttons-holder .btn {
    padding-top: 10px;
    font-weight: 600;
}

/*
#VISUAL TOUR ARCHIVE
*/
.post-type-archive-hphe_visualtour .type-hphe_visualtour:hover {
    opacity: 0.7;
}
.post-type-archive-hphe_visualtour .type-hphe_visualtour .post-thumbnail {
    position: relative;
    padding-top: 100%;
}
.post-type-archive-hphe_visualtour .type-hphe_visualtour .post-thumbnail a {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.post-type-archive-hphe_visualtour .type-hphe_visualtour .post-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.post-type-archive-hphe_visualtour .type-hphe_visualtour .entry-title {
    padding-top: 5px;
    text-align: center;
}
.post-type-archive-hphe_visualtour .type-hphe_visualtour .entry-title:hover,
.post-type-archive-hphe_visualtour .type-hphe_visualtour .entry-title a:hover {
    text-decoration: none;
}

/*
#VISUAL TOUR SINGLE
*/
body.single-hphe_visualtour #content .container {
    max-width: none;
    padding-left: 0px;
    padding-right: 0px;
}
body.single-hphe_visualtour #content .container > .row {
    margin-left: 0px;
    margin-right: 0px;
}
body.single-hphe_visualtour #primary {
    padding-left: 0px;
    padding-right: 0px;
}
body.single-hphe_visualtour {
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #000!important;
    overflow: hidden;
}
body.single-hphe_visualtour #primary article {
    padding: 0px;
    background-color: #000!important;
    color: #fff;
}

body.single-hphe_visualtour #primary article .inner {
    padding: 30px 15px;
    position: relative;
    height: calc(100vh - 50px - 60px);
}
.visualtour-single-map-holder {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 9999;
}
.visualtour-single-map-icons {
    display: none;
    margin: 0px auto;
    width: auto;
    max-width: 800px;
}
.visualtour-single-map-icons a {
    display: block;
    width: 12.5%;
    position: relative;
    max-width: 100px;
    float: left;
}
.visualtour-single-map-icons a:nth-child(8n + 1) {
    clear: both;
}
.visualtour-single-map-icons div {
    position: relative;
    padding-top: 100%;
}
.visualtour-single-map-icons img,
.visualtour-single-map-icons svg {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.visualtour-single-map-holder svg [id^="dot-"]{
    cursor: pointer;
}
.visualtour-single-map-holder svg [id^="dot-"].active-dark {
    stroke-width: 1px;
    stroke: #000;
}
.visualtour-single-map-holder svg [id^="dot-"].active-light {
    stroke-width: 1px;
    stroke: #fff;
}
.visualtour-single-map-name-popup {
    position: absolute;
    z-index: 999;
    background-color: #fff;
    color: #000;
    padding: 8px 10px;
    display: none;
    font-size: 12px;
    line-height: 12px;
    border: 1px #000000 solid;
}
.visualtour-single-map-name-popup span {
    font-weight: 600;
}
.visualtour-single-map-name-popup span br {
    display: none;
}
/*.visualtour-single-map-holder svg [id^="fills-"]{
    display: none!important;
}
.visualtour-single-map-holder svg [id^="lines-"]{
    display: none!important;
}*/

body.single-hphe_visualtour #primary article h1,
#visual-tour-ajax-holder article h1 {
    position: fixed;
    top: 60px;
    left: 24px;
    color: #fff;
    z-index: 10;
}
#visual-tour-ajax-holder article {
    height: 100%;
}
#visual-tour-ajax-holder article h1 {
    position: absolute;
    transform: none;
    display: block;
    top: 20px;
}
#visual-tour-ajax-holder article h1 br {
    display: none;
}
#visual-tour-ajax-holder .row.visualtour-single-main-row {
    height: 100%;
}
#visual-tour-ajax-holder .visualtour-single-main-col-content {
    padding-left: 30px;
}
#visual-tour-ajax-holder .visualtour-single-main-col-content .inner {
    position: relative;
    height: 100%;
}
#visual-tour-ajax-holder .visualtour-single-main-col-content .inner .entry-content {
    height: 100%;
}

/*@media only screen and (min-width: 992px) {
    .visualtour-single-images-holder-inner {
        width: calc(100vw - 450px);
        max-width: calc(100vw - 450px);
        flex: 0 0 450px;
    }
    .visualtour-single-main-col-content {
        width: 450px;
        max-width: 450px;
        flex: 0 0 450px;
    }
}*/

.row.visualtour-single-main-row .visualtour-single-main-col-image{
    position: relative;
}


.visualtour-single-images-holder {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
#visual-tour-ajax-holder .visualtour-single-images-holder {
    position: absolute;
}
.visualtour-single-images-holder > div {
    position: relative;
    height: 100%;
}
.visualtour-single-images-holder .post-thumbnail {
    margin: 0px;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
}
.visualtour-single-images-holder .post-thumbnail div {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: hidden;
}
.visualtour-single-images-holder .post-thumbnail img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.visualtour-single-images-holder .post-thumbnail ul {
    display: block;
    height: 100%;
    white-space: nowrap;
    margin: 0px!important;
    padding: 0px!important;
}
.visualtour-single-images-holder .post-thumbnail ul li {
    display: inline-block;
    height: 100%;
    position: relative;
    margin: 0px!important;
    padding: 0px!important;
    background-color: #242424;

    /*background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-attachment: fixed;*/
}
.visualtour-single-images-holder .post-thumbnail ul li img {
    /*opacity: 0;*/
}

.visualtour-single-images-holder .post-thumbnail .navigator {
    display: none;
    position: absolute;
    bottom: 80px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.visualtour-single-images-holder .post-thumbnail .navigator ul {
    padding: 0;
}
.visualtour-single-images-holder .post-thumbnail .navigator ul li {
    float: left;
    list-style-type: none;
    margin: 10px 10px 0 0;
    padding: 0;
    width: 25px;
    height: 25px;
    border: 1px solid white;
    background-color: #000;
    border-radius: 0%;
    -webkit-transition: all 500ms linear;
    transition: all 500ms linear;

    -webkit-box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);

}
.visualtour-single-images-holder .post-thumbnail .navigator ul li span {
    display: none;
}
.visualtour-single-images-holder .post-thumbnail .navigator ul li:hover {
    background: white;
    background-image: url('img/robot_small_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.visualtour-single-images-holder .post-thumbnail .navigator ul li.active {
    background: #fff;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    background-image: url('img/robot_small_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.visualtour-single-images-holder .post-thumbnail .prev,
.visualtour-single-images-holder .post-thumbnail .next {
    display: block;
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    background: none;
    bordeR:0px;
    z-index: 10;
    color:#fff;
    font-size: 50px;
    line-height: 50px;
    text-align: center;
    opacity: 1;

    transition: opacity .15s ease-in-out;

    -webkit-text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    -moz-text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
}
.visualtour-single-images-holder .post-thumbnail .prev:focus,
.visualtour-single-images-holder .post-thumbnail .prev:active,

.visualtour-single-images-holder .post-thumbnail .next:focus,
.visualtour-single-images-holder .post-thumbnail .next:active {
    background: none;
    border:0px;
    outline: none;
}
.visualtour-single-images-holder .post-thumbnail .prev:hover,
.visualtour-single-images-holder .post-thumbnail .next:hover {
    opacity: 0.7;
}

.visualtour-single-images-holder .post-thumbnail .prev:before {
    position: absolute;
    top: 7px;
    left: 12px;
    z-index: 2;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-right: 13px solid #fff;
}
.visualtour-single-images-holder .post-thumbnail .prev:after {
    position: absolute;
    top: 5px;
    left: 11px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-right: 15px solid #000000;
}

.visualtour-single-images-holder .post-thumbnail .next:before {
    position: absolute;
    top: 7px;
    left: 15px;
    z-index: 2;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-left: 13px solid #fff;
}
.visualtour-single-images-holder .post-thumbnail .next:after {
    position: absolute;
    top: 5px;
    left: 14px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid #000000;
}
.visualtour-single-map-icons:after {
    content: '';
    display: block;
    clear: both;
}
.visualtour-single-map-navi {
    position: relative;
    padding-bottom: 0px;
    font-size: 1.5rem;
    line-height: 1.5rem;
    padding-left: 30px;
    padding-right: 30px;
}
.visualtour-single-map-icons svg {
    width: 100%!important;
    height: 100%!important;
    display: block!important;
}
.visualtour-single-map-icons a svg rect,
.visualtour-single-map-icons a svg polygon,
.visualtour-single-map-icons a svg path {
    fill: #fff;
}
.visualtour-single-map-icons a.active svg rect,
.visualtour-single-map-icons a.active svg polygon,
.visualtour-single-map-icons a.active svg path {
    fill: #007d56;
}

.visualtour-single-map-navi
/*,.visualtour-single-map-navi div*/
{
    padding-top: 0px!important;
}
.visualtour-single-map-navi div {
    color: rgb(255, 103, 0);
    font-size: 15px;
    line-height: 30px;
    padding-top: 3px;
}
.visualtour-single-map-navi {
    text-align: center;
}
.visualtour-single-map-navi br {
    display: none;
}
.visualtour-single-map-navi span {
    display: block;
    margin: 0px auto;
    padding-bottom: 3px;
    font-size: 0.9rem;
    line-height: 0.9rem;
}
.visualtour-single-map-navi .prev-room,
.visualtour-single-map-navi .next-room{
    display: block;
    position: absolute;
    top: 50%;
    width: 30px;
    height: 30px;
    background: transparent;
    border: 0px;
    outline: none;

    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.visualtour-single-map-navi .prev-room {
    left: 0px;
}
.visualtour-single-map-navi .next-room {
    right: 0px;
}
.visualtour-single-map-navi .prev-room:before,
.visualtour-single-map-navi .next-room:before {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
}
.visualtour-single-map-navi .prev-room:before {
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #fff;
    left: 9px;
    top: 4px;
}
.visualtour-single-map-navi .next-room:before {
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #fff;
    left: 10px;
    top: 4px;
}


.visualtour-single-images-holder .post-thumbnail .prev {
    left: 0px;
}
.visualtour-single-images-holder .post-thumbnail .next {
    right: 0px;
}

.visualtour-single-images-holder img.mobile,
.visualtour-single-images-holder img.desktop {
    display: none;
}
/*@media only screen and (min-width: 992px) {*/
    .visualtour-single-images-holder img.desktop {
        display: inline-block;
    }
/*}*/
/*@media only screen and (max-width: 992px) {*/
    .visualtour-single-images-holder img.mobile {
        display: inline-block;
    }

    .visualtour-single-map-icons {
        display: block;
    }
    .visualtour-single-map-holder svg {
        display: none;
    }
    /*.visualtour-single-map-icons a {
        width: 25%;
    }
    .visualtour-single-map-icons a:nth-child(4n + 1) {
        clear: both;
    }*/

    .visualtour-single-main-row {
        margin: 0px;
        position: inherit;
        margin-right: 0px;
        margin-left: 0px;
    }
    #visual-tour-ajax-holder .visualtour-single-images-holder {
        position: relative;
    }
    .visualtour-single-images-holder {
        position: relative;
        top: auto;
        left: auto;
        /*height: calc(55vh - 100px);*/
        /*height: auto;*/

        height: calc(100vh - 100px - 60px - 100px);
    }
   /* .visualtour-single-images-holder > div {
        padding-top: 100%;
    }*/
    .visualtour-single-main-row {
        /*height: calc(45vh - 60px);*/
        height: auto;
        padding-top: 10px;
    }
    .visualtour-single-main-col-content {
        text-align: center;
        padding-left: 0px;
        padding-right: 0px;
    }
    .visualtour-single-map-holder svg {
        width: auto;
        height: calc(55vh - 60px - 50px);
        max-width: 100%;
    }
    .visualtour-single-main-row .page-content, .entry-content, .entry-summary {
        margin: 0px;
    }
    .visualtour-single-map-holder {
        position: relative;
        top: auto;
        left: auto;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        margin: 0px auto;
        display: inline-block;
    }
    body.single-hphe_visualtour #primary article .inner {
        padding-left: 0px;
        padding-right: 0px;
        height: auto;
    }
    body.single-hphe_visualtour {
        /*overflow: auto;*/
    }
    body.single-hphe_visualtour #primary article h1,
    #visual-tour-ajax-holder article h1 {
        width: 100%;
        text-align: center;
        font-size: 25px;
        position: absolute;
        top: 10px;
        left: 0px;
    }
    #visual-tour-ajax-holder .row.visualtour-single-main-row {
        height: auto;
    }
    #visual-tour-ajax-holder .visualtour-single-main-col-content {
        padding-left: 0px;
    }
    .visualtour-single-map-navi {
        display: none;
    }
/*}*/
@media only screen and (max-width: 655px) {
    body.single-hphe_visualtour #primary article h1,
    #visual-tour-ajax-holder article h1 {
        font-size: 20px;
    }

    /*body.single-hphe_visualtour #primary article h1 span,
    #visual-tour-ajax-holder article h1 span {
        font-size: 0px;
        line-height: 0px;
        display: block;
    }*/

    body.single-hphe_visualtour {
        padding-top: 105px;
    }
    /*.visualtour-single-images-holder {
        height: calc(45vh - 105px);
    }*/
    #visual-tour-ajax-holder .row.visualtour-single-main-row {
        /*height: calc(55vh - 60px);*/
        height: auto;
    }
    #visual-tour-ajax-holder .row.visualtour-single-main-row svg {
        height: calc(55vh - 60px - 50px);
    }
    .single-hphe_rooms .entry-content {
        padding-bottom: 100px;
    }

    .visualtour-single-map-navi {
        font-size: 1rem;
    }
    .visualtour-single-map-navi span {

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


body.single-hphe_visualtour .col-lg-7 {

}
body.single-hphe_visualtour .col-lg-5 {
    padding-top: 30px;
    padding-bottom: 120px;
    padding-right: 30px;
}


body.single-hphe_rooms .availability-popup,
body.single-hphe_holiday_homes .availability-popup {
    position: absolute;
    bottom: -1000px;
    left: 100%;
    width: 100%;
    z-index: 999999;

    /*background-color: #fff;*/
    padding: 30px;
}
body.single-hphe_rooms .availability-popup.availability-popup-single,
body.single-hphe_holiday_homes .availability-popup.availability-popup-single {
    padding: 0px;
}
body.single-hphe_rooms .availability-popup.opened,
body.single-hphe_holiday_homes .availability-popup.opened {
    bottom: 0px;
    left: 0px;
}
body.single-hphe_rooms .availability-popup .calendar-row,
body.single-hphe_holiday_homes .availability-popup .calendar-row {
    background-color: #fff;
}
body.single-hphe_rooms .availability-popup .calendar-animating-bg,
body.single-hphe_holiday_homes .availability-popup .calendar-animating-bg {
    position: fixed;
    bottom: 90px;
    right: 30px;
    width: 180px;
    height: 45px;
    border: 2px #000 solid;
    background-color: #fff;
    display: none;
}
body.single-hphe_rooms .availability-popup .calendar-animating-bg.animating,
body.single-hphe_holiday_homes .availability-popup .calendar-animating-bg.animating {
    display: block;
}
/*body.single-hphe_rooms .availability-popup:before,
body.single-hphe_holiday_homes .availability-popup:before,
body.single-hphe_rooms .availability-popup:after,
body.single-hphe_holiday_homes .availability-popup:after {
    content: '';
    position: fixed;
    bottom: 0px;
    right: 0px;
    background-color: #fff;
    z-index: 12;
}
body.single-hphe_rooms .availability-popup:before,
body.single-hphe_holiday_homes .availability-popup:before {
    width: 210px;
    height: 90px;
    width: 33.3333333%;
}
body.single-hphe_rooms .availability-popup:after,
body.single-hphe_holiday_homes .availability-popup:after {
    width: 30px;
    height: 190px;
    height: 100%;
}*/

body.single-hphe_rooms .availability-btn-holder,
body.single-hphe_holiday_homes .availability-btn-holder {
    position: absolute;
    padding-left: 30px;
    padding-right: 30px;
    bottom: 30px;
    right: 0px;
    width: auto;
    z-index: 8;
}
body.single-hphe_rooms .availability-btn-holder .btn,
body.single-hphe_holiday_homes .availability-btn-holder .btn{
    display: block;
    width: auto;
    min-width: 180px;
    height: 45px;
    color: #000000;
    background-color: #fff;
    font-size: 1.1em;
    padding-top: 0px;
    padding-bottom: 0px;
    line-height: 45px;
    outline: 0px!important;
    box-shadow: none!important;

    transition: color .15s ease-in-out, background-color .15s ease-in-out;
}
body.single-hphe_rooms .availability-btn-holder .btn:first-of-type,
body.single-hphe_holiday_homes .availability-btn-holder .btn:first-of-type{
    margin-bottom: 10px;
}
body.single-hphe_rooms .availability-btn-holder .btn:last-of-type,
body.single-hphe_holiday_homes .availability-btn-holder .btn:last-of-type{
    /*line-height: 22px;*/
}
body.single-hphe_rooms .availability-btn-holder .btn:hover,
body.single-hphe_holiday_homes .availability-btn-holder .btn:hover{
    color: #fff;
    background-color: #000000;
}
body.single-hphe_rooms .back-btn,
body.single-hphe_holiday_homes .back-btn {
    position: absolute;
    bottom: 0px;
    left: 0px;
    color: #000000;
    text-decoration: none;
    padding-left: 14px;
    z-index: 5;

    width: 100%;
    padding: 22px 20px 20px 34px;
    background-color: #fff;

    transition: color .15s ease-in-out;
}
body.single-hphe_rooms .back-btn i,
body.single-hphe_holiday_homes .back-btn i{
    font-size: 1.3em;
    display: block;
    position: absolute;
    top: 22px;
    left: 20px;
}
body.single-hphe_rooms .back-btn:hover,
body.single-hphe_holiday_homes .back-btn:hover {
    color: #666;
}
body.single-hphe_rooms .back-btn.for-mobile,
body.single-hphe_holiday_homes .back-btn.for-mobile {
    display: none;
    position: relative;
    z-index: auto;
    left: auto;
    bottom: auto;
    margin-bottom: 20px;
}
.room-single-main-row {
    margin-left: 0px;
    margin-right: 0px;
}

.room-feature-list ul {
    list-style-type: none !important;
    padding-left: 0px !important;
    margin: 20px 0px 40px 0px !important;
}
.room-feature-list ul li:before {
    content:"·" !important;
    font-size:40px !important;
    vertical-align:middle !important;
    line-height:20px !important;
}
.single-hphe_holiday_homes .room-feature-list ul li:before {
    font-size:50px !important;
}

/*--------------------------------------------------------------
# Media Query
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Notebook
--------------------------------------------------------------*/
@media only screen and (max-width: 1280px) {
    html {
        font-size: 95%;
    }
    body.single-hphe_rooms .back-btn,
    body.single-hphe_holiday_homes .back-btn {
        display: none;
    }

    body.single-hphe_rooms .back-btn.for-mobile,
    body.single-hphe_holiday_homes .back-btn.for-mobile {
        display: block;
        margin-bottom: 0px;
        padding-left: 15px;
    }
    body.single-hphe_rooms .back-btn.for-mobile i,
    body.single-hphe_holiday_homes .back-btn.for-mobile i {
        left: 0px;
    }
}

@media screen and (max-width: 1199px) {
    .navbar-dark .dropdown-item {
        color: #fff;
    }
    .navbar-nav .dropdown-menu {
        background: transparent;
        box-shadow: none;
        border: none;
    }
}
/*--------------------------------------------------------------
## Netbook
--------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
    html {
        font-size: 90%;
    }
    .full-width-images-thumbs {
        height: 120px!important;
    }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 991px) {
    .single-hphe_rooms .entry-content,
    .single-hphe_holiday_homes .entry-content{
        padding-bottom: 140px;
    }

    html {
        font-size: 85%;
    }

    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .post-thumbnail,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .post-thumbnail {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:first-of-type,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:first-of-type {
        padding-right: 15px !important;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type {
        padding-left: 15px !important;
        border-left: 0px;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type div:last-of-type {
        padding-left: 30px;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type {
        padding-bottom: 44px;
    }
    body.single-hphe_rooms .availability-btn-holder,
    body.single-hphe_holiday_homes .availability-btn-holder {
        width: 100%;
        /*background-color: #fff;*/
        bottom: 0px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    body.single-hphe_rooms .availability-btn-holder .btn,
    body.single-hphe_holiday_homes .availability-btn-holder .btn {
        width: 100%;
    }
    /*body.single-hphe_rooms .availability-btn-holder .btn,
    body.single-hphe_holiday_homes .availability-btn-holder .btn {
        float: left;
        width: 49%;
        min-width: 0px;
        margin-bottom: 0px!important;
    }
    body.single-hphe_rooms .availability-btn-holder .btn:first-of-type,
    body.single-hphe_holiday_homes .availability-btn-holder .btn:first-of-type {
        margin-right: 1%;
    }
    body.single-hphe_rooms .availability-btn-holder .btn:last-of-type,
    body.single-hphe_holiday_homes .availability-btn-holder .btn:last-of-type {
        margin-left: 1%;
    }*/
    body.single-hphe_rooms .back-btn,
    body.single-hphe_holiday_homes .back-btn {
        /*display: none;*/
    }
    .room-single-images-holder > div,
    .full-width-images-holder > div {
        padding-left: 0px;
        padding-right: 0px;
    }
    .room-single-images-holder .post-thumbnail,
    .full-width-images-holder .post-thumbnail {
        margin-left: 0px;
        position: relative;
        left: auto;
        top: auto;
    }
    body.single-hphe_rooms .col-lg-7,
    body.single-hphe_holiday_homes .col-lg-7 {
        padding-left: 0px;
        padding-right: 0px;
    }
    .room-single-images-holder .post-thumbnail div,
    .full-width-images-holder .post-thumbnail div {
        position: relative;
        margin-right: 0px;
        margin-left: 0px;
        /*height: 500px;*/
        /*height: calc(100% - 60px);*/
    }
    /*.room-single-images-holder .post-thumbnail .prev,
    .room-single-images-holder .post-thumbnail .next {
        display: none;
    }*/
    body.single-hphe_rooms .col-lg-5,
    body.single-hphe_holiday_homes .col-lg-5 {
        padding-top: 15px;
        padding-right: 15px;
    }
    body.single-hphe_rooms .availability-btn-holder,
    body.single-hphe_holiday_homes .availability-btn-holder {
        /*padding-left: 15px;
        padding-right: 15px;*/
    }
    body.single-hphe_rooms .back-btn,
    body.single-hphe_holiday_homes .back-btn {
        left: 15px;
    }
    body.single-hphe_rooms #scroll-top-top,
    body.single-hphe_holiday_homes #scroll-top-top {
        bottom: 134px;
        left: 30px;
    }
    body.page-template-multiple-fullscreen-galleries #scroll-top-top {
        /*bottom: 134px;*/
        display: none!important;
    }

    body.single-hphe_rooms .availability-popup.opened,
    body.single-hphe_holiday_homes .availability-popup.opened {
        bottom: -10px;
    }
    body.single-hphe_rooms .availability-popup .calendar-animating-bg,
    body.single-hphe_holiday_homes .availability-popup .calendar-animating-bg {
        bottom: 80px;
    }

    .calendar-row table{
        margin: 0px auto;
    }
    .calendar-row .calendar-a-col .calendar-arrow-close,
    .calendar-row .calendar-a-col .calendar-arrow-right {
        display: block;
    }
    .calendar-row .calendar-b-col {
        display: none;
    }
    .calendar-row .row > div:first-of-type {
        border-right-width: 2px!important;
    }
    .rooms-header .container {
        max-width: none!important;
    }

    .calendars-row .calendar-arrow-right {
        display: block!important;
    }
    .calendars-row .calendar-b-col,
    .calendars-row .calendar-c-col {
        display: none!important;
    }
    .full-width-images-thumbs {
        height: 100px!important;
    }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 798px) {

}
@media only screen and (max-width: 768px) {
    html {
        font-size: 80%;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .entry-title,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .entry-title,
     body.single-hphe_rooms #primary article h1,
     body.single-hphe_holiday_homes #primary article h1 {
        font-size: 20px;
        line-height: 1.25;
    }

    #menu-main-menu li {
        width: 80px;
    }

    .room-single-images-holder {
        position: relative;
        top: auto;
        left: auto;
        height: 50vh;
    }

    body.post-type-archive-hphe_rooms,
    body.post-type-archive-hphe_holiday_homes {
        padding-top: 69px;
        padding-bottom: 110px;
    }
    .rooms-back-to-top {
        display: block;
    }
    .rooms-header {
        position: relative;
        top: auto;
        left: auto;
        height: auto;
        padding: 50px 0px 20px 0px;
        margin-bottom: 15px;
    }
    .rooms-header-spacing {
        display: none;
        margin-bottom: 15px;
    }
    .rooms-header .container {
        height: auto;
    }
    .rooms-header-images {
        height: auto;
    }
    .rooms-header-images > div.compass {
        bottom: auto;
        top: -45px;
        left: 0px;
        width: 25px;
    }
    .full-width-images-thumbs {
        display: none;
    }


    body.single-hphe_rooms .back-btn.for-mobile, body.single-hphe_holiday_homes .back-btn.for-mobile {
        padding-left: 39px;
    }

    .rooms-top-buttons-holder {
        padding-bottom: 0px;
    }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/

@media only screen and (max-width: 480px) {
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .col-lg-6:last-of-type div:last-of-type {
        width: 100%;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type div:last-of-type .btn,
    .post-type-archive-hphe_holiday_homes .site-main article.hphe_holiday_homes .btn {
        padding: 0px;
    }
    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .col-lg-6:last-of-type {
        padding-bottom: 65px;
    }

    html {
        font-size: 75%;
    }

    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .entry-title {
        text-align: left;
        position: relative;
    }

    .post-type-archive-hphe_rooms .site-main article.hphe_rooms .entry-title span {
        margin-right: 10px;
    }

    body.single-hphe_rooms #primary article h1,
    body.single-hphe_holiday_homes #primary article h1 {
        /*text-align: left;*/
        position: relative;
        padding-top: 30px;
    }

    /*body.single-hphe_rooms #primary article h1 span,
    body.single-hphe_holiday_homes #primary article h1 span {
        position: absolute;
        top: 0px;
        left: 0px;
    }*/
    .rooms-filter-btns {
        padding-bottom: 15px;
    }
    #menu-main-menu li {
        width: 72px;
        margin-left: 4px;
    }
    #menu-main-menu a {
        font-size: 8px;
    }
}
@media only screen and (max-width: 450px) {
    .rooms-header {
        padding: 30px 0px 20px 0px;
    }

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

    #menu-main-menu li {
        width: 70px;
    }
    #menu-main-menu a {
        font-size: 8px;
    }
    #menu-main-menu .dropdown-menu > div > ul > li > a.with-icon span.menu-item-title {
        font-size: 7px;
    }

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

    #menu-main-menu li {
        width: 54px;
    }
    #menu-main-menu a {
        font-size: 8px;
    }
}


.inner-loading {
    position: absolute;
    display: block;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.40);
    z-index: 99999;
}
.inner-loading:before {
    content: '';
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    background-image: url('img/robot-white.gif');
    background-repeat: no-repeat;
    background-size: contain;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.page-preloader {
    position: fixed;
    z-index: 99999;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,0.95);
}
.page-preloader div {
    display: none;
}
.page-preloader span {
    display: block;
    background-image: url('img/robot.gif');
    background-repeat: no-repeat;
    background-size: contain;
    width: 40px;
    height: 40px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/*REVIEWS*/
#primary article.hphe_reviews {
    padding: 0px;
    border-top: 1px #dedede solid;
    margin-top: 10px;
    padding-top: 10px;
}
.single-hphe_reviews #primary article.hphe_reviews {
    border-top: 0px;
    margin-top: 0px;
    padding-top: 0px;
}
#primary article.hphe_reviews h2 {
    margin-bottom: 10px;
    padding-bottom: 0px;
}
#primary article.hphe_reviews p {
    margin-bottom: 10px;
}
#primary article.hphe_reviews .review-rating{
    margin-bottom: 10px;
    font-size: 1em;
}
.single-hphe_reviews #primary article.hphe_reviews .review-rating{
    margin-bottom: 30px;
    font-size: 1.5em;
}

/*PAGE*/
.page-row-with-image {
    margin-left: 0px;
    margin-right: 0px;
}
.page-section-with-image {
    /*padding-left: 0px;*/
}
#primary.page-section-with-image article {
    padding: 0px;
}
.page-section-with-image .page-main-row {
    margin-top: -56px;
    padding-bottom: 100px;
}




.page-section-with-image .page-main-col-gallery {
    padding-left: 0px;
    padding-right: 0px;
    position: relative;
}
.page-section-with-image .page-main-col-gallery div{
    position: fixed;
    top: 50px;
    left: 0px;
    width: 66.666667%;
    height: calc(100vh - 50px - 60px);

    -webkit-transition: width 500ms ease-out 0.0s;
    -moz-transition: width 500ms ease-out 0.0s;
    -o-transition: width 500ms ease-out 0.0s;
    transition: width 500ms ease-out 0.0s;

    overflow: hidden;
}

.page-section-with-image .page-main-col-gallery .navigator {
    display: none;
    position: absolute;
    bottom: 80px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.page-section-with-image .page-main-col-gallery .navigator ul {
    padding: 0;
}
.page-section-with-image .page-main-col-gallery .navigator ul li {
    float: left;
    list-style-type: none;
    margin: 10px 10px 0 0;
    padding: 0;
    width: 25px;
    height: 25px;
    border: 1px solid white;
    background-color: #000;
    border-radius: 0%;
    -webkit-transition: all 500ms linear;
    transition: all 500ms linear;

    -webkit-box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    box-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);

}
.page-section-with-image .page-main-col-gallery .navigator ul li span {
    display: none;
}
.page-section-with-image .page-main-col-gallery .navigator ul li:hover {
    background: white;
    background-image: url('img/robot_small_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.page-section-with-image .page-main-col-gallery .navigator ul li.active {
    background: #fff;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    background-image: url('img/robot_small_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.page-section-with-image .page-main-col-gallery .prev,
.page-section-with-image .page-main-col-gallery .next {
    display: block;
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    background: none;
    bordeR:0px;
    z-index: 10;
    color:#fff;
    font-size: 50px;
    line-height: 50px;
    text-align: center;
    opacity: 1;

    transition: opacity .15s ease-in-out;

    -webkit-text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    -moz-text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
    text-shadow: 0px 0px 35px -6px rgba(0,0,0,0.75);
}
.page-section-with-image .page-main-col-gallery .prev:focus,
.page-section-with-image .page-main-col-gallery .prev:active,

.page-section-with-image .page-main-col-gallery .next:focus,
.page-section-with-image .page-main-col-gallery .next:active {
    background: none;
    border:0px;
    outline: none;
}
.page-section-with-image .page-main-col-gallery .prev:hover,
.page-section-with-image .page-main-col-gallery .next:hover {
    opacity: 0.7;
}

.page-section-with-image .page-main-col-gallery .prev:before {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 2;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-right: 16px solid #fff;
}
.page-section-with-image .page-main-col-gallery .prev:after {
    position: absolute;
    top: -2px;
    left: -1px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-right: 18px solid #000000;
}

.page-section-with-image .page-main-col-gallery .next:before {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 2;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-left: 16px solid #fff;
}
.page-section-with-image .page-main-col-gallery .next:after {
    position: absolute;
    top: -2px;
    left: -1px;
    z-index: 1;
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-left: 18px solid #000000;
}

.page-section-with-image .page-main-col-gallery .prev {
    left: 15px;
}
.page-section-with-image .page-main-col-gallery .next {
    right: 15px;
}


.page-section-with-image .page-main-col-gallery > div > ul img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.page-section-with-image .page-main-col-gallery > div > ul {
    display: block;
    height: 100%;
    white-space: nowrap;
    margin: 0px!important;
    padding: 0px!important;
}
.page-section-with-image .page-main-col-gallery > div > ul li {
    display: inline-block;
    height: 100%;
    position: relative;
    margin: 0px!important;
    padding: 0px!important;
    background-color: #242424;

    /*background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-attachment: fixed;*/
}
.page-section-with-image .page-main-col-gallery > div > li img {
    /*opacity: 0;*/
    cursor: pointer;
}
@media only screen and (max-width: 992px) {
    .page-section-with-image .page-main-col-gallery div {
        width: 50%;
    }
}
@media only screen and (max-width: 768px) {
    .page-section-with-image .page-main-col-gallery div {
        position: relative;
        width: 100%;
        height: auto;
        top: unset;

    }
}





.page-section-with-image .page-main-col-image {
    padding-left: 0px;
    padding-right: 0px;
    position: relative;
}
.page-section-with-image .page-main-col-image div{
    position: fixed;
    top: 50px;
    left: 0px;
    width: 66.666667%;
    height: calc(100vh - 50px - 60px);

    -webkit-transition: width 500ms ease-out 0.0s;
    -moz-transition: width 500ms ease-out 0.0s;
    -o-transition: width 500ms ease-out 0.0s;
    transition: width 500ms ease-out 0.0s;
}
.page-section-with-image .page-main-col-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-section-with-image .page-main-col-content {
    padding: 25px 25px;
}
/*
body.with-side-cart .page-section-with-image .page-main-col-image{
    width: calc(100vw - 300px - 33%);
}
*/
body.with-side-cart .page-section-with-image .page-main-col-image {
}
body.with-side-cart .page-section-with-image .page-main-col-image div{
    width: calc(66.666667% - 200px);
}

@media only screen and (max-width: 1200px) {
    /*body.with-side-cart .page-section-with-image .page-main-col-image {

    }*/
    body.with-side-cart .page-section-with-image .page-main-col-image div{
        width: 66.666667%;
    }
}

@media only screen and (max-width: 992px) {
    .page-section-with-image .page-main-col-image div {
        width: 50%;
    }
}
@media only screen and (max-width: 768px) {
    .page-section-with-image {
        /*padding-left: 0px;
        padding-right: 0px;*/
    }
    .page-section-with-image .page-main-col-content {

    }
    .page-section-with-image .page-main-col-image div{
        position: relative;
        top: auto;
        left: auto;
        height: auto;
        width: 100%;
    }
    .page-section-with-image .page-main-col-image img{
        width: 100%;
        height: auto;
        object-fit: unset;
    }
}
@media only screen and (max-width: 655px) {
    .page-section-with-image .page-main-col-image div{
    }
    .page-section-with-image .page-main-row {
        margin-top: 0px;
    }
}


#scroll-top-top {
    display: none;
    position: fixed;
    bottom: 70px;
    left: 150px;
    z-index: 19999;
    border: 1px #000 solid;
    outline: none;
    background-color: #fff;
    color: #000;
    cursor: pointer;
    padding: 0px;
    border-radius: 0px;
    font-size: 18px;
    /* width: 45px; */
    height: 25px;
    text-align: center;
    line-height: 27px;
    white-space: nowrap;
    padding: 0px 10px;
    font-size: 12px;
    font-weight: 600;
}
#scroll-top-top:after {
    position: absolute;
    top: -7px;
    left: 50%;
    transform: translate(-50%, -0%);
    content: '';
    display: block;
    width: 10px;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 4px solid #000;
}

body.home #scroll-top-top,
body.single-hphe_rooms #scroll-top-top,
body.single-hphe_holiday_homes #scroll-top-top{
    display: none!important;
}

#scroll-top-top:hover {
    color: rgba(0,0,0,0.6);
}
@media only screen and (max-width: 1650px) {
    #scroll-top-top {
        left: 50px;
    }
}
@media only screen and (max-width: 1500px) {
    #scroll-top-top {
        left: 15px;
    }
}
@media only screen and (max-width: 768px) {
    /*#scroll-top-top {
        left: 50%;
        transform: translate(-50%, 0%);
    }*/
}
@media only screen and (max-width: 500px) {
    #scroll-top-top {

    }
}



.form-control {
    border-radius: 0px;
    border-color: #000;
}
textarea.form-control {
    resize: none;
}
.wpcf7-form label {
    width: 100%;
    margin-bottom: 0px;
}
.wpcf7-form p {
    margin-bottom: 10px;
}
.wpcf7-form .btn-primary,
.wpcf7-form .btn-primary:active,
.wpcf7-form .btn-primary:focus {
    background-color: #007d56;
    border-radius: 0px;
    border: 0px;
    color: #000;
    font-size: 1rem;
    line-height: 1rem;
    padding: 10px 10px 6px 10px;
    box-shadow: 0 0 0 0rem rgb(0 0 0 / 100%);
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    margin-left: 0px;
    margin-right: 0px;
    padding: 5px 10px 0px 10px;
    margin-top: 20px;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #dc3232;
}

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.select2-container .select2-selection--single,

.booking-date > div input

{
    display: block;
    width: 100%;
    height: 40px;
    padding: 10px 10px 5px 10px;
    font-size: 1rem;
    font-weight: 400;
    line-height: 30px;
    color: #000;
    background-color: #fff;
    background-clip: padding-box;
    border: 2px solid #000;
    border-radius: 0px!important;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    outline: none;
}


.select2-container .select2-selection--single {
    padding-top: 7px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
}
.select2-dropdown {
    border: 2px solid #000;
}

.woocommerce table.shop_table td {
    vertical-align: top;
}
.woocommerce td.product-name .wc-item-meta,
.woocommerce td.product-name dl.variation {
    padding-left: 0px;
}
.woocommerce td.product-name .wc-item-meta .wc-item-meta-label,
.woocommerce td.product-name dl.variation .wc-item-meta-label {
    float: left;
}
.woocommerce td.product-name .wc-item-meta p,
.woocommerce td.product-name dl.variation p {
    padding-left: 160px;
}

#toast-container > div {
    opacity: 0.98!important;
}

.booking-date {
    margin-bottom: 15px;
    max-width: 360px;
}
.booking-date:after {
    content: '';
    display: block;
    clear: both;
}
.booking-date > div {
    float: left;
    width: 50%;
}
.booking-date > div:first-of-type {
    padding-right: 10px;
}
.booking-date > div:last-of-type {
    padding-left: 10px;
}
.booking-date > div label {
    display: block;
}



.woocommerce table.shop_table th,
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th {
    font-weight: 800;
}

.woocommerce td.product-name .wc-item-meta .wc-item-meta-label,
.woocommerce td.product-name .wc-item-meta dt,
.woocommerce td.product-name dl.variation .wc-item-meta-label,
.woocommerce td.product-name dl.variation dt {
    font-weight: 600;
}

button[name='update_cart']{
    display: none!important;
}
#coupon_code {
    height: 40px;
    line-height: 40px;
    padding-top: 5px;
    padding-bottom: 0px;
    width: 150px!important;
}
button[name='apply_coupon'] {
    margin-top: 0px!important;
    float: left!important;
    clear: none!important;
    padding: 0px!important;
    height: 40px!important;
    line-height: 40px!important;
}
textarea[name='order_comments'] {
    min-height: 100px;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
    padding-top: 0px;
    padding-bottom: 0px;
}


.woocommerce form .form-row label,
.woocommerce-page form .form-row label {
    display: block;
    width: 100%;
}
.woocommerce-input-wrapper {
    width: 100%;
}

.woocommerce-checkout .col-12 {
    padding-left: 0px!important;
    padding-right: 0px!important;
}

.woocommerce ul.order_details {
    padding-left: 0px;
}
.woocommerce ul.order_details li {
    margin-bottom: 20px;
}

#add_payment_method table.cart td, #add_payment_method table.cart th, .woocommerce-cart table.cart td, .woocommerce-cart table.cart th, .woocommerce-checkout table.cart td, .woocommerce-checkout table.cart th {
    vertical-align: top!important;
}


body.with-side-cart {
    padding-right: 0px;

    -webkit-transition: padding-right 500ms ease-out 0.0s;
    -moz-transition: padding-right 500ms ease-out 0.0s;
    -o-transition: padding-right 500ms ease-out 0.0s;
    transition: padding-right 500ms ease-out 0.0s;
}
body.with-side-cart {
    padding-right: 300px;
}
body.with-side-cart.modal-open {
    padding-right: 300px!important;
}

header#masthead,
.room-single-images-holder {
    -webkit-transition: width 500ms ease-out 0.0s;
    -moz-transition: width 500ms ease-out 0.0s;
    -o-transition: width 500ms ease-out 0.0s;
    transition: width 500ms ease-out 0.0s;
}

body.with-side-cart header#masthead,
body.with-side-cart .room-single-images-holder {
    width: calc(100vw - 300px);
}
body.single-hphe_rooms.single.with-side-cart,
body.single-hphe_holiday_homes.single.with-side-cart {
    padding-right: 0px!important;
}
body.single-hphe_rooms.single.with-side-cart header#masthead,
body.single-hphe_holiday_homes.single.with-side-cart header#masthead,
body.single-hphe_rooms.single.with-side-cart .room-single-images-holder,
body.single-hphe_holiday_homes.single.with-side-cart .room-single-images-holder {
    width: calc(100vw)!important;
}

.form-check-label h2 {
    margin-top: 0px!important;
    margin-bottom: 0px!important;
    padding-top: 0px!important;
    padding-bottom: 0px!important;
}
.form-check-label span.light {
    opacity: 0.5;
}
.input-group .light {
    opacity: 0.5;
}

/*MODAL*/
    #main-modal.modal {
        z-index: 99999;
        background-color: rgba(0,0,0,0.5);
    }
    #main-modal .modal-content {
        border-radius: 0px;
    }
    #main-modal .modal-lg .modal-content {
        height: 70vh;
    }
    #main-modal .modal-xl .modal-content {
        height: 90vh;
    }
    #main-modal.modal .btn-close  {
        position: absolute;
        top: 0px;
        right: 0px;
        padding: 10px 15px;
        background-color: #fff;
        opacity: 1;
        border-radius: 0px;
        border: 0px;
    }

/*.site-header .book-now-button {
    -webkit-transition: margin-right 500ms ease-out 0.0s;
    -moz-transition: margin-right 500ms ease-out 0.0s;
    -o-transition: margin-right 500ms ease-out 0.0s;
    transition: margin-right 500ms ease-out 0.0s;
}
body.with-side-cart .site-header .book-now-button {
    margin-right: 330px;
}*/

.side-cart {
    position: fixed;
    /*top: 50px;
    bottom: 61px;*/
    top: 0px;
    bottom: 0px;

    right: -300px;
    width: 300px;

    background-color: #000;
    color: #fff;
    border-left: 2px #007d56 solid;
    /*border-top: 2px #fff solid;
    border-bottom: 2px #fff solid;*/
    z-index: 9999;

    -webkit-transition: right 500ms ease-out 0.0s;
    -moz-transition: right 500ms ease-out 0.0s;
    -o-transition: right 500ms ease-out 0.0s;
    transition: right 500ms ease-out 0.0s;
}
.side-cart.loading:before {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: rgba(0,0,0,0.8);
    content: '';
    text-align: center;
    z-index: 999991;

    -webkit-transition: opacity 500ms ease-out 0.0s;
    -moz-transition: opacity 500ms ease-out 0.0s;
    -o-transition: opacity 500ms ease-out 0.0s;
    transition: opacity 500ms ease-out 0.0s;
}
.side-cart.loading:after {
    position: absolute;
    top: 50%;
    left: 0px;
    right: 0px;
    color: #fff;
    content: 'Loading...';
    text-align: center;
    z-index: 999992;

    -webkit-transition: opacity 500ms ease-out 0.0s;
    -moz-transition: opacity 500ms ease-out 0.0s;
    -o-transition: opacity 500ms ease-out 0.0s;
    transition: opacity 500ms ease-out 0.0s;
}
.side-cart > a {
    display: block;
    position: absolute;
    bottom: 7px;
    left: -45px;
    width: 45px;
    height: 45px;
    line-height: 45px;
    color: #000;
    background-color: #007d56;
    text-align: center;
    font-size: 18px;
    padding-top: 3px;

    -webkit-transition: opacity 500ms ease-out 0.0s;
    -moz-transition: opacity 500ms ease-out 0.0s;
    -o-transition: opacity 500ms ease-out 0.0s;
    transition: opacity 500ms ease-out 0.0s;

    -webkit-transition: left 500ms ease-out 0.0s;
    -moz-transition: left 500ms ease-out 0.0s;
    -o-transition: left 500ms ease-out 0.0s;
    transition: left 500ms ease-out 0.0s;

    -webkit-transition: bottom 500ms ease-out 0.0s;
    -moz-transition: bottom 500ms ease-out 0.0s;
    -o-transition: bottom 500ms ease-out 0.0s;
    transition: bottom 500ms ease-out 0.0s;
}
.side-cart > a:hover {
    opacity: 0.9;
}
.side-cart > div {
    width: 100%;
    height: 100%;
    padding: 20px;
    overflow-y: auto;
}
.side-cart > div > div {
    border-bottom: 1px #2d2d2d solid;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.side-cart > div > div:last-of-type {
    border-bottom: 0px;
}
.side-cart table {
    margin-bottom: 0px;
}
.side-cart table td {
    vertical-align: top;
    font-size: 14px;
    line-height: 16px;
    padding: 3px 0px;
}

body.with-side-cart .side-cart {
    right: 0px;
}
.side-cart .alert {
    padding: 5px;
}
.side-cart .alert-warning {
    color: #fff;
    background-color: transparent;
    padding: 0px;
    border-radius: 0px;
    border: 0px;
}
.side-cart .btn {
    color: #000;
    background-color: #007d56;
    width: 100%;
    padding: 14px 10px 10px 10px;

    -webkit-transition: opacity 500ms ease-out 0.0s;
    -moz-transition: opacity 500ms ease-out 0.0s;
    -o-transition: opacity 500ms ease-out 0.0s;
    transition: opacity 500ms ease-out 0.0s;
}
.side-cart .btn.btn-white {
    background-color: #fff;
    color: #000;
}
.side-cart .btn.btn-sm {
    padding: 5px 5px 0px 5px;
}

.side-cart .btn:hover {
    opacity: 0.9;
}

.side-cart > div::-webkit-scrollbar {
    width: 5px;
}
.side-cart > div::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,125,86,0);
    -webkit-box-shadow: none;
    border-radius: 0px;
}
.side-cart > div::-webkit-scrollbar-thumb {
    -webkit-box-shadow: inset 0 0 6px rgba(0,125,86,1);
    -webkit-box-shadow: none;
    background: #007d56;
    border-radius: 0px;
}
.side-cart > a .fa-times {
    display: none;
}
.header-cart-btn {
    display: none;
    position: relative;
    float: left;
    width: 26px;
    height: 26px;
    margin-left: 5px;
}
.header-cart-btn span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    display: block;
    width: 26px;
    height: 26px;
    background-color: #007d56;
    color: #000;
    font-size: 13px;
    text-align: center;
    font-weight: 600;
}
.header-cart-btn span i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
body.domain-holiday-homes .header-cart-btn {
    width: 35px;
    height: 35px;
    top: 23px;
    left: unset;
    right: 69px;
    margin-left: 0px;
    display: block !important;
    float: unset;
    position: absolute;
}
body.domain-holiday-homes .header-cart-btn span {
    background-color: #ffb7f3;
    color: #195500;
    width: 35px;
    height: 35px;
    border-radius: 35px;
    font-size: 18px;
    font-weight: normal;
}

@media only screen and (max-width: 1200px) {
/*@media only screen and (max-width: 798px) {*/
    body.with-side-cart {
        padding-right: 0px;
    }


    body.with-side-cart header#masthead,
    body.with-side-cart .room-single-images-holder {
        width: calc(100vw);
    }

    body.with-side-cart .side-cart {
        top: 50%;
        bottom: auto;
        left: 50%;
        right: auto;
        transform: translate(-50%, -50%);
        width: 100%;
        max-width: 600px;
        border: 2px #fff solid;
        max-height: calc(100vh - 50px);
    }
    .side-cart > div {
        padding: 20px 60px;
        max-height: calc(100vh - 54px);
    }
    body.with-side-cart .side-cart > a {
        bottom: auto!important;
        top: 2px;
        left: auto!important;
        right: 5px;
        background-color: #000;
        color: #fff;
        text-decoration: none;
        height: 30px;
        line-height: 30px;
        width: 30px;

    }
    body.with-side-cart .side-cart > a .fa-shopping-cart {
        display: none;
    }
    body.with-side-cart .side-cart > a .fa-times {
        display: inline-block;
    }
}
@media only screen and (max-width: 630px) {
    body.with-side-cart .side-cart {
        width: 100%;
        height: 100%;
        max-width: none;
        max-height: none;
    }
    body.with-side-cart .side-cart > div {
        padding: 20px 20px;
        max-height: none;
    }
}
@media only screen and (max-width: 655px) {
    .header-cart-btn {
        display: block;
    }
    body.domain-holiday-homes .header-cart-btn {
        top: 88px;
        right: 60px;
    }
    .side-cart > a {
        display: none;
    }
    body.with-side-cart .side-cart > a {
        display: block;
    }
    body.domain-holiday-homes:not(.home) {
        padding-top: 125px;
    }
}
@media only screen and (max-width: 430px) {
    /*.side-cart > a {
        bottom: 66px;
    }*/
}
@media only screen and (max-width: 346px) {
    /*body.with-side-cart .side-cart > a {
        left: 0px;
        bottom: 7px;
    }*/
}


#toast-container > div {
    -moz-box-shadow: none!important;
    -webkit-box-shadow: none!important;
    box-shadow: none!important;
}
.toast-success {
    background-color: #007d56!important;
}
.toast-error {
    background-color: #7d0008 !important;
}

.woocommerce-MyAccount-navigation ul {
    padding-left: 0px;
    list-style-type: none;
}
.woocommerce table.my_account_orders .button {
    height: 20px;
    line-height: 30px;
    border: 0px;
    background-color: #000!important;
    color: #fff!important;
    padding: 0px 5px 25px 5px!important;
    text-align: center;
    min-width: 100px;
    font-size: 1em;
    margin-top: 5px;
}
.woocommerce table.my_account_orders .button:first-of-type {
    margin-top: 0px;
}
.page-template-default.woocommerce-account  #content.site-content > .container {
    max-width: 1000px;
}

mark {
    background: transparent;
    color: #000;
    font-weight: 600;
}

.mt-5  { margin-top: 5px;  }
.mt-10 { margin-top: 10px; }
.mt-15 { margin-top: 15px; }

.alert-sm {
    padding: 5px 10px 0px 10px;
}


#header-slider {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100vw;
    height: 100vh;
    display: block;
    overflow: hidden;
}
#header-slider > div {
    display: block;
    height: 100vh;
    white-space: nowrap;
    margin: 0px;
    padding: 0px;

    margin-left: 0px;

    -webkit-transition: margin-left 1000ms ease-out 0.0s;
    -moz-transition: margin-left 1000ms ease-out 0.0s;
    -o-transition: margin-left 1000ms ease-out 0.0s;
    transition: margin-left 1000ms ease-out 0.0s;
}
#header-slider > div > div {
    width: 100vw;
    height: 100vh;
    display: inline-block;
    position: relative;
    margin: 0px;
    padding: 0px;
    background-color: #242424;
    background-repeat: no-repeat;
    background-position: 50% 0%;
    background-size: cover;
}
#header-slider > div > div:before {
    content: '';
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-color: #000;
    opacity: 0.2;
}
#header-slider > div > div > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50%;
    display: none;
}

#header-slider.image-pos-0 > div { margin-left: 0px; }
#header-slider.image-pos-1 > div { margin-left: -100vw; }
#header-slider.image-pos-2 > div { margin-left: -200vw; }
#header-slider.image-pos-3 > div { margin-left: -300vw; }
#header-slider.image-pos-4 > div { margin-left: -400vw; }
#header-slider.image-pos-5 > div { margin-left: -500vw; }

@media only screen and (max-width: 768px) {
    .woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
        font-weight: 600;
    }
    .woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
        display: none;
    }
    .woocommerce table.shop_table_responsive tr, .woocommerce-page table.shop_table_responsive tr {
        /* display: block; */
    }

    .woocommerce table.shop_table_responsive tr td:first-of-type, .woocommerce-page table.shop_table_responsive tr td:first-of-type {
        text-align: left!important;
    }
    /*.woocommerce table.shop_table_responsive tr, .woocommerce-page table.shop_table_responsive tr {
        display: unset;
    }
    .woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td {
        display: unset;
    }*/
    .woocommerce table.shop_table tbody:first-child tr td, .woocommerce table.shop_table tbody tr:first-child th {
        float: left;
        width: 50%;
    }

    .woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td {
        background-color: unset!important;
    }
    .woocommerce table.shop_table tbody:first-child tr td:nth-child(2) {
        display: none;
    }

    .woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
        width: 100%;
    }
}

.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
    max-width: unset!important;
}

/*ANI*/
.on-scroll-fade-in {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease-out, transform 1.2s ease-out;
}
.on-scroll-fade-in.from-top {
    transform: translateY(-20vh);
}
.on-scroll-fade-in.from-bottom {
    transform: translateY(20vh);
}
.on-scroll-fade-in.from-left {
    transform: translatex(-20vh);
}
.on-scroll-fade-in.from-right {
    transform: translatex(20vh);
}
.on-scroll-fade-in.is-visible,
.on-scroll-fade-in.is-visible {
    opacity: 1;
    transform: none;
    visibility: visible;
}
div:has(> .on-scroll-fade-in) {
    overflow: hidden;
}
div:has(> .on-scroll-fade-in.is-visible) {
    overflow: unset;
}

/*HOLIDAY HOMES*/

.order-accept-reject-page .book-now-button {
    display: none!important;
}

body.domain-holiday-homes {
    font-family: 'Montserrat'!important;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    padding-bottom: 0px;
}
/*body.domain-holiday-homes.cant-scroll {
    overflow: hidden;
}
body.domain-holiday-homes.cant-scroll footer {
    display: none;
}*/
body.domain-holiday-homes.page {
    background-color: #619B00 !important;
    font-family: 'Montserrat' !important;
    font-size: 16px;
    line-height: 22px;
    font-weight: 500;
}
body.domain-holiday-homes article.type-page,
body.domain-holiday-homes article.type-page .elementor-widget-text-editor {
    font-size: 1.2em;
    line-height: 1.1em;
    background:unset!important;
    color: #FFFF00;
}
body.domain-holiday-homes article.type-page b,
body.domain-holiday-homes article.type-page strong {
    font-weight: bold;
    font-style: normal;
}

body.domain-holiday-homes article b,
body.domain-holiday-homes article strong,
body.domain-holiday-homes article b,
body.domain-holiday-homes article strong {
    font-family: 'Momo Trust Display';
    font-weight: bold;
    font-style: normal;
}
body.domain-holiday-homes article a {
    color: #ffff00;
}
body.domain-holiday-homes article h1,
body.domain-holiday-homes article h2,
body.domain-holiday-homes article h3,
body.domain-holiday-homes article h4,
body.domain-holiday-homes article h5,
body.domain-holiday-homes article h6,
body.domain-holiday-homes .elementor-widget-heading .elementor-heading-title{
    font-family: 'Momo Trust Display';
    font-weight: 900;
    font-style: normal;
    color: #ffff00;
}
body.domain-holiday-homes .elementor-button-text {
    font-family: 'Momo Trust Display'!important;
    font-weight: 900;
    font-style: normal;
    background-color: #ffff00;
    color: #619B00;
}

body.domain-holiday-homes.home,
body.domain-holiday-homes.post-type-archive-hphe_holiday_homes {
    padding-top: 0px!important;
    padding-bottom: 0px!important;
    background-color: #000 !important;
}
body.domain-holiday-homes .wp-block-woocommerce-cart *,
body.domain-holiday-homes .wp-block-woocommerce-checkout * {
    font-size: inherit!important;

}
body.domain-holiday-homes .wp-block-woocommerce-checkout select,
body.domain-holiday-homes .wp-block-woocommerce-checkout input[type="text"],
body.domain-holiday-homes .wc-block-components-text-input input[type=email],
.wc-block-components-textarea {
    border-radius: 0px;
    border: 0px!important;
    outline: unset!important;
    color: #195500!important;
}

body.domain-holiday-homes .wc-blocks-components-select .wc-blocks-components-select__container {
    border-radius: 0px;
}
body.domain-holiday-homes .wc-blocks-components-select .wc-blocks-components-select__label,
body.domain-holiday-homes .wc-block-components-text-input.is-active label{
    color: #195500;
}
body.domain-holiday-homes .wc-block-components-form .wc-block-components-text-input label {
    font-size: 0.8em!important;
    color: rgb(25 85 0 / 0.5);
}
body.domain-holiday-homes .wc-block-components-text-input.is-active label{
    color: #195500;
}
body.domain-holiday-homes .wc-blocks-components-select .wc-blocks-components-select__label {
    font-size: 0.7em!important;
}
body.domain-holiday-homes .wc-block-components-validation-error svg {
    fill: #bf1010;
}

body.domain-holiday-homes .wp-block-woocommerce-cart .wc-block-components-product-name,
body.domain-holiday-homes .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name,
body.domain-holiday-homes .wc-block-components-address-card address .wc-block-components-address-card__address-section--primary,
body.domain-holiday-homes .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text{
    font-family: 'Momo Trust Display';
    font-weight: 900;
    font-style: normal;
}
body.domain-holiday-homes .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity span {
    color: #195500;
    font-size: 0.7em !important;
}

body.domain-holiday-homes .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.domain-holiday-homes .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: inherit!important;
    font-family: 'Momo Trust Display';
    font-weight: 900;
    font-style: normal;
}

body.domain-holiday-homes .wc-block-components-button,
body.domain-holiday-homes .woocommerce button.button {
    background-color: #195500!important;
    color: #ffff00!important;
    text-decoration: none!important;
    outline: unset!important;
    border: 0px;
}
body.domain-holiday-homes .wc-block-components-button > div {
    padding-top: 5px;
}

body.domain-holiday-homes h1,
body.domain-holiday-homes h2,
body.domain-holiday-homes h3,
body.domain-holiday-homes h4,
body.domain-holiday-homes h5,
body.domain-holiday-homes h6 {
    font-family: 'Momo Trust Display';
    font-weight: bold;
    font-style: normal;
}

body.domain-holiday-homes .wp-block-button__link {
    background-color: #195500;
    color: #ffff00;
    border-radius: 0px;
    padding: 10px 10px;
    display: block !important;
}

.holiday-homes-v3-top-right-menu {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 99999;
}
.holiday-homes-v3-top-right-menu > a {
    display: block;
    float: left;
    width: 50px;
    height: 50px;
    line-height: 50px;
    background-color: #ffb7f3;
    color: #195500;
    border: 2px #000 solid;
    text-align: center;
    font-size: 25px;
    margin-left: 10px;
}
.holiday-homes-v3-top-right-menu > a:has(svg) {
    line-height: unset;
}
.holiday-homes-v3-top-right-menu > a:first-of-type {
    margin-left: 0px;
}
.holiday-homes-v3-top-right-menu > a svg path{
    fill: #195500;
}
.holiday-homes-v3-top-right-menu > a:hover {
    background-color: rgb(255 183 243 / 0.8);
    color: rgb(25 85 0 / 0.8);
}
.holiday-homes-v3-top-right-menu > a:hover svg path{
    fill: rgb(25 85 0 / 0.8);
}

.holiday-homes-v3-book-now {
    background-color: #619B00;
    padding: 150px 80px;
    display: flex;
    overflow-x: hidden;
}
.holiday-homes-v3-book-now .house-left,
.holiday-homes-v3-book-now .house-right {
    position: relative;
    flex: 1;
}
.holiday-homes-v3-book-now .house-left {

}
.holiday-homes-v3-book-now .house-left div,
.holiday-homes-v3-book-now .house-right div {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 80%;
    transform: translate(-50%, -50%);
}
.holiday-homes-v3-book-now .house-left img,
.holiday-homes-v3-book-now .house-right img {
    width:100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
}

.holiday-homes-v3-book-now .holiday-home-form-holder {
    flex: 2;
    position: relative;
    top: unset;
    left: unset;
    display: block;
    width: 100%;
    height: unset;
    overflow: unset;
    background: #fff;
    padding: 40px 80px;
    margin: 0px auto;
    bottom: unset;
    right: unset;
    border-radius: 15px;
    border: 1px #000 solid;
    max-width: 700px;
    font-size: 1.1em;
}
.holiday-homes-v3-book-now .holiday-home-form-holder * {
    font-weight: 500;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .calendar {
    max-width: 400px;
    margin: 0px auto;
}
.holiday-homes-v3-book-now .fa {
    font-weight: 900;
}
.holiday-homes-v3-book-now .calendar-style-v2 .calendar-arrow-close {

}
.holiday-homes-v3-book-now .holiday-home-form-holder .fields {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .fields > div {
    border: 1px #000 solid;
    padding-top: 3px;
    padding-bottom: 3px;
    margin-bottom: 0px;
    border-radius: 0px!important;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .fields > div.col-l,
.holiday-homes-v3-book-now .holiday-home-form-holder .fields > div.col-r {
    -ms-flex: 0 0 calc(50% - 5px);
    flex: 0 0 calc(50% - 5px);
    max-width: calc(50% - 5px);
}
.holiday-homes-v3-book-now .holiday-home-form-holder .fields > div.col-l {
    border-right-width: 1px;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .fields > div.row-first {
    border: 0px;
    padding: 0px;
}
.holiday-homes-v3-book-now .home-select-buttons {
    display: flex;
    gap: 10px;
}
.holiday-homes-v3-book-now .home-select-buttons > button {
    flex: 1;
    background-color: #000;
    color: #fff;
    padding: 12px 15px 15px 15px;
    border: 1px #000 solid;
    outline: 0px;
    border-radius: 0px;
    height: 51.5px;
}
.holiday-homes-v3-book-now .home-select-buttons > button:hover {
    background-color: #333;
}
.holiday-homes-v3-book-now .home-select-buttons > button.active {
    background-color: #ffb7f3;
    color: #000;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .remarks {
    width: 100%;
    float: unset;
    text-align: center;
    line-height: normal;
    margin-top: 10px;
    font-size: 0.8em;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .button {
    font-size: inherit;
    line-height: 24px;
    margin-top: 10px;
    width: 100%;
    background-color: #ffff00;
    border-radius: 0px;
    border: 1px #000 solid;
    color: #000;
    padding: 12px 15px 15px 15px;
    height: 51.5px;
    font-weight: 900;
    float: unset;
}
.holiday-homes-v3-book-now .holiday-home-form-holder .button:hover {
    background-color: #000;
    color: #ffff00;
}

.holiday-homes-v3-footer {
    position: relative;
    display: flex;
    width: 100%;
    background-color: #195500;
    padding: 80px;
    font-weight: normal;
    font-size: 20px;
    line-height: 30px;
    flex-direction: row;
    align-content: stretch;
    justify-content: space-evenly;
    align-items: stretch;
    flex-wrap: nowrap;
    overflow-x: hidden;
}
.holiday-homes-v3-footer a,
.holiday-homes-v3-footer b {
    font-weight: 900;
}
.holiday-homes-v3-footer,
.holiday-homes-v3-footer a {
    color: #ffff00;
    text-decoration: unset;
}
.holiday-homes-v3-footer > div {
    flex: 1;
}
.holiday-homes-v3-footer > div:first-of-type {
    text-align: left;
}
.holiday-homes-v3-footer > div:last-of-type > div {
    display: block;
    position: absolute;
    top: 50%;
    right: 80px;
    width: 50%;
    height: 40%;
    transform: translateY(-50%);
}
.holiday-homes-v3-footer > div:last-of-type > div img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center right;
}

.holiday-homes-v3-info-block {
    width:100%;
    position: relative;
    padding: 80px;
    text-align: center;
    background-color: #333;
    font-size: 1.5em;
    line-height: 1.3em;
    overflow-x: hidden;
}
.holiday-homes-v3-info-block.with-image {
    height: 100vh;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    /*background-attachment: fixed;*/
}

.holiday-homes-v3-info-block:not(h1.heading) .heading,
.holiday-homes-v3-info-block:not(h1.heading) .text {
    max-width: 1000px;
    margin: 0px auto;
}
.holiday-homes-v3-info-block:has(h1.heading) .heading,
.holiday-homes-v3-info-block:has(h1.heading) .text {
    max-width: unset;
    margin: unset;
}
.holiday-homes-v3-info-block:not(h1.heading) .heading {
    margin-bottom: 30px;
}
.holiday-homes-v3-info-block h1.heading {
    text-align: left;
    font-size: 5em;
    line-height: normal;
}
.holiday-homes-v3-info-block h2.heading {
    font-size: 3em;
    line-height: normal;
}
.holiday-homes-v3-info-block h3.heading {
    font-size: 2em;
    line-height: normal;
}
.holiday-homes-v3-info-block h4.heading {
    font-size: 1.6em;
    line-height: normal;
}
.holiday-homes-v3-info-block h5.heading {
    font-size: 1.3em;
    line-height: normal;
}
.holiday-homes-v3-info-block h6.heading {
    font-size: 1.2em;
    line-height: normal;
}

body.domain-holiday-homes .side-cart {
    border-left: 2px #195500 solid;
}
body.domain-holiday-homes .side-cart .btn {
    background-color: #195500;
}
body.domain-holiday-homes .side-cart > a {
    background-color: #195500;
    color: #ffff00;
    border-top: 1px #000 solid;
    border-left: 1px #000 solid;
    border-bottom: 1px #000 solid;
}
body.domain-holiday-homes .toast-success {
    background-color: #195500!important;
}

body.domain-holiday-homes #scroll-top-top {
    border: 1px #195500 solid;
    background-color: #ffff00;
    color: #000;
    left: 80px;
    bottom: 30px;
}
body.domain-holiday-homes #scroll-top-top:after {
    border-bottom: 4px solid #ffff00;
}

.holiday-homes-v3-houses-block {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: stretch;
    justify-content: space-between;
}
.holiday-homes-v3-houses-block > div {
    flex: 1;
    min-width:50%;
    max-width:50%;
    padding: 60px 80px;
}
.holiday-homes-v3-houses-block > div:nth-child(1) { background-color: #1C6000; }
.holiday-homes-v3-houses-block > div:nth-child(2) { background-color: #619B00; }

.holiday-homes-v3-houses-block > div h3 {
    margin-top: 1.0em;
    margin-bottom: 1.0em;
    line-height: 1em;
}

.holiday-homes-v3-houses-block > div:nth-child(1),
.holiday-homes-v3-houses-block > div:nth-child(1) h3 { color: #ffb7f3; }
.holiday-homes-v3-houses-block > div:nth-child(2),
.holiday-homes-v3-houses-block > div:nth-child(2) h3 { color: #ffff00; }

.holiday-homes-v3-houses-block h3 {
    font-size: 3em;
    margin-bottom: 30px;
}
.holiday-homes-v3-houses-block .text,
.holiday-homes-v3-houses-block .features {
    font-family: 'Montserrat' !important;
    font-weight: 500;
    font-size: 1.5em;
    line-height: 1.3em;
}
.holiday-homes-v3-houses-block .text b,
.holiday-homes-v3-houses-block .text strong,
.holiday-homes-v3-houses-block .features b,
.holiday-homes-v3-houses-block .features strong {
    font-weight: bold;
    font-style: normal;
}

.holiday-homes-v3-houses-block .features {

}

.holiday-homes-v3-houses-block .slider {
    position: relative;
    width: 100%;
    aspect-ratio: 4/3;
}
.holiday-homes-v3-houses-block .slider .arrow-left,
.holiday-homes-v3-houses-block .slider .arrow-right {
    position: absolute;
    top: 50%;
    border-right: 10px solid;
    border-bottom: 10px solid;
    height: 30px;
    width: 30px;
    transform: rotate(-45deg);
    cursor: pointer;
}
.holiday-homes-v3-houses-block .slider .arrow-left.disabled,
.holiday-homes-v3-houses-block .slider .arrow-right.disabled {
    opacity: 0.5;
    cursor: default;
}
.holiday-homes-v3-houses-block .slider .arrow-left {
    transition: opacity 0.6s ease-out, left 0.3s ease-out;
    left: -45px;
    transform: rotate(135deg);
}
.holiday-homes-v3-houses-block .slider .arrow-left:hover {
    left: -50px;
}
.holiday-homes-v3-houses-block .slider .arrow-right {
    transition: opacity 0.6s ease-out, right 0.3s ease-out;
    right: -45px;
}
.holiday-homes-v3-houses-block .slider .arrow-right:hover {
    right: -50px;
}
.holiday-homes-v3-houses-block .slider .slides {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.holiday-homes-v3-houses-block .slider .slides .slides-inner {
    position: relative;
    white-space: nowrap;
    width: auto;
    height: 100%;
}
.holiday-homes-v3-houses-block .slider .slides .slides-inner .slide {
    display: inline-block;
    height: 100%;
    aspect-ratio: 4 / 3;
}
.holiday-homes-v3-houses-block .slider .slides .slides-inner .slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}



.holiday-homes-v3-slider-block .slider {
    position: relative;
    width: 100%;
    height: 100vh;
}
.holiday-homes-v3-slider-block .slider .arrow-left,
.holiday-homes-v3-slider-block .slider .arrow-right {
    position: absolute;
    top: 50%;
    border-right: 10px solid;
    border-bottom: 10px solid;
    height: 30px;
    width: 30px;
    transform: rotate(-45deg);
    cursor: pointer;
    z-index: 4;
    color: #ffff00;
}
.holiday-homes-v3-slider-block .slider .arrow-left.disabled,
.holiday-homes-v3-slider-block .slider .arrow-right.disabled {
    opacity: 0.5;
    cursor: default;
}
.holiday-homes-v3-slider-block .slider .arrow-left {
    transition: opacity 0.6s ease-out, left 0.3s ease-out;
    left: 45px;
    transform: rotate(135deg);
}
.holiday-homes-v3-slider-block .slider .arrow-left:hover {
    left: 50px;
}
.holiday-homes-v3-slider-block .slider .arrow-right {
    transition: opacity 0.6s ease-out, right 0.3s ease-out;
    right: 45px;
}
.holiday-homes-v3-slider-block .slider .arrow-right:hover {
    right: 50px;
}
.holiday-homes-v3-slider-block .slider .slides {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.holiday-homes-v3-slider-block .slider .slides .slides-inner {
    position: relative;
    white-space: nowrap;
    width: auto;
    height: 100%;
}
.holiday-homes-v3-slider-block .slider .slides .slides-inner .slide {
    position: relative;
    display: inline-block;
    width: 100vw;
    height: 100%;
    vertical-align: top;
}
.holiday-homes-v3-slider-block .slider .slides .slides-inner .slide h3 {
    position: absolute;
    display: block;
    width: 100%;
    top: 0px;
    left: 0px;
    z-index: 3;
    color: #ffff00;
    margin: 0px;
    padding: 80px;
    padding-left: 80px;
    font-size: 7em;
    line-height: 1em;
}
.holiday-homes-v3-slider-block .slider .slides .slides-inner .slide img {
    display: block;
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
}
.holiday-homes-v3-slider-block .slider .slides .slides-inner .slide div {
    position: absolute;
    display: block;
    width: 100%;
    height: auto;
    bottom: 0px;
    left: 0px;
    z-index: 1;
    padding: 80px;
    text-align: center;
    font-size: 1.6em;
    white-space: normal;
}
.holiday-homes-v3-slider-block .slider .slides .slides-inner .slide div > span {
    display: block;
}
@media (max-width: 100vh) {

    .holiday-homes-v3-slider-block .slider {
        height: auto;
    }
    .holiday-homes-v3-slider-block .slider .slides .slides-inner .slide div {
        position: relative;
        bottom: unset;
        left: unset;
    }
}

body.domain-holiday-homes .grecaptcha-badge{
    bottom: -100vh!important;
}
body.domain-holiday-homes #side-cart {
    display: none;
}

#pages-popup {
    position: fixed;
    top: 0px;
    left: 0px;
    width: calc(100vw - 15px);
    height: 100dvh;
    padding: 8px;
    z-index: 99999;
    background-color: rgba(0,0,0,0.8);
}
#pages-popup > div {
    background-color: #195500;
    border-radius: 15px;
    padding: 0px;
    margin: 0px;
    overflow: hidden;

    position: fixed;
    top: 50%;
    left: 50%;
    height: 80%;
    width: 80%;
    transform: translate(-50%, -50%);
}
#pages-popup > div .close {
    color: #FFFF00;
    font-size: 50px;
    position: absolute;
    top: 30px;
    right: 40px;
    opacity: 1;
    cursor: pointer;
}
#pages-popup > div .frame-holder {
    height: 100%;
}
#pages-popup > div .frame-holder iframe {
    border: 0px;
    margin: 0px;
    padding: 0px;
    outline: none;
    background: none;
    width: 100%;
    height: 100%;
}
#pages-popup > div .frame-holder .loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%-50%);
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 30px;
    text-align: center;
    color: #FFFF00;
}

.domain-holiday-homes .woocommerce-form-coupon-toggle a {
    color: inherit;
}
.domain-holiday-homes :where(.woocommerce) .select2-container .select2-selection--single .select2-selection__rendered {
    padding: 3px 0px;
}
.domain-holiday-homes .woocommerce #respond input#submit,
.domain-holiday-homes .woocommerce a.button,
.domain-holiday-homes .woocommerce button.button,
.domain-holiday-homes .woocommerce input.button,
.domain-holiday-homes #room-woocommerce-popup-all .modal-footer button,
.domain-holiday-homes .room-woocommerce-popup .modal-footer button {
    height: auto;
    background-color: #195500 !important;
    color: #ffff00 !important;
    text-decoration: none !important;
    outline: unset !important;
    border: 0px;
}
.domain-holiday-homes .coupon label{
    float: left;
    margin-right: 10px;
    line-height: 40px;
    margin-bottom: 0px;
    padding: 0px;
}
.domain-holiday-homes .checkout_coupon label{
    width: auto!important;
    height: auto;
    position: relative !important;
    clip: unset !important;
    color: inherit;
    top: unset !important;
    overflow: unset !important;
    clip-path: unset !important;
    margin-right: 10px;
}
.woocommerce-form-coupon .form-row-first,
.woocommerce-form-coupon .form-row-last {
    float: left!important;
    width: auto!important;
}

@media only screen and (max-width : 1500px) {
    .holiday-homes-v3-book-now {
        padding-left: 0px;
        padding-right: 0px;
    }
}
@media only screen and (max-width : 1200px) {
    .holiday-homes-v3-book-now {
        display: block;
        padding-top: 0px;
        padding-bottom: 0px;
    }
    .holiday-homes-v3-book-now .house-left,
    .holiday-homes-v3-book-now .house-right {
        width: 100%;
        height: 200px;
    }
}
@media only screen and (max-width : 992px) {

}


@media only screen and (max-width : 768px) {
    .holiday-homes-v3-info-block {
        line-height: 1.2em;
    }
    body.domain-holiday-homes:not(.home) #content.site-content {
        min-height: unset;
    }

    body.domain-holiday-homes #primary article.type-page {
        padding: 30px 0px 30px 0px;
    }
    body.domain-holiday-homes article.type-page .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
        padding-left: 0px;
        padding-right: 0px;
    }

    body.domain-holiday-homes article h1,
    body.domain-holiday-homes article h1.elementor-heading-title {
        font-size: 3em!important;
    }

    .holiday-homes-v3-info-block h1.heading {
        font-size: 4em;
        line-height: 1.1em;
    }
    .holiday-homes-v3-info-block h2.heading,
    .holiday-homes-v3-info-block h3.heading,
    .holiday-homes-v3-info-block h4.heading,
    .holiday-homes-v3-info-block h5.heading,
    .holiday-homes-v3-info-block h6.heading {
        line-height: 1.2em;
    }

    .holiday-homes-v3-info-block.with-image:not(.with-h1) {
        height: unset;
        aspect-ratio: 5/4;
    }

    .holiday-homes-v3-houses-block {
        flex-wrap: wrap;
        flex-direction: column;
    }
    .holiday-homes-v3-houses-block > div {
        padding: 40px;
        flex: 0 0 100%;
        min-width: 100%;
        max-width: 100%;
    }
    /*.holiday-homes-v3-houses-block p {
        font-size: 1.6em;
    }*/
    .holiday-homes-v3-houses-block .features {
        font-weight: normal!important;
        font-family: "Helvetica Neue LT Std", "Helvetica Neue", Helvetica, sans-serif !important;
    }
    .holiday-homes-v3-houses-block .slider .arrow-left,
    .holiday-homes-v3-houses-block .slider .arrow-right {
        border-right: 5px solid;
        border-bottom: 5px solid;
        height: 20px;
        width: 20px;
    }
    .holiday-homes-v3-houses-block .slider .arrow-left {
        left: -25px;
    }
    .holiday-homes-v3-houses-block .slider .arrow-left:hover {
        left: -28px;
    }
    .holiday-homes-v3-houses-block .slider .arrow-right {
        right: -25px;
    }
    .holiday-homes-v3-houses-block .slider .arrow-right:hover {
        right: -28px;
    }

    .holiday-homes-v3-slider-block .slider {
        height: unset;
        /* aspect-ratio: 5 / 8; */
    }
    .holiday-homes-v3-slider-block .slider .slides .slides-inner .slide h3 {
        padding: 40px 40px;
        font-size: 4em;
    }
    .holiday-homes-v3-slider-block .slider .slides .slides-inner .slide div {
        padding: 40px 40px;
        text-align: left;
        display: block;
        position: relative;
        z-index: unset;
        bottom: unset;
        left: unset;
    }
    .holiday-homes-v3-slider-block .slider .slides .slides-inner .slide div span {
        display: block;
    }
    .holiday-homes-v3-slider-block .slider .slides .slides-inner .slide img {
        height: unset;
        aspect-ratio: 1 / 1;
    }
    .holiday-homes-v3-slider-block .slider .arrow-left,
    .holiday-homes-v3-slider-block .slider .arrow-right {
        top: calc(100vw - 60px);
    }

    .holiday-homes-v3-info-block {
        padding: 80px 40px;
        text-align: left;
    }

    .holiday-homes-v3-book-now {
        padding: 15px;
    }
    .holiday-homes-v3-book-now .home-select-buttons {
        flex-wrap: wrap;
    }
    .holiday-homes-v3-book-now .home-select-buttons > button {
        flex: unset;
        width: calc(50% - 5px);
    }
    .holiday-homes-v3-book-now .home-select-buttons > button:first-of-type {
        width: 100%;
    }
    .holiday-homes-v3-book-now .holiday-home-form-holder .fields > div.col-l,
    .holiday-homes-v3-book-now .holiday-home-form-holder .fields > div.col-r {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .holiday-homes-v3-book-now .holiday-home-form-holder {
        padding: 20px;
    }

    .holiday-homes-v3-footer {
        padding: 40px 15px 150px 15px;
    }
    .holiday-homes-v3-footer > div:last-of-type > div {
        width: 20%;
        right: 15px;
        top: 15px;
        transform: unset;
    }
    .holiday-homes-v3-footer > div:first-of-type {
        flex: 0 0 70%
    }
    .holiday-homes-v3-footer > div:last-of-type {
        flex: 0 0 30%
    }

    body.domain-holiday-homes #scroll-top-top {
        left: 15px;
        bottom: 80px;
    }

    #pages-popup {
        width: 100vw;
        height: 100vh;
        /*height: calc(100vh - 60px);*/
        padding: 15px 15px 0px 15px;
    }
    #pages-popup > div {
        border-radius: 5px;

        position: relative;
        top: unset;
        left: unset;
        height: 100%;
        width: unset;
        transform: unset;
    }
    #pages-popup > div .close {
        font-size: 30px;
        top: 20px;
        right: 30px;
    }
}
@media only screen and (max-width : 480px) {
    body.domain-holiday-homes header#masthead .site-title a {
        font-size: 0.9em;
    }

    body.domain-holiday-homes article h1,
    body.domain-holiday-homes article h1.elementor-heading-title {
        font-size: 2em!important;
    }

    .holiday-homes-v3-slider-block .slider .slides .slides-inner .slide h3 {
        font-size: 3em;
    }

    .holiday-homes-v3-info-block h1.heading {
        font-size: 3em;
    }
    .holiday-homes-v3-info-block h2.heading {
        font-size: 2em;
        line-height: normal;
    }
}
@media only screen and (max-width : 320px) {

}

body.domain-holiday-homes .wp-block-woocommerce-product-new,
.wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title){
    display: none;
}