/* Fixes */
body.mce-content-body{
	margin: 15px;
}
.wp-block-image .components-resizable-box__container{
	display: inline-block !important;
}
.wp-block-nk-awb,
:where(.wp-block-group.has-background){
	padding: 0;
}
.wp-block-cover,
.wp-block-cover-image{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-x: clip;
	overflow-y: visible;
	min-height: 0;
	padding: 0;
	background-position: 50%;
}
:is( .wp-block-cover, .wp-block-cover-image ).is-position-top-left{
	align-items: flex-start;
	justify-content: flex-start;
}
.has-border-color{
	border-style: solid;
}
.has-background-dim{
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	opacity: .5;
	background: #000;
}
.has-background-dim-0{
	opacity: 0;
}
.has-background-dim-10{
	opacity: 0.1;
}
.has-background-dim-40{
	opacity: 0.4;
}
.has-background-dim-100{
	opacity: 1;
}
.wp-block-cover__image-background,
.wp-block-cover__video-background{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.wp-block-cover__inner-container{
	width: 100%;
	z-index: 1;
}
/* .wp-block-site-logo img{
	width: auto;
	height: auto;
}
.wp-block-site-logo > div{
	width: auto !important;
	height: auto !important;
} */
/* .wp-block-image.is-style-rounded img{
	border-radius: 10px;
} */
/* use preserveAspectRatio="none" in SVGs */
/* .is-style-fullwidth .components-resizable-box__container{
	max-width: none !important;
	max-height: none !important;
	width: 100% !important;
	height: auto !important;
}
.is-style-fullwidth{
	overflow-x: clip;
}
.is-style-fullwidth img{
	max-width: none;
	width: calc( 100% + 2px );
	margin: -1px;
} */
.wp-block-group{
	position: relative;
}
:is( .wp-block-embed, .wp-block-image ) + p{
	margin-top: 1.5em;
}
p + :is( .wp-block-embed, .wp-block-image ){
	margin-top: 1.5em;
}
figure:not(.wp-block-table),
.wp-block-embed,
.wp-block-image{
	position: relative;
	margin-bottom: 0;
	font-size: 0;
}
.wp-block-video,
.wp-embed-aspect-16-9{
	aspect-ratio: 16/9;
}
.wp-block-video > div,
.wp-block-video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.wp-block-image :is( .aligncenter, .alignleft, .alignright ),
.wp-block-image:is( .aligncenter, .alignleft, .alignright ){
	display: block;
}
figure.aligncenter{
	display: block;
	text-align: center;
}
figure.alignright{
	display: block;
	text-align: right;
}
figcaption,
.wp-block-image figcaption{
	display: flex;
	align-items: flex-start;
	gap: 6px;
	max-width: 520px;
	margin: 16px 0 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.2857;
}
figcaption::before{
	content: '';
	flex-shrink: 0;
	display: block;
	width: 1.142857em;
	aspect-ratio: 1;
	-webkit-mask: url(images/figcaption.svg) no-repeat center/contain;
	mask: url(images/figcaption.svg) no-repeat center/contain;
	background: currentColor;
}

.edit-post-visual-editor__post-title-wrapper{
	margin: 0 !important;
	padding: 15px;
	background: #fbfbfb;
	border-bottom: 1px solid #e0e0e0;
}
h1.editor-post-title{
	margin: 0;
	background: none;
	font-size: 30px;
	text-align: center;
	color: #000;
	text-transform: none;
}

/* Layout styles */
.has-text-align-center{
	text-align: center;
}
.is-layout-flex{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
/* .is-layout-flex.is-nowrap{
	flex-wrap: nowrap;
} */
/* .is-layout-flex.is-vertical{
	flex-direction: column;
} */
/* .is-layout-grid{
	display: grid;
	gap: 10px;
} */
/* :is( .is-layout-flex, .is-layout-grid ) > *{
	margin: 0;
} */
.is-content-justification-left{
	justify-content: flex-start;
}
.is-content-justification-center{
	justify-content: center;
}
.is-content-justification-right{
	justify-content: flex-end;
}
.is-content-justification-space-between{
	justify-content: space-between;
}

/*
100	Thin (Hairline)
200	Extra Light (Ultra Light)
300	Light
400	Normal
500	Medium
600	Semi Bold (Demi Bold)
700	Bold
800	Extra Bold (Ultra Bold)
900	Black (Heavy)
*/

/* Styling */
body{
	--bs-body-bg: #fff;
	--bs-body-text-align: left;
	--bs-body-color: var(--wp--preset--color--black);
	--bs-body-font-family: var(--wp--preset--font-family--azo-sans);
	--bs-body-font-size: var(--wp--preset--font-size--regular);
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.625;
	/* accent-color: #f00; */
	/* caret-color: #f00; */
	--filter-vivid-violet: brightness(0) invert(24%) sepia(31%) saturate(3102%) hue-rotate(258deg) brightness(92%) contrast(91%);
}

[id]{
	scroll-margin-top: 100px;
}

/* ::selection{
	opacity: 1;
	background: rgba(0, 0, 0, 0.99);
	color: #fff;
}
::-moz-selection{
	opacity: 1;
	background: rgba(0, 0, 0, 0.99);
	color: #fff;
} */

.row{
	gap: 1.5em 0;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6{
	max-width: 100%;
	font-weight: 700;
}

h1, .h1, .is-style-h1{
	position: relative;
	z-index: 2;
	margin: 70px 24px;
	font-size: 80px;
	line-height: 1.05;
	color: var(--wp--preset--color--white);
	text-transform: uppercase;
}
h1:not(:has(span)){
	background: var(--wp--preset--color--vivid-violet);
	color: #fff;
}
h1 span, .h1 span, .is-style-h1 span{
	display: inline;
	background: var(--wp--preset--color--vivid-violet);
	-webkit-box-decoration-break: clone;
	-ms-box-decoration-break: clone;
	-o-box-decoration-break: clone;
	box-decoration-break: clone;
	box-shadow: 24px 0 0 var(--wp--preset--color--vivid-violet), -24px 0 0 var(--wp--preset--color--vivid-violet);
}
h1.rich-text:focus > span[data-rich-text-format-boundary]{
	background: var(--wp--preset--color--vivid-violet);
}
h1:is( .h2, .is-style-h2 ){
	margin: 6.6px 16px;
}
h3:is( .h2, .is-style-h2 ){
	margin: 4px 16px;
	line-height: 1.15;
}
:is( h1, h3 ):is( .h2, .is-style-h2 ) span{
	box-shadow: 16px 0 0 var(--wp--preset--color--vivid-violet), -16px 0 0 var(--wp--preset--color--vivid-violet);
}
.klaro .cookie-modal .cm-modal .cm-header h1 {
	z-index: 0;
}
h2, .h2, .is-style-h2{
	margin: 0 0 32px;
	font-size: 56px;
	color: var(--wp--preset--color--vivid-violet);
	text-transform: uppercase;
}
h3, .h3, .is-style-h3{
	position: relative;
	z-index: 2;
	margin: 7px 16px 36px;
	font-size: 40px;
	line-height: 1.3;
	color: var(--wp--preset--color--white);
	text-transform: uppercase;
}
h3:not(:has(span)){
	background: var(--wp--preset--color--vivid-violet);
	color: #fff;
}
h3 span, .h3 span, .is-style-h3 span{
	display: inline;
	background: var(--wp--preset--color--vivid-violet);
	-webkit-box-decoration-break: clone;
	-ms-box-decoration-break: clone;
	-o-box-decoration-break: clone;
	box-decoration-break: clone;
	box-shadow: 8px 0 0 8px var(--wp--preset--color--vivid-violet), -8px 0 0 8px var(--wp--preset--color--vivid-violet);
}
h3.rich-text:focus > span[data-rich-text-format-boundary]{
	background: var(--wp--preset--color--vivid-violet);
}
/* :is(p, ul) + h3,
:is(p, ul) + :is(.h3, .is-style-h3){
	margin-top: 50px;
} */
h4, .h4, .is-style-h4{
	font-size: 28px;
}
h5, .h5, .is-style-h5{
	font-size: 22px;
}
h6, .h6, .is-style-h6{
	margin: 0 0 10px;
	font-size: 20px;
	line-height: 2.1;
	text-transform: uppercase;
}
:is(p, ul) + h6,
:is(p, ul) + :is(.h6, .is-style-h6){
	margin-top: 42px;
}

.has-huge-font-size{
	font-weight: 900;
	line-height: 0.5833;
}
.has-huge-font-size a{
	text-decoration: none;
}

.has-medium-font-size,
.has-lead-font-size{
	font-size: var(--wp--preset--font-size--lead);
	font-family: var(--wp--preset--font-family--centennial-lt-pro);
	font-weight: 700;
	line-height: 1.4;
	font-style: italic;
}
.has-fz-24-font-size{
	line-height: 1.25;
}
.has-fz-16-font-size{
	letter-spacing: 0.24px;
	line-height: 1.5;
}
.has-label-font-size{
	margin-bottom: 8px !important;
	font-weight: 500;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}
.has-fz-12-font-size{
	font-weight: 500;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--french-lilac);
	text-transform: uppercase;
}

button{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	color: #000;
	text-align: center;
}

hr{
	opacity: 1;
}
.wp-block-separator{
	border-bottom: 0;
}

a, a:hover{
	color: inherit;
}
.has-link-color a{
	color: inherit;
}

b, strong{
	font-weight: bold;
}

mark{
	padding: 0;
}

:where( p, ul ):not(:last-child){
	margin-bottom: 1.6em;
}
:is( p, ul ):last-child{
	margin-bottom: 0;
}

.is-style-background-only-shrinking{
	margin-inline: auto;
}
:is( .is-style-image-on-top, .is-style-background-only-shrinking ) .wp-block-cover__image-background{
	z-index: 1;
}

.btn,
.wp-block-button__link{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 4px;
	padding: 13px 26px;
	background: var(--wp--preset--color--orange-peel);
	border: 0;
	border-radius: 99px;
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.02em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}
:is( .btn, .wp-block-button__link )::after{
	content: url(images/button-arrow.svg);
	font-size: 0;
}
a:hover :is( .btn, .wp-block-button__link ),
:is( .btn, .wp-block-button__link ):hover{
	color: #fff;
}

.btn-download::after{
	display: none;
}
.btn-download::before{
	content: url(images/download.svg);
	font-size: 0;
}

.has-white-background-color:is( .btn, .wp-block-button__link ),
.has-white-background-color:is( .btn, .wp-block-button__link ):hover{
	color: var(--wp--preset--color--vivid-violet);
}
.has-white-background-color:is( .btn, .wp-block-button__link )::after{
	filter: var(--filter-vivid-violet);
}

:is(p, figure) + .wp-block-buttons{
	margin-top: 1.78em;
}

:is( .form-control, .form-select ),
:is( .form-control, .form-select ):focus{
	--text-color: #000;
	--placeholder-color: #999;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 100%;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #fff;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--text-color);
}
.form-select option{
	color: var(--text-color) !important;
}
.form-select,
.form-select:focus{
	cursor: pointer;
	background: #fff url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="7" fill="none" viewBox="0 0 10 7"><path stroke="black" stroke-linecap="round" stroke-width="2" d="m1 1 4 4 4-4"/></svg>') right 16px center no-repeat;
}
:is( .form-control, .form-select ):focus{
	outline: none;
	box-shadow: none;
	border-color: #a0bcf8;
}
.form-control::-moz-placeholder{
	opacity: 1;
	color: var(--placeholder-color);
}
.form-control::placeholder{
	opacity: 1;
	color: var(--placeholder-color);
}
.form-select:has( option[value=""]:checked ),
.form-select:has( option[value=""]:checked ):focus{
	color: var(--placeholder-color);
}
textarea.form-control,
textarea.form-control:focus{
	height: 160px;
}

header.wp-block-template-part{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 800;
	background: var(--wp--preset--color--white);
	border-bottom: 1px solid var(--wp--preset--color--cultured-pearl);
}
header.wp-block-template-part figure.wp-block-image{
	position: relative;
	z-index: 799;
	border-radius: 50%;
	transition: background-color .3s ease;
}
@media (hover: hover){
	header.wp-block-template-part figure.wp-block-image:hover{
		background-color: var(--wp--preset--color--desert-storm);
	}
	.menu-open header.wp-block-template-part figure.wp-block-image:hover{
		background-color: var(--wp--preset--color--valentino);
	}
}
header.wp-block-template-part figure.wp-block-image > a::after{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}
header.wp-block-template-part figure.wp-block-image img{
	transition: filter .3s ease;
}
.menu-open:not(.menu-closing) header.wp-block-template-part figure.wp-block-image img{
	filter: brightness(0) invert(1);
}
.wp-block-site-logo{
	position: relative;
	z-index: 999;
}
.wp-block-site-logo [fill="#783391"]{
	transition: fill .3s ease;
}
.menu-open:not(.menu-closing) .wp-block-site-logo [fill="#783391"]{
	fill: #fff;
}

.filter-buttons{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.filter-buttons a{
	padding: 10px 24px;
	background: #fff;
	border-radius: 99px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	text-decoration: none;
}
.filter-buttons a.active{
	color: var(--wp--preset--color--orange-peel);
}

.swiper-container-wrapper :is(.swiper-button-next, .swiper-button-prev){
	--swiper-navigation-sides-offset: 24px;
	top: calc( 50% - 28px );
	display: flex;
	justify-content: center;
	align-items: center;
	width: 56px;
	height: auto;
	aspect-ratio: 1;
	margin: 0;
	background: #fff;
	border-radius: 50%;
	transition: background-color .3s ease;
}
.swiper-container-wrapper :is(.swiper-button-next, .swiper-button-prev)::after{
	content: '';
	width: 42.8571%;
	height: auto;
	aspect-ratio: 1;
	-webkit-mask: url(images/swiper-arrow.svg) no-repeat center/contain;
	mask: url(images/swiper-arrow.svg) no-repeat center/contain;
	background: var(--wp--preset--color--vivid-violet);
	transition: background-color .3s ease;
}
.swiper-container-wrapper .swiper-button-prev::after{
	transform: rotate(180deg);
}
.swiper-container-wrapper :is(.swiper-button-next, .swiper-button-prev):hover{
	background-color: var(--wp--preset--color--vivid-violet);
}
.swiper-container-wrapper :is(.swiper-button-next, .swiper-button-prev):hover::after{
	background-color: var(--wp--preset--color--orange-peel);
}
@media (max-width: 767px){
	.swiper-container-wrapper :is(.swiper-button-next, .swiper-button-prev){
		display: none;
	}
}

.swiper-container-wrapper .swiper-horizontal > .swiper-pagination-bullets{
	display: flex;
	gap: 12px;
	justify-content: center;
	bottom: 24px;
}
.swiper-container-wrapper .swiper-pagination-bullet{
	--swiper-pagination-bullet-inactive-opacity: 1;
	width: 10px;
	height: 10px;
	background: #fff;
	margin: 0 !important;
}
.swiper-container-wrapper .swiper-pagination-bullet-active{
	background-color: var(--wp--preset--color--eminence);
}

figure.wp-block-gallery{
	display: grid;
	grid-template-columns: repeat( 2, 1fr );
	gap: 48px 24px !important;
}
figure.wp-block-gallery:has( figure ~ figure ~ figure ),
figure.wp-block-gallery.columns-3{
	grid-template-columns: repeat( 3, 1fr );
}
figure.wp-block-gallery figure{
	width: 100% !important;
}
figure.wp-block-gallery figure.wp-block-image::before{
	display: none;
}
figure.wp-block-gallery figure img{
	aspect-ratio: 1;
	object-fit: cover;
}
figure.wp-block-gallery figcaption{
	margin: 16px 0 0 !important;
	font-size: 14px !important;
	line-height: 1.25;
	position: static !important;
	color: inherit !important;
	background: none !important;
	text-align: left !important;
	padding: 0 !important;
	scrollbar-gutter: auto !important;
	text-shadow: none !important;
}
@media (max-width: 767px){
	figure.wp-block-gallery{
		grid-template-columns: 1fr !important;
	}
}

/* .wp-block-table table{
	width: 100%;
	border: 0 !important;
	border-top: 1px solid var(--wp--preset--color--a-4-a-6-ac) !important;
	border-collapse: collapse;
	border-spacing: 0;
}
.wp-block-table :is(th,td){
	padding: 8px 0;
	border: 0 !important;
	border-bottom: 1px solid var(--wp--preset--color--a-4-a-6-ac) !important;
}
.wp-block-table :is(th,td):last-child{
	text-align: right;
}
.wp-block-table tr > * + *{
	padding-left: 20px;
} */

.table > :not(caption) > * > *{
	padding: 0;
}
.table th{
	padding: 11px 0;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: rgba(0,0,0,0.5);
	text-transform: uppercase;
}
.table td{
	padding: 16px 0;
	line-height: 1.6111;
	color: var(--wp--preset--color--vivid-violet);
}
.table th + th,
.table td + td{
	padding-left: 24px;
}
.table .btn{
	padding: 10px 18px;
	font-size: 12px;
}
.table :is( thead, tbody, tfoot, tr, td, th ){
	border-color: rgba(0,0,0,.08);
}

/* .screen-reader-text{
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
} */

/* .wp-block-search__inside-wrapper{
	position: relative;
}
.wp-block-search__button-inside .wp-block-search__button{
	position: absolute;
	top: 0;
	right: 0;
}
.wp-block-search__input{
	width: 100%;
	height: 50px;
	padding: 0 20px;
	background: #fff;
	border: 0;
}
.wp-block-search__button{
	height: 100%;
	aspect-ratio: 1;
	margin: 0;
	padding: 0;
	background: url(images/search.svg) center no-repeat;
	border: 0;
	font-size: 0;
} */

/* .dont-break-out{
	overflow-wrap: break-word;
	word-wrap: break-word;
	-ms-word-break: break-all;
	word-break: break-all;
	word-break: break-word;
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
} */
.accordion{
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.accordion-item{
	border: none;
	background: none;
}
.accordion-button:not(.collapsed),
.accordion-button.collapsed{
	display: flex;
	align-items: center;
	gap: 24px;
	width: 100%;
	padding: 26px 24px;
	background: var(--wp--preset--color--desert-storm);
	border: 0;
	border-radius: 8px;
	font-size: 24px;
	line-height: 1.3334;
	letter-spacing: 0.01em;
	box-shadow: none;
	text-align: left;
}
.has-desert-storm-background-color .accordion-button.collapsed{
	background-color: #fff;
}
.accordion-button:not(.collapsed){
	background: var(--wp--preset--color--eminence);
	color: #fff;
}
.accordion-button::after,
.accordion-button:not(.collapsed)::after{
	content: '';
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	margin-left: auto;
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M12 5v14m-7-7h14"/></svg>');
}
.accordion-button:not(.collapsed)::after{
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M5 12h14"/></svg>');
}
.accordion-body{
	padding: 24px 24px 48px;
}

#top{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	position: fixed;
	z-index: 999;
	right: calc( 32px + var( --modalScrollbar, 0px ) + var( --fancybox-scrollbar-compensate, 0px ) );
	bottom: 32px;
	width: 64px;
	height: 64px;
	opacity: 0;
	transform: translateY(40px);
	transition: all .3s ease;
	transition-property: transform, opacity;
	pointer-events: none;
	background: var(--wp--preset--color--desert-storm);
	border-radius: 50%;
}
#top::after{
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" fill="none" viewBox="0 0 40 40"><path stroke="%23783391" stroke-linecap="square" stroke-width="2.5" d="M20 10v22m10-13.6667L20 8.33331M10 18.3333l10-9.99999"/></svg>');
}
#top span{
	pointer-events: none;
	opacity: 0;
	position: absolute;
	top: 50%;
	right: calc( 100% + 16px );
	transform: translate3d( 20px, -50%, 0 );
	display: block;
	padding: 8px 10px;
	background: var(--wp--preset--color--valentino);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--selago);
	text-transform: uppercase;
	white-space: nowrap;
	transition: all .3s ease;
	transition-property: opacity, transform;
}
#top:hover span{
	opacity: 1;
	transform: translate3d( 0px, -50%, 0 );
}
.scrolled:not(.compensate-for-scrollbar) #top{
	transform: translateY(0px);
	opacity: 1;
	pointer-events: all;
}

