/*!
Theme Name: terracotta
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: terracotta
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

terracotta is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* General padding & margin
--------------------------------------------- */
:root {
	--side-padding: 4.3vw;
}
@media screen and (max-width: 767px) {
	:root {
		--side-padding: 30px
	}
}
/* Colors
--------------------------------------------- */
:root {
	--salmon: #CB7552;
	--turquoize: #8D9585;
	--ocre: #C38A53;
	--red: #B74C1D;
	--gray: #DED0BD;
	--orange : #b94d0e;
}

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea,
body .ui-widget {
	color: #505050;
	font-family: "Karla", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 15px;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

h1,
h2,
h2.elementor-heading-title {
	font-size: 30px;
	font-weight: bold;
	text-transform: uppercase;
	text-align: center;
	padding: 0 0 20Px;
	margin: 0 0 30px;
	display: block;
	position: relative;
	letter-spacing: 0.05rem
}
h1:after,
h2:after {
	content: "";
	position: absolute;
	left: 50%;
	width: 20px;
	height: 3Px;
	background: #505050;
	bottom: 0;
	transform: translate(-50%);
}
section.account h2:after {
	background: #FFF;
}
.entry-content > div > div > section:nth-child(2n) h2:after,
.entry-content > div > section:nth-child(2n) h2:after,
.os-booking h1:after{
	background: #FFF;
}
p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	text-decoration: none;
	color: var(--red)
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #F5F5F5;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}
a.elementor-button,
.elementor-align-center a.elementor-button {
	background: var(--ocre);
	border: none;
	width: 343px;
	max-width: 100%;
	line-height: 54px;
	padding: 0 10px;
	font-size: 20px;
	font-weight: bold;
	text-transform: uppercase;
	border-radius: 0;
}
section:nth-child(2n) button,
section:nth-child(2n) a.elementor-button {
	background: var(--gray);
	color: #505050;
}

button:hover,
a.elementor-button:hover,
.elementor-align-center a.elementor-button:hover {
	background: var(--gray);
}
section:nth-child(2n) button:hover,
section:nth-child(2n) a.elementor-button:hover {
	background: var(--ocre);
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

@media screen and (max-width: 767px) {
	ul,
	ol {
		margin: 0 0 20px 0;
	}
}
/* Links
--------------------------------------------- */
a,
main .elementor a:not(.elementor-button-link){
	color: #fff;
	text-decoration: underline;
}
.term-description a{
		color: #434343;
}
a:hover,
a:focus,
a:active,
main .elementor a:not(.elementor-button-link):hover {
	color: #fff;
	text-decoration: none;
}
.term-description a:hover,
.term-description a:focus,
.term-description a:active{
		color: #434343;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
a.checkout-button {
	border: 1px solid;
	border-color: #FFF;
	border-radius: 0;
	background: none;
	color: #FFF;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 1.2;
	padding: .3vw 1.2vw;
	border-radius: 0 !important;
	box-shadow: none;
	cursor: pointer;
	white-space: normal !important;
}
.os-booking .fc-toolbar button {
	color: #FFF;
	background: none;
	box-shadow: none;
	border: none;
    transition: all ease 0.3s;
	border: 1px solid transparent;
}
.os-booking .fc-toolbar button:hover {
	border: 1px solid #FFF;
}
.submit-wrap {
	margin: 2vw 0 0;
	text-align: right;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background: #b74c1d;
	color: #FFF;
}
.account button {
	color: #FFF;
	border-color: #FFF;
}
button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #FFF;
	background: none;
	border: 1px solid #FFF;
	border-width: 0 0 1Px 0;
	border-radius: 0px;
	padding: 1vw 0;
}
.account input {
	color: #FFF;
	border-color: #fff;
}
.nf-error.listimage-wrap .nf-field-element ul, .nf-error .ninja-forms-field {
	border: 1px solid #e80000 !important;
	border-width: 0 0 3Px 0 !important;
}
.nf-field-container {
	margin: 0 !important;
}
.nf-after-field .nf-error-msg,
.nf-form-fields-required {
	font-size: 16px;
}
div.nf-error-msg {
	color: #434343;
}
span.ninja-forms-req-symbol,
span.required{
	color: #FFF;
}
div.nf-error .ninja-forms-field{
	border-color: #434343 !important;
}
.bookacti-payment-status-bad, span.bookacti-booking-state-bad {
	color: var(--red);
}
.bookacti-payment-status-good, span.bookacti-booking-state-good {
	color: var(--gray);
}
.bookacti-payment-status-good, span.bookacti-booking-state-good {
	color: #FFF;
}
.bookacti-payment-status-warning, span.bookacti-booking-state-warning {
	color: var(--gray);
}
.bapap-booking-pass-redeem_code code {
	color: #FFF;
}
::placeholder {
	font-style: italic;
	color: #fff;
}
.account ::placeholder,
.entry-content > div > div > section:nth-child(2n) ::placeholder {
	color: #FFF;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #FFF;
	border: none;
	border-bottom: 1px solid #FFF;
	outline: none;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

@media screen and (max-width: 767px) {
	button,
	input[type="button"],
	input[type="reset"],
	input[type="submit"],
	a.checkout-button{
		padding: 10px 15px;
	}
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/* Header
--------------------------------------------- */
.site-header {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 10;
	width: 100%;
	background: var(--salmon) url(img/header-bg.png) no-repeat center;
	background-attachment: fixed;
	background-size: cover;
}
.admin-bar .site-header {
	top: 32px;
}
@keyframes smallermenu {
	from {transform: translate(0,-100%)}
	to {transform: translate(0)}
}
.site-header.smaller {
	position: fixed;
	animation: smallermenu 0.5s ease;
	box-shadow: 0 0 5px rgba(0,0,0,0.4);
}
.site-header .navigation-bar {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	padding: 0 var(--side-padding);
	position: relative;
}
.site-header.smaller .navigation-bar {
	padding: 0 0 0 var(--side-padding);
	grid-gap: 30px;
}
.site-header .navigation-bar > * {
	padding-top: 4.5vw;
	padding-bottom: 4.5vw;
	width: 8.9vw;
}
.site-header.smaller .navigation-bar > *{
	padding: 0;
	width: auto;
}

.site-branding a {
	display: block;
	background: url(img/logo.svg) no-repeat center;
	background-size: contain;
	width: 8.9vw;
	height: 4.7vw;
}
.smaller .site-branding a {
	width: 112px;
	height: 60px;
	margin: 10px 0;
}
.site-branding h1,
.site-branding p {
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	color: transparent;
}
#user-menu > div {
	position:absolute;
	right: 0;
	top: 0;
	background: var(--salmon);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	list-style: none;
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	padding: .7vw;
}
#user-menu ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	list-style: none;
	padding: .5vw 0;
	margin: 0;
}
#user-menu ul > li {
    padding: 0 .8vw;
}
#user-menu ul > li + li{ 
    border-left: 2px solid #FFF;
}
#user-menu a { 
    color: #FFF;
    text-decoration: none;
}
#user-menu a:hover { 
    text-decoration: underline;
}
#user-menu a.cart-button {
	padding: .5vw;
	/* height: 40px; */
}
#user-menu a.cart-button .icon {
	height: 30px;
	width: 30px;
	background: url(img/cart.svg) no-repeat center;
	display: inline-block;
}
#user-menu a.cart-button:hover {
	background: #8d9585;
	text-decoration: none;
}
#banner,
main section.two-col {
	padding: 13.7vw var(--side-padding) 0;
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	margin: 0 0 12vw;
	background: var(--salmon) url(img/header-bg.png) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}
