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

	#tail-columns:before, 
	#tail-columns .tail-column {
		text-align: center;
		flex: 0 0 100%;
	}

	#tail-columns .tail-column > p {
		text-align: center !important;
	}

}


@media only screen and (max-width: 960px) {
	
	:root {
		--site-wrapper-padding: 24px;
	}
	
	html {
		scroll-padding-top: 90px;
	}
	
	#head {
		display: flex;
		position: sticky;
		top: 0;
		box-shadow: #0001 0 2px 4px;
		z-index: 10;
		justify-content: flex-start;
		align-items: center;
	}

	#head > .wrapper {
		width: 100%;
	}
	
	#head > .wrapper:before {
		content: "";
		display: block;
		width: 100px;
		height: 50px;
		background: url(../_img/logo-text-404a30.svg) 50%/contain no-repeat;
		margin-bottom: 2px;
	}
	
	#nav-burger {
		display: block;
	}

	#nav-main-wrap {
		display: none;
		position: fixed;
		left: 0;
		top: 0;
		bottom: 0;
		right: 0;
		background: var(--lh-snow);
		font-size: 2.6rem;
		justify-content: center;
		align-items: center;
	}
	
	.overlay #nav-main-wrap {
		display: flex;
	}
	
	#nav-main {
		display: flex;
		width: auto;
		flex-flow: column;
		gap: 10px 0;
	}
	
	#nav-main > li {
		display: flex;
		height: auto;
		justify-content: center;
		align-items: center;
		order: revert !important;
	}


	#nav-main > .logo-item {
		margin-bottom: 30px;
		flex: 0 0 56px;
	}

	#nav-main > .logo-item > a {
		width: 56px;
		height: 132px;
		background-size: 56px auto;
		padding: 0;
	}
	

	#nav-main > li > ul {
		font-size: 2.6rem;
		flex-flow: column;
		gap: 10px 0;
		flex: 1;
	}
	
	
	#nav-main li:after {
		display: none !important;
	}


	#language-switcher {
		right: 80px;
		height: 80px;
	}


	#billboard .billboard-slide.text-overlay-size-left50 .wrapper, 
	#billboard .billboard-slide.text-overlay-size-right50 .wrapper {
		width: auto;
		margin: 0;
	}

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

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

	.page-template-page-locations .billboard-slide-text-content {
		width: revert;
	}
	
	#location-search-bar {
		flex-flow: column;
	}
	
	.location-search-bar-blocks {
		border-radius: 0;
		flex-flow: column;
	}
	
	.location-search-bar-block {
		width: 100%;
	}
	
	.location-search-bar-block + .location-search-bar-block:before {
		content: "";
		position: absolute;
		left: 2px;
		top: -2px;
		bottom: revert;
		right: 2px;
		width: revert;
		height: 2px;
	}
	
	.location-search-bar-button {
		display: block;
		margin: 0 auto;
	}


	body .ce-block.ce-featured-locations[style*="--grid-columns: 4;"] .ce-grid-wrapper {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	
	#location-left header:first-child, 
	#location-right header:first-child {
		min-height: 0;
	}
	
	.single-location-gallery .toprow .gallery-image:nth-child(3):before {
		display: flex;
	}

	.single-location-gallery .bottomrow {
		display: none;
	}

	
	.single-kohde main > .wrapper, 
	.single-kohde main > form > .wrapper {
		flex-flow: column;
	}
	
	#make-reservation-left, 
	#make-reservation-right, 
	#make-reservation-terms > .wrapper {
		padding-left: var(--site-wrapper-padding);
		padding-right: var(--site-wrapper-padding);
	}

	
	#reservation-done-header, 
	#reservation-done-content {
		flex-flow: column;
		align-items: flex-start;
	}

	#reservation-done-left {
		width: 100%;
	}


}


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

	body .ce-block.ce-multi-columns[style*="--grid-columns: 6;"] .ce-grid-wrapper {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

}


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

	body .ce-block.ce-multi-columns[style*="--grid-columns: 5;"] .ce-grid-wrapper {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: var(--site-column-margin);
	}

	body .ce-block.ce-multi-columns[style*="--grid-columns: 6;"] .ce-grid-wrapper {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: var(--site-column-margin);
	}
	
	
	body .ce-block.ce-featured-locations .ce-grid-wrapper {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	
}


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


@media only screen and (min-width: 667px) {
}


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

	:root {
		--site-wrapper-padding: 24px;
		--site-elements-padding: 40px;
	}

	#main .gallery.gallery-columns-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: 1;
	}