.classicmenu .nav-link{
	padding: 0;
}

.is-style-socials ul{
	gap: 4px;
	margin-left: 6px;
}
.is-style-socials .nav-link{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 56px;
	height: 56px;
	border-radius: 99px;
	font-size: 0;
	transition: background-color .3s ease;
}
.is-style-socials .nav-link:hover{
	background-color: var(--wp--preset--color--eminence);
}

.is-style-menu ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 6px;
}
.is-style-menu ul a{
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 6px 24px;
	border-radius: 8px;
	font-size: 36px;
	letter-spacing: 0.02em;
	text-decoration: none;
	color: var(--wp--preset--color--selago);
	transition: background-color .3s ease;

	@media (max-height: 979px){
		font-size: 24px;
	}
}
.is-style-menu ul li:hover > a{
	background-color: var(--wp--preset--color--eminence);
}
.is-style-menu ul .menu-item-has-children:hover > a{
	background-image: url(images/submenu.svg);
	background-position: right 24px center;
	background-repeat: no-repeat;
}
.is-style-menu .menu-item-has-children:hover::before,
.is-style-menu .menu-item-has-children:hover::after{
	content: '';
	position: absolute;
	z-index: 10;
	left: var(--hoverMouseLeft);
	right: 0;
	background: #000;
	opacity: 0;
}
.is-style-menu .menu-item-has-children:has(.sub-menu:hover)::before,
.is-style-menu .menu-item-has-children:has(.sub-menu:hover)::after{
	display: none;
}
.is-style-menu .menu-item-has-children::before{
	top: 0;
	bottom: var(--hoverMouseBottom);
	clip-path: url(#hoverTop);
}
.is-style-menu .menu-item-has-children::after{
	top: var(--hoverMouseTop);
	bottom: 0;
	clip-path: url(#hoverBottom);
}
.is-style-menu .sub-menu{
	opacity: 0;
	pointer-events: none;
	position: absolute;
	z-index: 10;
	top: 0;
	left: 100%;
	width: 488px;
	height: 100%;
	max-width: 50vw;
	padding: 132px 72px 72px;
	align-items: flex-start;
	gap: 12px;
	background: var(--wp--preset--color--eminence);
}
.is-style-menu ul .sub-menu a{
	padding: 8px 16px;
	border-radius: 6px;
	font-size: 24px;
	line-height: 1.3;
	letter-spacing: 0.015em;
	color: var(--wp--preset--color--selago);
	transition: background-color .3s ease;
}
.is-style-menu ul .sub-menu a:hover{
	background-color: var(--wp--preset--color--bossanova);
}

.is-style-secondary ul{
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 13px;
}
.is-style-secondary ul .nav-link{
	padding: 0 24px;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0.015em;
	color: var(--wp--preset--color--selago);

	@media (max-height: 979px){
		font-size: 16px;
	}
}
.is-style-secondary ul .nav-link:hover{
	text-underline-offset: 6px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
}

.is-style-footer ul{
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 16px;
}
.is-style-footer ul .nav-link{
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0.015em;
	color: var(--wp--preset--color--white);
}

.is-style-gdpr ul{
	gap: 24px;
}
.is-style-gdpr ul .nav-link{
	font-size: 14px;
	line-height: 1.358;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--white);
}

.is-style-footer-socials ul{
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 18px;
}
.is-style-footer-socials .nav-link{
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	line-height: 1.1;
	letter-spacing: 0.015em;
}
.is-style-footer-socials.has-fz20-font-size .nav-link{
	font-size: 20px;
}
:is( .is-style-footer, .is-style-footer-socials, .is-style-gdpr ) .nav-link:hover{
	text-underline-offset: 6px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--wp--preset--color--french-lilac);
}
.is-style-footer-socials .nav-link img{
	width: 14px;
	height: 14px;
	object-fit: contain;
}
.is-style-footer-socials.has-fz20-font-size .nav-link img{
	width: 16px;
	height: 16px;
}
.is-style-footer-socials.has-black-color .nav-link img{
	filter: brightness(0);
}
.is-style-footer-socials .nav-link .visually-hidden{
	order: 1;
	clip: auto !important;
	overflow: visible !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

.is-style-apprenticeship-socials ul {
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 32px;
}
.is-style-apprenticeship-socials .nav-link img {
	width: 48px;
	height: 48px;
	object-fit: contain;
}
.is-style-apprenticeship-socials.has-black-color .nav-link img {
	filter: brightness(0);
}

.wpml-language-switcher-block ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 24px;
	font-size: 14px;
	line-height: 1.358;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--white);
}
.wpml-language-switcher-block ul a{
	text-decoration: none;
}
.wpml-language-switcher-block ul a:hover,
.wpml-language-switcher-block ul [data-wpml="current-language-item"] span,
footer.wp-block-template-part a:is( [href^="mailto:"], [href^="tel:"] ){
	text-underline-offset: 8px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--wp--preset--color--french-lilac);
}