#banner.no-image {
	margin: 0;
}
#banner.account {
	padding: 13.7vw 4.3vw 28vw;
	margin: 0;
}
#banner img {
	width: 65vw;
	height: 39vw;
	object-fit: cover;
	margin: 0 0 -12vw;
}
#banner div {
	width: calc(100% - 65vw);
	font-size: 1.5vw;
	font-weight: bold;
	color: #FFF;
	text-transform: uppercase;
	padding: 0 0 2.8vw 2.8vw;
}
#banner div p:last-child {
	margin: 0;
}
@media (min-width: 768px) {
	.smaller #user-menu {
		display: flex;
	}
	.smaller #user-menu > div {
		position: initial;
	}
}
@media screen and (max-width: 1199px) {
	.site-header .navigation-bar > * {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.site-branding a {

		width: 105px;
		height: 56px;
	}
	#user-menu > div {
		font-size: 13px;
		line-height: 13px;
	}
	#user-menu ul {
		padding: 8px 0;
	}
	#user-menu ul > li {
	    padding: 0 10px;
	}
	#user-menu a.cart-button {
		padding: 8px;
	}
	#banner,
	main section.two-col {
		padding-top: 156px;
	}
	#banner.account {
		padding: 13.7vw 4.3vw 28vw; /*CHANGENEEDED*/
		margin: 0;
	}
}
@media screen and (max-width: 767px) {
	.site-header .navigation-bar > * {
		padding: 22px 0;
	}
	.site-header .navigation-bar > #user-menu {
		padding: 0 0;
	}
	.smaller .site-branding a {
		width: 112px;
		height: 60px;
	}
	.admin-bar .site-header {
		top: 46px;
	}
	.admin-bar .smaller.site-header{
		top: 0;
	}
	#user-menu .menu-menu-client-container {
		/*! display: none; */
		font-size: 0;
	}
	#user-menu {
		z-index: 10000
	}
	#user-menu * {
		padding: 0 !important;
		margin: 0;
	}
	#user-menu .menu a {
		display: none;
	}
	#user-menu .menu a[href*="agenda"] {
		display: block;
		min-height: 30px;
		min-width: 30px;		
		margin: 0 15px 0 0;
	}
	#user-menu a[href*="agenda"]:before {
		content: "";
		display: inline-block;
		width: 30px;
		height: 30px;
		background: url(img/cal.svg) no-repeat center;
	}
	#user-menu ul > li + li{ 
    border-left: none;
  }
	#user-menu > div {
		background: none;
		position: absolute;
		top: 28px;
		right: 90px;
		font-size: 25px;
		z-index: 98;
	}

	#user-menu a.cart-button {
		padding: 0;
	}
	#user-menu a.cart-button:hover {
		background: none;
	}
	#banner {
		display: block;
		padding-top: 100px;
		margin: 0;
	}
	#banner img {
		width: calc(100vw - 30px);
		height: 60vw;
		max-height: 300px;
		margin: 0 -30px 0 0;
	}
	#banner div {
		width: 100%;
		padding: 35px var(--side-padding) 35px 0;
		font-size: 25px;
		line-height: 30px;
	}
	#banner,
	main section.two-col {
		padding-top: 100px;
		padding-right: 0;
	}
  #user-menu a,
	.main-navigation button.menu-toggle{
		padding: 5px !important;
		/*! display: block; */
		height: 40px;
		min-width: 40px;
	}
	.toggled + #user-menu a,
	.main-navigation.toggled button.menu-toggle{
		background: var(--red);
	}
}

/* Homepage
--------------------------------------------- */
#links {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: var(--side-padding);
	align-items: flex-start;
	justify-content: space-between;
	padding: 7vw var(--side-padding) 9vw;
	text-align: center;
	font-weight: bold;
	color: var(--orange);
	max-width: 1600px;
	margin: 0 auto;
}

#links a {
	font-size: 30px;
	display: block;
	border: 4px solid var(--orange);
	border-radius: 0;
	text-transform: uppercase;
	padding: 1vw;
	margin: 0 0 1vw;
	color: white;
	font-weight: bold;
	overflow: hidden;
	position: relative;
	transition: all ease 0.3s;
	background: linear-gradient(to bottom, var(--orange), var(--orange) 50%, #fff 50%, #fff);
	background-size: 100% 200%;
	transition: all ease 0.3s;
}
#links a:hover {
	background-position: 0 100%;
	color: var(--orange);
}
#links .item {
  position: relative;
	/*! padding-bottom: 2em; */
}

#links .intro {
    font-size: 20px;
    font-weight: bold;
}


#about {
	background: var(--turquoize) url(img/header-bg.png) no-repeat center;
	background-attachment: fixed;
	background-size: cover;
	color: #FFF;
	padding: 0;
	font-size: 20px;
	font-weight: bold;
}
#about > div.content {
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-row-gap: 50px;
	align-items: center;
}
#about > div.content .text {
	padding: var(--side-padding);
}
#about > div.content:nth-child(2n) .text {
	order: 3;
}
#about > div > h2 {
	grid-column-start: 1;
	grid-column-end: 3;
}
#about .image {
	position: relative;
	min-height: 50vw;
	align-self: stretch;
}
#about .image img{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
}
#about h2:after {
    background: #FFF;
}

#team {
	background: var(--salmon) url(img/header-bg.png) no-repeat center;
	background-attachment: fixed;
	padding: 4.3vw 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-align: center;
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
}
#team h2:after {
	background: #FFF;
}
#team .swiper-control {
	width: 4.3vw;
	cursor: pointer;
}
#team .swiper-control svg {
	width: 25px;
	fill: #FFF;
}
#team .swiper {
	width: calc(100% - 8.6vw);
	overflow: hidden;
	border-left: 2px solid #FFF;
	border-right: 2px solid #FFF;
}
#team .swiper-wrapper {
	display: flex;
}
#team .name {
	font-size: 20px;
	margin: 0 0 15Px;
	font-weight: bold;
}
#team .swiper-slide {
	padding: 2.3vw 1vw 2.9vw;
	box-sizing: border-box;
	position: relative;
	font-size: 15px;
	font-weight: normal;
}
#team .swiper-slide a {
	background: none;
	border: none;
	padding: 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding: 2.3vw 1vw;
}
#team .swiper-slide a svg {
	width: 32px;
	fill: #fff;
	overflow: visible;
}
@keyframes wave {
	0% {transform: translate(0,0px);}
	50% {transform: translate(0,-5px);}
	100% {transform: translate(0,0px);}
}
#team .swiper-slide a:hover circle {
	animation: wave .6s ease infinite;
}
#team .swiper-slide a:hover circle:nth-child(2) {
	animation-delay: .1s;
}
#team .swiper-slide a:hover circle:nth-child(3) {
	animation-delay: .2s;
}
#team  img.attachment-post-thumbnail  {
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 50%;
	margin: 0 auto 1.5em;
	display: block;
}
#team .modal img.attachment-post-thumbnail  {
	width: 10vw;
	height: 10vw;
	object-fit: cover;
	border-radius: 50%;
	margin: 0 auto 2vw;
	display: block;
}
#team .team-gallery {
	display: grid;
	grid-row-gap: 20px;
	grid-column-gap: 20px;
}
#team .team-gallery.col3 {
	grid-template-columns: 1fr 1fr 1fr;
}

@media screen and (max-width: 767px) {
	#links {
		padding: 50px var(--side-padding) 60px;
	 grid-template-columns: 1fr;
	}
	#links a {
		font-size: 20px;
		border: 2px solid var(--orange);
		padding: 10px 15px;
		margin: 0 0 10px;
	}
	#links .intro {
		font-weight: normal;
		line-height: 25px;
	}
	#about {
		padding: 0;
		display: none;
	}
	#about > div.content {
		padding: 0 4.3vw 4.3vw;
		display: flex;
		flex-direction: column;
		padding:0;
		grid-row-gap: 0;
	}
	#about .image {
		order: 2;
		height: 65vw
	}
	#about h2 {
		order: 1;
		padding-left: 35px;
		padding-right: 35px;
	}
	#about > div.content .text {
		order: 3;
		padding: 0 35px;
		padding: 50px var(--side-padding);
	}
	#team {
		padding: 60px 0;
	}
	#team .swiper-control {
		width: 35px;
	}
	#team .swiper-control svg {
		width: 15px;
	}
	#team .swiper {
		width: calc(100% - 70px);
	}
	#team .swiper-slide {
		padding: 15px;
	}
	#team .swiper-slide button {
		padding: 5px;
	}
	#team .swiper-slide button svg {
		width: 25px;
	}
	#team img.attachment-post-thumbnail {
		width: 150px;
		height: 150px;
		object-fit: cover;
		border-radius: 50%;
		margin: 0 auto 20px;
		display: block;
	}
	#team .team-gallery {
		display: grid;
		grid-row-gap: 20px;
		grid-column-gap: 20px;
	}
	#team .team-gallery.col3 {
		grid-template-columns: 1fr;
	}
	#team .team-gallery.col3 img {
		width: 100%;
	}
	#team .modal img.attachment-post-thumbnail {
		width: 250px;
		height: 250px;
	}
}
/* Content pages
--------------------------------------------- */
section.content-page {
    padding: 5vw;
}
section.content-page > article{
	max-width: 920px;
	margin: 0 auto;
}

