@charset "utf-8";

/*
Theme Name: Luxury Hideouts
Theme URI: https://luxuryhideouts.fi
Text Domain: luxhide
Version: 2.0
*/

::-moz-selection {
	background: #b3d4fc;
	text-shadow: none;
}

::selection {
	background: #b3d4fc;
	text-shadow: none;
}

img {
	vertical-align: middle;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

textarea {
	resize: vertical;
}

.ir {
	border: 0;
	background-color: transparent;
	text-indent: -9999px;
	overflow: hidden;
}

.hidden {
	display: none !important;
	visibility: hidden;
}

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

.invisible {
	visibility: hidden;
}

.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}


.wp-caption {
	display: inline-block;
	max-width: 100% !important;
	width: auto !important;
	vertical-align: top;
}

.wp-caption img {
	display: block;
	margin: 0;
}

.wp-caption a {
	display: block;
}

.wp-caption-text {
	margin: 0;
	padding: 12px 0 0;
	font-size: 1.8rem;
	font-weight: 500;
	font-style: normal;
	line-height: 1.2222;
	text-align: left;
	color: inherit;
}


.alignleft {
	margin-right: 45px;
	margin-bottom: var(--site-paragraph-padding);
	float: left;
}

.alignright {
	margin-left: 45px;
	margin-bottom: var(--site-paragraph-padding);
	float: right;
}

.aligncenter {
	display: block;
	margin: 0 auto;
}

.wp-caption.aligncenter {
	display: block;
	margin: var(--site-paragraph-padding) auto calc(var(--site-paragraph-padding) * 2);
}


.wp-caption.alignnone {
	margin-bottom: var(--site-paragraph-padding);
}


#main .gallery {
	display: block;
	width: 100%;
	background: none;
	margin: 40px 0 0;
	padding: 0;
	column-count: 2;
	column-gap: 40px;
	column-fill: balance;
}

#main .gallery + .gallery {
	margin-top: 40px;
}

#main .gallery.gallery-columns-1 {
	column-count: 1;
}

#main .gallery.gallery-columns-2 {
	column-count: 2;
}

#main .gallery.gallery-columns-3, 
#main .gallery.gallery-columns-4, 
#main .gallery.gallery-columns-5, 
#main .gallery.gallery-columns-6, 
#main .gallery.gallery-columns-7, 
#main .gallery.gallery-columns-8, 
#main .gallery.gallery-columns-9 {
	column-count: 3;
}

#main .gallery .gallery-item {
	container-type: inline-size;
	display: block;
	position: relative;
	width: 100%;
	margin: 40px 0 0;
	padding: 0;
	float: none;
}

#main .gallery .gallery-item:first-child {
	margin: 0;
}

#main .gallery .gallery-item img {
	display: block;
	width: 100%;
	max-width: none;
	height: 66.6667cqw;
	border: 0;
	object-fit: cover;
}

#main .gallery:not(.gallery-columns-1) .gallery-item .portrait img {
	height: calc(66.6667cqw * 2 + 40px);
}

#main .gallery .gallery-item .gallery-caption {
	position: absolute;
	left: 0;
	top: 0;
	width: auto;
	background: #fff;
	padding: 16px 32px 16px 24px;
	font-size: clamp(1.6rem, 1.875vw, 1.8rem);
	font-weight: 500;
	line-height: 1.4;
}

#main .gallery:not(.gallery-columns-1):not(.gallery-columns-2) .gallery-item .gallery-caption {
	padding: 12px 24px 12px 16px;
	font-size: 1.6rem;
}


.loading:after {
	content: "";
	display: block;
	box-sizing: border-box;
	width: 24px;
	height: 24px;
	border: 3px solid #fff;
	border-bottom-color: #000;
	border-radius: 50%;
	animation: rotation 1500ms linear infinite;
}

@keyframes rotation {
	
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}

}


.slidr-nav,
.mslidr-nav {
	display: flex;
	gap: 16px;
	z-index: 5;
}

.slidr-nav .slidr-pagenums,
.mslidr-nav .mslidr-pagenums {
	display: flex;
	padding: 0;
	margin: 0;
	list-style: none;
	gap: 8px;
	order: 2;
}

.slidr-nav li,
.mslidr-nav li {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: #fff;
	cursor: pointer;
	transition: all 200ms ease-out;
}

.slidr-nav .current,
.mslidr-nav .current {
	background-color: #000;
	transform: scale(1.25);
}

.slidr-nav .slidr-nextprev {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background-color: #fff;
	overflow: hidden;
	cursor: pointer;
	z-index: 4;
	order: 3;
	transition: all 200ms ease-out;
}

.slidr-nav .slidr-nextprev.disabled {
	opacity: 0.5;
}

.slidr-nav .slidr-nextprev.prev {
	order: 1;
}


html,
button,
input,
select,
textarea {
	font-family: montserrat, sans-serif;
	color: #000;
}

h1,
h2,
h3,
h4,
h5,
p,
ul,
ol {
	margin: 0;
}


:root {
	--site-line-height: 1.5556;
	--site-paragraph-padding: 1.5556em;
	--site-scaling-divider: 14.4;
	--lh-pine: #404a30;
	--lh-moss: #7e8c54;
	--lh-snow: #f3f6f9;
	--lh-heather: #c9a9c9;
}