.has-vivid-violet-color > a:is( [href^="tel:"], [href^="mailto:"] ){
	text-underline-offset: 8px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--wp--preset--color--french-lilac);
}
.has-vivid-violet-color.has-fz-20-font-size > a:is( [href^="tel:"], [href^="mailto:"] ){
	text-underline-offset: 12px;
	text-decoration-thickness: 2px;
}

.taxonomy-category a{
	pointer-events: none;
	text-decoration: none;
}

.wp-block-video.is-style-square{
	aspect-ratio: 1;
}
.wp-block-video.is-style-square video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single-post h1.wp-block-post-title{
	margin: 80px 16px -50px;
}
.single-post .entry-content :is( .row, .swiper-container-wrapper, .fragen, .downloads, .wp-block-embed, .wp-block-gallery, .wp-block-quote, .wp-block-media-text, .wp-block-buttons ),
.single-post .entry-content > .wp-block-image,
.single-post .editor-styles-wrapper .wp-block-post-content :is( [data-type="bootstrap/row"], [data-type="acf/swiper"], [data-type="acf/downloads"], [data-type="core/embed"], [data-type="core/gallery"], [data-type="core/quote"], [data-type="core/media-text"], [data-type="core/buttons"] ){
	margin-top: 72px;
	margin-bottom: 72px;
}
.single-post .entry-content :is( .row, .swiper-container-wrapper, .fragen ):last-child{
	margin-bottom: 0 !important;
}