/*
	body .ce-block {
		margin-top: max(calc(var(--element-margin-top, 0px) / 2), var(--site-elements-padding));
		margin-bottom: calc(var(--element-margin-bottom, 0px) / 2);
		padding-top: calc(var(--element-padding-top, 0px) / 2);
		padding-bottom: calc(var(--element-padding-bottom, 0px) / 2);
	}

	body .ce-block:first-child {
		margin-top: calc(var(--element-margin-top, 0px) / 2);
	}
*/
/*	
	body .ce-block, 
	body .ce-block.ce-bgcolor {
		padding-top: max(calc(var(--element-padding-top, 0px) / 2), var(--site-elements-padding));
		padding-bottom: max(calc(var(--element-padding-bottom, 0px) / 2), var(--site-elements-padding));
	}
*/
	body .ce-block, 
	body .ce-block.ce-bgcolor {
		padding-top: max(calc(var(--element-padding-top, 0px) / 2), 40px);
		padding-bottom: max(calc(var(--element-padding-bottom, 0px) / 2), 40px);
	}

	body .ce-block.ce-bgimage.ce-imagesized {
		height: auto !important;
	}

	body .ce-block.ce-bgimage.ce-imagesized > div {
		display: block;
		height: auto;
		overflow: visible;
	}
	
	
	body .ce-block.ce-width-wrapper {
		max-width: none;
		padding-left: var(--site-wrapper-padding);
		padding-right: var(--site-wrapper-padding);
	}


	body .ce-block .ce-flex-wrapper .ce-column {
		flex: 0 0 100% !important;
	}

	body .ce-block .ce-flex-wrapper .ce-column:empty {
		display: none;
	}


	body .ce-block.ce-single-column .ce-column {
		display: block !important;
	}
	
	body .ce-block.ce-single-column .ce-content-wrap {
		max-width: 100% !important;
	}


	body .ce-block.ce-text-image {
		padding-top: 0;
	}
		
	body .ce-block.ce-text-image .ce-flex-wrapper {
		padding-bottom: var(--site-elements-padding);
		gap: calc(var(--site-elements-padding) / 2) 0;
	}

	body .ce-block.ce-text-image .ce-imagecolumn {
		order: 1;
	}

	body .ce-block.ce-text-image .ce-textcolumn {
		margin: 0 !important;
		order: 2;
	}
	
	body .ce-block.ce-text-image.ce-fill-imagecolumn .ce-imagecolumn {
		padding-top: var(--site-wrapper-padding);
	}


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

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

	body .ce-block.ce-text-image.ce-fill-imagecolumn .ce-imagecolumn > img {
		width: 100%;
	}

	body .ce-block.ce-text-image.ce-fullwidth-image .ce-fullwidth-image-wrap {
		position: static;
		width: calc(100% + var(--site-wrapper-padding) * 2) !important;
		margin-left: calc(var(--site-wrapper-padding) * -1);
	}

	body .ce-block.ce-text-image.ce-fullwidth-image .ce-fullwidth-image-wrap img {
		height: auto;
	}


	body .ce-block.ce-text-image.ce-fancy-image {
		margin-top: var(--element-margin-top, var(--site-elements-padding));
		margin-bottom: var(--element-margin-bottom, 0);
	}
	
	body .ce-block.ce-text-image.ce-fancy-image .ce-fullwidth-image-wrap img {
		width: 100% !important;
		margin: 0 !important;
	}
	
	body .ce-block.ce-text-image.ce-fancy-image .ce-textcolumn {
		padding: 0 !important;
	}


	body .ce-block.ce-multi-columns[style] .ce-grid-wrapper {
		grid-template-columns: 100%;
		gap: min(var(--row-gap, var(--site-column-margin)), 40px);
	}

	body .ce-block.ce-multi-columns[style*="--grid-columns: 6;"] .ce-grid-wrapper {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	
	#large-modal-content-wrap {
		width: 100% !important;
		max-width: calc(100vw - 40px) !important;
		max-height: calc(100vh - 40px) !important;
	}
	
	#large-modal-toolbar {
		transform: translateX(-50%);
	}
	
	.type-text #large-modal-content {
		padding: 30px;
	}
	
	.type-text #large-modal-content > :last-child {
		margin-bottom: 30px;
	}
	
	
	body .ce-block.ce-featured-locations .ce-grid-wrapper {
		grid-template-columns: 100% !important;
	}
	
	
	.single-kohde .location-item-specs {
		flex-flow: column;
	}
	
	
	#location-search-results > .wrapper {
		flex-flow: column;
		gap: 40px;
	}
	
	
	#make-reservation-header, 
	#make-reservation-done-header {
		justify-content: flex-start;
		align-items: flex-start;
		flex-flow: column;
	}
	

}


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



}


@media only screen and (max-width: 414px) {
	
	
	.single-location-gallery .toprow {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr auto;
		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: 1;
		grid-column-end: span 2;
	}
	

	#large-modal-content-wrap {
		width: 100% !important;
		max-width: calc(100vw - 20px) !important;
		max-height: calc(100vh - 20px) !important;
	}
	
	.type-text #large-modal-content {
		padding: 20px;
	}

}