/* Account pages
--------------------------------------------- */
#primary section.account {
	padding: 4.3vw;
	margin: -28vw 4.3vw 4.3vw;
	background: var(--ocre);
	color: #FFF;
	min-height: 30vw;
}
.woocommerce-order {
	margin: 0 auto;
	width: 800px;
}
.entry-content > div > div.woocommerce-MyAccount-content > section,
.entry-content > div > div.woocommerce-order > section{
	padding: 50px 0;
}
section.account .woocommerce {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: 100%;
}
section.account.cart .woocommerce {
	max-width: 1200px;
	margin: 0 auto;
}
.woocommerce-MyAccount-navigation {
	width: 375px;
}
.woocommerce-MyAccount-navigation p strong{
	display: block;
	font-weight: bold;
    text-transform: uppercase;
}
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.woocommerce-MyAccount-navigation li {
	position: relative;
	margin: 0 0 5px;
}
.woocommerce-MyAccount-navigation a {
	color: #FFF;
	text-decoration: none;
	position: relative;
}
.woocommerce-MyAccount-navigation li.is-active:after,
.woocommerce-MyAccount-navigation li:hover:after {
	content: "";
	height: 6px;
	width: 6px;
	display: block;
	background: #FFF;
	border-radius: 50%;
	position: absolute;
	left: -20px ;
	top: 50%;
	transform: translate(0,-50%);
	outline: 1px solid #FFF;
	outline-offset: -1px;
	animation: menuin linear .3s;
}
.woocommerce-MyAccount-content {
	width: calc(100% - 750px);
}
.woocommerce-MyAccount-content .single-product{
	width: 100%;
}
.woocommerce-MyAccount-content * + h2 {
	margin-top: 60px;
}
.woocommerce-MyAccount-Giftcards-balance-amount {
	max-width: 400px;
	margin: 0 auto;
	text-align: center;
}
.woocommerce-MyAccount-Giftcards-balance-amount + form {
	max-width: 500px;
	margin: 0 auto;
}
.woocommerce-MyAccount-Giftcards-form {
	flex-direction: column;
}
.woocommerce-MyAccount-Giftcards-form input {
	margin: 0 0 15px;
}
.edit-account,
.woocommerce-address-fields__field-wrapper,
.addresses {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-row-gap: 30px;
	grid-column-gap: 30px;
}
.edit-account input,
.woocommerce-address-fields__field-wrapper input {
	width: 100%;
	padding: 5px 0;
}
.edit-account fieldset {
	padding: 0;
}
.edit-account .form-validate{
	grid-column-start: 1;
	grid-column-end: 2;
	text-align: right;
}
.addresses > div {
	width: 100%
}
a.edit {
	display: inline-block;
	color: #FFF;
	text-decoration: none;
	border: 1px solid #FFF;
	padding: 5Px 10Px;
	font-size: 16px;
	margin: 10px 0;
	text-transform: uppercase;
	font-weight: bold;
}
a.edit:hover{
	border-color: #505050;
	background: #505050;
}
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: #000;
  -webkit-box-shadow: 0 0 0px 1000px var(--gray) inset;
  box-shadow: 0 0 0px 1000px var(--gray) inset;
  transition: background-color 5000s ease-in-out 0s;
  padding-left: 5px;
  padding-right: 5px;
}
.woocommerce-address-fields__field-wrapper {
	margin: 0 0 30px;
}
.woocommerce-address-fields__field-wrapper p {
	margin: 0;
}
#shipping_address_2_field {
	align-self: flex-end; 
}
.select2-container--default .select2-selection--single {
	height: 41Px;
	line-height: 41px;
	border: none;
	border-bottom: 1Px solid #FFF;
	background: transparent;
	border-radius: 0;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 41px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 40px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-color: #FFF transparent transparent transparent;
}
.woocommerce-orders-table__cell-order-actions a {
	display: inline-block;
	margin: 0 3Px 0 0;
	background: var(--salmon);
	padding: 1px 10Px;
	color: #FFF;
}
.woocommerce-orders-table__cell-order-actions a:hover {
	background: var(--red);
}
.woocommerce-Address {
	width: 100%;
}
p.price {
	display: block;
	margin: 60px 0 0;
	font-size: 1.3em;
}

@media screen and (max-width: 1800px) {
	.woocommerce-MyAccount-navigation {
		width: 250px;
	}
	.woocommerce-MyAccount-content {
		width: calc(100% - 500px);
	}
}
@media screen and (max-width: 1400px) {
	.woocommerce-MyAccount-navigation {
		width: 250px;
	}
	.woocommerce-MyAccount-content {
		width: calc(100% - 250px);
	}
}

@media screen and (max-width: 767px) {
	#primary section.account {
		padding: 60px 35px;
		margin: -100px 0 0;
	}
	
	.woocommerce-MyAccount-navigation {
		width: 100%;
	}
	.woocommerce-MyAccount-navigation p strong{
		display: inline;
		font-weight: bold;
	    text-transform: uppercase;
	}
	.woocommerce-MyAccount-navigation ul {
		border: 1px solid rgb(255 255 255 / 40%);
		margin: 0 0 30px;
	}
	.woocommerce-MyAccount-navigation li {
		margin: 0;
	}
	.woocommerce-MyAccount-navigation li + li{
		border-top: 1px solid rgb(255 255 255 / 40%);
	}
	.woocommerce-MyAccount-navigation a {
		padding: 3px 10px 3px 25px;
		display: block;
	}
	.woocommerce-MyAccount-navigation li.is-active:after,
	.woocommerce-MyAccount-navigation li:hover:after {
		left: 10px ;
	}
	.woocommerce-MyAccount-content {
		width: 100%;
	}
	/**/
	.edit-account,
	.woocommerce-address-fields__field-wrapper,
	.addresses {
		grid-template-columns: 1fr;
	}
}

/* 2 column layout
--------------------------------------------- */

main section.two-col {
	margin: 0;
	padding-left: 0;
	padding-right: 0;
}
main section.two-col article {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	width: 100%;
}
main section.two-col article > div {
	width: 50%;
}
main section.two-col .post-thumbnail {
	overflow: hidden;
	clip-path: inset(0);
	min-height: 60vh;
}
main section.two-col .post-thumbnail img {
    position: fixed;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    object-fit: cover;
}
main section.two-col .entry-content {
	padding: 7vw 4.3vw;
	color: #FFF;
}
main section.two-col .entry-content .entry-content {
	padding-left: 0;
	padding-right: 0;
}
main section.two-col h1:after,
main section.two-col h2:after {
	background: #FFF;
}
@media screen and (max-width: 767px) {
	main section.two-col article {
		display: block;
	}
	main section.two-col article > div {
		width: 100%;
	}
	main section.two-col .post-thumbnail {
		height: 300px;
	}
	main section.two-col .post-thumbnail img {
	    width: 100%;
	}
	main section.two-col .entry-content {
		padding: 60px 35px;
	}
}

/* Login
--------------------------------------------- */
#customer_login {
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: space-around;
	flex-wrap: wrap;
}
#customer_login > div {
	width: 100%;
	max-width: 400px;
}
#customer_login input[type="text"],
#customer_login input[type="password"],
#customer_login input[type="email"] {
	width: 100%;
}
.woocommerce-form-login__rememberme {
	margin: 0 0 20px;
}

/* Tables
--------------------------------------------- */
.account .bookacti-user-booking-list-table {
	background-color: transparent;
	border: none;
}
.account .bookacti-user-booking-list-table th, 
.account .bookacti-user-booking-list-table td,
.account th,
.account td{
	border: none;
	border-bottom: 1px solid #FFF;
	background-color: transparent;
	padding: 8px;
	line-height: 30px;
}
.account .bookacti-user-booking-list-table thead {
	background-color: transparent;
}
.account .bookacti-user-booking-list-table .bookacti-column-events{
	text-align: center;
}
.account tr.bookacti-booking-list-selected-row {
	background: none;
}

