/**
 * Theme Name: Caley Cruisers
 * Description: A bespoke Theme for Caley Cruisers based on a clean, modern Theme
 * Author: Plexus Media
 * Template: blocksy
 * Text Domain: canal-boat-hire-inverness
 */

ul.ticks {
  margin: 0 auto;
  padding-left: 1.2rem;
}

ul.ticks li {
  position: relative;
  list-style-type: none;
  padding-left: calc(.5*var(--theme-list-indent));
  margin-bottom: 0.5rem;
}

ul.ticks li:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: calc(var(--theme-font-size)/7);
    width: calc(var(--theme-font-size)/2.5);
    height: calc(var(--theme-font-size)/1.25);
    border-width: 0 calc(var(--theme-font-size)/5) calc(var(--theme-font-size)/5) 0;
    border-style: solid;
    border-color: var(--theme-palette-color-1);
    transform-origin: bottom left;
    transform: rotate(45deg);
}

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 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: .375rem;
	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;
}

.entry-content .no-padding {
	padding: 0 !important;
}

.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);
}

.wp-block-media-text .wp-block-media-text__content {
	padding-top: 4rem;
	padding-bottom: 4rem;

}
.has-palette-color-1-background-color .wp-block-button.is-style-outline .has-palette-color-8-color, .has-palette-color-1-background-color .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: var(--theme-palette-color-8);
	color:  var(--theme-palette-color-8);
}

.plexus-faqs dt.hasHidden {
margin-top: calc(2*var(--theme-description-list-spacing));
margin-left: var(--theme-description-list-indent);
margin-bottom: calc(var(--theme-description-list-spacing) * 2);
}
.plexus-faqs dt.hasHidden:before {
	content: '';
	position: absolute;
	margin-left: calc(-1 * var(--theme-description-list-indent));
	height: .75rem;
	width: .75rem;
	border-right: 1px solid;
		border-bottom: 1px solid;
	text-align: center;
	line-height: 1rem;
		transform: rotate(-45deg);
	transition: .5s;
	margin-top: .5rem;
margin-left: -1.5rem;

}
.plexus-faqs dt.hasHidden:target h3 {
	cursor: text;
}
.plexus-faqs dt.hasHidden.toggled:before, .plexus-faqs dt.hasHidden:target:before { 
		transform: rotate(45deg);
	margin-top: .25rem;
margin-left: -1.25rem;
}
.plexus-faqs dt.hasHidden + dd {
	max-height: 0;
	overflow: hidden;
	transition: .5s;
	opacity: 0;
	color: var(--theme-palette-color-3);
	padding-bottom: .5rem;
	position: relative;
}
.plexus-faqs dt.hasHidden + dd:after { 
	content: '';
	position: absolute;
	width: 0;
	height: 2px;
	background: var(--theme-palette-color-1);
	bottom: 0;
	left: 0;
	transition: 1s;
}
.plexus-faqs dt.hasHidden + dd.nowShown, .plexus-faqs dt.hasHidden:target + dd {
	max-height: 3000px; 
	opacity: 1;
}
.plexus-faqs dt.hasHidden + dd.nowShown:after, .plexus-faqs dt.hasHidden:target + dd:after { 
	width: 100%;
}


.ct-footer [data-row="middle"] {

}


.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;
	}
}

@media only screen and (min-width: 640px) {
	.entry-content .plexus-grid, .editor-styles-wrapper .plexus-grid {
			grid-template-columns: repeat(var(--plexCols), 1fr);
	}	
	ul.columns {
		column-count: 3;
		column-gap: 3rem;
	}
}

@media only screen and (max-width: 640px) {
	.has-large-font-size {
		font-size: 20px !important;
	}
	.has-medium-font-size {
		font-size: 18px !important;
	}
}