/* @define teft-viewport */

.wp-block-teft-hero__inner-container {
	max-width: calc(var(--teft-theme-content-width) + 100px);
	padding: 20px;
	position: relative;
	width: 100%;
	z-index: 2
}

.wp-block-teft-hero__inner-container > :first-child {
		margin-top: 0;
	}

.wp-block-teft-hero__inner-container > :last-child {
		margin-bottom: 0;
	}

@media (min-width: 601px) {

.wp-block-teft-hero__inner-container {
		padding: 30px
}
	}

@media (min-width: 961px) {

.wp-block-teft-hero__inner-container {
		padding: 50px
}
	}

.wp-block-teft-hero {
	background-color: #000;
	color: #fff;
	display: flex;
	flex-direction: column;
	min-height: 200px;
	overflow: hidden;
	position: relative;
	align-items: flex-end;
	flex-flow: row wrap;
	justify-content: center
}

.wp-block-teft-hero .wp-block-teft-hero__media {
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		bottom: 0;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}

.wp-block-teft-hero .wp-block-teft-hero__media::before {
		content: "";
		display: block;
		margin-top: 56.25%;
	}

.alignfull .wp-block-teft-hero__inner-container {
	max-width: calc(var(--teft-theme-site-width) + 100px);
}

.wp-block-teft-hero__gradient {
	background: linear-gradient(transparent, #012929);
	height: 410px;
	left: 0;
	position: absolute;
	width: 100%;
}

.entry-content .wp-block-teft-gallery {
	max-width: var(--teft-theme-site-width);
}

.teft-gallery-figcaptions {
	color: #7f7f7f;
	font-size: 0.88em;
	margin: 0 auto;
	max-width: var(--teft-theme-content-width);
}

.wp-block-teft-gallery ul {
	display: -ms-grid;
	display: grid;
	grid-gap: 20px;
	-ms-grid-rows: 1fr;
	-ms-grid-columns: 1fr 20px 1fr 20px 1fr;
	    grid-template: 1fr / repeat(3, 1fr);
	list-style-type: none;
	padding: 0
}

.wp-block-teft-gallery ul .blocks-gallery-image,
	.wp-block-teft-gallery ul .blocks-gallery-item {
		display: flex;
		flex-direction: column;
		flex-grow: 1;
		justify-content: center;
		margin: 0;
		position: relative
	}

.wp-block-teft-gallery ul .blocks-gallery-image figure, .wp-block-teft-gallery ul .blocks-gallery-item figure {
			height: 100%;
			margin: 0
		}

@supports ((position: -webkit-sticky) or (position: sticky)) {

.wp-block-teft-gallery ul .blocks-gallery-image figure, .wp-block-teft-gallery ul .blocks-gallery-item figure {
				align-items: flex-end;
				display: flex;
				justify-content: flex-start
		}
			}

.wp-block-teft-gallery ul .blocks-gallery-image.is-hidden, .wp-block-teft-gallery ul .blocks-gallery-item.is-hidden {
			display: none;
		}

.wp-block-teft-gallery ul .blocks-gallery-image img, .wp-block-teft-gallery ul .blocks-gallery-item img {
			display: block;
			height: auto;
			max-width: 100%;
			width: 100%
		}

@supports ((position: -webkit-sticky) or (position: sticky)) {

.wp-block-teft-gallery ul .blocks-gallery-image img, .wp-block-teft-gallery ul .blocks-gallery-item img {
				width: auto
		}
			}

.wp-block-teft-gallery ul .blocks-gallery-image a,
		.wp-block-teft-gallery ul .blocks-gallery-image img,
		.wp-block-teft-gallery ul .blocks-gallery-item a,
		.wp-block-teft-gallery ul .blocks-gallery-item img {
			flex: 1;
			height: 100%;
			-o-object-fit: cover;
			   object-fit: cover;
			width: 100%;
		}

.wp-block-teft-gallery ul .blocks-gallery-image figcaption, .wp-block-teft-gallery ul .blocks-gallery-item figcaption {
			background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0, rgba(0, 0, 0, 0.3) 70%, transparent);
			bottom: 0;
			color: #fff;
			font-size: 14px;
			left: 0;
			max-height: 100%;
			overflow: auto;
			padding: 40px 10px 9px;
			position: absolute;
			text-align: center;
			width: 100%
		}