/* Woocommerce
--------------------------------------------- */
.woocommerce-form-coupon-toggle,
.woocommerce-form-login-toggle{
	width: 100%;
}
body .woocommerce-message, body .woocommerce-info, body .woocommerce-error, body .woocommerce-noreviews, body p.no-comments {
    background: var(--red);
    border-radius: 0;
    padding: 10px 20px;
    margin: 0 0 15px;
    width: 100%;
	color: #FFF;
	
}
.woocommerce-notices-wrapper {
	width: 100%;
}
.cart-actions .coupon {
	display: flex;
}
.cart-actions .coupon input {
	margin: 0 10px 0 0;
}
.cart-actions button[type="submit"] {
	margin: 0;
}

/* Cart
--------------------------------------------- */
form.woocommerce-cart-form {
	width: 100%;
}
td.actions {
	border: none;
}
.cart-actions {
	display: flex;
	width: 100%;
	align-items: flex-start;
	justify-content: space-between;
	margin: 20px 0 0;
}
.cart-actions label {
	display: none;
}
.cart-actions input {
	padding: 0;
	font-size: 16px;
	padding: 5px 0;
	line-height: 21px;
}
.cart-actions button {
	font-size: 16px;
	width: auto;
	padding: 5px 20px;
	line-height: 20px;
}
.quantity .selector label {
	margin: 0 20px 0 0;
	font-weight: bold;
}
.quantity input {
	padding: 10px 5px;
	max-width: 50px;
	margin: 0 auto;
}
.cart-collaterals {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	width: 100%;
}
.cart-collaterals h2 {
	text-align: right;
    margin: 0 
}
.cart-collaterals h2:after {
	display: none;
}
a.checkout-button {
	color: #FFF;
	border-color: #FFF;
	text-decoration: none;
}
.cart-collaterals table.shop_table_responsive tr td {
	text-align: right;
}
form.checkout {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.baofc-customer-fields {
	width: 100%;
}
form.checkout #customer_details .col-1,
form.checkout #customer_details .col-2{
	width: 100%;
}
.woocommerce-billing-fields__field-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.woocommerce-billing-fields__field-wrapper label:not(.checkbox) {
	display: none;
}
.woocommerce-billing-fields__field-wrapper label.checkbox {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 40px;
}
.woocommerce-billing-fields__field-wrapper label.checkbox input{
	width: 40px;
}
.woocommerce-billing-fields__field-wrapper p,
body .col2-set .form-row-first, 
body .col2-set .form-row-last{
	width: 100%;
	margin: 0 0 10px;;
}
.woocommerce-billing-fields__field-wrapper input {
	padding: 10px 10px;
	width: 100%;
}
.woocommerce-billing-fields__field-wrapper select {
  display: block;
	background: none;
	padding: 10px;
	margin: 0 auto;
	border-width: 0 0 1px 0;
	color: #FFF;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #FFF;
}
.woocommerce-billing-fields__field-wrapper select option {
	color: #000;
}
.woocommerce-billing-fields__field-wrapper .select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: #FFF;
}
.woocommerce-account-fields {
	max-width: 500px;
	margin: 30px auto;
}
.woocommerce-account-fields .baofc-create-account-radio > div,
.woocommerce-account-fields p.woocommerce-validated.create-account{
	display: block;
	border: 1px solid var(--gray);
	border-radius: 2px;
	margin: 0 0 2px;
	display: flex;
	position: relative;
}
.woocommerce-account-fields .baofc-create-account-radio input,
.woocommerce-account-fields p.woocommerce-validated.create-account input{
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translate(0,-50%);
}
.woocommerce-account-fields .baofc-create-account-radio label,
.woocommerce-account-fields p.woocommerce-validated.create-account label{
	display: block;
	padding: 5px 10px 5px 40px;
	flex-grow: 1;
	cursor: pointer;
}
.woocommerce-account-fields .baofc-create-account-fields p {
	margin: 0;
}
.woocommerce-account-fields .baofc-create-account-fields label,
#account_username_field label {
	display: none;
}
.woocommerce-account-fields .baofc-create-account-fields input,
#account_username_field input{
	width: 100%;
	padding: 10px 10px;
	margin: 0 0 10px;
}
@media screen and (max-width: 600px) {
	.cart-actions,
	.cart-actions .coupon{
		flex-direction: column;
	}
	.cart-actions button,
	.cart-actions div,
	.cart-actions .coupon input{
		width: 100%;
		margin: 0 0 10px;
	}
	.variation-vnements {
    margin: 0 5px;
	}
	.variation-vnements ul {
		padding: 0;
		margin: 0 0 0 10px;
	}
}

/* Payments
--------------------------------------------- */
.payment_methods {
	padding: 0;
	margin: 0 0 20px;;
	list-style: none;
}
.payment_methods > li {
	background: #ffffff33;
	border-radius: 2Px;
	margin: 2Px;
}
.payment_methods input[type="radio"] {
	display: none;
}
.payment_methods label {
	display: block;
	padding: 10px;
	width: 100%;
}
.payment_methods > li > div {
	padding: 10px;
	border-top: 1px solid #FFF;
}
.payment_methods > li > div p:last-child {
	margin: 0;
}