html {
	box-sizing: border-box;
	background: var(--lh-snow);
	font: 400 56.25%/var(--site-line-height) montserrat, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

*, *:before, *:after {
	box-sizing: inherit;
}

body {
	max-width: 1920px;
	background: #fff;
	margin: 0 auto;
	font-size: 1.8rem;
	font-size: clamp(1.6rem, calc(18 / var(--site-scaling-divider) * 1vw), 1.8rem);
	color: var(--lh-pine);
}


body.preload * {
	transition: none !important;
}


a,
a:visited {
	text-decoration: none;
	cursor: pointer !important;
	outline: none;
	color: var(--lh-moss);
	transition: filter 250ms ease-out 25ms;
}

a:hover,
a:visited:hover {
	filter: brightness(115%);
}

a img {
	transition: filter 250ms ease-out 25ms;
}

a:hover img {
	filter: brightness(92%);
}


a[class*="button-link"] {
	display: inline-flex;
	position: relative;
	min-height: 56px;
	border: 2px solid transparent;
	border-radius: 28px;
	margin-top: 5px;
	margin-bottom: 5px;
	padding: 10px 45px 12px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	filter: none !important;
	align-items: center;
}

a[class*="button-link"]:only-child {
	margin-top: 0;
	margin-bottom: 0;
}

a.button-link-heather {
	border-color: var(--lh-heather);
	background: var(--lh-heather);
	color: #fff;
}

a.button-link-heather:hover {
	color: var(--lh-pine);
}

a.button-link-white {
	border-color: var(--lh-pine);
	background: #fff;
	color: var(--lh-pine);
}

a.button-link-white:hover {
	color: var(--lh-moss);
}


a[class*="button-"].loading {
	position: relative;
}

a[class*="button-"].loading:after {
	position: absolute;
	top: 50%;
	right: 11px;
	margin-top: -12px;
}


.wrapper {
	box-sizing: content-box;
	max-width: var(--site-wrapper-width);
	margin-left: auto;
	margin-right: auto;
	padding: 0 var(--site-wrapper-padding);
}

.wrapper * {
	box-sizing: border-box;
}

.wrapper .acf-color-picker * {
	box-sizing: revert;
}


.linklist {
	padding: 0;
	list-style: none;
}

.textcolor-pine { color: var(--lh-pine) !important; }
.textcolor-moss { color: var(--lh-moss) !important; }
.textcolor-snow { color: var(--lh-snow) !important; }
.textcolor-heather { color: var(--lh-heather) !important; }

.upper { text-transform: uppercase; }

.medium-text { font-size: clamp(1em, calc(1em + var(--multiplier, 0) * 1vw), 1.25em); }
.large-text { font-size: clamp(1.2em, calc(1em + var(--multiplier, 0) * 1vw), 1.5em); }

.font-adobe-caslon-pro { font-family: adobe-caslon-pro, serif; }
.weight-light { font-weight: 300; }
.weight-medium { font-weight: 500; }

.custom-bottom-padding {
	padding-bottom: var(--bottom-padding);
}

img.custom-bottom-padding {
	padding-bottom: revert;
	margin-bottom: var(--bottom-padding);
}

img.aspect-ratio-1-1 {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

img.aspect-ratio-3-2 {
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

img.aspect-ratio-16-9 {
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

img.blendmode-multiply {
	mix-blend-mode: multiply;
}


h1 {
	padding: 0 0 0.5em;
	font-family: adobe-caslon-pro, serif;
	font-size: clamp(5.8rem, calc(88 / var(--site-scaling-divider) * 1vw), 8.8rem);
	font-weight: 600;
	font-style: italic;
	line-height: 1;
}

h2 {
	padding: 0 0 0.5em;
	font-size: clamp(2.8rem, calc(36 / var(--site-scaling-divider) * 1vw), 3.6rem);
	font-weight: 700;
	line-height: 1.1944;
}

h3 {
	padding: 0 0 0.5em;
	font-size: clamp(2rem, calc(24 / var(--site-scaling-divider) * 1vw), 2.4rem);
	font-weight: 700;
	line-height: 1.2917;
}

h4 {
	padding: 0;
	font-size: 1em;
	font-weight: 700;
	line-height: inherit;
}

p {
	padding: 0 0 var(--site-paragraph-padding);
}

ul {
	padding: 0 0 var(--site-paragraph-padding) 19px;
}

ul ul,
ol ul {
	padding: 0 0 3px 19px;
	list-style: disc;
}

ol {
	padding: 0 0 var(--site-paragraph-padding) 23px;
}

ol ol,
ul ol {
	padding: 0 0 3px 23px;
}

blockquote {
	margin: 0;
	padding: 0 0 1em;
	font-size: 2rem;
	font-style: italic;
	font-weight: 400;
	line-height: var(--site-line-height);
}


.ce-flex-wrapper {
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	gap: var(--site-paragraph-padding) var(--site-column-margin);
	flex: 1;
}

.ce-column {
	flex: 1;
}

.ce-block:not(.ce-no-bottom-padding) .ce-column > :last-child:not(input):not(select):not(.ce-content-wrap), 
.ce-block:not(.ce-no-bottom-padding) .ce-content-wrap > :last-child:not(input):not(select) {
	margin-bottom: 0;
	padding-bottom: 0;
}


.ce-block {
	background: #fff;
	margin-top: var(--element-margin-top, var(--site-elements-padding));
	margin-bottom: var(--element-margin-bottom, 0);
	padding-top: var(--element-padding-top, 0);
	padding-bottom: var(--element-padding-bottom, 0);
}
/*
.ce-block:not(.ce-bgcolor):not(.ce-bgimage):not(.ce-fancy-image):last-child {
	margin-bottom: var(--element-margin-bottom, var(--site-elements-padding));
}
*/

.ce-block.ce-bgcolor {
	padding-top: var(--element-padding-top, var(--site-elements-padding));
	padding-bottom: var(--element-padding-bottom, var(--site-elements-padding));
}

.ce-block.ce-bgimage {
	background-image: var(--background-image, none);
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}

.ce-block.ce-bgimage.ce-bgimage-hovereffect {
	position: relative;
	background-image: none;
	overflow: hidden;
}

.ce-block.ce-bgimage.ce-bgimage-hovereffect:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: var(--background-image, none) 50%/cover no-repeat;
	transition: transform 300ms ease-out 25ms;
	z-index: 1;
}

.ce-block.ce-bgimage.ce-bgimage-hovereffect > div {
	position: relative;
	z-index: 2;
}


.ce-block.ce-bgimage.ce-bgimage-hovereffect:hover:after {
	transform: scale(1.06);
}

.ce-block[style*="--background-image-overlay"] {
	position: relative;
}

.ce-block[style*="--background-image-overlay"]:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	background: var(--background-image-overlay);
	mix-blend-mode: var(--background-image-overlay-blendmode, 'normal');
	z-index: 2;
}

.ce-block[style*="--background-image-overlay"] > div > * {
	position: relative;
	z-index: 3;
}


.ce-block.ce-bgimage.ce-imagesized {
	display: flex;
	min-height: calc(((100vw - var(--scrollbar-width)) * var(--image-ratio)));
	align-items: stretch;
}

.ce-block.ce-bgimage.ce-width-wrapper.ce-imagesized {
	min-height: min(calc((var(--site-wrapper-width) + var(--site-elements-padding) * 2) * var(--image-ratio)), calc(((100vw - var(--scrollbar-width)) * var(--image-ratio))));
}

.ce-block.ce-bgimage.ce-imagesized > div, 
.ce-block.ce-bgimage.ce-imagesized > div > .wrapper {
	display: flex;
	width: 100%;
}

.ce-block.ce-bgimage.ce-imagesized .ce-flex-wrapper {
	align-items: stretch;
}


.ce-block.ce-width-wrapper {
	box-sizing: border-box;
	max-width: calc(var(--site-wrapper-width) + var(--site-elements-padding) * 2);
	padding-left: var(--site-elements-padding);
	padding-right: var(--site-elements-padding);
}

.ce-block.ce-width-wrapper .wrapper {
	padding: 0;
}


.ce-block.ce-separator-top .wrapper {
	position: relative;
}

.ce-block.ce-separator-top .wrapper:before {
	content: "";
	display: block;
	position: absolute;
	left: var(--site-wrapper-padding);
	top: calc(var(--element-padding-top, 0) * -1);
	right: var(--site-wrapper-padding);
	height: 2px;
	background: #333;
	margin-top: calc(var(--element-margin-top, var(--site-elements-padding)) / -2 - 1px);
}

.ce-block.ce-separator-top.ce-bgcolor .wrapper:before {
	top: calc(var(--element-padding-top, var(--site-elements-padding)) * -1);
}

.ce-block.ce-separator-top.ce-width-wrapper .wrapper:before {
	left: 0;
	right: 0;
}


.ce-block.ce-single-column .ce-column {
	display: flex;
	justify-content: var(--content-justify);
	align-items: var(--content-align);
}

.ce-block.ce-single-column[style*="--content-maxwidth"] .ce-content-wrap {
	width: 100%;
	max-width: var(--content-maxwidth, none);
}

.ce-block.ce-single-column[style*="--content-maxwidth-percent"] .ce-content-wrap {
	max-width: calc((100% - var(--site-column-margin)) * var(--content-maxwidth-percent, 1));
}

.ce-block.ce-single-column .ce-content-wrap:empty {
	margin-bottom: 0;
}


.ce-block.ce-text-image .ce-flex-wrapper {
	align-items: var(--text-column-align, center);
}

.ce-block.ce-text-image .ce-imagecolumn {
	text-align: center;
}

.ce-block.ce-text-image .ce-textcolumn {
	margin-top: var(--textmargin, 0);
	margin-bottom: var(--textmargin, 0);
}

.ce-block.ce-text-image .ce-textcolumn .ce-text-wrap > :last-child {
	padding-bottom: 0;
}


.ce-block.ce-text-image.ce-fill-imagecolumn .ce-imagecolumn {
	align-self: stretch;
}

.ce-block.ce-text-image.ce-fill-imagecolumn .ce-imagecolumn img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}


.ce-block.ce-text-image.ce-fullwidth-image {
	position: relative;
	padding-top: var(--element-padding-top, 0);
	padding-bottom: var(--element-padding-bottom, 0);
}

.ce-block.ce-text-image.ce-fullwidth-image.ce-image-left .ce-textcolumn .ce-text-wrap {
	padding-left: calc(var(--site-column-margin) * 0.5);
}

.ce-block.ce-text-image.ce-fullwidth-image.ce-image-right .ce-textcolumn .ce-text-wrap {
	padding-right: calc(var(--site-column-margin) * 0.5);
}

.ce-block.ce-text-image.ce-fullwidth-image .ce-imagecolumn {
	align-self: stretch;
}

.ce-block.ce-text-image.ce-fullwidth-image .ce-fullwidth-image-wrap {
	position: absolute;
	top: 0;
	bottom: 0;
	width: min(calc((var(--site-wrapper-width)) * var(--imagecolumn-width) + (100% - var(--site-wrapper-width)) / 2), calc(((100% - var(--site-wrapper-padding) * 2)) * var(--imagecolumn-width) + var(--site-wrapper-padding)));
}

.ce-block.ce-text-image.ce-fullwidth-image .ce-fullwidth-image-wrap.narrow-image {
	width: max(calc((var(--site-wrapper-width)) * var(--imagecolumn-width) + (100% - var(--site-wrapper-width)) / 2), calc(((100% - var(--site-wrapper-padding) * 2)) * var(--imagecolumn-width) + var(--site-wrapper-padding)));
}

.ce-block.ce-text-image.ce-fullwidth-image.ce-image-left .ce-fullwidth-image-wrap {
	left: 0;
}

.ce-block.ce-text-image.ce-fullwidth-image.ce-image-right .ce-fullwidth-image-wrap {
	right: 0;
}

.ce-block.ce-text-image.ce-fullwidth-image .ce-original-image-link {
	width: 100%;
	height: 100%;
}

.ce-block.ce-text-image.ce-fullwidth-image .ce-fullwidth-image-wrap img {
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
}


.ce-block.ce-text-image.ce-fancy-image {
	background-color: var(--background-color, #fff);
	margin-top: calc(var(--element-margin-top, var(--site-elements-padding)) + var(--element-padding-top, var(--site-elements-padding)) * 0.5);
	margin-bottom: calc(var(--element-margin-bottom, var(--site-elements-padding)) + var(--element-padding-bottom, var(--site-elements-padding)) * 0.5);
}

.ce-block.ce-text-image.ce-fancy-image .ce-fullwidth-image-wrap {
	top: calc(var(--element-padding-top, var(--site-elements-padding)) * -0.5);
	bottom: calc(var(--element-padding-bottom, var(--site-elements-padding)) * -0.5);
	z-index: 1;
}

.ce-block.ce-text-image.ce-fancy-image .ce-fullwidth-image-wrap img {
	width: calc(100% + var(--site-column-margin) * 2);
}

.ce-block.ce-text-image.ce-fancy-image.ce-image-right .ce-fullwidth-image-wrap img {
	margin-left: calc(var(--site-column-margin) * -2);
}

.ce-block.ce-text-image.ce-fancy-image .ce-textcolumn {
	position: relative;
	background: var(--background-color, #fff);
	margin-top: calc(var(--element-padding-top, var(--site-elements-padding)) * -1);
	margin-bottom: calc(var(--element-padding-bottom, var(--site-elements-padding)) * -1);
	padding-top: calc(var(--element-padding-top, var(--site-elements-padding)) + var(--textmargin, 0px));
	padding-bottom: calc(var(--element-padding-bottom, var(--site-elements-padding)) + var(--textmargin, 0px));
	color: var(--text-color, inherit);
	z-index: 2;
}

.ce-block.ce-text-image.ce-fancy-image.ce-image-left .ce-textcolumn {
	margin-left: calc(var(--site-column-margin) * -1);
	padding-left: var(--site-column-margin);
}

.ce-block.ce-text-image.ce-fancy-image.ce-image-right .ce-textcolumn {
	margin-right: calc(var(--site-column-margin) * -1);
	padding-right: var(--site-column-margin);
}


.ce-block.ce-multi-columns .ce-grid-wrapper {
	display: grid;
	grid-template-columns: repeat(var(--grid-columns, 3), minmax(0, 1fr));
	gap: var(--row-gap, var(--site-column-margin)) var(--column-gap, var(--site-column-margin));
}

.ce-block.ce-multi-columns[style$="--grid-columns: 6;"] .ce-grid-wrapper {
	gap: var(--site-column-margin) calc(var(--site-column-margin) / 2);
}

.ce-block.ce-multi-columns .ce-multi-column-link {
	display: block;
	padding: 0 10px;
}

.ce-block.ce-multi-columns .ce-multi-column-link > :last-child {
	padding-bottom: 0;
}

.ce-block.ce-multi-columns .ce-multi-column-link p:first-child img:only-child {
	margin-left: -10px;
	margin-right: -10px;
	max-width: calc(100% + 20px);
}


.ce-block.ce-wide-image {
	padding: 0;
}

.ce-block.ce-wide-image img {
	display: block;
	width: 100%;
	height: auto;
	max-height: var(--image-max-height);
	margin: 0 auto;
	object-fit: cover;
}

.ce-block.ce-wide-image.ce-width-wrapper img {
	max-width: var(--site-wrapper-width);
}

.ce-block.ce-wide-image a {
	display: block;
	outline: none;
}


.ce-block.ce-featured-locations .ce-grid-wrapper {
	display: grid;
	grid-template-columns: repeat(var(--grid-columns, 3), minmax(0, 1fr));
	gap: var(--row-gap, var(--site-column-margin)) var(--column-gap, var(--site-column-margin));
}

.ce-block.ce-featured-locations[style$="--grid-columns: 6;"] .ce-grid-wrapper {
	gap: var(--site-column-margin) calc(var(--site-column-margin) / 2);
}

.ce-block.ce-featured-locations .featured-location-item > a {
	display: flex;
	height: 100%;
	background: var(--lh-snow);
	filter: none !important;
	flex-flow: column;
	gap: 20px;
}

.ce-block.ce-featured-locations .featured-location-item.reserved-yes > a {
	border: 3px solid var(--lh-heather);
}

.ce-block.ce-featured-locations .featured-location-item-image {
	background: var(--lh-pine) url(_img/logo-text-f3f6f9.svg) 50%/auto 35% no-repeat;
	aspect-ratio: 3 / 2;
}

.ce-block.ce-featured-locations .featured-location-item-image img {
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
}

.ce-block.ce-featured-locations .featured-location-item-text {
	display: flex;
	padding: 0 22px 22px;
	font-size: 1.4rem;
	color: #000;
	flex-flow: column;
	gap: 15px;
	flex: 1;
}

.ce-block.ce-featured-locations .featured-location-item-title {
	font-size: 1.7rem;
}


.location-item-specs {
	display: flex;
	padding: 0;
	list-style: none;
	flex-flow: column;
	gap: 10px;
}

.location-item-specs li {
	display: flex;
	align-items: center;
	gap: 10px;
}

.location-item-specs li:before {
	content: "";
	display: block;
	height: 20px;
	background-position: 50%;
	background-size: contain;
	background-repeat: no-repeat;
	aspect-ratio: 1 / 1;
}


.lh-icon-magnifier:before { background-image: url(_img/icon-magnifier.svg); }
.lh-icon-calendar:before { background-image: url(_img/icon-calendar.svg); }
.lh-icon-beds:before { background-image: url(_img/icon-beds.svg); }
.lh-icon-house:before { background-image: url(_img/icon-house.svg); }
.lh-icon-location:before { background-image: url(_img/icon-location.svg); }


.navigation.pagination {
	border-top: 2px solid #eee;
	margin-top: 30px;
	padding: 15px 0;
	text-align: center;
}

.navigation.pagination .screen-reader-text {
	display: none;
}

.nav-links {
	padding: 0;
	font-size: 19px;
	font-weight: 700;
	line-height: 29px;
}

.nav-links .page-numbers.prev,
.nav-links .page-numbers.next {
	display: none;
}

.nav-links .page-numbers {
	display: inline-block;
	width: 31px;
	height: 31px;
	text-align: center;
	vertical-align: top;
}

.nav-links .page-numbers + .page-numbers {
	margin: 0 0 0 8px;
}

.nav-links .page-numbers.dots,
.nav-links .page-numbers.dots + .page-numbers {
	margin: 0;
}

.nav-links .page-numbers.current {
	border-radius: 50%;
	background: #666;
	color: #fff;
}


main img {
	max-width: 100%;
	height: auto;
}

main iframe {
	display: block;
	border: 0;
	max-width: 100%;
	margin-bottom: var(--site-paragraph-padding);
}


body.noscroll {
	overflow: hidden;
	padding-right: var(--scrollbar-width);
}

#large-modal {
	position: fixed;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	background: color-mix(in srgb, var(--lh-snow), #fff0 5%);
	opacity: 0;
	z-index: 10001;
}

body.noscroll #large-modal {
	right: var(--scrollbar-width);
}

#large-modal-toolbar {
	display: flex;
	position: absolute;
	left: 50%;
	top: 0;
	height: 40px;
	justify-content: center;
	align-items: flex-start;
	gap: 30px;
	transform: translate(-50%,-100%);
}

#large-modal-toolbar > * {
	display: flex;
	cursor: pointer;
	justify-content: center;
	align-items: center;
}

