/**
 * Theme Name: Castlecraig Clifftops
 * Description: A bespoke Theme for Castlecraig Clifftop lodges built on a modern framework
 * Author: Plexus Media
 * Template: blocksy
 * Text Domain: luxury-highland-lodges
 */

ul.plexus-grid {
	display: grid;
	grid-template-columns: none;
	grid-gap: 1.5rem;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}	
ul.plexus-grid, ul.plexus-grid li {
	list-style: none;
	padding: 0;
	line-height: .8;
}

.plexus-grid li {
	flex: 0 0 33.3333333%;
	margin: 0;
}

.plexus-grid li > a {
	display: flex;
	height: 100%;
	align-content: flex-end;
	position: relative;
	width: 100%;
	flex-wrap: wrap;
	z-index: 1;
	text-decoration: none;
	align-items: flex-end;
	line-height: 1.3;
}
.plexus-grid[data-valign="middle"] li > a {
	align-content: center;

}
.plexus-grid li > a h3 {
	text-align: center;
	color: var(--theme-palette-color-5);
	background: rgba(51,51,51,.75);
	padding: .5em 1em;
	flex: 1;
	margin: 0;
	transition: .6s;
}

.plexus-grid li > a:hover h3 {
	background: rgba(51,51,51,.90);
	}

.plexus-grid[data-align="left"] li > a h3 {
	text-align: left;
}
.plexus-grid[data-align="right"] li > a {
	justify-content: flex-end;
}
.plexus-grid li > a {
	
	}
.plexus-grid li > a > * {
flex: 0 0 1;
	z-index: 1;
	position: relative;
	text-decoration: none;
	
}
.plexus-grid .img-backg {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
	z-index: 0;
}
.plexus-grid.is-grid li a:after {
	content: '';
	display: inline-flex;
	height: 0;
	float: left;
	padding: 100% 0 0 0;
}

.plexus-square-grid h3.wp-block-getwid-template-post-title {
	margin: 0;
	width: 100%;
	font-weight: 300;
}
.plexus-square-grid:before {
	content: '';
	height: 0;
	padding: 100% 0 0 0;
display: block;
}
.plexus-square-grid h3.wp-block-getwid-template-post-title a {
text-decoration: none;
	display: block;
	padding: 15px;
	text-align: center;
	line-height: 1em;
	background: rgba(0,0,0,.5)
}
.no-v-margin {
	margin-top: 0;
	margin-bottom: 0;
}

 .editor-styles-wrapper #post-title-0 {
	font-weight: 300;
	font-size: 32px;
	letter-spacing: .2rem;
	text-align: center;
}

.alignfull > .wp-block-group__inner-container > iframe {
  min-width: 100%;
}
.site-title-container .site-title > a > span {
	color: var(--theme-palette-color-1);
}
.site-title-container .site-title > a > span:first-of-type {
	color: var(--theme-palette-color-2);
}

[data-menu] > ul > li > a::before, [data-menu] > ul > li > a::after {
	height: 3px;
	transition: .7s;
}

p + .wp-block-gallery {
	margin-top: 3rem;
}


.plexus_slider {
	overflow: hidden;
}
.plexus_slider .plexus_slide {
	min-height: 640px;	
	max-height: 700px;	
	max-height: calc(100vh - 140px);
	overflow: hidden;
		display: flex;
	width: 100%;
}
.plexus_slider {
	opacity: 1;
	transition: 1s;
}
.plexus_slider:not(.slick-initialized) {
opacity: 0;
}
.plexus_slider .plexus_slide {
		display: flex !important;
}
.plexus_slider .plexus_slide, .plexus_slider .plexus_banner {
	overflow: hidden;
	position: relative;
}
.plexus_slider .plexus_banner, .plexus_slider .plexus_banner img {
	position: absolute;
	top: 0;
	width: 100%;
	left: 0;
	height: 100%;
}
.plexus_slider .plexus_banner img { 
	object-fit: cover;
}
.plexus_slider .has_img .plexus_inner:before {
	content: '';
	padding: 60% 0 0 0;
	height: 0;
	display: inline-flex;
}
.plexus_slider .plexus_inner {
	width: 100%;
	justify-content: flex-end;
	text-align: center;
	display: flex;
	width: 100%;
	flex-direction: column;
	padding: 0;
	font-size: 30px;
	max-width: var(--theme-container-width);
	margin: 0 auto;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.plexus_slider .plexus_inner > * {
	color: #fff;
	text-shadow: 0px 8px 13px rgba(0,0,0,0.4),
             0px 18px 23px rgba(0,0,0,0.1);
	position: relative;
	margin: 0;
	padding: 2% 0;
	z-index: 1;
	animation-duration: 2s;
}
.plexus_slider .plexus_inner > *:after {
content: '';
	  background: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0.738) 19%, rgba(0, 0, 0, 0.541) 34%, rgba(0, 0, 0, 0.382) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.002) 98.2%, transparent 100%);
	transform: rotate(180deg);
	position: absolute;
	left: 50%;
	display: block;
	width: 100vw;
	margin-left: -50vw;
	top: 0;
	bottom: 0;
	z-index: -1;
	
}
.plexus_slider .slick-arrow {
z-index: 2;
	width: 2rem;
	height: 2rem;
	border-top: 5px solid #fff;
	text-indent: 2rem;
	overflow: hidden;
	transition: 1s;
}
.plexus_slider .slick-arrow:hover { 
	border-color: var(--theme-palette-color-4);
}
.plexus_slider .slick-prev {
    left: 2rem;
		border-left: 5px solid #fff;
 	transform: rotate(310deg);
}
.plexus_slider .slick-next {
    right: 2rem;
		border-right: 5px solid #fff;
 	transform: rotate(45deg);
}