@media screen and (min-width: 1000px) {
	form.checkout #customer_details,
	form.checkout #order_review{
		width: calc(50% - 10px);
	}
}
@media screen and (min-width: 500px) {
	.woocommerce-billing-fields__field-wrapper p,
	body .col2-set .form-row-first, 
	body .col2-set .form-row-last{
		width: calc(50% - 10px);
	}
}
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
@media (max-width: 767px) {
	.site-header .navigation-bar > .main-navigation > div {
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		background: var(--red);
		display: block;
		font-weight: bold;
		width: 0;
		transition: width ease 0.3s;
		z-index: 99;
		padding: 100px 0 50px;
		height: 100vh;
		overflow: hidden;
	}
	.admin-bar .site-header .navigation-bar > .main-navigation > div{
		/* top: 46px; */
		height: calc(100vh - 46px);
	}
	.admin-bar .site-header.smaller .navigation-bar > .main-navigation > div{
		/* top: 46px; */
		height: 100vh;
	}
	.site-header .navigation-bar > .main-navigation.toggled > div{
		width: 100vw;
		overflow: scroll;
		
	}
	.site-header .navigation-bar > .main-navigation > div:before{
		content:"";
		position: fixed;
		left: 100%;
		top: 0;
		background: var(--red);
		width: 100vw;
		height: 100px;
		transition: all ease 0.3s;
		z-index: 10;
		box-shadow: 0 0 5px rgba(0 0 0 / 0.2)
	}
	.site-header .navigation-bar > .main-navigation.toggled > div:before{
		left: 0;
	}
	.admin-bar .site-header .navigation-bar > .main-navigation > div:before{
		top: 46px;
	}
	.main-navigation > div > div {
		width: 100vw;
		/*! max-width: 400px; */
	}
	.main-navigation button.menu-toggle {
		border: none;
		padding: 0;
		margin: 0;
		position: absolute;
		right: 35px;
		top: 28px;
		background: transparent;
		z-index: 100;
		padding: 10px;
		border-radius: 5px;
	}
	.main-navigation button .bar {
		width: 25px;
		height: 3px;
		border-radius: 2px;
		background: #FFF;
		display: block;
		transition: all ease 0.3s;
	}
	.main-navigation button .bar + .bar {
		margin: 6px 0 0;
	}
	@keyframes topbaron {
		0% {transform: translate(0)}
		50% {transform: translate(0,9px)}
		100% {transform: translate(0,9px) rotate(45deg)}
	}
	.main-navigation.toggled button .bar:nth-child(1) {
		transform: translate(0,9px) rotate(45deg);
		animation: topbaron ease 0.3s;
	}
	@keyframes botbaron {
		0% {transform: translate(0)}
		50% {transform: translate(0,-9px)}
		100% {transform: translate(0,-9px) rotate(-45deg)}
	}
	.main-navigation.toggled button .bar:nth-child(3) {
		transform: translate(0,-9px) rotate(-45deg);
		animation: botbaron ease 0.3s;
	}
	.main-navigation.toggled button .bar:nth-child(2) {
		opacity: 0;
	}
	.main-navigation ul {
		padding: 0;
		margin: 0;
		text-align: center;
		font-size: 20px;
		line-height: 30px;
		list-style: none;
		text-transform: uppercase;
		line-height: 40px;
	}
	.main-navigation ul ul {
		font-weight: normal;
	}
	.main-navigation li {
		border-top: 1px solid #F4F5F5;
	}
	.main-navigation li li {
		border-top: 1px dotted #F4F5F5;
	}
	.main-navigation li.menu-item-has-children{
		display: grid;
		grid-template-columns: 1fr 40px;
	}
	.main-navigation li.menu-item-has-children ul {
		grid-column: 1 / 3;
		height: 0;
		overflow: hidden;
		transition: all ease 0.3s;
	}
	.main-navigation a {
		text-decoration: none;
		padding: 0 50px;
	}
	.main-navigation li.menu-item-has-children > a {
		padding: 0 10px 0 50px;
	}

	.main-navigation li button {
		border: none;
		height: 40px;
		padding: 0;
		line-height: 38px;
		transition: all ease 0.3s;
		background: none;
	}
	.main-navigation li.open button {
		transform: rotate(90deg);
	}
}
@media (min-width: 600px) and (max-width: 767px) {
	.admin-bar .site-header.smaller .navigation-bar > .main-navigation > div{
		/* top: 46px; */
		height: calc(100vh - 46px);
	}
	.admin-bar .site-header.smaller {
		top: 46px;
	}
}
@media (min-width: 768px) {
	.main-navigation {
		display: block;
		font-size: 1.2vw;
		font-weight: bold;
	}
	.site-header .navigation-bar > .main-navigation {
		width: 100%;
		max-width: 54vw;
	}
	.main-navigation button  {
		display: none;
	}
	.main-navigation ul {
		display: none;
		list-style: none;
		margin: 0;
		padding-left: 0;
		align-items: center;
		justify-content: space-between;
		letter-spacing: 0.05rem
	}
	
	.main-navigation ul ul {
		float: left;
		position: absolute;
		top: 100%;
		left: -999em;
		z-index: 99999;
		display: block;
		transform: translate(-50%);
		text-transform: uppercase;
		font-size: 20px;
	}
	.main-navigation ul ul a {
		color: #505050;
	}
	
	.main-navigation ul ul ul {
		left: -999em;
		top: 0;
	}
	
	.main-navigation ul ul li:hover > ul,
	.main-navigation ul ul li.focus > ul {
		display: block;
		left: auto;
	}
	
	
	
	.main-navigation ul li:hover > ul,
	.main-navigation ul li.focus > ul {
		left: 50%;
	}
	
	.main-navigation li {
		position: relative;
		line-height: 4.7vw
	}
	.smaller .main-navigation ul.menu > li {
		position: relative;
		line-height: 80px;
	}
	.smaller div[id*="marker"] {
		bottom: 10px;
	}
	.main-navigation ul ul li {
		text-align: center;
		line-height: 1.5vw;
		margin: 0 0 5px;
	}
	.main-navigation a {
		display: block;
		text-decoration: none;
		color: #FFF;
	}
	.main-navigation ul ul a {
		width: 14.9vw;
		padding: .3vw 1vw;
		background: #ffffffd1;
	}
	.main-navigation ul ul a:hover {
		background: #ffffff;
	}
	/*@keyframes menuin {
		from {margin: 0 0 10px; opacity: 0;}
		to {margin: 0; opacity: 1;}
	}
	.main-navigation ul.menu > .current-menu-item:after,
	.main-navigation ul.menu > li:after {
		content: "";
		height: 7px;
		width: 7px;
		display: block;
		background: #FFF;
		border-radius: 50%;
		position: absolute;
		left: 50%;
		transform: translate(-50%);
		opacity: 0;
		transition: all ease 0.3s;
		bottom: 0;
	}*/
	.main-navigation ul.menu {
		position: relative;
	}
	div[id*="marker"] {
		height: 7px;
		width: 7px;
		background: #FFF;
		border-radius: 50%;
		position: absolute;
		transition: all ease 0.3s;
		bottom: 0.8vw;
		transform: translate(-50%);
		opacity: 0;
	}
	.main-navigation ul.menu > .current-menu-item:after,
	.main-navigation ul.menu > li:hover:after {
		opacity: 1;
		bottom: .8vw;
	}
	.smaller .main-navigation ul.menu > .current-menu-item:after,
	.smaller .main-navigation ul.menu > li:hover:after {
		bottom: -3px;
	}
	.main-navigation ul.sub-menu > li:after {
		content: "";
		height: 3px;
		width: 0px;
		display: block;
		background: var(--gray);
		position: absolute;
		left: 50%;
		bottom: -1px;
		transform: translate(-50%);
		transition: all ease 0.3s;
	}
	.main-navigation ul.sub-menu > .current-menu-item:after,
	.main-navigation ul.sub-menu > li:hover:after {
		width: 20px;
	}
	.main-navigation ul ul li:hover > ul,
	.main-navigation ul ul li.focus > ul {
		display: block;
		left: 100%;
		transform: none;
	}
	.main-navigation ul ul ul {
		border-left: 5px solid var(--red);
	}
	.main-navigation ul ul ul:before {
		content: "";
		position: absolute;
		left: -9px;
		top: 20px;
		border-right: 5px solid var(--red);
		border-top: 8px solid transparent;
		border-bottom: 8px solid transparent;
	}
	.main-navigation ul ul ul li {
		margin:  0;
		font-size: 20px;
	}
	.main-navigation ul ul ul li a {
		width: 200px;

	}
}
@media (min-width: 768px) and (max-width: 1199px) {
	.main-navigation {
		font-size: 13px;
	}
	.main-navigation li {
		line-height: 55px;
	}

	.main-navigation ul ul li {
		line-height: 20px;
	}
	.main-navigation ul ul a {
		width: 180px;
		padding: 5px;
	}
	.main-navigation ul.menu {
		position: relative;
	}
	div[id*="marker"] {
		bottom: 5px;
	}
}


/* Small menu. */
.menu-toggle {
	display: block;
}

@media screen and (min-width: 767px) {

	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: flex;
	}
	.main-navigation .menu-menu-client-container {
    	display: none;
    }
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}
.entry-content > div > div > section,
.entry-content > div > section, 
#primary > section.content,
.entry-content > div > div > section.elementor-section-full_width > div > div > div.elementor-element-populated,
.entry-content > div > section.elementor-section-full_width > div > div > div.elementor-element-populated {
	padding: 7.8vw var(--side-padding);
}
.entry-content > div > div > section.elementor-section-full_width > div > div > div.elementor-element-populated,
.entry-content > div > section.elementor-section-full_width > div > div > div.elementor-element-populated{
	max-width: 700px;
	margin: 0 auto;
}
.entry-content > div > section#agenda > div > div > div.elementor-element-populated{
	max-width: 1400px;
}
.entry-content > div > div > section.elementor-section-full_width,
.entry-content > div > section.elementor-section-full_width {
	padding: 0;
}
.entry-content > div > div > section:nth-child(2n),
.entry-content > div > section:nth-child(2n) {
	background: var(--ocre) url(img/header-bg.png) no-repeat center;
    background-attachment: fixed;
    color: #FFF;
}
.entry-content > div > div > section:nth-child(2n + 1) a:not(.elementor-button) ,
.entry-content > div > section:nth-child(2n + 1 ) a:not(.elementor-button) {
	color: #434343;
}
.entry-content > div > div > section:nth-child(2n + 1) a:not(.elementor-button):hover ,
.entry-content > div > section:nth-child(2n + 1 ) a:not(.elementor-button):hover {
	color: #434343;
}
section.content > .product {
	max-width: 1200px;
	margin: 0 auto;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}
.elementor-column.el-bg-image{
	min-height: 300px;
}
@media screen and (max-width: 767px) {
	body .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
		padding: 0;
	}
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/* Products list
--------------------------------------------- */
.term-description {
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	/*! padding: 0 50px; */
}
div.products {
	max-width: 1200px;
	margin: 0 auto;
	/*! padding: 0 50px; */
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-row-gap: 50px;
	grid-column-gap: 50px;
}
article.product {
	position: relative;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}