.single-post .entry-content :is( h1, h2, h3, h4, h5, h6 ):not(:has(span)),
.single-post .editor-styles-wrapper .wp-block-post-content :is( h1, h2, h3, h4, h5, h6 ):not(:has(span)){
	margin: 0 0 10px;
	background: none;
	font-family: var(--wp--preset--font-family--azo-sans);
	font-size: 20px;
	line-height: 1.5;
	text-transform: uppercase;
	color: var(--wp--preset--color--vivid-violet) !important;
}

.single-post .entry-content .has-white-color:is( h1, h2, h3, h4, h5, h6 ),
.single-post .editor-styles-wrapper .wp-block-post-content .has-white-color:is( h1, h2, h3, h4, h5, h6 ),

.single-post .entry-content .wp-block-cover__background.has-vivid-red-background-color + .wp-block-cover__inner-container :is( h1, h2, h3, h4, h5, h6 ),
.single-post .editor-styles-wrapper .wp-block-post-content .wp-block-cover__background.has-vivid-red-background-color + .wp-block-cover__inner-container :is( h1, h2, h3, h4, h5, h6 ),

.single-post .entry-content :is( .has-vivid-red-background-color, .has-mineral-green-background-color, .has-vivid-violet-background-color ) :is( h1, h2, h3, h4, h5, h6 ),
.single-post .editor-styles-wrapper .wp-block-post-content :is( .has-vivid-red-background-color, .has-mineral-green-background-color, .has-vivid-violet-background-color ) :is( h1, h2, h3, h4, h5, h6 ){
	color: #fff !important;
}
.single-post .entry-content :is( p, ul, .wp-block-spacer ) + :is( h1, h2, h3, h4, h5, h6 ){
	margin-top: 42px;
}