#large-modal-close:after {
	content: "";
	display: block;
	width: 27px;
	height: 27px;
	background: var(--lh-pine);
	clip-path: polygon(13% 0, 0 13%, 37% 50%, 0 87%, 13% 100%, 50% 63%, 87% 100%, 100% 87%, 63% 50%, 100% 13%, 87% 0, 50% 37%);
	opacity: 0.75;
	z-index: 3;
	transition: all 150ms ease-out 25ms;
}

#large-modal-prev:after, 
#large-modal-next:after {
	content: "";
	display: block;
	width: 36px;
	height: 27px;
	background: var(--lh-pine);
	clip-path: polygon(0% 41.9%, 77.5% 41.9%, 53.9% 11.5%, 62.6% 0%, 100% 50%, 62.6% 100%, 53.9% 88.5%, 77.5% 58.1%, 0% 58.1%);
	opacity: 0.75;
	z-index: 3;
	transition: all 150ms ease-out 25ms;
}

#large-modal-close:hover:after, 
#large-modal-prev:hover:after, 
#large-modal-next:hover:after {
	background: var(--lh-heather);
	opacity: 1;
}

#large-modal-prev:after {
	transform: rotate(180deg);
}

#large-modal-content-wrap {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: 100%;
	max-width: calc(100vw - 160px);
	max-height: calc(100vh - 160px);
	box-shadow: rgba(0,0,0,0.3) 0 0 50px;
	background: #fff;
	transform: translate(-50%,-50%);
}

