article.page article.chapter {
	--background: transparent;
	--padding: var(--default-padding-chapter);

	background: var(--background);
	padding: var(--padding);
	max-width: 100vw;
}


/** -------------------------------------
				 PADDING
------------------------------------- **/
article.page article.chapter.slim {
	--padding: var(--default-padding-chapter-slim);
}

article.page article.chapter.wide {
	--padding: 10px var(--default-padding-sides);
}
/** --------------------------------- **/


/** -------------------------------------
		       BACKGROUNDS
------------------------------------- **/
article.chapter.background {
	background: var(--background);
}

article.chapter.background.primary {
	--background: var(--color-primary);
}

article.chapter.background.secondary {
	--background: var(--color-secondary);
}

article.chapter.background.tertiary {
	--background: var(--color-tertiary);
}

article.chapter.background.split {
	background: transparent;
}

article.chapter.background.split {
	position: relative;
}

article.chapter.background.split::after {
	--height: 50%;
	background: var(--background);
	display: block;
	content: '';
	width: 100%;
	height: var(--height);
	position: absolute;
	left: 0;
	z-index: -1;
}

article.chapter.background.split.high::after{
	--height: 75%;
}

article.chapter.background.split.top::after {
	top: 0;
}

article.chapter.background.split.bottom::after {
	bottom: 0;
}

article.chapter.background {
	h1, h1 a, .heading1, .heading1 a,
	h2, h2 a, .heading2, .heading2 a,
	h3, h3 a, .heading3, .heading3 a,
	h4, h4 a, .heading4, .heading4 a,
	h5, h5 a, .heading5, .heading5 a,
	h6, h6 a, .heading6, .heading6 a {
		--color: var(--color-white);
	}

	div.text {
		h1, h1 a, .heading1, .heading1 a,
		h2, h2 a, .heading2, .heading2 a,
		h3, h3 a, .heading3, .heading3 a,
		h4, h4 a, .heading4, .heading4 a,
		h5, h5 a, .heading5, .heading5 a,
		h6, h6 a, .heading6, .heading6 a {
			--color: var(--color-white);
		}
	}
}

article.chapter.background.secondary {
	h1, h1 a, .heading1, .heading1 a,
	h2, h2 a, .heading2, .heading2 a,
	h3, h3 a, .heading3, .heading3 a,
	h4, h4 a, .heading4, .heading4 a,
	h5, h5 a, .heading5, .heading5 a,
	h6, h6 a, .heading6, .heading6 a {
		--color: var(--color-primary)!important;
	}
}
/** ----------------------------------------
	block_image_*.html
/** -------------------------------------**/
article.chapter div.container {
	--gap: 20px;
	display: flex;
	gap: var(--gap);
	justify-content: center;
	align-items: center;
}

article.chapter div.container.start {
	align-items: flex-start;
}

article.chapter.reversed div.container {
	flex-direction: row-reverse;
}

article.chapter div.container div.images {
	flex: 0 0 33%;
}

article.chapter div.container div.images ul.flex-gallery {
	padding: 0;
}

article.chapter div.container div.image {

}

article.chapter div.container div.image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

article.chapter.card div.container {
	--gap: 0;
}

article.chapter.card div.container div.text {
	max-width: 50%;
	position: relative;
	margin: 0 0 0 -5%;
	z-index: 20;
}

article.reversed.chapter.card div.container div.text {
	margin: 0 -5% 0 0;
}

article.chapter.circle div.container div.image, article.chapter.card div.container div.image {
	flex: 0 0 33%;
	text-align: center;
}

article.chapter.circle div.container div.image img {
	border-radius: 50%;
	max-width: 600px;
	aspect-ratio: 1;
}

article.chapter.circle div.container div.text {
	max-width: 320px;
}

article.chapter.circle div.container {
	--gap: 10%;
}

article.chapter.card.social div.container {
	align-items: normal;
	justify-content: center;
}

article.chapter.card.social div.container > div.image img {
	aspect-ratio: 16/9;
}

article.chapter.card.social div.container div.text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-wrap: wrap;
}

article.chapter.circle, article.chapter.card {
	div.text {
		h1, h1 a, .heading1, .heading1 a,
		h2, h2 a, .heading2, .heading2 a,
		h3, h3 a, .heading3, .heading3 a,
		h4, h4 a, .heading4, .heading4 a,
		h5, h5 a, .heading5, .heading5 a,
		h6, h6 a, .heading6, .heading6 a {
			--color: var(--color-black);
			line-height: 1.4;
		}
	}
}



/** ==================================== flex-gallery ==================================== **/
ul.flex-gallery {
	--justify-content: flex-start;
	--background: transparent;
	--padding: 0;
	--margin: 0;

	--items: 3;
	--item-offset: 20px;
	--item-width: calc( (100% - (var(--item-offset) * (var(--items) - 1))) / var(--items));

	--label-padding: 2px 6px;
	--label-background: var(--color-primary);
	--label-color: var(--color-white);

	display: flex;
	flex-wrap: wrap;
	justify-content: var(--justify-content);
	gap: var(--item-offset);
	margin: var(--margin);
	background: var(--background);
	padding: var(--padding);
	box-sizing: border-box;
}

ul.flex-gallery.one {
	--items: 1;
}


ul.flex-gallery.two {
	--items: 2;
}