.single-post .entry-content .wp-block-quote,
.single-post .editor-styles-wrapper .wp-block-quote{
	padding: 48px;
	background: var(--wp--preset--color--desert-storm);
	text-align: center;
}
.single-post .entry-content .wp-block-quote p,
.single-post .editor-styles-wrapper .wp-block-quote p{
	margin: 0 0 16px;
	font-family: var(--wp--preset--font-family--centennial-lt-pro);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4167;
	font-style: italic;
}
.has-vivid-red-background-color{
	background-color: #cf2e2e;
}
.has-luminous-vivid-orange-color{
	color: #ff6900;
}

.wp-block-spacer{
	display: none;
}

.wp-block-cover.has-background-dim{
	position: relative;
	opacity: 1;
}
.single-post .entry-content .alignwide{
	width: 100%;
	max-width: 100%;
}

.wp-block-columns{
	gap: 24px;
}

.filter-black{
	filter: brightness(0)
}

@media (min-width: 992px){
	.is-style-menu li:hover .sub-menu{
		opacity: 1;
		pointer-events: auto;
	}
	.is-style-menu ul .menu-item-has-children > a::after{
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		left: calc( 100% - 1px );
		width: 74px;
	}
}

@media (max-width: 1199px){
	h1, .h1, .is-style-h1{
		font-size: 64px;
	}
	.accordion-button:not(.collapsed), .accordion-button.collapsed{
		font-size: 22px;
	}
}