.wp-block-teft-gallery ul .blocks-gallery-image figcaption img, .wp-block-teft-gallery ul .blocks-gallery-item figcaption img {
				display: inline;
			}

.block-gallery-count,
.block-gallery-more {
	align-items: center;
	background-color: rgba(0, 0, 0, 0.6);
	bottom: 0;
	color: #fff;
	display: inline-flex;
	height: 48px;
	justify-content: center;
	left: 0;
	line-height: 1;
	position: absolute;
	width: 48px;
}

.block-gallery-more {
	font-size: 14px;
	left: auto;
	padding: 0 14px;
	right: 0;
	width: auto;
}

.gallery-count-2 ul {
	-ms-grid-rows: 1fr;
	-ms-grid-columns: (1fr)[2];
	    grid-template: 1fr / repeat(2, 1fr);
}

.gallery-count-3 .blocks-gallery-item:nth-child(1) {
		-ms-grid-column-span: 2;
		grid-column-end: 3;
		-ms-grid-column: 1;
		    grid-column-start: 1;
		-ms-grid-row-span: 2;
		grid-row-end: 3;
		-ms-grid-row: 1;
		    grid-row-start: 1;
	}

.gallery-count-4 .blocks-gallery-item:nth-child(1) {
		-ms-grid-column-span: 3;
		grid-column-end: 4;
		-ms-grid-column: 1;
		    grid-column-start: 1;
	}

.editor-styles-wrapper .editor-writing-flow .wp-block-teft-usp .remove-usp, .wp-block-teft-usp .remove-usp {
		border-radius: 100%;
		background: none;
		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;
		position: absolute;
		top: 0;
		right: 0;
		height: 25px;
		width: 25px;
		display: block;
		opacity: 0;
		border: none;
		cursor: pointer;
		background: black;
		padding: 4px
	}

.editor-styles-wrapper .editor-writing-flow .wp-block-teft-usp .remove-usp svg, .wp-block-teft-usp .remove-usp svg {
			width: 100%;
			height: auto;
			fill: white;
		}

.editor-styles-wrapper .editor-writing-flow .wp-block-teft-usp .single-usp:hover .remove-usp, .wp-block-teft-usp .single-usp:hover .remove-usp {
		opacity: .4
	}

.editor-styles-wrapper .editor-writing-flow .wp-block-teft-usp .single-usp:hover .remove-usp:hover, .wp-block-teft-usp .single-usp:hover .remove-usp:hover {
			opacity: 1;
		}

.editor-styles-wrapper .editor-writing-flow .wp-block-teft-usp .add-usp, .wp-block-teft-usp .add-usp {
		background: none;
		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;
		border: 2px dashed rgba(0,0,0,.5);
		background: rgba(0,0,0,0);
		cursor: pointer;
		color: rgba(0,0,0,.8);
		transition: all 250ms;
		font-size: 22px
	}

.editor-styles-wrapper .editor-writing-flow .wp-block-teft-usp .add-usp:hover, .wp-block-teft-usp .add-usp:hover {
			background: rgba(0,0,0,.05);
			color: rgba(0,0,0,1);
		}

.teft-form-row {
	padding: 0.5rem;
	border: 2px dashed #ddd;
	display: flex
}

.teft-form-row > div {
		width: 100%;
		max-width: var(--teft-theme-content-width);
	}

.teft-slideshow-slide {
	width: 100%;
	position: relative
}

.teft-slideshow-slide.has-image {
		height: 640px;
		max-height: 70vh;
	}