a.button, .button, a.wp-block-button__link {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	min-width: 12rem;
	text-align: center;
}
p.has-medium-font-size {
	font-weight: 400;
	color: var(--theme-palette-color-4);
	letter-spacing: .0625em;
}
#featured_image {

}
#featured_image .plexus_wrapper.has_img {
	min-height: 500px;	
	max-height: 700px;	
	max-height: calc(100vh - 120px);
	overflow: hidden;
		display: flex;
	width: 100%;
}
#featured_image .plexus_wrapper, #featured_image .plexus_banner {
	overflow: hidden;
	position: relative;
}
#featured_image .plexus_banner, #featured_image .plexus_banner img {
	position: absolute;
	top: 0;
	width: 100%;
	left: 0;
	height: 100%;
}
#featured_image .plexus_banner img { 
	object-fit: cover;
}
#featured_image .has_img .plexus_inner:before {
	content: '';
	padding: 60% 0 0 0;
	height: 0;
	display: inline-flex;
}
#featured_image .plexus_inner {
	width: 100%;
	justify-content: flex-end;
	position: relative;
	text-align: center;
	display: flex;
	width: 100%;
	flex-direction: column;
	padding: 5vh 0;
	font-size: 33px;
	letter-spacing: .125em;
	max-width: var(--theme-container-width);
	margin: 0 auto;
}
#featured_image .plexus_inner > * {
	color: #fff;
	text-shadow: 0px 2px 1px rgba(0,0,0,0.8),
		0px 4px 3px rgba(0,0,0,0.7),
		0px 6px 8px rgba(0,0,0,0.6),
             0px 8px 13px rgba(0,0,0,0.4),
             0px 18px 23px rgba(0,0,0,0.1);
}
.has-post-thumbnail .hero-section {
	display: none;
}


.building-form {

}



.hentry .no-v-margin {
margin-top: 0;
	margin-bottom: 0;
}

.hentry .acf-fields > .acf-field, .af-form .acf-fields.-border {
border: 0 !important;
}

#main .wpbs-form-container {
	margin-left: auto !important;
	margin-right: auto !important;

}
#wpbs-form-submit-1 {
	width: 100% !important;
	font-weight: 300 !important;
}
.current-page-ancestor > a {
color: var(--paletteColor2);
}
#menu-item-145 a {
	background: var(--theme-palette-color-1);
	margin-left: 5%;
	color: #000000;
	transition: .8s;
}
#menu-item-145 a:hover, #menu-item-145.current_page_item a {
	background: var(--theme-palette-color-2);
	color: #000000;
}
.site-main {
}
.wpbs-overview-row-header-inner a {
color: var(--theme-palette-color-2);
	font-size: 17px;
}


#my-contacts-3 p {
display: inline-block; margin: 0 20px;
	font-size: .81em;
}

.ct-footer [data-icons-type*=":"] .ct-icon-container {
	width: calc(var(--theme-icon-size)*2);
	height: calc(var(--theme-icon-size)*2)
}

.plexus-grid .inner, .plexus-grid .the_top {
	position: relative;
}