@media (max-width: 991px){
	body{
		--wp--preset--font-size--huge: min( 8vw, 48px );
	}
	h2, .h2, .is-style-h2{
		font-size: 46px;
	}
	h3, .h3, .is-style-h3{
		font-size: 26px;
		line-height: 1.4;
	}
	.has-lead-font-size{
		--wp--preset--font-size--lead: 24px;
	}
	header.wp-block-template-part > .container-fluid{
		transition: background-color .3s ease;
	}
	.menu-open:not(.menu-closing) header.wp-block-template-part > .container-fluid{
		background-color: var(--wp--preset--color--bossanova);
	}
	.is-style-menu .sub-menu{
		left: 0;
		width: 100%;
		max-width: 100vw;
		padding: 0 0 16px;
		gap: 0;
		background-color: var(--wp--preset--color--bossanova);
	}
	.is-style-menu .sub-menu li{
		padding: 0 16px;
	}
	.is-style-menu li.opened .sub-menu{
		opacity: 1;
		pointer-events: auto;
	}
	.is-style-menu ul{
		gap: 0;
	}
	.is-style-menu ul a{
		padding: 8px 16px;
		font-size: 24px;
	}
	.is-style-secondary ul{
		gap: 15px;
	}
	.is-style-secondary ul .nav-link{
		padding: 0 16px;
		font-size: 16px;
	}
	.is-style-socials ul{
		margin-left: -2px;
	}
	.is-style-menu ul .sub-menu a{
		font-size: 16px;
	}
	.is-style-menu ul .sub-menu .back-item a{
		display: flex;
		align-items: center;
		gap: 6px;
		padding-top: 14px;
		padding-bottom: 14px;
	}
	.is-style-menu ul .sub-menu .back-item a::before{
		content: url(images/back.svg);
		font-size: 0;
		margin-left: -5px;
	}
	.is-style-menu ul .sub-menu .parent-item{
		width: 100%;
		margin-bottom: 16px;
		border: 1px solid #fff;
		border-width: 1px 0;
	}
	.is-style-menu ul .sub-menu .parent-item a{
		padding-top: 18px;
		padding-bottom: 18px;
		font-size: 30px;
		letter-spacing: 0.015em;
	}
}