ul.flex-gallery.four {
	--items: 4;
}

ul.flex-gallery.five {
	--items: 5;
}

ul.flex-gallery h2 {
	--font-size: var(--font-size-normal);
	--line-height: var(--line-height-normal);
	--font-weight: 400;
}

/** OVERVIEW **/
ul.flex-gallery.overview {
	--title-padding: 7px 0;
	--title-background: transparent;
	--title-background-hover: transparent;
	--title-color: var(--color-primary);
	--title-color-hover: var(--color-primary-dark);
}

/** ATTACHED TYPE **/
ul.flex-gallery.attached_type {
	--background: transparent;
	--padding: 25px var(--default-padding-sides);

	--item-flex-direction: column;
	--item-background: var(--color-white);
	--item-background-hover: var(--color-white);
	--item-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
	--item-border-radius: 40px;

	--icon-color: var(--color-primary);
	--icon-font-size: 40px;
	--icon-margin: 0;
	--icon-padding: 10px 0;
	--icon-border: 0;

	--image-polaroid: 0;
	--image-polaroid-padding: 4px;

	--item-title-color: var(--color-gray-darkest);
	--item-title-margin: 0 0 10px;

	--item-content-color: var(--color-black);
	--item-content-margin: 0;
	--item-content-padding: 1em 2em;
	--item-content-text-align: center;

	--image-aspect-ratio: 16/10;
}

ul.flex-gallery li {
	display: block;
	flex: 0 0 var(--item-width);
	background: none;
	padding: 0!important;
	margin: 0!important;
	position: relative;
}

ul.flex-gallery.overview {
	--justify-content: flex-start;
}

ul.flex-gallery li:before {
	content: none!important;
}

ul.flex-gallery li .item {
	display: block;
	text-decoration: none;
	width: 100%;
	height: 100%;
	position: relative;
}

ul.flex-gallery li .item div.wrapper, article.chapter .first-image div.wrapper {
	--border-radius: 0;
	--shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;

	border-radius: var(--border-radius);
	box-shadow: var(--shadow);
}

ul.flex-gallery li .item div.wrapper.car {
	aspect-ratio: auto;
}

ul.flex-gallery li .item div.wrapper img, article.chapter .first-image div.wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: var(--default-transition);
	opacity: var(--image-opacity);
	transform: scale(var(--image-scale));
	border-radius: var(--border-radius);
}

ul.flex-gallery li .item:hover div.wrapper img, article.chapter .first-image:hover div.wrapper img {
	opacity: var(--image-opacity-hover);
	transform: scale(var(--image-scale-hover));
}

ul.flex-gallery li .item span.label {
	position: absolute;
	top: 0;
	left: 0;
	padding: var(--label-padding);
	background: var(--label-background);
	color: var(--label-color);
	font-weight: 500;
	z-index: 10;
}

ul.flex-gallery li .item span.label:empty {
	display: none;
}

/** FLEX OVERVIEW **/
ul.flex-gallery.overview li .item h2 {
	background:var(--title-background);
	text-align: center;
	color: var(--title-color);
	padding: var(--title-padding);
	box-sizing: border-box;
	margin: 0.5em 0 0;
	transition: var(--default_transition);
}

ul.flex-gallery.overview li .item:hover h2 {
	background: var(--title-background-hover);
	color: var(--title-color-hover);
}

ul.flex-gallery.overview li .item p {
	text-align: center;
	font-weight: 700;
}

ul.flex-gallery.overview li .item p span {
	font-size: var(--font-size-small);
	color: var(--color-black);
	font-weight: 300;
	text-decoration: line-through;
}

ul.flex-gallery.zoom {
	--item-offset: 1em;
	--float: left;
	--offset: 20px;

	float: var(--float);
	padding: 0 var(--offset) var(--offset) 0;
	/**max-width: calc(33% - var(--offset));**/
	box-sizing: border-box;
}

ul.flex-gallery.zoom.right {
	--float: right;
	padding: 0 0 var(--offset) var(--ofset);
}

ul.flex-gallery.zoom li:first-of-type {
	flex: 0 0 100%;
}

/** ATTACHED TYPE **/
ul.flex-gallery.attached_type li:hover .item {
	background: var(--item-background-hover);
}

ul.flex-gallery.attached_type li .item {
	display: flex;
	flex-direction: var(--item-flex-direction);
	background: var(--item-background);
	padding: calc(var(--image-polaroid) * var(--image-polaroid-padding));
	box-sizing: border-box;
	box-shadow: var(--item-shadow);
	border: var(--item-border);
	border-radius: var(--item-border-radius);
	transition: var(--default_transition);
	overflow: hidden;
}

ul.flex-gallery.attached_type li .item div.icon {
	display: flex;
	background: var(--icon-background, transparent);
	margin: var(--icon-margin);
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: var(--icon-padding, 0);
	box-sizing: border-box;
	flex: 1;
}

#trump.flex-gallery.attached_type li .item div.icon {
	flex: 1 0 64px;
}

ul.flex-gallery.attached_type li .item div.icon i {
	color: var(--icon-color);
	font-size: var(--icon-font-size);
}

ul.flex-gallery.attached_type li .item div.content {
	background: var(--item-background);
	padding: var(--item-content-padding);
	box-sizing: border-box;
	flex: 0 1 auto;
}