article.product .category {
	margin: 0 3.1vw -19px;
	line-height: 38px;
	background: var(--turquoize);
	position: relative;
	z-index: 2;
	overflow: hidden;
}
article.product .category a {
	color: #FFF;
	text-decoration: none;
    display: block;
    text-transform: uppercase;
}
article.product .category a:before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	height: 2px;
	width: 2px;
	outline: 150Px solid rgba(256,256,256,0.2);
	outline-offset: 170px;
	border-radius: 50%;
	transition: all ease 0.3s;
}
article.product .category a:hover:before {
	outline-offset: 40px;
}
article.product .product-image {
	position: relative;
	overflow: hidden;
	padding: 0 0 100%;
}
article.product .product-image img{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all ease 0.6s;
}
article.product .product-details {
	background: var(--turquoize);
	color: #FFF;
	padding: 1.6vw;
}
article.product .product-details .target {
	font-size: 15Px;
}
article.product.apero-ceramique .product-details,
article.product.apero-ceramique .category {
	background: #ADB9A2;
}
article.product.stages .product-details,
article.product.stages .category {
	background: #BF8C38;
}
article.product.a-4-mains .product-details,
article.product.a-4-mains .category {
	background: #CB7552;
}
article.product.workshops .product-details,
article.product.workshops .category {
	background: #B74C1D;
}
article.product.retraites .product-details,
article.product.retraites .category {
	background: #DED0BD;
}
article.product.marches .product-details,
article.product.marches .category {
	background: #0123D0;
}
article.product .permalink {
	text-decoration: none;
	position: relative;
	z-index: 1;
}
@keyframes product-hover{
    from{top:60%;opacity:0}
    to{top:50%;opacity:1}
}
article.product .permalink:hover .product-image:after {
	content: '+';
	/* content: "\f055"; */
	position: absolute;
	z-index: 10;
	color: #FFF;
	font-size: 2vw;
	left: 50%;
	top: 50%;
    transform: translate(-50%,-50%);
    animation: product-hover 1s; 
}
article.product .permalink .product-image:before {
	content: '';
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: transparent;
    transition: all ease 0.5s;	
}
article.product .permalink:hover .product-image:before {
	background: rgba(0,0,0,0.4);
}
@media screen and (max-width: 999px) {
	div.products {
		grid-template-columns: 1fr 1fr;
	}
}
@media screen and (max-width: 600px) {
	div.products {
		grid-template-columns: 1fr;
		grid-row-gap: 20px;
		/*! padding: 0 20px; */
	}
}
@media screen and (max-width: 767px) {
	article.product {
		font-size: 20px;
	}
	article.product .category {
		margin: 0 0-19px;
		line-height: 38px;
	}
	article.product .product-details {
		padding: 15Px;
	}
	article.product .permalink:hover .product-image:after {
		font-size: 20px;
	}
}

/* Openspace
--------------------------------------------- */