.teft-slideshow-slide .teft-slide-media {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat
	}

.teft-slideshow-slide .teft-slide-media::after {
			position: absolute;
			bottom: 0;
			left: 0;
			background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.7));
			width: 100%;
			height: 70%;
			content: "";
		}

.teft-slideshow-slide .teft-slide-media video {
			width: 100%;
			height: 100%;
			-o-object-fit: cover;
			   object-fit: cover;
		}

.teft-slideshow-slide .teft-slideshow-slide-body {
		position: absolute;
		bottom: 0;
		left: 0;
		color: white;
		width: 100%;
		padding: 0 1rem
	}

.teft-slideshow-slide .teft-slideshow-slide-body .inner-wrapper {
			width: 100%;
			max-width: var(--teft-theme-site-width);
			margin: 0 auto;
			padding-bottom: 4rem
		}

.teft-slideshow-slide .teft-slideshow-slide-body .inner-wrapper > * {
				max-width: 500px;
				text-shadow: 0 0 4px rgba(0,0,0,0.5);
			}

.teft-slideshow-slide .teft-slideshow-slide-body .inner-wrapper h2 {
				margin-bottom: 1rem;
			}

.add-slides {
	width: calc(100% - 4rem);
	margin: 1rem auto 0;
	display: block;
	background: none;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	border: 2px dashed rgba(0,0,0,.5);
	background: rgba(0,0,0,0);
	cursor: pointer;
	color: rgba(0,0,0,.8);
	transition: all 250ms;
	font-size: 18px;
	padding: 1.5rem
}

.add-slides:hover {
		background: rgba(0,0,0,.05);
		color: rgba(0,0,0,1);
	}

.remove-slide {
	border-radius: 100%;
	background: none;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	position: absolute;
	top: 1rem;
	right: 1rem;
	height: 25px;
	width: 25px;
	display: block;
	opacity: 0;
	border: none;
	cursor: pointer;
	background: black;
	padding: 4px;
	z-index: 50
}

.remove-slide svg {
		width: 100%;
		height: auto;
		fill: white;
	}

.teft-slideshow-slide:hover .remove-slide {
	opacity: .4
}

.teft-slideshow-slide:hover .remove-slide:hover {
		opacity: 1;
	}

.wp-block-teft-slideshow:not(.is-selected) .block-inner {
		position: relative;
		height: 640px;
		max-height: 70vh
	}

.wp-block-teft-slideshow:not(.is-selected) .block-inner .teft-slideshow-slide {
			width: 100%;
			height: 100%;
			top: 0;
			left: 0;
			position: absolute;
			opacity: 0;
			pointer-events: none;
			transition: opacity 1100ms;
			overflow: hidden
		}

.wp-block-teft-slideshow:not(.is-selected) .block-inner .teft-slideshow-slide .teft-slideshow-slide-body {
				transform: translateX(-200px);
				opacity: 0;
				transition: transform 0ms 1100ms, opacity 700ms;
			}

.wp-block-teft-slideshow:not(.is-selected) .block-inner .teft-slideshow-slide.active {
				opacity: 1;
				pointer-events: all
			}

.wp-block-teft-slideshow:not(.is-selected) .block-inner .teft-slideshow-slide.active .teft-slideshow-slide-body {
					transform: translateX(0px);
					opacity: 1;
					transition: all 600ms 800ms;
				}

.wp-block-teft-slideshow:not(.is-selected).is-selected .block-inner {
			display: block;
		}

.wp-block-teft-slideshow:not(.is-selected) .progress-bar {
		height: 5px;
		background: white;
		position: absolute;
		bottom: 0;
		left: 0;
		transition: all 100ms linear;
		opacity: 0.6;
		z-index: 40
	}

.wp-block-teft-slideshow:not(.is-selected) .progress-bar.reset {
			transition: none;
		}