ul.flex-gallery.attached_type li .item div.content h2 {
	color: var(--item-title-color);
	font-weight: var(--item-title-font-weight, 400);
	margin: var(--item-title-margin);
	text-align: var(--item-content-text-align);
}

ul.flex-gallery.attached_type li .item div.content p {
	text-align: center;
	margin: var(--item-content-margin);
	color: var(--item-content-color);
	text-align: var(--item-content-text-align);
}

ul.flex-gallery.attached_type li .item div.content span.next {
	display: block;
	text-align: center;
	margin: var(--attached-type-item-content-margin);
	color: var(--a-color);
	font-weight: 400;
}

ul.flex-gallery li .item div.footer {
	margin: 0.5em 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

/** ==================================== flex-overview ==================================== **/
.flex-overview > div {
	display: flex;
	gap: 1em;
}

.flex-overview > div + div {
	margin: 2em 0 0 0;
}

.flex-overview > div > img, .flex-overview > div > a {
	flex: 1;
}
.flex-overview > div > div {
	flex: 4;
}

.flex-overview > div > div > h2, .flex-overview > div > div > h2 a {
	margin: 0;
}

.flex-overview > div > div > p {
	margin: 1em 0;
}
/** ============================================================================================= **/
#superslides {
	div.floating_caption {
		height: 100%;
		padding: 50px 10%;
	}

	div.floating_caption div.offset-floating {
		flex: 0 0 400px;
		height: 100%;
	}

	div.floating_caption div.offset-floating div.floating {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 20px;
		width: 400px;
		padding: 80px 40px;
		margin: 25px 0 0 34px;
		height: 100%;
	}

	div.floating_caption div.offset-floating div.floating div {
		flex: 0 0 100%;
	}
}

div.floating_caption {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	box-sizing: border-box;

}

div.floating_caption div.offset-floating {
	display: flex;
	background: var(--color-primary);
	border-radius: var(--default-border-radius);
	box-shadow: var(--default-shadow);
	position: relative;
}

div.floating_caption div.offset-floating div.floating {
	/**
	position: absolute;
	top: 0;
	left: 0;
	**/
}

div.floating_caption div.offset-floating div.floating h1 {
	font-weight: 400;
	text-transform: uppercase;
}

div.floating_caption div.offset-floating div.floating h1, div.floating_caption div.offset-floating div.floating p {
	text-align: center;
	margin: 0;
}

div.floating_caption div.offset-floating div.floating p {
	font-size: 28px;
	line-height: 2;
	color: var(--color-gray-darkest);
}

div.floating, a.floating {
	--background: var(--color-white);
	--padding: 1em 1.2em;
	--shadow: var(--default-shadow);
	--border-radius: var(--default-border-radius);
	--shadow: var(--default-shadow);

	background: var(--background);
	padding: var(--padding);
	box-sizing: border-box;
	box-shadow: var(--shadow);
	border-radius: var(--border-radius);
}

div.floating p:last-of-type {
	margin: 0;
}

ul.flex-gallery li div.item.floating, ul.flex-gallery li a.item.floating {
	padding: 0 0 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

div.item.floating div.wrapper , a.item.floating div.wrapper {
	aspect-ratio: 16/9;
}

div.item.floating div.wrapper img , a.item.floating div.wrapper img {
	border-radius: var(--default-border-radius);
}

ul.flex-gallery.overview li div.item.floating h2 , ul.flex-gallery.overview li a.item.floating h2 {
	color: var(--color-gray-darkest);
}

ul.flex-gallery.overview li div.item.floating:hover h2 , ul.flex-gallery.overview li a.item.floating:hover h2, ul.flex-gallery.overview li div.item.floating:hover h2::after , ul.flex-gallery.overview li a.item.floating:hover h2::after {
	color: var(--color-black);
}

div.floating_caption div.offset-floating div.floating h2::after {
	margin: 0;
}

article.page article.chapter article.chapter, article.page article.chapter article.chapter.slim {
	padding: 0;
}

article.chapter .first-image {
	--float: left;
	--offset: 40px;
	--padding: 0 var(--offset) var(--offset) 0;

	float: var(--float);
	max-width: calc(50% - var(--offset));
	padding: var(--padding);
	box-sizing: border-box;
}

article.chapter.right .first-image {
	--float: right;
	--padding: 0 0 var(--offset) var(--offset);
}

body > div.container-main > main article.page {
	padding-bottom: 0;
}

article.grid {
	--padding: 0.8em 2em 4em;
	--margin: 0;
	--background: var(--color-white-opac);
	display: flex;
	align-items: center;
	background: var(--background);
	box-sizing: border-box;
	gap: 5%;
	max-width: 100vw;
}

body > div.container-main > main article.grid {
	h1, h2, h3, h4, h5, h6 {
		--font-weight: 400;
	}
}

article.grid > div.image img {
	--border-radius: var(--default-border-radius);
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--border-radius);
}

article.grid > div {
	flex: 0 1 50%;
}

article.grid div.text {
	box-sizing: border-box;
}

article.grid div.text p {
	--font-size: 16px;
	--line-height: 1.5;
}

article.grid div.image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/**
article.page article.chapter:nth-of-type(even) {
	position: relative;
}


article.page article.chapter:nth-of-type(even)::after {
	@see .tertiary-background
}
**/