#large-modal-content-wrap.type-text {
	width: calc(100vw - 100px);
	max-width: 720px;
	overflow: hidden;
	overflow-y: auto;
}

#large-modal-content-wrap.type-iframe {
	width: calc(177.7778vh - 200px * 1.7778);
	max-width: 960px;
	height: auto;
}

#large-modal-content-wrap.type-iframe .iframewrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

#large-modal-content-wrap.type-image {
	box-shadow: none;
	background: none;
}

#large-modal-content {
	display: block;
	width: 100%;
	height: 100%;
}

.type-text #large-modal-content {
	padding: 60px;
}

.type-text #large-modal-content > :last-child {
	margin-bottom: 60px;
}

#large-modal-content iframe, 
#large-modal-content video {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

#large-modal-content img {
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: contain;
}


#head {
	position: relative;
	min-height: 80px;
	background: var(--lh-snow);
	z-index: 5;
}

#nav-main-wrap {
	display: flex;
	min-height: 110px;
	font-weight: 500;
	text-transform: uppercase;
}

#nav-main {
	display: flex;
	width: 100%;
	gap: 0 clamp(50px, calc(100 / var(--site-scaling-divider) * 1vw), 100px);
}

#nav-main a {
	filter: none !important;
}

#nav-main > li {
	display: flex;
	height: 100%;
	align-items: center;
	flex: 1;
}

#nav-main > li:nth-child(2) {
	justify-content: flex-end;
	order: 1;
}

#nav-main > li.logo-item {
	order: 2;
}

#nav-main > li:nth-child(3) {
	order: 3;
}


#nav-main > .logo-item {
	position: relative;
	flex: 0 0 37px;
}

#nav-main > .logo-item > a {
	display: block;
	width: 37px;
	height: 62px;
	background: url(_img/logo-404a30.svg) 50%/27px auto no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	transition: transform 250ms ease-out 25ms;
}

#nav-main > .logo-item > a:hover {
	transform: scale(1.1);
}

#nav-main > .logo-item.current-menu-item:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: -6px;
	width: calc(100% + 100px);
	height: 6px;
	background: var(--lh-heather);
	transform: translateX(-50%);
}


#nav-main > li:not(.logo-item) > a {
	display: none;
}

#nav-main > li > ul {
	display: flex;
	height: 100%;
	padding: 0;
	list-style: none;
	font-size: 1.6rem;
	justify-content: flex-end;
	gap: 0 clamp(40px, calc(60 / var(--site-scaling-divider) * 1vw), 60px);
}

#nav-main > .logo-item ~ li > ul {
	justify-content: flex-start;
}

#nav-main > li > ul > li {
	display: flex;
	justify-content: center;
	align-items: center;
}

#nav-main > li > ul a {
	padding: 5px 0;
	text-align: center;
	color: var(--lh-pine);
}

#nav-main > li > ul a:hover {
	color: var(--lh-moss);
}

#nav-main > li > ul > li {
	position: relative;
}

#nav-main > li > ul > .current-menu-item:after,
.single-kohde #nav-main > li > ul > .kohteet-item:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: -6px;
	width: calc(100% + 50px);
	height: 6px;
	background: var(--lh-heather);
	transform: translateX(-50%);
}


#billboard {
	display: flex;
	position: relative;
	min-height: calc(var(--maxslideheight) + var(--site-elements-padding) * 2);
	height: var(--billboard-height, auto);
	max-height: var(--billboard-maxheight);
	overflow: hidden;
	z-index: 1;
}


#billboard .billboard-slide {
	position: relative;
	overflow: hidden;
	visibility: hidden;
	opacity: 0;
	flex: 0 0 100%;
}

#billboard .billboard-slide.text-overlay-size-left50 .wrapper {
	width: calc(50% - var(--site-wrapper-padding) * 2);
	margin-left: 0;
}

#billboard .billboard-slide.text-overlay-size-right50 .wrapper {
	width: calc(50% - var(--site-wrapper-padding) * 2);
	margin-right: 0;
}

#billboard .billboard-slide[style*="--overlay-color"]:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	background: var(--overlay-color);
	mix-blend-mode: var(--overlay-color-blendmode, 'normal');
	z-index: 2;
}

#billboard .billboard-slide.text-overlay-size-left50[style*="--overlay-color"]:after {
	right: auto;
	width: 50%;
}

#billboard .billboard-slide.text-overlay-size-right50[style*="--overlay-color"]:after {
	left: auto;
	width: 50%;
}


#billboard .billboard-slide:nth-child(1) {
	visibility: visible;
	opacity: 1;
	transform: translateX(0);
}

#billboard .billboard-slide:nth-child(2) {
	transform: translateX(0);
}

#billboard .billboard-slide:nth-child(n+3) {
	transform: translateX(calc((var(--slideindex) - 1) * -100%));
}


#billboard .billboard-slide-image {
	display: flex;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	justify-content: var(--image-justify, center);
	align-items: var(--image-align, center);
	opacity: var(--image-opacity, 1);
}

#billboard .billboard-slide-image img, 
#billboard .billboard-slide-image video {
	display: block;
	width: var(--image-max-width, 100%);
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
	object-position: var(--image-position-h, center) var(--image-position-v, center);
}

#billboard .billboard-slide:not([style*="--image-max-width: 100%;"]) .billboard-slide-image img, 
#billboard .billboard-slide:not([style*="--image-max-width: 100%;"]) .billboard-slide-image video {
	height: auto;
}

#billboard .billboard-slide .wrapper {
	position: relative;
	height: 100%;
	z-index: 3;
}

#billboard .billboard-slide-text {
	display: flex;
	height: 100%;
	padding: var(--site-elements-padding) var(--text-padding-right, 0) var(--site-elements-padding) var(--text-padding-left, 0);
	justify-content: var(--text-justify, flex-start);
	align-items: var(--text-align, center);
	color: var(--text-color, #fff);
}

#billboard .billboard-slide-text-content {
	max-width: var(--text-max-width, 100%);
}

#billboard .billboard-slide-text-content img {
	max-width: 100%;
	height: auto;
}