section.os-booking  {
	background: var(--red) url(img/header-bg.png) no-repeat center;
	background-attachment: fixed;
}
.os-booking-form {
	max-width: 1000px;
	margin: 0 auto;
    color: #FFF;
}
.os-booking h2 {
	color: #FFF;
}
.os-booking h2:after {
	background: #FFF;
}
body #openspace-cal .bookacti-calendar .fc-event .fc-event-main {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	background: transparent;
}
#openspace-cal .bookacti-event-time-separator,
#openspace-cal .bookacti-event-time-end,
#openspace-cal .fc-event-title-container,
#openspace-cal .os-booking .bookacti-calendar .fc-agenda-view .bookacti-small-event .fc-title,
#openspace-cal .bookacti-calendar .fc-agenda-view .bookacti-small-event:not(.bookacti-wide-event) .fc-time:after,
#openspace-cal .fc-time-grid-event.fc-short .fc-time:after,
#openspace-cal .os-booking .bookacti-calendar .fc-agenda-view .bookacti-tiny-event .fc-title {
	display: none;
}
.bookacti-calendar .fc-event:not(.bookacti-event-unavailable) {
    border: 2px solid var(--ocre) !important;
    color: #fff;
    border-radius: 0;
    transition: background ease 0.3s;
	  box-shadow: none;
}
.bookacti-calendar .fc-event:not(.bookacti-event-unavailable):hover .fc-event-main{
    text-decoration: underline;
}
#openspace-cal .bookacti-calendar .fc-event.bookacti-picked-event .fc-event-main {
    text-decoration: underline;
}
#openspace-cal .bookacti-calendar .fc-event.bookacti-event-unavailable /* REMOVE */ {
    border: none !important;
    background: repeating-linear-gradient(
	  45deg,
	  #b74c1d,
	  #b74c1d 10px,
	  #cb7552 10px,
	  #cb7552 20px
	) !important;
    color: #efefef;
    opacity: 1;
}
#openspace-cal .bookacti-booking-system .badp-waterfall-field {
	display: block !important;
	margin: 0 auto !important;
}
#openspace-cal .bookacti-form-field-content .badp-display-table-row {
	display: block;
	width: 400px !important;
	margin: 0 auto;
}
#openspace-cal .bookacti-form-field-container .badp-waterfall-timepicker-field .ui-selectmenu-button {
	width: 400px !important;
}
#openspace-cal .bookacti-form-field-container input.badp-waterfall-datepicker {
	width: 220px !important;
	display: block;
	margin: 0 auto;
	text-align: center;
	color: #FFF;
}
#openspace-cal .bookacti-form-field-container input.badp-waterfall-datepicker::placeholder {
	color: #FFF;
}
#openspace-cal .bookacti-booking-system .badp-waterfall-title {
	display: none !important;
}
#openspace-cal .bookacti-picked-events {
	text-align: cenbter;
	font-size: 15px;
}
#openspace-cal .bookacti-picked-events-list{
	margin: 0;
	padding: 0;
	list-style: none;
}
#openspace-cal div.bookacti-notices {
	width: 100%; 
}
#openspace-cal .bookacti-notices ul.bookacti-error-list {
	border-width: 0;
	background: var(--red);
}
#openspace-cal div.bookacti-notices ul.bookacti-success-list {
	border: 1px solid #FFF;
	border-left-color: #FFF;
	background: var(--salmon);
}
#openspace-cal div.bookacti-notices>ul {
	border-radius: 0;
	box-shadow: none;
	background: none;
}
#openspace-cal .os-booking .bookacti-unpick-event-icon:before {
	color: #FFF;
	border-radius: 50%;
}
#openspace-cal .os-booking .bookacti-form-field-label {
	display: block;
	width: 100%;
	font-size: 20px;
	margin: 0 30px 10px 0;
	padding: 0;
}
#openspace-cal .os-booking .bookacti-form-field-content {
	width: 89px;
}
#openspace-cal .os-booking .bookacti-form-field-content input {
	color: #FFF;
	border-bottom-color: #FFF;
	width: 80Px;
	padding: 0;
	text-align: center;
	/* margin: 0 auto; */
	display: block;
	height: 40px;
	line-height: 40px;
}
#openspace-cal .os-booking .bookacti-required-field-indicator::before {
    color: #FFF;
}
#openspace-cal .os-booking .bapap-booking-pass-selectbox-container {
	display: block;
	margin: 0 auto;
	max-width: 320px;
}
#openspace-cal .os-booking .select2-container--default .select2-selection--single {
	height: 40px;
	background: none;
	color: #FFF;
	border: none;
	border-bottom: 1Px solid #FFF;
	border-radius: 0;
}
#openspace-cal .os-booking .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #FFF;
	height: 39px;
	line-height: 39px;
}
#openspace-cal .os-booking .select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-color: #FFF transparent;
}
#openspace-cal .os-booking input[type="submit"] {
	color: #FFF;
	border: 1Px solid #FFF;
	margin: 30px 0 0;
}
#openspace-cal form.bookacti-booking-form {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
}
#openspace-cal .bookacti-form-field-type-customer,
#openspace-cal .bookacti-user-is-logged-in {
	width: 100%;
}
#openspace-cal .bookacti-form-field-type-booking_pass {
	flex-grow: 1;
}
#openspace-cal .os-booking .bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container:not(.bookacti-has-price).bookacti-has-credits {
	display: none;
}
#agenda .fc-button {
	color: var(--red);
}
#agenda .fc-button:hover {
	color: var(--salmon);
}
#agenda .bookacti-calendar .fc-event {
	border: none !important;;
	color: #fff;
	border-radius: 4px;
	transition: background ease 0.3s;
	box-shadow: none;
  text-decoration: none;
}
#agenda .bookacti-calendar a.fc-event:hover {
  opacity: 0.8;
}
#agenda .bookacti-calendar .fc-event:not(.bookacti-event-unavailable):hover .fc-event-main{
  text-decoration: none;
}
#agenda .bookacti-calendar .fc-event-main {
    padding: 5px;
}
@media screen and (max-width: 767px) {
	#agenda .bookacti-calendar .fc-event {
		color: #434343;
	}
	#agenda .fc-toolbar.fc-header-toolbar {
		display: grid;
		grid-template-columns: 1fr 40px;
		text-align: left;
		align-items: center;
	}
	#agenda .fc-today-button {
		display: none;
	}
	#agenda .fc-toolbar h2 {
		text-align: left;
	}
	#agenda .bookacti-calendar-minimal-width .fc-header-toolbar > .fc-toolbar-chunk {
		margin: 0;
	}
}
/* Products list
--------------------------------------------- */
div.product {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
div.product h1 {
	width: 100%;
}
div.product .price {
	text-align: center;
	font-size: 40px;
	font-weight: bold;
	margin: 0 0 20px
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
	height: 100px;
	width: auto;
	object-fit: cover;
	padding: 0 4px 4px 0;
}
.woocommerce-product-gallery__wrapper img {
	width: 100%;
	object-fit: contain;
}
div.product .woocommerce-product-gallery,
div.product .entry-summary {
	width: calc(50% - 15px);
	display: block;
}
.fc-toolbar {
	flex-wrap: no-wrap;
}
.fc-toolbar .fc-clear {
	display: none;
}
.fc-toolbar .fc-toolbar-chunk:nth-child(1) {
	order: 2;
	display: flex;
	justify-content: flex-end;
}
.fc-toolbar .fc-toolbar-chunk:nth-child(3) {
    display: none;
}
.fc-toolbar .fc-toolbar-chunk:nth-child(2) {
	order: 1;
}
.fc-toolbar h2 {
	margin: 0;
	padding: 0;
}
.fc-toolbar h2:after {
	display: none;
}
.fc-toolbar button {
	width: auto;
	padding: 0 5px;
	font-size: 16px;
	background: none;
}
.fc .fc-button-primary:disabled {
	border: 1px solid transparent;
	background: none;
}
.fc .fc-button-primary:not(:disabled), .fc .fc-button-primary:not(:disabled):active, .fc .fc-button-primary:not(:disabled).fc-button-active, .fc .fc-button-primary:not(:disabled):active {
	background: none;
	border: 1px solid transparent;
}
.fc-theme-standard .fc-list {
	border: 1px solid var(--gray);
}
.bookacti-calendar .fc-list-table td {
	border-bottom: 1px solid var(--gray);
}
.fc-theme-standard .fc-list-day th{
	background: rgba(256,256,256,0.3) !important;
	font-size: 13Px;
	border-bottom: 1px solid var(--gray);
	background: #CCC;
}
.fc-theme-standard .fc-list-day th a{
	color:#505050;
	text-decoration: none;
}
.fc .fc-list-event:hover td {
	background: #ffffff29;
}
body .bookacti-availability-container .bookacti-available-places {
	font-size: 12px;
}
#openspace-cal .fc-view table,
#openspace-cal .fc-view thead,
#openspace-cal .fc-view tr,
#openspace-cal .fc-view tbody,
#openspace-cal .fc-view td,
#openspace-cal .fc-view th {
    border-bottom: none;
    border-left: none;
    border-top-width: 0;
    border-right: none;
    color: #fff;
    border-color: tranparent;
}
/* FIX OPENSPACE */
#openspace-cal .fc-scrollgrid-section-header, .fc-scrollgrid-section-header * {
	background: none !important;
}
body #openspace-cal  .fc-view .bookacti-picked-event td {
	color: #505050;
}
#openspace-cal thead.fc-head table tr > th:first-child,
#openspace-cal .fc-bg table tr > td:first-child,
#openspace-cal .fc-slats table tr > td:first-child {
	display: none;
	width: 0 !important;
}
#openspace-cal .fc-view .fc-slats td {
	border-bottom: 0px dotted #CCC;
}
#openspace-cal .fc-theme-standard .fc-scrollgrid {
	border: none;
}
#openspace-cal .fc .fc-scrollgrid-section-sticky>* {
	background: none;
}
#openspace-cal thead[role="presentation"] th {
	border-bottom: 1px solid #fff;
	font-style: italic;
	color: #FFF;
	vertical-align: middle;
	background: none;
	font-size: 20px;
}
#openspace-cal thead[role="presentation"] th a {
	text-decoration: none;
}
#openspace-cal thead[role="presentation"] th > div {
	padding: 10px 0;
}
#openspace-cal .fc-view .fc-timegrid-slots table {
	border-bottom: 1px solid #fff;
}
#openspace-cal .fc .fc-day-disabled {
	background: none;
}
.product_meta{
	font-style: italic;
	text-align: center;
	font-size: 0.8em;
	margin: 40px 0 0;
}
.product_meta .sku_wrapper {
	display: none;
}
ul.tabs.wc-tabs {
	display: none;
}
.quantity {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 20px;
}
#openspace-cal .cart_item .quantity {
	margin: 0;
}
#openspace-cal button[type="submit"]{
	display: block;
	margin: 0 auto;
}
#openspace-cal .fc .fc-timegrid-slot {
	height: 3vw;
}
@media screen and (max-width: 1199px) {
	#openspace-cal .fc-time-grid .fc-slats td {
		height: 40px;
	}
}
#openspace-cal .fc-unthemed .fc-disabled-day {
	background: none;
}
.wc-tab {
	font-size: 15px;
}
main section.two-col .entry-content.woocommerce-Tabs-panel {
	padding: 60px 0;
}
main section.two-col .entry-content.woocommerce-Tabs-panel h2{
	display: none;
}
#openspace-cal table.variations th, table.variations td {
	display: block;
	width: 100%;
	text-align: center;
}
#openspace-cal table.variations select {
  display: block;
	background: none;
	padding: 10px;
	margin: 0 auto;
	border-width: 0 0 1px 0;
	color: #FFF;
}
#openspace-cal table.variations select option {
	color: #000;
}
#openspace-cal table.variations select::placeholder {
  color: #FFF;
}
#openspace-cal table.Variations option {
	background: #000
}
.woocommerce_gc_giftcard_form {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
}
.wc_gc_giftcard_to_multiple, .wc_gc_giftcard_from {
	width: calc(50% - 10px);
}
.wc_gc_giftcard_message {
	width: 100%;
}
.woocommerce_gc_giftcard_form label {
	text-align: left;
}
.woocommerce_gc_giftcard_form input::placeholder,
.woocommerce_gc_giftcard_form textarea::placeholder{
	color: #efefef;
}
@media screen and (max-width: 767px) {
	.wc_gc_giftcard_to_multiple, .wc_gc_giftcard_from {
		width: 100%;
	}
}
/* modal
--------------------------------------------- */
.modal-dialog {
	max-width: 1300px;
}
.modal-content,
body .ui-dialog{
	background: var(--salmon);
	color: #FFF;
	text-align: left;
	border: none;
	border-radius: 0;
	box-shadow: 0 0 5px rgba(0,0,0,0.4);
	font-size: 20px;
	font-weight: 400;
	border-width: 0;
	padding: 0;
	outline: none;
}
body .ui-widget.ui-widget-content {
	border: 0px solid transparent;
}
body .ui-widget-content,
body .ui-dialog-titlebar{
	background: var(--salmon);
	border: none;
	color: #FFF;
}
.modal-header {
	border: none;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.modal-body {
	padding: 0 7.8vw 4vw;
}
.modal .modal-header button {
    border: none;
    background: none;
    color: #FFF;
    font-size: 40px;
}
button.ui-dialog-titlebar-close {
	display: none;
}
.bookacti-reschedule-booking-form > div {
	width: 100%;
}
.bookacti-reschedule-booking-form > div input.ui-state-default{
	width: 100%;
	width: 220px !important;
	display: block;
	margin: 0 auto;
	padding: 10px 0;
	text-align: center;
	color: #FFF;
	background: transparent;
	border: none;
	border-bottom: 1px solid #FFF;
}
.bookacti-reschedule-booking-form > div input.ui-state-default::placeholder {
	color: #FFF;
}

/* future events
--------------------------------------------- */
#future-events {
	padding: 7vw var(--side-padding);
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	background: #FFF;
}
.section-title{
	width: 100%;
	margin: 0 0 3vw;
}
#future-events .swiper-control {
	width: 25px;
	cursor: pointer;
}
#future-events .swiper-control svg {
	width: 25px;
	fill: var(--salmon);
}
#future-events .swiper {
	width: calc(100% - 16.8vw);
}
#future-events .swiper-wrapper {
	display: flex;
}
#future-events .swiper-slide {
	box-sizing: border-box;
}
#future-events .swiper-slide button {
	background: none;
	border: none;
	padding: 0;
}
@media screen and (max-width: 767px) {
	#future-events {
		padding: 60px 0;
	}
	.section-title{
		width: 100%;
		margin: 0 0 10px;
	}
	#future-events .swiper-control {
		width: 35px;
		cursor: pointer;
		text-align: center;
	}
	#future-events .swiper-control svg {
		width: 15px;
	}
	#future-events .swiper {
		width: calc(100% - 70px);
	}
}