article.page article.chapter.balloon {
	background: var(--color-white);
}

ul.flex-gallery.balloon li {
	padding: 0 6%!important;
	box-sizing: border-box;

	div.wrapper {
		background: var(--color-white);
		border-radius: var(--default-border-radius);
		box-shadow: var(--default-shadow);
		overflow: hidden;
		padding: 0;
		box-sizing: border-box;
	}

	div.wrapper img {
		opacity: 1;
		border-radius: var(--default-border-radius);
	}

	div.floating_caption {
		display: block;
		width: 100%;
		position: absolute;
		z-index: 20;
		box-shadow: none;
	}

	div.floating_caption div.offset-floating {
		height: 80%;
		width: 80%;
		z-index: 20;
		position: absolute;
		top: 0;
		left: 5%;
	}

	div.floating_caption div.floating {
		width: 80%;
		padding: 10px;
		margin: 25px auto 0;
		position: relative;
		z-index: 21;
	}

	div.floating_caption div.floating h2 {
		color: var(--color-gray-darkest);
		line-height: 2;
		padding: 0;
		margin: 0;
	}

}

article.page article.chapter.activity, div.widget.activity {
	--margin: 0;
	--border-radius: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: var(--color-primary);
	padding: 2.5em 20%;
	box-sizing: border-box;
}

article.chapter.activity, div.widget.activity {
	div.text {
		flex:  0 0 50%;
		color: var(--color-white);
	}

	div.text * {
		color: var(--color-white);
	}

	div.text p {
		font-size: 18px;
		line-height: 1.5;
	}

	a.button {
		background: var(--color-tertiary);
		color: var(--color-white);
	}

	a.button:hover {
		background: var(--color-tertiary-600);
	}
}

article.chapter.activity, div.widget.activity, article.card {
	div.floating {
		flex: 0 1 400px;
	}

	div.floating p {
		font-size: 20px;
		line-height: 2;
		font-weight: 400;
		color: var(--color-gray-darkest);
		text-align: center;
	}

	div.floating h1, div.floating h2, div.floating h3, div.floating h4, div.floating h5, div.floating h6 {
		text-align: center;
	}

	div.floating p.subtitle {
		font-weight: 400;
		text-align: center;
		margin: 22px 0 22px;
	}
}

div.widget.cta {
	display: flex;
	background: var(--color-gray-light);
	justify-content: center;
	align-items: center;
	padding: 2.5em 0;
	box-sizing: border-box;
}

article.chapter.icon_bar {
	margin: 0;
}

article.chapter.icon_bar hr {
	width: 5%;
	border-top: 1px solid var(--color-primary-light);
	margin: 0 auto 40px;
}

ul.flex-gallery.icons {
	--justify-content: center;
}

ul.flex-gallery.icons li.icon a {
	text-decoration: none;
}

ul.flex-gallery.icons li.icon div.wrapper {
	background: var(--color-gray-lightest);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 33%;
	margin: 0 auto;
}

article.chapter.background.secondary ul.flex-gallery.icons li.icon div.wrapper {
	background: var(--color-white);
}

ul.flex-gallery.icons li.icon div.footer {
	display:flex;
	justify-content: center;
	align-items: center;
	margin: 1em 0 0;
}

ul.flex-gallery.icons li.icon div.wrapper i {
	font-size: 40px;
	color: var(--color-primary-darkest);
	margin: 10px;
}

ul.flex-gallery.icons li.icon div.text {
	margin: 1em 0 0;
}

ul.flex-gallery.icons li.icon div.text {
	p, h1, h2, h3, h4, h5, h6 {
		text-align: center;
	}
}

article.chapter.reel {
	background: var(--color-gray-opac);
}

article.chapter.reel div.containers {
	--background: var(--color-white);

	background: var(--background);
	padding: 20px;
	box-sizing: border-box;
	border-radius: var(--default-border-radius);
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
}

article.chapter.reel div.containers {
	position: relative;
	overflow: hidden;

	div.content, div.items {
		flex: 1 1 calc(50% - 15px);
	}
}

article.chapter.reel div.containers.wide {
	gap: 0;

	div.content, div.items {
		flex: 0 0 100%;
	}
}

article.chapter.reel div.containers div.content.wide {
	max-width: 100%;
}

article.chapter.reel div.containers div.content {
	border-radius: var(--default-border-radius);
	position: relative;
	max-width: 600px;
}

article.chapter.reel div.containers div.content div.text {
	position: absolute;
	top: -1px;
	left: -1px;
	z-index: 1;
	background: var(--background);
	border-top-left-radius: var(--default-border-radius);
	border-bottom-right-radius: var(--default-border-radius);
	max-width: 50%;
	padding: 6px 10px 5px 11px;
	box-sizing: border-box;
}

article.chapter.reel div.containers div.content div.text {
	h1, h2, h3, h4, h5, h6 {
		--color: var(--color-gray-darkest);
	}
}

article.chapter.reel div.containers.wide div.content div.text {
	max-width: 100%;
	position: relative;
}

article.chapter.reel div.containers div.content div.image img {
	border-radius: var(--default-border-radius);
}

article.chapter.reel div.containers div.items {
	display: flex;
	flex-direction: column;
	gap: 1em;
}