#billboard .billboard-slide-text-content > :last-child {
	padding-bottom: 0;
}

#billboard .slide-ticker {
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
	height: 3px;
	background: rgba(0,0,0,0.1);
	z-index: 5;
}

#billboard .billboard-slide:only-child .slide-ticker {
	display: none;
}

#billboard .slide-ticker:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 3px;
	background: rgba(255,255,255,0.5);
}

#billboard .slide-ticker.current:after {
	width: 100%;
	transition: width var(--slide-duration) ease-out;
}


#billboard .slidr-nav {
	position: absolute;
	left: 30px;
	bottom: 30px;
	z-index: 5;
}


#tail {
	background: var(--lh-pine);
	padding: var(--site-elements-padding) 0;
	color: #fff;
}

#tail .wrapper {
	max-width: none;
}

#tail-columns {
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	gap: calc(var(--site-elements-padding) * 0.5) calc(var(--site-elements-padding) * 1.5);
}

#tail-columns:before {
	content: "";
	height: 97px;
	background: url(_img/logo-text-f3f6f9.svg) 50%/contain no-repeat;
	margin-bottom: 6px;
	flex: 0 0 194px;
}

#tail-columns .tail-column:last-child {
	flex: 1;
}

#tail-columns .tail-column > :last-child {
	padding-bottom: 0;
}


#tail-columns .tail-column:empty, 
#tail-copyright:empty {
	display: none;
}


.breadcrumb .wrapper {
	display: flex;
	height: 90px;
	align-items: center;
}

.breadcrumb ol {
	display: flex;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 700;
	flex: 0 0 100%;
	justify-content: flex-start;
	align-items: center;
	gap: 10px;
}

.breadcrumb ol li {
	display: flex;
	align-items: center;
	gap: 10px;
}

.breadcrumb ol li + li:before {
	content: "/";
}

.breadcrumb ol li a {
	color: inherit;
}

.breadcrumb ol li a:hover {
	color: #333;
}


.social-media-icons {
	display: inline-flex;
	vertical-align: middle;
	gap: 12px;
}

.social-media-icons a {
	display: flex;
	width: 50px;
	border-radius: 50%;
	background: var(--lh-moss);
	aspect-ratio: 1 / 1;
	justify-content: center;
	align-items: center;
	flex: 0 0 50px;
}

.social-media-icons a svg {
	display: block;
	width: auto;
	height: 50%;
}

.social-media-icons a svg * {
	fill: #fff !important;
	transition: fill 250ms ease-out 25ms;
}

.social-media-icons a:hover svg * {
	fill: var(--lh-pine) !important;
}


#nav-burger {
	display: none;
	position: absolute;
	right: 24px;
	top: 24px;
	width: 32px;
	height: 32px;
	cursor: pointer;
	z-index: 11;
}

#nav-burger > div,
#nav-burger:before,
#nav-burger:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	width: 6px;
	height: 6px;
	border-radius: 3px;
	background: var(--lh-pine);
	transform: translateX(-50%);
	transition: all 150ms ease-out;
}

#nav-burger:before {
	top: 0;
}

#nav-burger > div {
	top: 50%;
	transform: translate(-50%,-50%);
}

#nav-burger:after {
	bottom: 0;
}


.overlay #nav-burger:before, 
.overlay #nav-burger:after {
	opacity: 0;
}

.overlay #nav-burger > div:first-child {
	width: 36px;
	height: 4px;
	background: var(--lh-heather);
	margin: 0;
	transform: translate(-50%,-50%) rotate(45deg);
}

.overlay #nav-burger > div:last-child {
	width: 36px;
	height: 4px;
	background: var(--lh-heather);
	margin: 0;
	transform: translate(-50%,-50%) rotate(-45deg);
}


.ce-block .effect {
	transition: all 800ms ease-out;	
}

.ce-block .effect.primed {
	transform: translateY(40px);
	opacity: 0;
}


.billboard-slide-text-content {
	width: 100%;
}

#billboard, 
#billboard .billboard-slide {
	overflow: visible;
}


#location-search-bar {
	display: flex;
	width: 100%;
	border-radius: 1px;
	background: var(--lh-snow);
	margin: 0 auto;
	padding: 6px !important;
	font-size: 1.5rem;
	line-height: 1.4;
	color: var(--lh-pine);
	gap: 6px;
}

.location-search-bar-blocks {
	display: flex;
	border-radius: 0 5px 5px 0;
	background: #fff;
	gap: 2px;
	flex: 1;
}

.location-search-bar-block {
	display: flex;
	position: relative;
	width: calc((100% - 4px) / 3);
	padding: 10px 10px 10px 15px;
	align-items: center;
	flex: 1;
}

.location-search-bar-block + .location-search-bar-block:before {
	content: "";
	position: absolute;
	left: -2px;
	top: 3px;
	bottom: 3px;
	width: 2px;
	background: var(--lh-pine);
}

.location-search-bar-item {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
}

#location-search-bar .lh-input-text, 
#location-search-bar .lh-select {
	width: 100%;
	min-width: none;
}


.location-search-bar-item:before {
	content: "";
	display: block;
	height: 28px;
	background-position: 50%;
	background-size: contain;
	background-repeat: no-repeat;
	margin-left: 3px;
	aspect-ratio: 1 / 1;
}

.location-search-bar-item.location-search-bar-beds:before {
	height: 30px;
}


.location-search-bar-item .selectize-control {
	width: 100%;
}

.location-search-bar-item .selectize-control .selectize-input {
	width: 100%;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background: none;
	padding: 7px;	
}

.location-search-bar-item .selectize-control.multi .selectize-input.has-items {
	padding: 3px 7px 0;
}

.location-search-bar-item .selectize-input:not(.has-items) input {
	min-width: 100% !important;
}

.location-search-bar-item .selectize-dropdown, 
.location-search-bar-item .selectize-input, 
.location-search-bar-item .selectize-input input {
	font-size: 1.5rem;
	line-height: 1.1;
	color: var(--lh-pine);
}

.location-search-bar-item .selectize-control.multi .selectize-input [data-value] {
	border-radius: 2px;
	border-color: var(--lh-moss);
	background: var(--lh-moss);
}

.location-search-bar-item .selectize-control.multi .selectize-input > div {
  padding: 3px 7px 4px;
}

.location-search-bar-item .selectize-control.plugin-remove_button .item .remove {
	border-color: var(--lh-pine);
}


.location-search-bar-item .selectize-input.dropdown-active:before {
	display: none;
}

.location-search-bar-item .selectize-dropdown {
	border: 0;
	background: #fff;
	margin-top: 5px;
	line-height: 1.4;
}

.location-search-bar-item .selectize-dropdown .option {
  color: var(--lh-pine);
}

.location-search-bar-item .selectize-dropdown .active:not(.selected) {
  background: var(--lh-snow);
  color: inherit;
}


.location-search-bar-item .selectize-dropdown .selected {
	background: var(--lh-snow);
}


.location-search-bar-item .selectize-control.plugin-clear_button.single .clear {
	right: 35px;
}

.location-search-bar-item .selectize-control.single .selectize-input:after {
	margin-top: -2px;
}


body .location-search-bar-item ::placeholder {
  opacity: 1;
  color: inherit;
}


.location-search-bar-time .lh-input-text.lh-input-text-plain {
	padding-top: 3px;
	padding-bottom: 2px;
}

.air-datepicker-cell.-current- {
	border: 1px solid var(--adp-color-current-date);
}


.location-search-bar-button {
	display: flex;
}


.lh-button {
	border: 0;
	border-radius: 5px;
	background: var(--lh-moss);
	padding: 12px 24px 14px;
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 1;
	color: var(--lh-snow);
	transition: background-color 250ms ease-out 25ms;
}

.lh-button.lh-button-small {
	border-radius: 3px;
	padding: 8px 16px 10px;
	font-weight: 500;
	font-size: 1.5rem;
}