.teft-slideshow-navigation {
	text-align: center;
	transform: translateY(-100%);
	position: relative;
	z-index: 20;
	padding-bottom: 2rem;
	margin-bottom: -3rem
}

.teft-slideshow-navigation button {
		border-radius: 100%;
		width: 14px;
		height: 14px;
		border: 1px solid rgba(255,255,255,0);
		background: none;
		padding: 2px;
		opacity: 0.4;
		margin: 0 0.5rem
	}

.teft-slideshow-navigation button::before {
			width: 8px;
			height: 8px;
			background: white;
			content: "";
			display: block;
			border-radius: 100%;
		}

.teft-slideshow-navigation button:hover {
			opacity: 1;
		}

.teft-slideshow-navigation button.active {
			opacity: 1;
			border-color: rgba(255,255,255,1);
		}

.wp-block-teft-byline .block-inner, .editor-styles-wrapper .wp-block-teft-byline .block-inner {
		display: flex;
		align-items: center;
	}

.wp-block-teft-byline .byline-image, .editor-styles-wrapper .wp-block-teft-byline .byline-image {
		width: 64px;
		height: 64px;
		border-radius: 100%;
		margin-right: 1rem;
		flex-shrink: 0;
		background: #ddd;
		overflow: hidden
	}

.wp-block-teft-byline .byline-image img, .editor-styles-wrapper .wp-block-teft-byline .byline-image img {
			width: 100%;
			height: 100%;
			-o-object-fit: cover;
			   object-fit: cover;
		}

.wp-block-teft-byline h3,
	.wp-block-teft-byline p,
	.editor-styles-wrapper .wp-block-teft-byline h3,
	.editor-styles-wrapper .wp-block-teft-byline p {
		margin: 0;
	}

.wp-block-teft-byline h3, .editor-styles-wrapper .wp-block-teft-byline h3 {
		font-size: var(--teft-typography-fs-paragraph-large);
		line-height: var(--teft-typography-lh-paragraph-large);
	}

.wp-block-teft-byline p, .editor-styles-wrapper .wp-block-teft-byline p {
		font-size: var(--teft-typography-fs-meta);
		line-height: var(--teft-typography-lh-meta);
	}

.wp-block-teft-postmeta,
.editor-styles-wrapper .wp-block-teft-postmeta {
	margin-top: 1rem
}

.wp-block-teft-postmeta .block-inner, .editor-styles-wrapper .wp-block-teft-postmeta .block-inner {
		padding-top: 1rem;
		border-top: 1px solid #C4C4C4;
		display: flex;
		justify-content: space-between;
	}

.wp-block-teft-postmeta .written-by, .editor-styles-wrapper .wp-block-teft-postmeta .written-by {
		font-weight: 600;
	}

.wp-block-teft-postmeta p, .editor-styles-wrapper .wp-block-teft-postmeta p {
		margin: 0;
		font-size: 12px;
		line-height: 1rem;
	}

.wp-block-teft-postmeta a, .editor-styles-wrapper .wp-block-teft-postmeta a {
		width: 24px;
		height: 24px;
		display: inline-block;
		border: none;
		background: var(--theme-dark-grey);
		border-radius: 6px;
		margin-left: 0.5rem;
		padding: 0;
		background-position: center;
		background-repeat: no-repeat;
		background-size: 15px auto;
	}

.wp-block-teft-faq + .wp-block-teft-faq {
	margin-top: calc(calc(var(--teft-spacing-block-margin) - 30px) * -1);
}

.wp-block-group__inner-container .wp-block-teft-faq + .wp-block-teft-faq {
	margin-top: 30px;
}

.editor-styles-wrapper .editor-writing-flow h3.teft-faq-question,
.teft-faq-question {
	font-family: var(--teft-typography-font-family);
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 0;
}

.editor-styles-wrapper p.teft-faq-answer,
.teft-faq-answer {
	margin-top: 5px;
}