article.chapter.reel div.containers div.items div.item {
	--background: var(--color-gray-lightest);

	position: relative;
	padding: 14px 20px;
	box-sizing: border-box;
	background: var(--background);
	border-radius: var(--default-border-radius-small);
	color: var(--color);
	transition: var(--default-transition);
}

article.chapter.reel div.containers div.items div.item div.score {
	--color: var(--color-yellow);
	margin: 0 0 1em;
}

article.chapter.reel div.containers div.items div.item div.score i {
	color: var(--color);
}

article.chapter.reel div.containers div.items div.item div.text {
	text-align: justify;
	font-weight: 400;
}

article.chapter.reel div.containers div.items div.item div.text.quote::before {
	content: '“';
	display: inline-block;
}

article.chapter.reel div.containers div.items div.item div.text.quote::after {
	content: '”';
	display: inline-block;
}

article.chapter.reel div.containers div.items div.item div.customer {
	margin: 1em 0 0;
	display: flex;
	gap: 1em;
}

article.chapter.reel div.containers div.items div.item div.customer div.image {
	flex: 0 0 65px;
}

article.chapter.reel div.containers div.items div.item div.customer div.image img {
	border-radius: 100%;
}

article.chapter.reel div.containers div.items div.item div.customer div.details {
	flex: 1;
}

article.chapter.reel div.containers div.items div.item div.customer strong {
	display: block;
}

article.chapter.reel div.containers div.items div.item div.customer span {
	font-size: var(--font-size-small);
}

article.chapter.reel div.containers div.items div.item div.link {
	--background: var(--color-white);
	position: absolute;
	bottom: -1px;
	right: -1px;
	background: var(--background);
	border-top-left-radius: var(--default-border-radius);
	padding: 10px 0 0 10px;
	box-sizing: border-box;
}

article.chapter.reel div.containers div.items div.item div.link a {
	--background: var(--color-gray-lightest);

	width: 40px;
	height: 40px;
	margin: 0 10px 10px 0;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	background: var(--background);
	border-radius: 100%;
	color: var(--color);
}

article.chapter.reel div.containers div.items div.item:hover {
	--background: var(--color-tertiary-600);
	--color: var(--color-white);
}


article.chapter.reel div.containers div.items div.item:hover div.link a {
	--background: var(--color-primary-dark);
	--color: var(--color-white);
}

article.chapter.reel.cta div.containers div.content, article.chapter.reel.cta div.containers div.content div.text {
	max-width: none;
}

article.chapter.reel.cta div.containers div.content {
	flex: 1 1 55%;
}

article.chapter.reel.cta div.containers div.items {
	flex: 0 1 calc(40% - 30px);
}