.lh-button.lh-button-pill {
	border-radius: 22px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.lh-button.lh-heather {
	background: var(--lh-heather);
}

.lh-button:hover {
	background: color-mix(in srgb, var(--lh-moss), #000 10%);
}

.lh-button[disabled] {
	opacity: 0.5;
	cursor: not-allowed;
}


body .lh-input-text {
	border: 1px solid #0001;
	border-radius: 2px;
	background: var(--lh-snow);
	margin: 0;
	padding: 7px 15px 9px;
	font-size: 15px;
	font-weight: 500;
}

body .lh-input-text.lh-input-text-plain {
	border: 0;
	border-radius: 0;
	background: none;
	padding-left: 7px;
	padding-right: 7px;
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
}


body .lh-textarea {
	border: 1px solid #0001;
	border-radius: 2px;
	background: var(--lh-snow);
	margin: 0;
	padding: 7px 15px 9px;
	font-size: 15px;
	font-weight: 500;
}


.lh-input-text::placeholder, 
.lh-textarea::placeholder {
  opacity: 0.4;
  color: inherit;
}



.lh-select {
	width: auto;
	background: var(--lh-snow);
	margin: 0;
	padding: 7px 15px 9px;
	font-size: 15px;
	font-weight: 500;
	cursor: pointer;
	color: inherit;
}

.lh-select-plain {
	border: 0;
	background: url(_img/icon-select-caret.svg) calc(100% - 15px) calc(50% + 1px)/11px auto no-repeat;
	font-size: inherit;
	font-weight: inherit;
	padding-left: 7px;
	padding-right: 35px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}


input[type="checkbox"], 
input[type="radio"] {
	width: revert;
	height: revert;
	flex: none;
	-webkit-appearance: revert;
	-moz-appearance: revert;
	appearance: revert;
}


#location-search-results:not(:empty) {
	padding: var(--site-elements-padding) 0;
}

#location-search-results > .wrapper {
	display: flex;
	gap: 40px;
}


#search-results-left {
	background: var(--lh-snow);
	flex: 0 0 max(225px, calc((100% - 80px) / 4));
}

#location-filters {
	display: flex;
	padding: 15px 0 25px;
	flex-flow: column;
	gap: 20px;
}

#location-filters .location-filter-block {
	padding: 0 20px;
}

#location-filters .location-filter-block-title {
	padding: 0 0 15px;
}

#location-filters .location-filter-options {
	display: flex;
	flex-flow: column;
	gap: 12px;
}

#location-filters .location-filter-row input {
	display: none;
}

#location-filters .location-filter-row label {
	display: flex;
	font-size: 15px;
	line-height: 1;
	cursor: pointer;
	align-items: center;
	gap: 8px;
}

#location-filters .location-filter-row label:before {
	content: "";
	width: 16px;
	height: 16px;
	border: 2px solid var(--lh-moss);
	border-radius: 2px;
}

#location-filters .location-filter-row input:checked + label:before {
	border-color: var(--lh-heather);
	background: var(--lh-heather) url(_img/icon-checkmark.svg) 50%/10px auto no-repeat;
}

#location-filters .location-filter-row label span {
	margin-bottom: 2px;
}


#search-results-right {
	display: flex;
	flex-flow: column;
	gap: 40px;
	flex: 1;
}

#location-search-results-header {
	order: 1;
}

#location-search-results-header .location-search-results-filters {
	font-size: 0.8em;
	font-weight: 500;
}

#location-search-results .ce-block {
	margin: 0;
	order: 2;
}

#location-search-results .featured-location-item {
	opacity: 1;
	transition: opacity 250ms ease-out var(--tdelay, 0);
}

#location-search-results .featured-location-item.primed {
	opacity: 0;
}



.single-kohde main > .wrapper, 
.single-kohde main > form > .wrapper {
	padding-top: var(--site-elements-padding);
	padding-bottom: var(--site-elements-padding);
	align-items: stretch;
	gap: calc(var(--site-elements-padding) * 0.75) calc(var(--site-elements-padding) * 0.5);
}


#location-left {
	flex: 1;
}


#location-left header:first-child, 
#location-right header:first-child {
	min-height: 80px;
}

#location-left header {
	margin-bottom: 30px;
}


#location-right header {
	display: flex;
	flex-flow: column;
	margin-bottom: 10px;
	justify-content: flex-end;
}

#location-right header > :last-child {
	padding: 0;
}


.single-location-title {
	padding: 0;
	font-family: montserrat, sans-serif;
	font-style: normal;
	font-size: clamp(2.8rem, calc(36 / var(--site-scaling-divider) * 1vw), 3.6rem);
	font-weight: 700;
	line-height: 1.1944;
}


.single-kohde .location-item-specs {
	flex-flow: row;
	margin: 10px 0 0;
	gap: 5px 20px;
}


.single-location-gallery {
	display: flex;
	flex-flow: column;
	gap: 10px;
}

.single-location-gallery .gallery-image {
	width: 100%;
	height: 100%;
	border-radius: 5px;
	overflow: hidden;
}

.single-location-gallery .gallery-image img {
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: cover;
}

.single-location-gallery .toprow {
	display: grid;
	grid-template-columns: 2fr 1fr;
	grid-template-rows: 1fr 1fr;
	grid-auto-flow: row;
	gap: 10px;
}

.single-location-gallery .gallery-image {
	position: relative;
	cursor: pointer;
	transition: filter 150ms ease-out 25ms;
}

.single-location-gallery .gallery-image:hover {
	filter: brightness(0.9);
}

.single-location-gallery .toprow > .gallery-image:first-child {
	grid-row-end: span 2;
}

.single-location-gallery .toprow > .gallery-image:only-child {
	aspect-ratio: 3 / 2;
	height: auto;
	max-height: 536px;
	grid-column-end: span 2;
	grid-row-end: span 2;
}

.single-location-gallery .toprow .gallery-image + .gallery-image {
	aspect-ratio: 3 / 2;
	height: auto;
}

.single-location-gallery .bottomrow {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	grid-template-rows: 1fr;
	grid-auto-flow: row;
	gap: 10px;
}

.single-location-gallery .bottomrow .gallery-image {
	height: auto;
	aspect-ratio: 3 / 2;
}

.single-location-gallery .toprow .gallery-image:nth-child(3):before, 
.single-location-gallery .bottomrow .gallery-image:nth-child(5):before {
	content: var(--additional-images);
	display: flex;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	background: #0007;
	padding: 10px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.25;
	text-decoration: underline;
	text-align: center;
	color: var(--lh-snow);
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.single-location-gallery .toprow .gallery-image:nth-child(3):before {
	display: none;
}


.single-location-text {
	display: flex;
	margin-top: calc(var(--site-elements-padding) / 2);
	flex-flow: column;
	gap: calc(var(--site-elements-padding) / 2);
}


#location-right {
	display: flex;
	flex-flow: column;
	font-size: 1.5rem;
	flex: 0 0 300px;
	gap: 20px;
}

.single-location-calendar .air-datepicker {
	--adp-width: 100%;
	--adp-padding: 9px 8px;
	--adp-background-color: var(--lh-pine);
	--adp-border-radius: 5px;
	--adp-cell-border-radius: 0;
	--adp-day-cell-height: calc(100% / 7);
	--adp-color: #fff;
	--adp-day-name-color: var(--lh-heather);
	--adp-cell-background-color-selected: var(--lh-heather);
	--adp-cell-background-color-selected-hover: var(--lh-heather);
	--adp-cell-background-color-in-range: var(--lh-heather);
	--adp-background-color-in-range: var(--lh-heather);
	--adp-background-color-in-range-focused: var(--lh-heather);
	--adp-background-color-selected-other-month: var(--lh-heather);
	--adp-background-color-selected-other-month-focused: var(--lh-heather);
	--adp-cell-background-color-in-range-hover: var(--lh-heather);
	--adp-color-current-date: var(--lh-heather);
	--adp-cell-background-color-hover: #0003;
	--adp-background-color-hover: #0003;
	--adp-btn-color: var(--lh-heather);
	--adp-btn-background-color-active: #0003;
	--adp-background-color-active: #0003;
	border: 0;
	max-width: 320px;
}

.single-location-calendar .air-datepicker-nav--title, 
.single-location-calendar .air-datepicker-body--day-names, 
.single-location-calendar .air-datepicker-button {
	font-weight: 700;
}