@media (max-width: 767px){
	body{
		--wp--preset--font-size--fz-20: 16px;
	}
	h1, h2, h3, h4, h5, h6{
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	h1, .h1, .is-style-h1{
		margin: 40px 12px;
		font-size: 42px;
		line-height: 1.1;
	}
	h1 span, .h1 span, .is-style-h1 span{
		padding: 2px 0;
		box-shadow: 12px 0 0 var(--wp--preset--color--vivid-violet), -12px 0 0 var(--wp--preset--color--vivid-violet);
	}
	h2, .h2, .is-style-h2{
		font-size: 32px;
	}
	h3, .h3, .is-style-h3{
		margin-left: 10px;
		margin-right: 10px;
	}
	h3 span, .h3 span, .is-style-h3 span{
		box-shadow: 5px 0 0 5px var(--wp--preset--color--vivid-violet), -5px 0 0 5px var(--wp--preset--color--vivid-violet);
	}
	h3:is( .h2, .is-style-h2 ){
		margin: 2px 10px;
	}
	h3:is( .h2, .is-style-h2 ) span{
		box-shadow: 10px 0 0 var(--wp--preset--color--vivid-violet), -10px 0 0 var(--wp--preset--color--vivid-violet);
	}
	.has-lead-font-size{
		--wp--preset--font-size--lead: 20px;
	}
	.wp-block-site-logo svg{
		width: auto;
		height: 32px;
	}
	.is-style-gdpr ul{
		gap: 20px;
	}
	.wpml-language-switcher-block ul,
	.is-style-gdpr ul .nav-link{
		font-size: 12px;
	}
	:is( .is-style-gdpr, .wpml-language-switcher-block ) ul{
		justify-content: center;
	}
	#top{
		right: calc(20px + var(--modalScrollbar, 0px) + var(--fancybox-scrollbar-compensate, 0px));
		bottom: 20px;
		width: 48px;
		height: 48px;
	}
	#top::after{
		transform: scale(.75);
	}
	.single-post h1.wp-block-post-title{
		margin: 60px 16px -31px;
	}
	.single-post .entry-content :is( .row, .swiper-container-wrapper, .fragen, .downloads, .wp-block-embed, .wp-block-gallery, .wp-block-quote, .wp-block-media-text, .wp-block-buttons ),
	.single-post .entry-content > .wp-block-image,
	.single-post .editor-styles-wrapper .wp-block-post-content :is( [data-type="bootstrap/row"], [data-type="acf/swiper"], [data-type="acf/downloads"], [data-type="core/embed"], [data-type="core/gallery"], [data-type="core/quote"], [data-type="core/media-text"], [data-type="core/buttons"] ){
		margin-top: 56px;
		margin-bottom: 56px;
	}
}

@media (max-width: 575px){
	:root{
		--bs-offset: 16px;
		--snap: -16px;
	}
	.container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl{
		padding-left: 16px;
		padding-right: 16px;
	}
	.accordion-button:not(.collapsed),
	.accordion-button.collapsed{
		-ms-hyphens: auto;
		-moz-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	.wp-block-button, .btn, .wp-block-button__link{
		width: 100%;
	}
}