article.chapter.reel.cta div.containers div.content div.cut-out {
	padding: 2em 0 0 2em;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper {
	border: 10px solid var(--color-primary);
	border-bottom: 0;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.text {
	border-radius: 0;
	background: var(--color-primary-lightest);
	background: linear-gradient(15deg,rgba(210, 216, 227, 1) 0%, rgba(255, 255, 255, 1) 100%);
	position: static;
	left: 0;
	top: 0;
	padding: 2em 2em 2em 35%;
	box-sizing: border-box;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.text h1 {
	font-family: 'Roboto', sans-serif;
	text-transform: uppercase;
	line-height: 1.2;
	letter-spacing: -2px;
	font-weight: 500;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.text p {
	font-family: "Hepta Slab", serif;
	font-weight: 500;
	font-size: 16px;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form {
	position: relative;
	z-index: 500;
	background: var(--color-white);
	border-bottom: 10px solid var(--color-primary);
	border-left: 10px solid var(--color-primary);
	border-right: 10px solid var(--color-primary);
	margin: 0 -10px;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form {
	margin: 0;
	padding: 1em;
	box-sizing: border-box;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form input, article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form button {
	margin: 0;
	width: 100%;
	padding: 0.5em 1em;
	box-sizing: border-box;
	height: 100%;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form div.row {
	gap: 0.5em;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form div.row div.fill {
	flex: 0 1 auto;
}

article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form input::placeholder {
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-black);
}

article.chapter.reel.cta div.containers div.content div.wrapper div.image {
	position: absolute;
	left: 0;
	top: 0;
}

article.chapter.reel.cta div.containers div.content div.image img {

}

article.chapter.reel.cta div.containers div.content div.image.hide_d {
	max-height: 250px;
	overflow:hidden;
	padding: 1em 1em 0;
}

article.chapter.reel.cta div.containers div.content div.image.hide_d img {
	display: block;
	margin: 0 auto;
}

article.chapter.hours {
	background: var(--color-white);
}

article.chapter.hours div.details {
	display:flex;
	gap: 2em;
}

article.chapter.hours div.details div.container {
	flex: 1 0 60%;
	padding: 1em 2em;
	box-sizing: border-box;
	border-radius: var(--default-border-radius);
	background: var(--color-gray-lightest);
}

article.chapter.hours div.details div.container {

}

article.chapter.hours div.details div.container div.graph {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}

article.chapter.hours div.details div.container div.graph div.row {
	display: flex;
	flex: 0 0 100%;
}

article.chapter.hours div.details div.container div.graph div.row div {
	text-align: center;
}

article.chapter.hours div.details div.container div.graph div.row div.closed span {
	box-sizing: border-box;
	padding: 0.25em 0.5em;
	border-radius: var(--default-border-radius-small);
	background: var(--color-tertiary-200);
	color: var(--color-white);
	font-weight: 400;
	position: relative;
	z-index: 2;
}

article.chapter.hours div.details div.container div.graph div.row div.values {
	text-align: left;
	height: 100%;
}

article.chapter.hours div.details div.container div.hours div {
	font-weight: 500;
	color: var(--color-tertiary-600);
	position: relative;
}

article.chapter.hours div.details div.container div.hours div::after {
	content: '';
	border-right: 1px dotted var(--color-black);
	position: absolute;
	top: calc(1em + 11px);
	left: calc(50% - 0.5px);
	height: 1100%;
	z-index: 1;
}

article.chapter.hours div.details div.container div.hours div.empty::after {
	display: none;
}

article.chapter.hours div.details div.container div.graph div.row div.day {
	text-align: center;
	font-weight: 500;
	color: var(--color-tertiary-600);
	text-transform: uppercase;
}

article.chapter.hours div.details div.container div.graph div.row div.day.active {
	border-bottom: 2px solid var(--color-tertiary-200);
}


article.chapter.hours div.details div.card {
	flex: 1;
	box-shadow: var(--default-shadow);
	border-radius: var(--default-border-radius-small);
}


article.chapter.hours div.details div.card div.gmap, article.chapter.card.contact_information div.card div.gmap {
	aspect-ratio: 16/10;
	width: 100%;
}

article.chapter.hours div.details div.card div.gmap iframe, article.chapter.card.contact_information div.card div.gmap iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
}

article.chapter.hours div.details div.card div.content, article.chapter.card.contact_information div.card div.content {
	background: var(--color-white);
	border-radius: var(--default-border-radius);
	padding: 1em 1.5em;
	box-sizing: border-box;
}

article.chapter.hours div.details div.card div.content.offset, article.chapter.card.contact_information div.card div.content.offset {
	position: relative;
	margin: -1em 0 0;
	z-index: 1;
}

article.chapter.hours div.details div.card div.content h4, article.chapter.card.contact_information div.card div.content h4 {
	font-size: var(--font-size-normal);
	text-align: center;
	line-height: 1.2;
}

article.chapter.hours div.details div.card div.content p, article.chapter.card.contact_information div.card div.content p {
	text-align: left;
}

article.chapter.hours div.details div.card div.content ul li, article.chapter.card.contact_information div.card div.content ul li {
	padding-left: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	max-width: 320px;
}

article.chapter.hours div.details div.card ul li::before, article.chapter.card.contact_information div.card div.content ul li::before {
	display: none;
}

article.chapter.hours div.details div.card div.content ul li a, article.chapter.card.contact_information div.card div.content ul li a {
	--color: var(--color-gray-darkest);
	text-decoration: none;
}

article.chapter.hours div.details div.card div.content ul li a:hover, article.chapter.card.contact_information div.card div.content ul li a:hover {
	--color: var(--color-black);
	text-decoration: underline;
}

article.chapter.hours div.details div.card div.content ul li i, article.chapter.card.contact_information div.card div.content ul li i {
	color: var(--color-tertiary-600);
}

article.chapter.hours div.details div.container div.graph div.row div.bars {
	height: 100%;
	position: relative;
	box-sizing: border-box;
}

article.chapter.hours div.details div.container div.graph div.row div.bars div {
	--background: var(--color-primary);
	height: 6px;
	border-radius: var(--default-border-radius-small);
	background: var(--background);
	position: absolute;
	top: calc(50% - 3px);
}

article.chapter.hours div.details div.container div.graph div.row div.bars div.appointment {
	--background: var(--color-tertiary-600);
}

article.chapter.hours div.details div.container div.graph div.row div.bars div.appointment span {
	color: var(--color-white);
}

article.chapter.hours div.details div.container div.graph div.row div.values div.mobile-container {
	display: flex;
	justify-content: space-between;
	padding: 0 2em;
	box-sizing: border-box;
	font-weight: 400;
}

article.chapter.card.contact_information div.floating {
	--padding: 0;
	justify-content: flex-start;
	overflow: hidden;
}

div.popup-socials {
	display: flex;
	gap: 1em;
	justify-content: center;
}

div.popup-socials div.social {
	flex: 1 1 auto;
	display: flex;
}

div.popup-socials div.social a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	width: 100%;
}

div.popup-socials div.social a div.image {
	flex: 1;
}

div.popup-socials div.social a div.image img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 50px;
	margin: 0 auto;
}

div.popup-socials div.social a span {
	display: block;
	text-align: center;
	padding: 2px 1em;
	box-sizing: border-box;
	background: var(--button-background);
	transition: var(--transition-default);
	color: var(--button-color);
	font-weight: 500;
	margin: 1em 0 0;
	border-radius: 5px;
}

div.popup-socials div.social a:hover span {
	background: var(--button-background-hover);
}

article.chapter.contact-form {
	background: var(--color-white-opac);
}

article.page article.chapter.gallery {
	background: var(--color-white-opac);
	padding: 0.8em 2em 4em;
}

article.page article.chapter.title {
	padding: 2em var(--default-padding-sides) 15px;
	display: flex;
	align-items: center;
	gap: 0.5em;
	background: var(--color-white);
}

article.chapter.title {
	h1, h2, h3, h4, h5, h6 {
		margin: 0;
	}
}

article.chapter.title div.image {
	flex: 0 1 100px;
}

article.chapter.title div.text {
	flex: 1 1 100%;
}


article.page article.chapter.gallery-overview {
	background: var(--color-white);
}

article.page article.chapter.gallery-overview ul.flex-gallery {
	--item-offset: 2em;
}

article.page article.chapter.gallery-overview ul.flex-gallery li .item div.wrapper {
	margin: 0 0 0.5em;
}

article.page article.chapter.hero {
	--padding: 0;
	min-height: 300px;
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-blend-mode: luminosity;
}

nav.categories {
	margin: 0 0 1em;
}

nav.categories ul {
	justify-content: center;
	align-items: center;
	gap: 0.5em;
	box-sizing: border-box;
	padding: 0 2%;
}

nav.categories ul li a {
	--color: var(--color-black);
}

nav.categories ul li a.selected, nav.categories ul li a:hover {
	font-weight: 600;
}

body > div.container-main > main article nav.categories ul > li {
	display: flex;
	align-items: center;
	padding: 0;
	margin: 0;
	gap: 0.5em;
}

body > div.container-main > main article nav.categories ul > li::before {
	content: '-';
	width: auto;
	height: auto;
	background: none;
	position: static;
}

nav.categories ul li:first-of-type::before {
	display: none;
}

ul.custom-gallery {
	column-count: 3;
	box-sizing: border-box;
	padding: 0 2%;
}

ul.custom-gallery > li {
	position: relative;
	padding: 0!important;
	box-shadow: var(--default-shadow);
	break-inside: avoid;
}

ul.custom-gallery li + li {
	margin: 1.5em 0 0!important;
}

ul.custom-gallery li::before {
	display: none!important;
}

ul.custom-gallery li div.wrapper {
	aspect-ratio: auto;
}

ul.custom-gallery li div.wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

ul.custom-gallery li div.details {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	background: var(--color-white-opac);
	padding: 0 2%;
	box-sizing: border-box;
	transition: var(--default-transition);
	opacity: 0;
}

ul.custom-gallery li:hover div.details {
	opacity: 1;
}

ul.custom-gallery li div.details h2 {
	--color: var(--color-primary);
	text-align: center;
	margin: 0;
	padding: 0 0 0.5em;
	border-bottom: 3px solid var(--color-primary);
}

ul.custom-gallery.testimonial {

}

ul.custom-gallery.testimonial li div.details {
	opacity: 1;
	padding: 4% 6%;
}

ul.custom-gallery.testimonial li div.details div.header {
	flex: 0 0 100%;
	display: flex;
}

ul.custom-gallery.testimonial li div.details div.header div.title {
	flex: 1;
}

ul.custom-gallery.testimonial li div.details div.header div.title ul li {
	padding: 0!important;
	margin: 0!important;
	color: var(--color-primary-black);
	font-size: 20px;
	font-weight: 500;
}

ul.custom-gallery.testimonial li div.details div.header div.image {
	--size: 125px;
	width: var(--size);
	height: var(--size);
	border-radius: 100%;
	overflow: hidden;
}

ul.custom-gallery.testimonial li div.details div.header div.image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

ul.custom-gallery.testimonial li div.details div.media {
	margin: 5% 0 0;
	flex: 0 0 100%;
}

ul.custom-gallery.testimonial li div.details div.media a {
	display: inline-block;
	text-decoration: none;
	--font-size: 22px;
	--color: var(--color-primary-black);
	font-weight: 500;
	text-transform: uppercase;
	padding: 0 0 0.5em;
	border-bottom: 2px solid var(--color-primary);
}


/** Product related blocks **/
div.product_description p {
	line-height: 1.5;
}

div.stock_delivery_pickup {
	--stock-color-available: green;
	--stock-color-unavailable: red;
	--color: var(--stock-color-available);

	display: flex;
	justify-content: space-between;
	padding: 0.5em 0em;
	box-sizing: border-box;
	margin: 0.1em 0;
}

div.stock_delivery_pickup div.stock {
	color: var(--color);
	display: flex;
	align-items: center;
	gap: 0.2em;
}

div.stock_delivery_pickup div.stock span {
	padding: 8px;
	width: 20px;
	height: 20px;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--color);
	color: var(--color-white);
	border-radius: 50%;
}

div.stock_delivery_pickup div.stock span i {
	font-size: 10px;
}

div.stock_delivery_pickup div.stock.unavailable {
	--color: var(--stock-color-unavailable);
}


body > div.container-main > main article.tabs section.tab {
	article.chapter {
		background: var(--color-white);
		padding: 1.5em 10px;
		border-radius: var(--default-border-radius);
	}
}

main.car {
	article.page article.chapter.title div {
		flex: 1;
	}

	article.chapter.large div.container {
		--gap: 40px;
		justify-content: flex-start;
		align-items: flex-start;

	}

	article.chapter.large div.container div.image {
		flex: 0 0 60%;
		aspect-ratio: 16/10;
	}


	article.chapter.large div.container div.image div.flex-gallery-container {
		margin: 10px 0 0;
	}

	article.chapter.large div.container div.image div.flex-gallery-container ul.flex-gallery li .item div.wrapper {
		box-shadow: none;
	}

	section.tab article.chapter {
		--padding: 0;
	}
}


article.page article.chapter.bar {
	--padding: 1em var(--default-padding-sides);
}

article.page article.chapter.bar div.flex-table {

}

article.page article.chapter.bar div.flex-table div.row {
	justify-content: space-between;
	align-items: center;
}

article.page article.chapter.bar div.flex-table div.row div {
	border: 0;
	flex: 1!important;
}

article.page article.chapter.bar div.flex-table div.row div p:last-of-type {
	margin: 0;
}

/** -----------------------------------------------------
					RESPONSIVE
----------------------------------------------------- **/
@media only screen and (max-width: 1400px) {
	div.stock_delivery_pickup {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 0.5em;
	}

	div.stock_delivery_pickup div {
		flex: 0 0 100%;
	}
}

@media only screen and (max-width: 1200px) {
	.flex-gallery.balloon {
		--items: 1!important;
		gap: 100px;
	}

	.flex-gallery.balloon li {
		width: 65%;
		max-width: 600px;
	}

	article.chapter.activity, div.widget.activity {
		flex-wrap: wrap;
		gap: 40px;

		div.floating, div.text {
			flex: 0 0 100%;
		}
	}

	article.chapter.reel div.containers div.content div.text {
		max-width: 90%;
		left: 5%;
		border-top-left-radius: 0;
		border-bottom-left-radius: var(--default-border-radius);
	}


	article.chapter.hours div.details {
		flex-wrap: wrap;
	}

	article.chapter.hours div.details div.container, article.chapter.hours div.details div.card {
		flex: 0 0 100%;
	}

}

@media only screen and (max-width: 1000px) {
	article.chapter div.container {
		--gap: 20px;
		flex-wrap: wrap;
	}

	article.chapter.reversed div.container {
		flex-wrap: wrap-reverse;
	}

	article.chapter div.container, article.chapter.card div.container {
		div.image, div.text, div.images {
			flex: 0 0 100%;
			max-width: 100%;
		}
	}

	article.chapter.card div.container div.text {
		margin: -5% 0 0 0;
	}

	article.chapter.reversed.card div.container div.text {
		margin: 0 0 -5% 0;
	}

	article.chapter.circle div.container {
		--gap: 20px;
		justify-content: center;
		align-items: center;
	}

	article.chapter.reel div.containers {
		div.content, div.items {
			flex: 0 0 100%;
		}
	}

	article.chapter.reel div.containers div.content {
		max-width: 100%;
	}

	ul.custom-gallery.testimonial {
		columns: 2;
	}

	article.chapter.reel.cta div.containers {
		padding: 0;
	}

	article.chapter.reel.cta div.containers div.content, article.chapter.reel.cta div.containers div.items {
		flex: 0 0 100%;
	}

	main.car {
		article.chapter.large div.container div.image {
			flex: 0 0 100%;
			aspect-ratio: 16/10;
		}
	}
}

@media only screen and (max-width: 767px) {
	article.chapter.reel.cta div.containers div.content div.cut-out	{
		padding: 0;
	}
	article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.text {
		padding: 2em;
	}
}

@media only screen and (max-width: 600px) {
	article.chapter .first-image {
		--float: none;
		--offset: 10px;
		--padding: 0 0 var(--offset);
		display: block;
		width: 100%;
		max-width: 100%;
	}

	article.chapter.card div.floating, article.chapter.card a.floating {
		padding: 0.75em 1em 2em;
	}

	ul.flex-gallery.balloon li {
		padding: 0!important;
	}

	ul.flex-gallery.balloon li {
		div.floating_caption div.offset-floating {
			width: 300px;
		}
	}

	ul.custom-gallery, ul.custom-gallery.testimonial {
		columns: 1;
	}

	ul.custom-gallery.gallery li div.details {
		opacity: 1;
		height: auto;
		top: auto;
		bottom: 0;
		box-sizing: border-box;
		padding: 0.5em 2%;
	}

	ul.custom-gallery li div.details h2 {
		border-bottom: 2px solid var(--color-brown);
	}

	ul.custom-gallery li div.details h2 a {
		--font-size: 22px;
		font-weight: 400;
		margin: 0;
	}

	main.car {
		article.chapter.title.car span.divider {
			display: none;
		}

		article.chapter.title.car span.price {
			display: block;
			font-size: 24px;
			margin: 4px 0 0;
			font-weight: 400;
		}
	}
}

@media only screen and (max-width: 500px) {
	ul.flex-gallery.balloon li {
		div.floating_caption {
			left: 0;
		}
	}

	article.chapter.hours div.details div.container div.graph div.row div.day.active {
		border: 0;
		text-decoration: underline;
	}

	article.chapter.hours div.details div.container div.graph div.row div.values div.mobile-container {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 0;
		padding: 0;
	}

	article.chapter.hours div.details div.container div.graph div.row div.values div.mobile-container div.timeslot {
		text-align: right;
		flex: 0 0 100%;
	}

	article.chapter.hours div.details div.container div.graph div.row div.closed {
		text-align: right;
	}

	div.popup-socials {
		flex-wrap: wrap;
	}

	article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form div.row {
		flex-wrap: wrap;
	}

	article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form div.row div, article.chapter.reel.cta div.containers div.content div.cut-out div.wrapper div.form form div.row div.fill {
		flex: 0 0 100%;
	}
}