.single-location-calendar .air-datepicker-nav--title:hover {
	background: none;
	cursor: default;
}

.single-location-calendar .air-datepicker-button span {
	padding-bottom: 2px;
}

.single-location-calendar .air-datepicker-body--cells.-days- {
	gap: 6px 0;
}

.single-location-calendar .air-datepicker-cell {
	aspect-ratio: 1 / 1;
}

.single-location-calendar .air-datepicker-cell.-day-.-current- {
	border: 0;
	font-weight: 700;
	color: var(--lh-heather) !important;
}


.single-location-calendar .air-datepicker-cell.-day-.-disabled-.-other-month- {
  color: var(--adp-color-disabled);
}

.single-location-calendar .air-datepicker-cell.-day-.-disabled-.-focus- {
	background: #0000;
}


.single-location-calendar .air-datepicker-cell.-in-range-, 
.single-location-calendar .air-datepicker-cell.-in-range-.-focus- {
	background: var(--adp-background-color-in-range);
}

.single-location-calendar .air-datepicker-cell.-range-from- {
	border: 0;
}

.single-location-calendar .air-datepicker-cell.-range-to- {
	border: 0;
	color: #fff;
}


.single-location-calendar .air-datepicker-cell.-in-range-.-disabled-, 
.single-location-calendar .air-datepicker-cell.-range-from-.-disabled-, 
.single-location-calendar .air-datepicker-cell.-range-from-.-disabled-.-focus-, 
.single-location-calendar .air-datepicker-cell.-range-to-.-disabled-, 
.single-location-calendar .air-datepicker-cell.-range-to-.-disabled-.-focus- {
	background: #ccc;
}


.single-location-calendar .air-datepicker-cell.reserved, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-first.reserved-last + .reserved.reserved-first {
	background: var(--lh-moss) !important;
	color: #fff !important;
}

.single-location-calendar .air-datepicker-cell.reserved.reserved-first:not(.reserved-last), 
.single-location-calendar .air-datepicker-cell.reserved.reserved-last:not(.reserved-first) {
	background: none !important;
}

.single-location-calendar .air-datepicker-cell.reserved.reserved-first:not(.reserved-last).-focus-, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-last:not(.reserved-first).-focus- {
	background: #0003 !important;
}

.single-location-calendar .air-datepicker-cell.reserved:before, 
.single-location-calendar .air-datepicker-cell.reserved:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: -1;
}

.single-location-calendar .air-datepicker-cell.reserved.reserved-first:after {
	background: var(--lh-moss);
	clip-path: polygon(0% 100%, 100% 0%, 100% 100%);
}

.single-location-calendar .air-datepicker-cell.reserved.reserved-last:after {
	background: var(--lh-moss);
	clip-path: polygon(0% 0%, 0% 100%, 100% 0%);
}


.single-location-calendar .air-datepicker-cell.reserved.reserved-first.-focus-.-range-from-:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-first.-focus-.-in-range-:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-first.-focus-.-range-to-:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-first.-selected-:before {
	background: var(--lh-heather);
	clip-path: polygon(0% 0%, 0% 100%, 100% 0%);
}

.single-location-calendar .air-datepicker-cell.reserved.reserved-last.-focus-.-range-from-:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-last.-focus-.-in-range-:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-last.-focus-.-range-to-:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-last.-selected-:before {
	background: var(--lh-heather);
	clip-path: polygon(0% 100%, 100% 0%, 100% 100%);
}

.single-location-calendar .air-datepicker-cell.reserved.reserved-first.reserved-last:before, 
.single-location-calendar .air-datepicker-cell.reserved.reserved-first.reserved-last:after {
	display: none;
}

.single-location-calendar .air-datepicker.reserved-range {
	--adp-background-color-in-range: #ccc;
	--adp-cell-background-color-in-range: #ccc;
	--adp-cell-background-color-selected: #ccc;
}

.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-first.-range-from-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-first.-in-range-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-first.-range-to-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-first.-selected-:before,
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-last.-range-from-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-last.-in-range-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-last.-range-to-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-last.-selected-:before {
	background: var(--adp-background-color-in-range);
}

.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-first.reserved-last.-focus-.-range-from-:before, 
.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.reserved.reserved-first.reserved-last.-focus-.-range-to-:before {
	display: none;
}

.single-location-calendar .air-datepicker.reserved-range .air-datepicker-cell.-selected-.-day-.-other-month- {
	background: var(--adp-background-color-in-range);
}


#single-location-reservation {
	display: flex;
	border-radius: 5px;
	background: var(--lh-snow);
	padding: 20px 25px 25px;
	flex-flow: column;
	gap: 10px;
}


#single-location-reservation-data {
	display: flex;
	flex-flow: column;
	gap: 20px;
}

#single-location-reservation-data .reservation-data-block {
	display: flex;
	align-items: center;
	gap: 15px;
}

#single-location-reservation-data .reservation-data-block:before {
	content: "";
	display: block;
	height: 40px;
	background-position: 50%;
	background-size: contain;
	background-repeat: no-repeat;
	aspect-ratio: 1 / 1;
}

#single-location-reservation-data .reservation-data-block p {
	margin: 0;
	padding: 0;
}


#single-location-reservation-submit {
	margin-top: 20px;
}



#make-reservation {
	padding-bottom: var(--site-elements-padding);	
}

#make-reservation-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 10px 40px;
	flex: 0 0 100%;
	order: 1;
}

#make-reservation-header h1 {
	padding: 0;
}

h1.alt-h1-style {
	padding: 0 0 0.5em;
	font-family: montserrat, sans-serif;
	font-size: clamp(2.9rem, calc(44 / var(--site-scaling-divider) * 1vw), 4.4rem);
	font-style: normal;
	font-weight: 700;
	line-height: 1.1944;
}


#make-reservation-left {
	display: flex;
	border-radius: 5px;
	background: var(--lh-snow);
	padding: 25px 30px;
	font-size: 1.5rem;
	flex-flow: column;
	gap: 20px;
	flex: 0 0 325px;
	order: 2;
}


#make-reservation-middle {
	display: flex;
	border-radius: 5px;
	background: var(--lh-snow);
	padding: 25px 30px;
	font-size: 1.5rem;
	flex-flow: column;
	gap: 20px;
	flex: 0 0 325px;
	order: 3;
}

#service-item-rows {
	display: flex;
	flex-flow: column;
	gap: 15px;
}

#service-item-rows .service-item-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 15px;
}

#service-item-rows .service-item-checkbox input[type="checkbox"] {
	margin: 5px 0 0;
	flex: 0 0 auto;
}

#service-item-rows .service-item-checkbox label {
	display: flex;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: inherit;
	cursor: pointer;
	flex-flow: column;
	gap: 0;
}

#service-item-rows .service-item-checkbox label > * {
	padding: 0;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

#service-item-rows .service-item-checkbox label h4 {
	font-weight: 700;
}

#service-item-rows .service-item-description {
	margin: 5px 0 0 29px;
	padding: 0;
	font-size: 1.4rem;
}

#service-item-rows .service-item-row .service-item-units {
	display: none;
	margin-top: 8px;
	pointer-events: none;
}

#service-item-rows .service-item-row .service-item-checkbox input[type="checkbox"]:checked + label > .service-item-units {
	display: revert;
	pointer-events: revert;
}

#service-item-rows .service-item-row .service-item-units input {
	width: 100px;
	margin-top: 4px;
	padding: 5px 10px 6px;
}


#make-reservation #services-total {
	flex-flow: row;
}

#make-reservation #services-total-currency {
	display: none;
}


.reservation-total-price-block {
	margin-top: 40px;
}

#reservation-done-content .reservation-total-price-block {
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
	flex: 1;
}

.reservation-total-price-block p {
	padding-bottom: 0;
	font-size: 2rem;
	font-weight: 700;
}


#make-reservation-right {
	border-radius: 5px;
	background: var(--lh-snow);
	padding: 25px 40px;
	flex: 1;
	order: 4;
}