/* footer
--------------------------------------------- */
footer.site-footer {
	background: #FFF;
	font-weight: bold;
	padding: 3.3vw 0 0;
	letter-spacing: 0.03rem;
}
.site-footer .grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.site-footer #contact-details {
	padding: var(--side-padding);
	background: var(--orange);
	color: white;
}
#contact-details .title {
	font-size: 20px;
	text-transform: uppercase;
}
#contact-details > div > div + div {
	margin-top: 30px;
}
.site-footer p {
	margin: 0;
}

footer .icon {
	margin: 0 0 20px;
	font-size: 30px;
	line-height: 30px;
}
footer ul {
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	list-style-type: none;
	grid-gap: 30px;
}
footer #social-menu li > a {
	display: block;
	font-size: 0;
	line-height: 0;
	color: transparent;
	width: 30px;
	height: 30px;
}
footer #social-menu li > a:before {
	content: "";
	height: 30px;
	width: 30px;
	display: block;
}
footer #social-menu li.contact > a:before {
		background: url(img/mail.svg) no-repeat center;
}
footer #social-menu li.instagram > a:before {
		background: url(img/insta.svg) no-repeat center;
}
footer #social-menu li.facebook > a:before {
		background: url(img/facebook.svg) no-repeat center;
}
footer #social-menu li:hover{
    color: var(--salmon);
}
footer #social-menu li > a:hover {
	transform: scale(1.1);
}
footer #map {
	position: relative;
	width: 100%;
}
footer #map iframe {
	position: absolute;
	left: 0;
	width: 100%;
	top: 0;
	height: 100%;
}
.site-info {
	background: var(--gray);
	padding: 30px var(--side-padding);
	text-align: right;
	font-weight: 400;
	font-size: 12px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	grid-gap: 20px;
}
.site-info ul {
	list-style: none;
}
.site-info ul > li {
	margin: 0 10px;
}
.site-info a {
	color: #505050;
	text-decoration: underline;
}
.site-info a:hover {
	color: #b74c1d;
}

@media screen and (max-width: 767px) {
	footer.site-footer {
		padding: 0;
	}
	.site-footer #contact-details {
		padding: 30px 0;
	}
	.site-footer #contact-details > div {
		display: block;
	}
	.site-footer #contact-details > div > div {
		padding: 0 var(--side-padding);
	}
	.site-footer #contact-details > div > div.social {
		flex-direction: column;
		margin: 40px 0;
	}
	.site-footer .title {
		margin: 0 0 20px;
	}
	.site-footer .site-title {
	    text-transform: uppercase;
	}
	.site-footer p {
		margin: 0;
	}
	footer .icon {
		margin: 0 auto 20px;
		font-size: 30px;
		line-height: 30px;
		width: 30px;
	}
	footer .social .icon {
		width: auto;
		margin: 0 0 15px;
	}
	footer .site-info ul {
		margin: 0;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	footer #map {
		position: relative;
		width: 100%;
		min-height: 400px;
	}
	footer #map iframe {
		position: absolute;
		left: 0;
		width: 100%;
		top: 0;
		height: 100%;
	}
	.site-info {
		background: var(--gray);
		padding: 30px 4.3vw;
		text-align: center;
		font-weight: 400;
		font-size: 12px;
	}
	.site-info ul {
		list-style: none;
		margin: 0 0 10px;
	}
	.site-info ul > li {
		margin: 0 10px;
	}
	.site-info a {
		color: #505050;
		text-decoration: underline;
	}
	.site-info a:hover {
		color: #b74c1d;
	}	
}
/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {
	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* JQUERY CALENDAR */

.ui-datepicker.ui-widget.ui-widget-content {
	border: none;
	border-radius: 0;
	background: var(--salmon);
}
.ui-datepicker .ui-widget-header {
    border: none;
    background: none;
    color: #fff;
    font-weight: bold;
}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
	background: var(--gray);
	border-radius: 50%;
}
.ui-datepicker table {
	color: #FFF;
}
.ui-datepicker.ui-widget-content .ui-state-default {
	background: var(--red);
	color: #FFF;
	border: 2px solid transparent;
}
.ui-datepicker.ui-widget-content .ui-state-disabled .ui-state-default {
	background: none;
}
.ui-datepicker.ui-widget-content .ui-datepicker-current-day .ui-state-default {
	border-bottom-color: #FFF
}
@supports (-webkit-touch-callout: none) {
	#banner,
	main section.two-col,
	.site-footer,
	#contact-details section.os-booking,
	.entry-content > div > div > section:nth-child(2n),
	.entry-content > div > section:nth-child(2n),
	#team .modal img.attachment-post-thumbnail,
	#team  img.attachment-post-thumbnail,
	.site-header,
	.site-footer #contact-details,
	#team,
	#about{
	    background-size: auto 100vh !important;
		background-attachment: scroll !important;
	}    
}
form.lost_reset_password {
	margin: 0 auto;
	width: 100%;
	max-width: 600px;
}
form.lost_reset_password .password-input,
form.lost_reset_password .password-input input{
	width: 100%;
	display: block;
}
#newsletter .title {
	font-weight: bold;
	color: var(--red);
	font-size: 200%;
	margin: 0 0 20px;
}
#newsletter {
	background: #FFF;
	text-align: center;
}
#newsletter > div {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	padding: var(--side-padding);
}
#newsletter .mce-inputs {
	display: grid;
	grid-template-columns: 3fr 2fr;
}
#newsletter label {
	width: 100%;
}
#newsletter input {
	border: 1px solid #CCC;
	width: 100%;
	padding: 20px;
	color: #434343;
	font-size: 20px;
	line-height: 25px;
}
#newsletter input::placeholder{
	color: #CCC;
}
#newsletter input[type="submit"] {
	background: var(--red);
	border-color: var(--red);
	color: #FFF;
}
#mc_embed_signup {
	max-width: 100%;
}
@media screen and (max-width: 600px) {
	#newsletter .mce-inputs {
		display: grid;
		grid-template-columns: 1fr;
	}
}
@media screen and (min-width: 768px) {
	#agenda colgroup {
		display: none;
	}
	#agenda .fc .fc-timegrid-slot-label-cushion {
		display: none;
	}
	#agenda thead th:first-child {
		display: none;
	}
	#agenda [role="presentation"] tr td:first-child {
		display: none;
	}
	#agenda table {
		border: none;
	}
	#agenda .fc-scrollgrid-section-header [role="presentation"] th  {
		background: var(--turquoize) !important;
	}
	#agenda th[role="presentation"] th {
		border-color: #FFF;
	}
	#agenda .fc-timegrid-slots tr:nth-child(2n+1) td {
		border: none;
	}
	#agenda  ttable[role="presentation"] tr:nth-child(2n) td {
		border: none;
		border-width: 0 1px 1px 0;
		border-style: solid;
		border-color: #CCC;
	}
	#agenda .fc .fc-timegrid-col.fc-day-today {
		background: #efefef;
	}
	#agenda th a {
		color: #FFF;
		text-decoration: none;
	}
	#agenda td[role="presentation"],
	#agenda th[role="presentation"]{
		border: none;
	}
}