.plexus-grid[data-column="1"][data-image-position="0"] .the_image {
	margin-bottom: 2rem;
}
.plexus-grid[data-column="1"][data-image-position="0"] .the_head, .plexus-grid[data-column="1"][data-image-position="0"] .the_text{
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}
.plexus-grid[data-column="1"][data-image-position="0"] .plexus_inner h2 {
	text-align: center;
}
.plexus-grid[data-column="1"] {
	margin: 70px 0;
}
.plexus-grid[data-column="1"]:last-child { 
	margin-bottom: 0;
}
.plexus-grid[data-column="1"] .inner .the_text > *, .plexus-grid[data-column="1"][data-image-position="1"] .inner .the_head h2 {
	line-height: var(--theme-line-height);
	max-width: var(--theme-default-editor, var(--theme-block-max-width));
	margin: auto;
	text-align: center;
}
.plexus-grid[data-column="1"][data-image-position="1"] .inner .the_top .the_head {
	position: absolute;
	width: 90%; 
	bottom: 17%;
	text-align: center;
	margin: auto;
	left: 5%;
}
.plexus-grid[data-column="1"][data-image-position="1"] .inner .the_top .the_head h2 {
	display: inline-block;
	background: rgba(255,255,255,.75);
	font-weight: 300;
	padding: .75rem 2.5rem;
	color: #000;
	text-transform: uppercase;
	margin: auto;
}
.plexus-grid[data-column="1"][data-image-position="1"] .inner .the_top .the_head h2 a {
	text-decoration: none;
	color: inherit;
	
	
}
.plexus-grid[data-column="1"][data-image-position="1"] .inner .the_text {
	padding: 60px 0 60px 0;
	margin: auto;
		background: #fff;
position: relative;
	max-width: 90%;
}
.footer_logos li {
	text-align: center;
}
.footer_logos li figure {
max-width: 300px;
	margin: auto !important;
}






.fadeIn {
animation: fadeIn ease 3s;
  animation-duration: 3s;
-webkit-animation: fadeIn ease 2s;
}
@keyframes fadeIn {
0% {opacity:0;}
100% {opacity:1;}
}

@-webkit-keyframes fadeIn {
0% {opacity:0;}
100% {opacity:1;}
}

@media print 
{
	#header {
		display: none;
	}
	.ct-footer {
		display: none;
	}
}
.wpbs_s-search-widget h2 {
	text-align: center;
}
.dateChosen .wpbs-main-wrapper .wpbs-calendar {
display: none;
}
.dateChosen .wpbs-main-wrapper .wpbs-calendar:first-child { 
	display: block;
	margin: 50px;
}
@media (min-width: 1024px) {
	.fixedScroll {
		overflow: hidden;
		clip-path: inset(0);
		-webkit-clip-path: inset(0);
		background: #fff;
				  transform: translate3d(0,0,0);

	}

	.plexus-grid[data-column="1"][data-image-position="1"] .fixedScroll .scrolling {
		min-height: 100vh;
		position: relative;
		 -webkit-transform: translateZ(0);
	}
	.fixedScroll .scrolling img.img-bkg {
	object-fit: cover; 
		left:0;
		top:0;
		width: 100%; 
		height: 100%;
		z-index: 0;
			position: fixed !important;

	}
}


@media (min-width: 640px) {
	.dateChosen 
	.wpbs-main-wrapper {
	display: flex;
}
	.dateChosen 
	.wpbs-main-wrapper .wpbs-container {
	order: 2;
	}
	
	.plexus-grid[data-column="1"][data-image-position="0"] .the_top {
	position: static;
}
.plexus-grid[data-column="1"][data-image-position="0"] .inner { 
	position: relative; 
	overflow: hidden;
}
.plexus-grid[data-column="1"][data-image-position="0"] .plexus_inner {
	display: flex;
	z-index: 1;
	width: 50%;
	padding: 3rem;
	color: #fff;
	background: rgba(0,0,0,.4);
	 align-items: center;
  justify-content: center;	
flex-wrap: wrap;
	min-height: 50vw;
		position: static;
	flex-direction: column;
}
.plexus-grid[data-column="1"][data-image-position="0"] .plexus_inner h2 {
 color: #fff;
}
.plexus-grid[data-column="1"][data-image-position="0"] .plexus_inner > * { 
	width: 100%;
}

.plexus-grid[data-column="1"][data-image-position="0"] .img-bkg {
	position: absolute;
	z-index: -1;
	top: 0;
	height: 100%;
	left: 0;
	width: 100%;
	object-fit: cover;
}
	
	.entry-content .plexus-grid, .editor-styles-wrapper .plexus-grid {
			grid-template-columns: repeat(var(--plexCols), 1fr);
	}	
	ul.columns {
		column-count: 3;
		column-gap: 3rem;
	}
}

.kenburns-top {
	-webkit-animation: kenburns-top 3s ease-out both;
	        animation: kenburns-top 3s ease-out both;
}
.fade-in {
	-webkit-animation: fade-in 3s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in 3s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}



/**
 * ----------------------------------------
 * animation kenburns-top
 * ----------------------------------------
 */
@-webkit-keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1.15) translateY(0);
            transform: scale(1.15) translateY(0);
    -webkit-transform-origin: 50% 16%;
            transform-origin: 50% 16%;
  }
  100% {
    -webkit-transform: scale(1) translateY(-15px);
            transform: scale(1) translateY(-15px);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}
@keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1.15) translateY(0);
            transform: scale(1.15) translateY(0);
    -webkit-transform-origin: 50% 16%;
            transform-origin: 50% 16%;
  }
  100% {
    -webkit-transform: scale(1) translateY(-15px);
            transform: scale(1) translateY(-15px);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}