#make-reservation-form-title {
	font-size: clamp(2rem, calc(24 / var(--site-scaling-divider) * 1vw), 2.4rem);
	line-height: 1.2917;
}


#make-reservation-form-fields {
	display: flex;
	margin-top: 20px;
	flex-flow: column;
	gap: 15px;
}

#make-reservation p {
	display: flex;
	padding: 0;
	flex-flow: column;
	align-items: flex-start;
	gap: 5px 8px;
}

#make-reservation p.inline {
	margin-top: 5px;
	flex-flow: row;
	align-items: center;
}

#make-reservation p label {
	font-size: 1.5rem;
	font-weight: 500;
}

#make-reservation p.inline label {
	margin-bottom: 2px;
	font-size: 1.4rem;
	font-weight: 400;
}

#make-reservation p .lh-input-text, 
#make-reservation p .lh-textarea {
	width: 100%;
	background: #fff;
	color: var(--lh-pine);
}

#make-reservation #make-reservation-submit {
	margin-top: 30px;
	margin-bottom: 5px;
}

#make-reservation p.disclaimer {
	font-size: 1.3rem;
	font-weight: 500;
}


#make-reservation-terms {
	background: var(--lh-snow);
}

#make-reservation-terms > .wrapper {
	padding: var(--site-elements-padding) 0;
}

#make-reservation-terms > .wrapper > :last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}


#reservation-done-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 10px 40px;
	flex: 0 0 100%;
	order: 1;
}

#reservation-done-header h1 {
	padding: 0;
}

#reservation-done-content {
	margin-top: 40px;
	align-items: stretch;
	gap: calc(var(--site-elements-padding) * 0.75) calc(var(--site-elements-padding) * 0.5);
}

#reservation-done-left {
	display: flex;
	border-radius: 5px;
	background: var(--lh-snow);
	padding: 25px 30px;
	font-size: 1.5rem;
	flex-flow: column;
	gap: 20px;
	flex: 0 0 325px;
	order: 2;
}


#reservation-done-middle {
	display: flex;
	border-radius: 5px;
	background: var(--lh-snow);
	padding: 25px 30px;
	font-size: 1.5rem;
	flex-flow: column;
	gap: 20px;
	flex: 0 0 325px;
	order: 2;
}


.reservation-services {
	display: flex;
	padding: 0;
	list-style: none;
	flex-flow: column;
	gap: 20px;
}

.reservation-services p {
	padding: 0;
}


#reservation-done-right {
	flex: 1;
}


/*
#location-frontend-admin {
	padding: var(--site-elements-padding) 0;
}

#location-frontend-admin .wrapper {
	max-width: 1000px;
}

#location-frontend-admin #acf-form {
	display: flex;
	flex-flow: column;
	gap: 20px;
}


#location-frontend-admin #message {
	display: flex;
	border-radius: 2px;
	background: var(--lh-heather);
	margin: 20px 0 0;
	padding: 12px 18px;
	font-size: 1.6rem;
	font-weight: 500;
	text-shadow: #0002 0 1px 1px;
	color: #fff;
	gap: 10px;
	order: 1;
}

#location-frontend-admin #message.updated {
	background: var(--lh-moss);
}

#location-frontend-admin #message p {
	padding: 0;
}


#location-frontend-admin header {
	order: 2;
}


#location-frontend-admin .acf-fields {
	border: 1px solid #0001;
	border-radius: 2px;
	order: 3;
}


.single-kohde .mce-menu-item .mce-text {
	background: none !important;
	font-family: inherit !important;
	font-size: 1.5rem !important;
	font-style: normal !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}


#location-frontend-admin .acf-fields > .acf-tab-wrap .acf-tab-group li:not(.active) a {
	background: var(--lh-snow);
}

#location-frontend-admin .acf-tab-wrap.-left .acf-tab-group li a {
	font-size: 1.3rem;
	font-weight: 500;
	color: var(--lh-pine);
}


#location-frontend-admin .acf-label {
	margin-bottom: 6px;
	font-size: 1.4rem;
}

#location-frontend-admin .description {
	font-size: 1.3rem;
}

#location-frontend-admin .acf-field input[type="text"], 
.acf-field input[type="email"], 
.acf-field input[type="number"], 
.acf-field textarea {
	border: 1px solid #0001;
	border-radius: 2px;
	background: var(--lh-snow);
	margin: 0;
	padding: 7px 15px 9px;
	font-size: 15px;
	font-weight: 500;
}

#location-frontend-admin .acf-input-append {
	border-color: #0001;
	background: var(--lh-snow);
	padding-top: 9px;
	padding-bottom: 10px;
}


#location-frontend-admin .acf-image-uploader .image-wrap {
	max-width: 100% !important;
	float: none;
	aspect-ratio: 3 / 2;
}

#location-frontend-admin .acf-image-uploader .image-wrap img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

#location-frontend-admin .acf-gallery .acf-gallery-attachment .margin:before {
	padding: 0;
	aspect-ratio: 3 / 2;
}

#location-frontend-admin .acf-gallery .acf-gallery-attachment .thumbnail img {
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	object-fit: cover;
}

#location-frontend-admin .acf-gallery .acf-gallery-side-data p {
	padding-bottom: 0;
}

#location-frontend-admin .acf-gallery .acf-gallery-side-data p.actions {
	margin-top: 5px;
}

#location-frontend-admin .acf-gallery .acf-gallery-side-data label {
	font-size: 1.3rem;
	line-height: 1.3;
}

#location-frontend-admin .acf-gallery .acf-gallery-side-data input[type="text"], 
#location-frontend-admin .acf-gallery .acf-gallery-side-data textarea {
	font-size: 1.3rem;
}


#location-frontend-admin .acf-button-group label {
	border: 1px solid #0002;
	background: var(--lh-snow);
	padding: 5px 12px 6px;
	font-size: 1.3rem;
	font-weight: 500;
}

#location-frontend-admin .acf-button-group label.selected {
	background: var(--lh-pine);
}


#location-frontend-admin .acf-field.acf-field-message .acf-input {
	font-size: 1.3rem;
	font-weight: 500;
	color: #000;
}


.single-kohde #media-frame-title h1 {
	font-family: montserrat, sans-serif;
	font-style: normal;
}


#location-frontend-admin footer {
	display: flex;
	justify-content: flex-end;
	order: 4;
}


#location-frontend-admin-reservations {
	padding: var(--site-elements-padding) 0;
}

#location-frontend-admin-reservations .wrapsper {
	max-width: 1000px;
}

#location-reservations {
	display: flex;
	font-size: 1.4rem;
	flex-flow: column;
	gap: 40px;
}


#location-reservations .location-reservations-block {
	display: flex;
	gap: 0;
}


#location-reservations .lh-location-reservations-list {
	border: 3px solid var(--lh-pine);
	padding: 15px 30px 25px;
	flex: 1;
}


#location-reservations .location-reservations-calendar {
	background: var(--lh-pine);
	color: var(--lh-snow);
	flex: 0 0 300px;
}

#location-reservations .air-datepicker--content {
	position: relative;
}

#location-reservations .air-datepicker--content:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	background: #fff0;
	z-index: 10;
}


#lh-add-reservation-dialog-content {
	font-size: 1.4rem;
}

#lh-add-reservation-dialog-content h4 {
	margin-bottom: 3px;
}

#lh-add-reservation-dialog-content p {
	padding-bottom: 15px;
}

#lh-add-reservation-dialog-content #single-location-reservation {
  border-radius: 0;
  background: none;
  padding: 0;
  gap: 0;
}

#lh-add-reservation-dialog-content #single-location-reservation-data {
	gap: 0;
}
*/

#language-switcher {
	display: flex;
	position: absolute;
	right: 24px;
	top: 0;
	height: 110px;
	font-size: 1.6rem;
	font-weight: 500;
	text-transform: uppercase;
	z-index: 11;
	align-items: center;
	gap: 6px;
}

#language-switcher > span {
	display: flex;
	position: relative;
	height: 100%;
	align-items: center;
}

#language-switcher > span:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: -6px;
	width: 100%;
	height: 6px;
	background: var(--lh-heather);
	transform: translateX(-50%);
}



