/* @override 
	https://sankt-afra.zh2.de/wp/wp-content/themes/sanktafra/style.css?* */


/*
Theme Name: SANKT AFRA
Theme URI:
Description: BFSG ready
Version: 0.22
Author: ZH2
Tags:
*/

/*	IMPORTS
-------------------------------------------------------------------------------*/


@import url("https://use.typekit.net/dht8fai.css");

/* @group WEBFONTS */

/*	WEBFONTS
-------------------------------------------------------------------------------*/


@font-face {
     font-family: "TheSans";
     src: url("assets/fonts/TheSansVar.woff2") format("woff2");
     font-weight: normal;
     font-weight: 400 750;
     font-style: normal;
     unicode-range: U+0000, U+0020-007E, U+00A0-017F, U+018F, U+0192, U+01A0-01A1, U+01AF-01B0, U+01CD-01DC, U+01E6-01E9, U+01FA-01FF, U+0218-021B, U+0237, U+0259, U+02B9-02BA, U+02BC, U+02C6-02C7, U+02C9, U+02D8-02DD, U+0300-030C, U+0312, U+0315, U+0323, U+0326-0327, U+0331, U+0394, U+03A9, U+03BC, U+03C0, U+0E3F, U+1E02-1E03, U+1E06-1E07, U+1E0A-1E0F, U+1E1E-1E21, U+1E24-1E25, U+1E32-1E39, U+1E40-1E47, U+1E56-1E57, U+1E5A-1E5D, U+1E60-1E63, U+1E6A-1E6F, U+1E7E-1E85, U+1E92-1E95, U+1E9E, U+1EA0-1EF9, U+2000-2015, U+2017-201E, U+2020-2022, U+2024-2026, U+2030-2034, U+2039-203A, U+203C-203E, U+2044, U+2070, U+2074-208E, U+20A0-20BD, U+20BF, U+2105, U+2113, U+2116-2117, U+2120, U+2122, U+2126, U+212E, U+2150-2151, U+2153-215F, U+2190-21BB, U+21C4-21CA, U+21CD-21F5, U+21F7-21FC, U+2202, U+2205-2206, U+220F, U+2211-2212, U+2219-221C, U+221E-221F, U+2229, U+222B, U+2236, U+2245, U+2248, U+2260-2261, U+2264-2265, U+2297, U+22A0, U+22C5, U+22EE, U+2300, U+2302, U+2310, U+2320-2321, U+2349, U+23AF, U+23D0, U+25A1, U+25AA-25AB, U+25B2-25B3, U+25B6, U+25B8, U+25BA, U+25BC, U+25C0, U+25C2, U+25C4, U+25C6, U+25CA-25CB, U+25CE-25CF, U+25D8-25D9, U+25E6, U+25FC, U+2605, U+2610-2612, U+261C, U+261E, U+262E-2637, U+2639-263C, U+2640-2642, U+2660, U+2663, U+2665-2666, U+266A-266B, U+2680-2685, U+26A2-26A7, U+2713, U+2717, U+2736, U+2766, U+27F0-27FF, U+2902-2904, U+2906-290F, U+2911-2913, U+2923-2926, U+2933, U+2938-2941, U+2948, U+2B00-2B04, U+2B0E-2B11, U+2B1D, U+2B29, U+2B30, U+2B32-2B33, U+2B38, U+2B3F, U+2B45-2B46, U+2B50-2B52, U+2B60-2B73, U+2B76-2B79, U+2B8C-2B8F, U+2B98-2BA7, U+2BB0-2BB7, U+E040-E04B, U+F6C1-F6C2, U+F6DD, U+F8E5, U+F8FF, U+FB01-FB02, U+1F3ED, U+1F4A1, U+1F651, U+1F653, U+1F658, U+1F65A-1F65B, U+1F6B2;
}

@font-face {
     font-family: "TheSans";
     src: url("assets/fonts/TheSansVar-Italic.woff2") format("woff2");
     font-weight: normal;
     font-weight: 400 750;
     font-style: italic;
     unicode-range: U+0000, U+0020-007E, U+00A0-017F, U+018F, U+0192, U+01A0-01A1, U+01AF-01B0, U+01CD-01DC, U+01E6-01E9, U+01FA-01FF, U+0218-021B, U+0237, U+0259, U+02B9-02BA, U+02BC, U+02C6-02C7, U+02C9, U+02D8-02DD, U+0300-030C, U+0312, U+0315, U+0323, U+0326-0327, U+0331, U+0394, U+03A9, U+03BC, U+03C0, U+0E3F, U+1E02-1E03, U+1E06-1E07, U+1E0A-1E0F, U+1E1E-1E21, U+1E24-1E25, U+1E32-1E39, U+1E40-1E47, U+1E56-1E57, U+1E5A-1E5D, U+1E60-1E63, U+1E6A-1E6F, U+1E7E-1E85, U+1E92-1E95, U+1E9E, U+1EA0-1EF9, U+2000-2015, U+2017-201E, U+2020-2022, U+2024-2026, U+2030-2034, U+2039-203A, U+203C-203E, U+2044, U+2070, U+2074-208E, U+20A0-20BD, U+20BF, U+2105, U+2113, U+2116-2117, U+2120, U+2122, U+2126, U+212E, U+2150-2151, U+2153-215F, U+2190-21BB, U+21C4-21CA, U+21CD-21F5, U+21F7-21FC, U+2202, U+2205-2206, U+220F, U+2211-2212, U+2219-221C, U+221E-221F, U+2229, U+222B, U+2236, U+2245, U+2248, U+2260-2261, U+2264-2265, U+2297, U+22A0, U+22C5, U+22EE, U+2300, U+2302, U+2310, U+2320-2321, U+2349, U+23AF, U+23D0, U+25A1, U+25AA-25AB, U+25B2-25B3, U+25B6, U+25B8, U+25BA, U+25BC, U+25C0, U+25C2, U+25C4, U+25C6, U+25CA-25CB, U+25CE-25CF, U+25D8-25D9, U+25E6, U+25FC, U+2605, U+2610-2612, U+261C, U+261E, U+262E-2637, U+2639-263C, U+2640-2642, U+2660, U+2663, U+2665-2666, U+266A-266B, U+2680-2685, U+26A2-26A7, U+2713, U+2717, U+2736, U+2766, U+27F0-27FF, U+2902-2904, U+2906-290F, U+2911-2913, U+2923-2926, U+2933, U+2938-2941, U+2948, U+2B00-2B04, U+2B0E-2B11, U+2B1D, U+2B29, U+2B30, U+2B32-2B33, U+2B38, U+2B3F, U+2B45-2B46, U+2B50-2B52, U+2B60-2B73, U+2B76-2B79, U+2B8C-2B8F, U+2B98-2BA7, U+2BB0-2BB7, U+E040-E04B, U+F6C1-F6C2, U+F6DD, U+F8E5, U+F8FF, U+FB01-FB02, U+1F3ED, U+1F4A1, U+1F651, U+1F653, U+1F658, U+1F65A-1F65B, U+1F6B2;
}

/* ThSans Caps: 
font-feature-settings: "smcp" 1;
*/


/* Marydale via Adobe Fonts */


/* Icon Font – extra here for iframe views in WP Editor and TinyMCE */
@font-face { 
  font-family: 'icons';
  font-style: normal;
  font-weight: normal;
  src: url('assets/icons/fonts/icons.woff') format('woff');
}




/* @end */

/* @group RESET */

/*	RESET
-------------------------------------------------------------------------------*/


article, aside, figure, footer, header, hgroup, nav, section {display: block;}
img, object, embed {max-width: 100%; height:auto;}

/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}

/* we use a lot of ULs that aren't bulleted.
	don't forget to restore the bullets within content. */
ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before,
blockquote:after,
q:before,
q:after {content: ''; content: none;}

a {margin: 0; padding: 0; vertical-align: baseline;}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: 800; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

input, select {vertical-align: middle;}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline;}
input:focus, textarea:focus, select:focus { outline: none;}

input { /* remove top input shadow */
-webkit-appearance: none;
-moz-appearance: none;
}

*:focus:not(:focus-visible) { outline: none }

table {font-size: inherit; font: 100%;}

a:hover, a:active {outline: none;}
small {font-size: 85%;}
td, td img {vertical-align: top;}

strong, b { font-weight: 700; }

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0; border-radius: 0; font-family: inherit;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}

/* let's clear some floats */
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
.clear { clear: both; height: 0px; overflow: hidden;}
.clr:after { content: ""; display: table; clear: both;}
.cf:after {	content: ""; display: table; clear: both; }

/* prevent flickering on touch */
* {
	-webkit-tap-highlight-color:transparent;
}

/* natural box layout model to all elements */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
 }

 /* subscript and superscript */
sub { vertical-align: sub; font-size: 70%; line-height: 0; }
sup { vertical-align: super; font-size: 70%; line-height: 0; }

/* fine-grained control over hyphenation in text */
* { hyphenate-limit-chars: 10 4 4; }

/* @end */


/* @group VARS */


/*	VARS
-------------------------------------------------------------------------------*/


/* Color Info


blue			#0068B3		rgba(0, 104, 179, 1)
blue dark	#1f4866		
blue light	#E6F0F7

green		#B4CD25
safran		#FCBB3F
sky			#6BC5D1
terracotta	#DC764C

BFSG background:

green		#E5EDB3
safran		#FEE7BC
sky			#CBEBEF
terracotta	#F7DFD6


*/

:root {
	--base-font-size: 20px;
	--base-line-height: 1.6;

	--body-bg: #FFF;
	
	--text-color: #333;
	--link-color: #0068B3;
	--link-color-hover: var(--text-color);

	--border-color: #DDD;

	--primary-color: #0068B3;
	--primary-bg: #E6F0F7;
	--primary-dark: #1f4866;

	--blue: #0068B3;
	--green: #B4CD25;
	--safran: #FCBB3F;
	--sky: #6BC5D1;
	--terracotta: #DC764C;
	
	--blue-bg: #E6F0F7;
	--green-bg: #E5EDB3;
	--safran-bg: #FEE7BC;
	--sky-bg: #CBEBEF;
	--terracotta-bg: #F7DFD6;
	
	--white: #FFF;	
	--text-gray: #757575;

	--font-sans: 'TheSans', sans-serif;
	--font-script: marydale, sans-serif;
		

	--text-tiny: calc(var(--base-font-size) * .65);
	--text-small: calc(var(--base-font-size) * .8); /*16px*/
	--text-base: var(--base-font-size); /*20px*/
	--text-large: clamp(22px, 18.25px + 0.625vw, 26px);/*22-26*/
	
	--default-width: calc((820/16) * 1rem);
	--wide-width: calc((1440/16) * 1rem);
	--semiwide-width: calc((960/16) * 1rem);
	--full-width: 100%;
	
	--page-padding: 40px;

	--main-padding-top: clamp(4rem, 10vw, 6.0rem);
	--main-padding-bottom: clamp(5.6rem, 20vw, 9rem); 

 	--space-xs: 10px;
	--space-sm: 20px;
	--space-md: 30px; /*default block gap*/
	--space-lg: clamp(40px, 5vw, 50px);  
	--space-xl: clamp(60px, 10vw, 70px); 
	--space-xxl: clamp(80px, 12vw, 110px);
	--space-xxxl: clamp(110px,16vw, 145px);


	--block-gap: 2rem; /*2rem*/
	--block-gap-text: 1.5rem;

	--columns-gap: 30px;
	
	--box-padding: clamp(20px, 5vw, 30px);
	
	--box-padding-sm: clamp(20px, 5vw, 30px);
	--box-padding-md: var(--box-padding);
	--box-padding-lg: clamp(20px, 5vw, 40px);
	--box-padding-xl: clamp(20px, 5vw, 60px);
	--box-padding-xxl: clamp(40px, 5vw, 80px);

	--radius: 15px;

	--header-height: 160px;
 }


 @media screen and (max-width: 840px) {
	 :root {
		--base-font-size: 18px;
		--header-height: 130px;
	}
}



 @media screen and (max-width: 600px) {
	 :root {
		--page-padding: 20px;
		--block-gap: 1.5rem;
		--radius: 10px;
		--header-height: 120px;
	}
}

 @media screen and (max-width: 360px) {
	 :root {
		--base-font-size: 16px;
		--page-padding: 10px;
		--space-xl: 40px; 
		--space-xxl: 60px;
		--space-xxxl: 100px;
		
	}
}





/* @end */



/* @group GENERAL */


/* GENERAL
---------------------------------------------------------------------------------*/


html {
	height: 100%;
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	 -webkit-text-size-adjust: 100%;
	 scroll-padding-top: 100px;
}

html:has(.bodylock) {
	scroll-behavior: auto;
}

body {
	height: 100%;
	width: 100%;
	font-family: var(--font-sans);
	font-size: var(--base-font-size);
	line-height: var(--base-line-height);
	color: var(--text-color);
	background: var(--body-bg);
	/*LucasFonts */
    font-feature-settings: "kern" 1 ,"liga" 1, "calt" 1, "locl" 1;
    -webkit-font-feature-settings: "kern" 1 ,"liga" 1, "calt" 1, "locl" 1;
    -moz-font-feature-settings: "kern" 1 ,"liga" 1, "calt" 1, "locl" 1;
}

a {
	position: relative;
	color: var(--link-color);
	text-decoration: none;
}

a, input {
	transition: all 200ms ease;
}

a:visited {
}

a:active {
}

a:hover {
	color: var(--link-color-hover);
}


img {
	display: block;
	max-width: 100%;
}

svg {
	display: block;
	max-width: 100%;
}


/* TYPOGRAPHY
---------------------------------------------------------------------------------*/


h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	margin-bottom: 0;
	word-break: break-word;
	overflow-wrap: break-word;
}


h1,.h1 {
	font-size: 4rem;
	font-size: 50px;
	font-size: clamp(2.7rem, 6vw, 4rem);
	line-height: 1.1;
	text-align: center;
	color: var(--primary-color);
}


:where(h1,.h1,h2,.h2,h3,.h3) em { /*script style*/
	display: block;
	font-weight: normal;
	font-style: normal;
	font-family: var(--font-script);
}


:is(.is-layout-flow, .is-layout-constrained) h1 + *:not(.wp-block-group):first-of-type {
	--block-gap: 5rem;
}

h2, .h2 {
	font-size: 2.5rem;
	font-size: clamp(1.8rem, 5vw, 2.5rem);
	line-height: 1.25;
	margin-top: 3.0rem;
	--block-gap: 3.0rem;
	color: var(--primary-color);
}

h3, .h3 {
	font-size: 1.5rem;
	font-size: clamp(1.3rem, 5vw, 1.5rem);
	line-height: 1.5;
}

h4, .h4 {
	font-size: 1.2rem; /*caps*/
	line-height: 1.4;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--primary-color);
}


:where(p,ul,ol) {
	margin: var(--block-gap-text) 0 0 0;
	--block-gap: var(--block-gap-text);
}

hr {
	position: relative;
	display: block;
	clear: both;
	height: 1px;
	border: 0;
	background: transparent;
	border-bottom: 1px solid var(--border-color);
	margin: 3rem 0;
}


/* === topic-title */

.topic-title {
	font-size: var(--base-font-size);
	text-align: center;
	font-weight: normal;
	text-transform: uppercase; /*caps*/
	letter-spacing: 1px;
	color: var(--primary-color);
}

.entry-content > .topic-title:first-child {
	margin-top: -1em;
}

.topic-title + * {
	--block-gap: 0;
	margin-top: 0;
}


@media screen and (max-width: 1024px) {

}


@media screen and (max-width: 840px) {

}


@media screen and (max-width: 600px) {

}


@media screen and (max-width: 360px) {

}

/* @end */


/* @group ELEMENTS */

/* === Lists */
ul, ol {
}

ul {
	padding-left: 2.5ch;
	list-style-type: revert;
}

li {
	position: relative;
	margin: 0 0 5px 0;
	list-style: square;
}

ul li::marker {
	color: var(--primary-color);
}


li ul {
	margin-top: 5px;
}

ol {
	padding-left: 2.5ch;
}

ol li {
	list-style: revert;
}

.list-unstyled,
.list-unstyled li {
	padding: 0;
	margin: 0;
	list-style: none;
}

.list-unstyled li:before {
	display: none;
}

/* list style: icon */

ul[class*="is-style-icon"],
ul[class*="is-style-icon"] ul {
	--list-icon-width: 2.2rem;
	list-style: none;
	padding-left: 0;
}

ul[class*="is-style-icon"] li {
	position: relative;
	padding-left: calc(var(--list-icon-width));
	padding-bottom: .1em;
	list-style: none;
}

ul[class*="is-style-icon"] li::before {
  content: '✓'; 
  position: absolute;
  left: 0;
  top: 0.1em;
  font-family: 'icons';
  font-size: 1.30em;
  display: inline-flex;
  width: var(--list-icon-width);
  align-items: center;
  line-height: 1;
  transition: all 300ms ease;
  color: var(--primary-color);
 }
 
 ul.is-style-icon-check li::before {
	content: '\e938';
	font-size: 1.6em;
	top: -.05em;
	left: -.2em;
 }

 ul.is-style-icon-download li::before {
  content: '\e936'; 
 }
 
 ul.is-style-icon-arrow li::before {
   content: '\e91f'; 
 }

 ul.is-style-icon-arrow li:has(a:hover)::before {
 	left: 0.15em;
 	color: var(--text-color);
 }



/* === Caption */


figcaption {
	font-size: var(--text-small);
	line-height: 1.4;
	margin: 10px 0 10px 0;
	text-align: left;
	word-break: break-word;
	overflow-wrap: break-word;
	margin: 1rem 0; 
	color: var(--text-gray)
}


/* WP Edit Link */

a.post-edit-link {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 10;
	font-size: 11px;
	padding: 8px 12px;
	text-transform: uppercase;
	text-decoration: none;
	background: #0073AA;
	color: #FFF;
}



/* === Embeds, iFrames  */

.embed-responsive {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}

.embed-responsive iframe,
.embed-responsive object,
.embed-responsive embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}


/* === Icons */


i[class^="icon-"] {
	font-family: 'icons';
}

i.icon {
	font-weight: normal!important;
}

.icon.download {
	font-size: 1.9rem;
	color: var(--link-color);
	margin: 0 5px 5px 0;
	vertical-align: middle;
	display: inline-block;
}

.icon.download:before {
	margin: 0;
}

.icon.bullet {
	font-size: 85%;
}


/* === WP Styles */

/* default padding for has-background + override WP default */
:is(p,ul,ol,*).has-background,
.has-background { 
	padding: var(--box-padding);
	border-radius: var(--radius);
}


.alignfull.has-background {
	border-radius: 0;
}

.has-global-padding.alignfull {
	border-radius: 0;
	padding-inline: 0;
	padding-inline: var(--page-padding);
}

.alignfull:not(.has-global-padding) {
	AUS_padding: inherit;
}

.alignfull > .has-background {
	padding: var(--box-padding);
}

.alignfull > .has-background > * { /*BE*/
       padding-inline: 0;
}

.is-root-container :where(.has-global-padding:not(.has-background)) { /*BE*/
	padding-inline: 0;
}


:is(ul,ol).has-background { /*add space for bullets*/
	padding-left: calc(var(--box-padding) + 1rem);
}

.has-small-font-size {
	font-size: var(--text-small);
}

.has-large-font-size {
	font-size: var(--text-large);
}


/* === Highlight Anchor Links */


.entry-content :target {
    animation: highlight 500ms ease-in;
}

@keyframes highlight {
    from {
        background-color: rgb(253 224 71);
    }
    to {
        background-color: #fff;
    }
}



/* @end */




/* @group LAYOUT */

/* LAYOUT
----------------------------------------------------------------------------------*/


/* # Container */


.page-wrap {
	overflow-x: clip;
}


.container,
.container-fluid {
	position: relative;
	max-width: calc(var(--wide-width) + 2 * var(--page-padding));
	margin: 0 auto;
	padding: 0 var(--page-padding);
}

.content-width { /*add to container class*/
	max-width: calc(var(--default-width) + 2 * var(--page-padding));
}


.entry-content {
}

.stack > *:first-child {
	margin-top: 0;
}


/*
.wp-block-post-content is root container for all content blocks
in backend editor AND frontend
*/

.wp-block-post-content {
	padding-left: var(--page-padding);
	padding-right: var(--page-padding);
}

.wp-block-post-content.is-root-container { /*backend editor*/
	padding-inline: var(--page-padding)!important;
}


.wp-block-post-content > *:first-child {
	margin-top: 0;
}

/* alignment */
  

.is-layout-flow > .alignwide {
	max-width: var(--wide-width);
}

.is-layout-constrained .alignsemiwide {
	max-width: var(--semiwide-width);
}

.is-layout-flow > .alignfull {
	margin-right: calc(var(--wp--style--root--padding-right) * -1);
	margin-left: calc(var(--wp--style--root--padding-left) * -1);
}


/* @end */


/* @group NOTIFICATION BAR */

/* Notification Bar
--------------------------------------------------------------------------------- */

.notification-bar {
	position: relative;
	width: 100%;
	z-index: 10;
	padding: 20px 0;
	color: #FFF;
	background: var(--primary-color);
}

.notification-bar.is-hidden {
	display: none;
}

.notification-bar a {
	color: #FFF;
	text-decoration: underline;
}

.notification-bar a:hover {
	color: #FFF;
	text-decoration: none;
}

.notification-bar__content {
	margin: 0 auto;
	padding: 0 80px;
	max-width: var(--wide-width);
	text-align: center;
	font-size: var(--text-small);
}

.notification-bar__content *{
	margin-top: 0;
}

.notification-bar__close {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	border: none;
	background: none;
	width: 35px;
	height: 35px;
	overflow: hidden;
	border-radius: 100%;
	border: 0px solid #333;
}

.notification-bar__close svg {
	margin: 0 auto;
	width: 15px;
    height: 15px;
}

.notification-bar__close svg path {
	fill: none;
    stroke: #FFF;
	stroke-width: 1.8;
}


@media screen and (max-width: 980px) {
	
	.notification-bar__content {
		padding: 0 50px;
	}
	
	.notification-bar__close {
		right: 10px;
	}	
}

/* @end */



/* @group HEADER */

/* HEADER
--------------------------------------------------------------------------------- */


#header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 10;
	height: var(--header-height);
	display: flex;
	align-items: center;
	background: #FFF;
	border-bottom: 0px solid #EEE;
	transition: all 400ms ease, background 600ms ease;
}

#header.is-transparent { /*js fallback for browsers not supporting :has*/
}


/*header transparent style*/
#header.is-transparent:not(.sticky),
:where(:has(.entry-content > .topper:first-child)) #header:not(.sticky) {
	--primary-color: #FFF;
	background: transparent;
}

#header.is-transparent:not(.sticky) .logo,
:where(:has(.entry-content > .topper:first-child)) #header:not(.sticky) .logo {
	 filter: drop-shadow(0px 3px 10px rgb(0 0 0 / 0.2));
}

#header.sticky {
	--header-height: 80px;
	background: #FFF;
	box-shadow: 0px -20px 30px 20px rgba(0,0,0, .06);
}

.menu-open #header {
	position: fixed;
}

#header > .container {
	flex: 1 0 auto;
	display: flex;
	align-items: center;
	max-width: 100%;
}


/* Logo */


.logo {
	position: relative;
	border: 0px solid #333;
}

.logo a {
	/*logo full size: 220x101 */
	display: block;
	width: 200px;
	aspect-ratio: 220/101;
	overflow: hidden;
	transform: translateY(-5%);/*finetune*/
	transition: all 300ms ease;
}

.sticky .logo a {
	/*logo short size: 220x50 (ratio 22/5)*/
	width: 170px;
	aspect-ratio: 22/5;
}

.logo svg {
	width: 100%;
}

.logo svg path {
	fill:  var(--primary-color);
}


@media screen and (max-width: 840px) {
	#header.sticky  {
		--header-height: 60px;
	}

.logo a {
		width: 170px;
	}
	
	.sticky .logo a {
		width: 150px;
	}
}

@media screen and (max-width: 600px) {	


}


.header-menu {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: nowrap;
	gap: 30px;
	margin-left: auto;
	margin-bottom: auto;
}

.featured-btn {
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
	padding: 12px 30px;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: .5px;
	border-radius: 10rem;
	color: var(--blue);
	text-align: center;
	background: transparent;
	transition: all 300ms ease;
	
	/*
	text-transform: lowercase;
	font-weight: normal;
	font-size: 20px;
	padding: 8px 30px 12px;
	letter-spacing: 0;
	font-feature-settings: "smcp" 1;
*/
	
}

.featured-btn:hover {
	color: var(--blue);
	AUS_background: var(--blue);
}

.featured-btn::after,
.featured-btn::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	border-radius: 10rem;
	background: linear-gradient(90deg, var(--green-bg) 10%, var(--sky-bg) 100%);
	transition: 300ms ease;
}

.featured-btn:hover::after {
	opacity: 0;
}


.featured-btn::before {
	background: linear-gradient(90deg, var(--sky-bg) 10%, var(--safran-bg) 100%);
}



.featured-btn--mob {
	display: none;
}

.gender-link {
    visibility: hidden; /*js effect*/
}


@media screen and (max-width: 840px) {	
	.featured-btn {
		display: none;
	}
	
	.featured-btn--mob {
		display: flex;
	}	
}



/* @end */




/* @group MENU */

/* MENU
--------------------------------------------------------------------------------- */



/* Mobile Menu
--------------------------------------------------------------------------------- */

.menu {
	--primary-color: var(--blue); /*override white sticky*/
	display: none; /*js trigger*/
	position: fixed;
   	right: 0;
   	top: 0;
	width: 100%; /*the width*/
	min-height: 100vh;
    height:100%;
	z-index: 10;
	opacity: 0;
	color: #FFF;
	background: var(--primary-color);
	animation: navfadeInRight 400ms ease-in-out 1 forwards;
	overscroll-behavior: contain; /*prevent body scroll*/
}

:where(.menu) a {
	color: #FFF;
}

:where(.menu) a:hover {
	color: rgba(255,255,255,.5);
}

:where(.menu) *:focus-visible {
	outline: 2px solid #FFF;
	outline-offset: 2px;
}


.menu.open::after { /*overlay*/
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	transform: translateX(-100%);
	background: rgba(0,0,0, .2);
	z-index: 2;
	transition: none;
}

.menu .inner {
    height: 100%;
	overflow-y: scroll;
	padding-block: 30px;
	padding-inline: clamp(var(--page-padding), 5vw, 100px);

}

.menu-open .menu {
	display: flex;
	flex-direction: column;
}

.menu-grid {
	display: grid; 
	grid-template-columns: 1fr max(25%, 280px);  /*430px*/
	grid-template-areas: 
            "lang ."
            "cards nav";
	gap: 60px 120px; 
	margin: 0 auto;
	margin-top: var(--notification-bar-height);
	border: 0px solid #333;
}


@media screen and (max-width: 1200px) {
	.menu-grid {
		grid-template-columns: 1fr;
		grid-template-areas: 
		"lang"
		"nav"
		"cards";
		max-width: 45rem;
	}

}


@media screen and (max-width: 600px) {
	.menu .inner {
		padding-block: 60px 80px;
		padding-inline:40px;
	}

}

/* -- Menu Lang -- */

.menu-lang {
	grid-area: lang;
	display: flex;
	gap: 30px;
}

.menu-lang li {
}

.menu-lang a {
	display: block;
	text-transform: lowercase;
	font-feature-settings: "smcp" 1;
	line-height: 1.6;
}

.menu-lang .current-lang a {
	border-bottom: 1px solid #FFF;
}


/* -- Menu Search -- */

.menu-search {
	margin-top: var(--space-md);
}

.menu-search .searchform {
	position: relative;
	max-width: 20rem;
}

.menu-search .searchform input.s {
	width: 100%;
	padding: 12px 0;
	padding-right: 3rem;
	background: transparent;
	font-size: var(--base-font-size);
	color: #FFF;
	border:  none;
	overflow: hidden;
	box-shadow: none;
	border-bottom: 1px solid rgba(255,255,255,.5);
}

.menu-search input.s:focus,
.menu-search .searchform:focus-within input.s {
	background: rgba(0,0,0, .1);
	padding-left: 15px;
	border-color: #FFF;
	outline: none;
	
}

.menu-search input::placeholder {
	color: rgba(255,255,255,.6);
}

.menu-search .searchsubmit {
	position: absolute;
	top: 0;
	right: 0;
	width: 3rem;
	height: 100%;
	border: none;
	padding: 0;
	z-index: 10;
	background: transparent;
}

.menu-search .searchform i {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	font-size: 1.6rem;
	color: #FFF;
}


@media screen and (max-width: 600px) {	
	.menu-search .searchform {
		max-width: 100%;
	}
}


/* -- Menu Cards */

.menu-cards {
	grid-area: cards;
	max-width: 46rem;
	
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); /*!*/
	grid-template-rows: auto 1fr;
	gap: 30px;
	margin-bottom: 60px;
	border: 0px solid MAGENTA;
}


.menu-card {
	position: relative;
	display: flex;
	aspect-ratio: 4/3;
}

.menu-card a {
	position: relative;
	display: flex;
	align-items: flex-end;
	width: 100%;
	overflow: hidden;
	border-radius: var(--radius);
}

.menu-card a:hover {
	color: #FFF;
}

.menu-card a::after { /*overlay*/
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0, 1) 100%);
	opacity: .6;
}

.menu-card__image {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.menu-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 600ms ease;
}

.menu-card a:hover img {
	transform: scale(1.1);
}


.menu-card__title {
	position: relative;
	z-index: 1;
	display: flex;
	flex: 1;
	gap: 5px 10px;
	justify-content: space-between;
	padding: 30px;
	padding: clamp(20px, 2vw, 25px);
	text-align: left;
	font-weight: bold;
	line-height: 1.4;
	font-size: clamp(1rem, 2.1vw, 1.2rem);
}


.menu-card__title::after {
	content: "\e91f";
	font-family: 'icons';
	font-weight: normal;
	font-size: 130%;
	line-height: 1.0;
	margin-top: auto;
	transition: all 300ms ease;
}

.menu-card__title span {
	display: flex;
	align-self: flex-end;
	width: 100%;
}

.menu-card a:hover .menu-card__title::after {
	transform: translateX(30%);
}


@media screen and (max-width: 600px) {	
	.menu-cards {
		grid-template-columns: 1fr;
	}
	.menu-card__title {
		font-size: inherit;
	}

}


/* -- Menu Nav*/

.menu nav {
	grid-area: nav;
	margin-top: -.7rem;
	border: 0px solid #333;

}


.menu nav li {
}

.menu nav li a {
	display: flex;
	font-size: var(--font-size-base);
	font-size: calc(24/16 * 1rem); /*24px*/
	font-size: clamp(20px, 3.5vw, 24px);
	font-weight: bold;
	line-height: 1.3;
	padding: .45em 0;
	text-align: left;
}


.menu nav li a:hover {
}

.menu nav li a span {
	display: block;
	text-decoration: none;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.35rem;
	text-decoration-color: currentColor;
}


.menu nav li.current-menu-item > a span {
	text-decoration-line: underline;
}

.menu nav li.menu-item-has-children.active > a {
}

.menu nav li.menu-item-has-children > a::after {
	content: "\e929";
	display: inline-flex;
	align-items: center;
	margin-left: 0.3rem;
	font-family: 'icons';
	font-weight: normal;
	font-size: 110%;
	line-height: 0;
	color: rgba(255,255,255,.5);
	transition: all 300ms ease;
}

.menu nav li.menu-item-has-children.active > a::after {
	transform: rotate(180deg);
}

.menu nav li.active > a span {
	AUS_text-decoration: underline;
	color: rgba(255,255,255,.5);
}

/* 2nd level*/

.menu nav li ul {
	position: relative;
	padding: 0 0 0 30px;
	margin: 0;
	margin-bottom: 5px;
}

.menu nav li li {
	opacity: 1;
	animation: none;
}

.menu nav li li a {
	font-size: 1.2rem;
	font-size: var(--base-font-size);
	font-weight: normal;
	padding: 10px 0;
}


.menu nav li ul li.page-ancestor a { /*add class manually*/
	AUS_color: rgba(255,255,255, .6);
	text-transform: uppercase; /*caps*/
	font-size: 80%;
	letter-spacing: 1px;
	font-weight: bold;
}

AUS_.menu nav li ul li.page-ancestor a { /*add class manually*/
	AUS_color: rgba(255,255,255, .6);
	font-style: italic;
}



/* 3rd level*/

.menu nav ul ul li.menu-item-has-children > a::after {
	display: none;
}

.menu nav ul ul ul {
	padding-left: 0;
}




/* Menu secondary */

.menu-secondary {
	margin-top: calc(var(--space-md) - .4em);
}

.menu .menu-secondary li a {
	font-weight: normal;
	font-size: var(--font-size-base);
	line-height: 1.3;
	padding: 10px 0;
}

/* Featured Button in Menu (mob) */


.menu  .featured-btn {
	margin-top: var(--space-md);
	max-width: 20rem;
}

.menu .featured-btn:hover {
	background: var(--sky);
}


/* Menu social  */

.menu-social {
	margin: var(--space-md) 0 0 -.2rem;
	display: flex;
	align-items: center;
	gap: 25px;
	margin-top: var(--space-lg);
	font-size: 2.2rem;
}

.menu-social a {
	display: flex;
	line-height: 1;
}






/* Mobile Menu Animation */

@keyframes navfadeInRight {
0% {
	opacity: 0.0;
	transform: translate(200px,0);
}

100% {
	opacity: 1.0;
	transform: translate(0,0);
	}
}

@keyframes navfadeInTop {
0% {
	opacity: 0.0;
	transform: translate(0,-100px);
}

100% {
	opacity: 1.0;
	transform: translate(0,0);
	}
}


@keyframes navfadeOut {
0% {
	opacity: 1.0;
	transform: translate(0px,0);
}

100% {
	opacity: 0.0;
	transform: translate(0px,-50px);
	}
}


/* Mobile Menu Trigger */

.menu-trigger {
	--hamburger-stroke-color: var(--primary-color);
	--hamburger-stroke-width: 40px;
	--hamburger-stroke-height: 4px;
	--hamburger-stroke-gap: 5px;
	
	display: flex;
	align-items: center;
	gap: 15px;
	position: relative;
	
	border: none;
	height: 49px;
	margin: 0 -8px 0 0;
	z-index: 999;
	padding: 0 8px;
	text-transform: uppercase;
	background: transparent;
	border-radius: 10rem;
	outline: none;
	border: 0px solid red;
}

.menu-trigger:focus-visible {
	outline: 2px solid blue;
}

.menu-trigger.open {
	--hamburger-stroke-color: #FFF;
}

.menu-trigger.open strong {
	
}


.menu-open .menu {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}

.menu-trigger strong { /*menu label*/
	display: block;
	font-size: 16px; /*caps*/
	color: var(--primary-color);
	overflow: hidden;
	width: 5ch;
	text-align: right;
	transition: all 300ms ease;
}

.menu-trigger.open strong {
	width: 0px;
	margin-right: -15px;
	opacity: 0;
}


@media screen and (max-width: 840px) {
	.menu-trigger strong {
		display: none;
	}
}


/* Hamburger Icon ani*/


.menu-trigger span {
	margin: 0 auto;
	position: relative;
	background: transparent!important;

}
.menu-trigger span:before,
.menu-trigger span:after {
	position: absolute;
	content: '';
}
.menu-trigger span,
.menu-trigger span:before,
.menu-trigger span:after {
	width: var(--hamburger-stroke-width);
	height: var(--hamburger-stroke-height);
	background-color: var(--hamburger-stroke-color);
	display: block;
}
.menu-trigger span:before {
	margin-top: calc(var(--hamburger-stroke-gap) * -1);
}
.menu-trigger span:after {
	margin-top: calc(var(--hamburger-stroke-gap) * 1);
}

.menu-trigger.open span,
.menu-trigger.open span:before,
.menu-trigger.open span:after {
}

.menu-trigger span {
	transition-duration: 0s;
	transition-delay: 0.15s;
}
.menu-trigger.open span {
	background-color: rgba(0,0,0,0.0);
	transition-delay: 0.15s;
}
.menu-trigger span:before {
	transition-property: margin, transform;
	transition-duration: 0.15s;
	transition-delay: 0.15s, 0s;
}
.menu-trigger.open span:before {
	margin-top: 0;
	transform: rotate(45deg);
	transition-delay: 0s, 0.15s;
}
.menu-trigger span:after {
	transition-property: margin, transform;
	transition-duration: 0.15s;
	transition-delay: 0.15s, 0s;
}
.menu-trigger.open span:after {
	margin-top: 0;
	transform: rotate(-45deg);
	transition-delay: 0s, 0.15s;
}

/* end Hambuger Icon ani*/


@media screen and (max-width: 600px) {
	.menu {
		animation: navfadeInTop 400ms ease-in-out 1 forwards;
	}
	
	.menu-trigger {
		--hamburger-stroke-width: 35px;

	}
}

/* @end */




/* @group CONTENT */

/* CONTENT
--------------------------------------------------------------------------------- */

#content {
	position: relative;
	overflow-x: clip;
	AUS_scroll-margin-top: var(--header-height);
	margin-top: var(--header-height);
}


main {
	padding-top: 0;
	padding-top: var(--main-padding-top);
	padding-bottom: var(--main-padding-bottom);
	min-height: 50vh;
}


/* @end */


/* @group WP BLOCK EDITOR  */

/* WP BLOCK EDITOR
--------------------------------------------------------------------------------- */


.editor-styles-wrapper { 
	overflow-y: auto; 
}

.is-root-container {
	overflow: hidden; /*fix for swiper js is-overflow*/
}

.is-root-container.wp-block-post-content {
	padding: var(--main-padding-top) 0 var(--main-padding-bottom) 0; 
}


.wp-block {
	box-sizing: border-box;
}


.wp-block.components-placeholder {
	margin-top: var(--block-gap); /*e.g. for Shortcode block*/
}


.wp-block[class*="wp-block-acf-"].is-selected { /* for selected custom ACF blocks */
}


.wp-block[data-align] {
	float: none!important;
	max-width: var(--default-width);
}

.wp-block[data-align="wide"] {
	
}

.wp-block input { /* unset */
	-webkit-appearance: auto;
	-moz-appearance: auto;
}


.wp-block.acf-block-preview a { /*disable link clickability*/
	pointer-events: none; 
}

/*fix double root padding in BE (bc has-global-padding is missing on is-root-container on PHP templates)*/
:where(.is-root-container) :where(.has-global-padding:not(.wp-block-block)) {
	padding-right: 0;
	padding-left: 0;
}

/* disable drop cap in block preview */
.has-drop-cap:not(:focus):first-letter {
	all: unset;
}

/*remove underlinded links on pattern edit mode */
.block-editor-block-list__layout a:where(:not(.wp-element-button)) {
    text-decoration: unset;
}

/* ACF fields */

.acf-field {
	-moz-osx-font-smoothing: auto;
}

.acf-field ul, 
.acf-field ol {
	padding: 0;
	margin: 0;
}

.editor-styles-wrapper .acf-fields :where(th,tr,td) {
	box-sizing: initial;
}

.acf-field a,
.acf-field a:hover {
	color: #0783BE;
	text-decoration: none;
}

a.acf-icon {
	color: #0783BE;
}

.acf-fields table { 
	border-collapse: inherit;
}

/*ACF block in editing mode */
.block-editor-block-list__block.acf-block-component.is-selected {
  display: block;
}

/*ACF block - when empty add some height*/
.block-editor-block-list__block.acf-block-component {
	min-height: 50px;
}


 /* Helper - Block Outline */	
 

.block-editor-block-list__block.acf-block-preview.wp-block,
.block-editor-block-list__block.acf-block-preview .wp-block,
.block-editor-block-list__block:not([data-type*="acf"]):not(.is-reusable) {
	outline: 1px solid rgba(0,0,0, .13);
}

.block-editor-block-preview__content-iframe .block-editor-block-list__block {
	outline: none!important; /*no block outlines in block previews */
}


.block-editor-block-list__block:not([data-type*="acf"]):not(.is-reusable) .wp-block {
	outline-offset: -1px; /*prevent overlapping outline of nested blocks*/
}

/* Helper - Missing Blocks */

.wp-block.wp-block-missing {
	border: 2px solid RED;
}

/* TinyMCE - fix CSS conflicts, halbwegs */

.mce-tinymce .mce-btn button {
	font-size: 20px;
}

/* reset editor-styles in ACF fields with TinyMCE */

#tinymce {
	background: #FFF;
}

#tinymce * {
	margin: revert;
	padding: revert;
	font-size: .938rem;
	line-height: 1.4;
	color: #000;
	font-family: sans-serif;
	list-style: inside;
}

#tinymce::before,
#tinymce::after {
	display: none;
}

#tinymce :where(strong, b) {
	font-weight: bold;
}

#tinymce a {
	color: #2171b1;
	text-decoration: underline;
}

#tinymce h1 { font-size: 2rem; }
#tinymce h2 { font-size: 1.5rem; }
#tinymce h3 { font-size: 1.25rem; }

#tinymce :where(p,h1,h2,h3,h4,h5,hr,ul,ol) { /*helper border*/
	position: relative;
	border: 1px dashed #CCC;
	border-color: #CCC;
	border-color: rgba(1,1,1, 0.25);
	padding: 2px;	
}


/*spacing helper - visualize spaces*/

.spacing-helper {
	display: flex;
	align-items: flex-end;
	gap: 20px;
}

.spacing-helper :where(.space) {
	position: relative;
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #CCC;
	height: var(--space);
}

.space[data-size="xs"]   { --space: var(--space-xs); }
.space[data-size="sm"]   { --space: var(--space-sm); }
.space[data-size="md"]   { --space: var(--space-md); }
.space[data-size="lg"]   { --space: var(--space-lg); }
.space[data-size="xl"]   { --space: var(--space-xl); }
.space[data-size="xxl"]  { --space: var(--space-xxl); }
.space[data-size="xxxl"] { --space: var(--space-xxxl); }

.space::after {
	content: attr(data-size);
	font-size: 14px;
	text-transform: uppercase;
}

.space[data-size="md"] { /*default space*/
	background: lightblue;
}




/* @end */



/* @group WP BLOCKS  */

/* WP BLOCKS
--------------------------------------------------------------------------------- */

/* @group WP PARAGRAPH  */


/* WP PARAGRAPH
--------------------------------------------------------------------------------- */


 /*custom style*/

.is-style-lead {
	margin-block: var(--space-xxxl);
	font-size: var(--text-large);
	color: var(--primary-color);
}

 @media screen and (max-width: 600px) {
	.is-style-lead {
		margin-block: var(--space-xxl);
	}
}



/* @end */




/* @group WP IMAGE  */


/* WP IMAGE
--------------------------------------------------------------------------------- */


.wp-block-image {
}

.wp-block-image img {
	width: 100%;
}

.wp-block-image.alignwide img,
.wp-block-image.alignfull img {
	width: 100%;
}

.wp-block-image:not(.alignfull) img {
	border-radius: var(--radius);
}

.wp-block-image .aligncenter, 
.wp-block-image .alignleft, 
.wp-block-image .alignright {
    display: table;
}

.wp-block-image .aligncenter > figcaption, 
.wp-block-image .alignleft > figcaption, 
.wp-block-image .alignright > figcaption {
    display: table-caption;
    caption-side: bottom; 
}


figcaption,
.wp-block-image figcaption,
.wp-block-embed figcaption {
	font-size: var(--text-small);
	line-height: 1.4;
	font-style: italic;
	margin: 10px 0 10px 0;
	text-align: left;
	word-break:break-word;
	overflow-wrap:break-word;
}

/*custom image styles*/

.is-style-image-shadow img {
	box-shadow: 0px 3px 15px -5px rgba(0,0,0, .6);
}

.wp-block-image.is-style-rounded-none img {
	border-radius: 0;
}

/* wp lightbox*/

.wp-lightbox-overlay .scrim {
	/*add custom bg color here*/
}


/* for Block Editor */

.wp-block[data-align] > .wp-block-image {
}


.wp-block[data-align="left"] > .wp-block-image {
	float: left;
}

.wp-block[data-align="right"] > .wp-block-image {
	float: right;
}


.wp-block-image .components-resizable-box__container { /*remove small space below images*/
    vertical-align: top; 
}

/* @end */


/* @group WP MEDIA-TEXT  */


/* WP MEDIA-TEXT
--------------------------------------------------------------------------------- */


.wp-block-media-text {
	gap: clamp(30px, 5vw, 60px);
}

.wp-block-media-text .wp-block-media-text__media > * {
	border-radius: var(--radius);
}

.wp-block-media-text .wp-block-media-text__content {
	padding: 0;
}

.wp-block-media-text__content > :first-child {
	margin-top: 0;
}

.wp-block-media-text__content > :last-child {
	margin-bottom: 0;
}

:where(.wp-block-media-text__content) > * { /*WP missed this*/
	margin-top: var(--block-gap);
}

@media screen and (max-width: 600px) {
	.wp-block-media-text__content {
		
	}

}



/* @end */


/* @group WP GALLERY  */


/* WP GALLERY
--------------------------------------------------------------------------------- */


.wp-block-gallery {
	--wp--style--gallery-gap-default: 10px;
	AUS_--block-gap: 4rem; /*override block gap for this block*/
}

.wp-block-gallery.is-style-no-gap { /*custom style*/
	gap: 0;
}

.wp-block-gallery.has-nested-images figure.wp-block-image {
	border-radius: var(--radius);
	overflow: hidden;
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
  background: linear-gradient(0deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.0) 100%,transparent);
  bottom:0;
  box-sizing:border-box;
  color:#fff;
  font-size: var(--text-small);
  padding: 10px 10px;

}

/* @end */


/* @group WP EMBED  */

/* WP EMBED
--------------------------------------------------------------------------------- */

.wp-block-embed {
}

.wp-block-embed__wrapper > * {
	margin: 0 auto!important;
}

.wp-block-embed__wrapper iframe {
	width: 100%;
	border-radius: var(--radius);
}

/* @end */


/* @group WP VIDEO  */


/* WP VIDEO (self hosted)
--------------------------------------------------------------------------------- */


.wp-block-video {
}

.wp-block-video video {
	display: block;
	width: 100%;
	border-radius: var(--radius);
}

/* @end */


/* @group WP COVER  */

/* WP COVER
--------------------------------------------------------------------------------- */

.wp-block-cover {
	background: var(--primary-color); /*wcag*/
}

.wp-block-cover:not(.alignfull) {
	border-radius: var(--radius);
}


/* @end */



/* @group WP QUOTE  */

/* WP QUOTE
--------------------------------------------------------------------------------- */

blockquote.wp-block-quote {
	max-width: 40rem;
	color: var(--primary-color);
}


blockquote.wp-block-quote > *:not(cite) {
	font-weight: normal;
}

.wp-block-quote cite {
	display: block;
	font-style: normal;
	font-weight: bold;
	font-size: var(--text-small);
	color: inherit;
	margin: 10px 0 0 0;
}

/* @end */


/* @group WP COLUMNS  */


/* WP COLUMNS
--------------------------------------------------------------------------------- */

.wp-block-columns {
	--block-gap: clamp(30px, 5vw, 50px);
}

.wp-block-column {
	
}


/* custom style: breakpoint 1024 */

@media screen and (max-width: 1024px) {
	.is-style-breakpoint-1024 {
		flex-wrap: wrap!important;
	}	
	.is-style-breakpoint-1024> .wp-block-column {
		flex-basis: 100%!important;
	}
}

/* custom style: breakpoint 840 */

@media screen and (max-width: 840px) {
	.is-style-breakpoint-840 {
		flex-wrap: wrap!important;
	}	
	.is-style-breakpoint-840 > .wp-block-column {
		flex-basis: 100%!important;
	}
}



/* @end */


/* @group WP SPACER  */


/* WP SPACER
--------------------------------------------------------------------------------- */

.wp-block-spacer {
}


/* @end */


/* @group WP FILE  */


/* WP FILE
--------------------------------------------------------------------------------- */


.wp-block-file {
	position: relative;
	background: var(--primary-bg);
	background: transparent;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1ch 2ch;
	padding: 0 0 0 2.2rem;
}

.wp-block-file::before {
	position: absolute;
	top: 0.05em;
	content: "\e936";
	font-family: 'icons';
	font-size: 1.8em;
	line-height: 1;
	margin-left: -2.2rem;
	color: var(--link-color);
}

.wp-block-file + .wp-block-file {
	margin-top: 0.75em;
	border-top: 0px solid var(--border-color);

}

.wp-block-file__embed {
	border: 1px solid var(--border-color);
}

.wp-block-file a:not(.wp-block-file__button) {
	font-size: var(--base-font-size);
	display: inline-block;
}

.wp-block-file__button.wp-element-button {
	font-weight: bold;
	text-transform: uppercase;
	font-size: var(--text-tiny);
	border-radius: 0;
	padding:4px 15px;
	margin: 0;
	border-radius: 100px;
	background: transparent;
	color: var(--link-color);
	border: 1px solid var(--link-color);
}

.wp-block-file__button:hover {
	color: var(--text-color);
	color: #FFF;
	background: var(--primary-color);
	border-color: var(--primary-color);
}


/* @end */


/* @group WP TABLE  */


/* WP TABLE
--------------------------------------------------------------------------------- */


.wp-block-table {
	line-height: 1.5;
}

/* for editor */
.wp-block[data-align] table {
	width: 100%;
}

.wp-block-table table {
	width: 100%;
	max-width: 100%;
}

.wp-block-table table thead {
	text-align: left;
	border-bottom: 3px solid var(--border-color);
}

table thead td {
	font-weight: bold;
}

.wp-block-table  tfoot {
	border-top: 1px solid var(--border-color);
}


.wp-block-table tr {
	background: transparent;
	border-bottom: 1px solid var(--border-color);
}

.wp-block-table tr:last-child {
	border-bottom: none;
}

.wp-block-table tr th {
}

.wp-block-table th,
.wp-block-table td {
	border-color: var(--border-color);
	padding: 0.6rem 0.5rem;
}

.wp-block-table tr td:last-child {
	padding-right: 0;
}

.wp-block-table p {
	margin: 0;
}

.wp-block-table figcaption {
	margin: 1rem 0; 
}

/* custom style: stripes */

.wp-block-table.is-style-stripes {
	border-bottom: none;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd){
	background: rgba(0,0,0, .04);
	background: rgba(0, 104, 179, .05);
}


.wp-block-table.is-style-stripes th,
.wp-block-table.is-style-stripes td {
	padding-left: 15px;
}

.wp-block-table.is-style-stripes tr,
.wp-block-table.is-style-stripes thead,
.wp-block-table.is-style-stripes tfoot {
	border: none;
}

/* custom style: blank */

.wp-block-table.is-style-blank {
	line-height: inherit;
}

.wp-block-table.is-style-blank :is(thead, tfoot, tr) {
	border: none;
}

.wp-block-table.is-style-blank th,
.wp-block-table.is-style-blank td {
	padding-block: 0;
	padding-left: 0;
	border: none;
}


/*for editor - show borders on select*/

.wp-block-table.is-selected table thead,
.wp-block-table.is-selected table tfoot,
.wp-block-table.is-selected table th,
.wp-block-table.is-selected table td,
.wp-block-table.is-selected table tr {
	border: 1px dashed #999;
}


/* @end */


/* @group WP GROUP  */

/* WP GROUP
--------------------------------------------------------------------------------- */

.wp-block-group {
	gap: var(--columns-gap)!important /*override WP defaults*/;
}

.wp-block-group.has-background {
	
}

.wp-block-group > .wp-block-group {
	margin-bottom: 0;
}

.wp-block-group > :first-child {
	margin-top: 0;
}

.wp-block-group > :last-child {
	margin-bottom: 0;
}


/* @end */


/* @group WP BUTTONS  */


/* WP BUTTONS
--------------------------------------------------------------------------------- */

.wp-block-buttons { 
	gap: 15px; /*override WP inline default*/
}


div.wp-block-button__link,
.wp-block-button__link  { /*the div is for fse editor */
	position: relative;
	z-index: 1;
	width: auto;
	height: auto;
	overflow: hidden;
	text-transform: uppercase;
	padding: .90em 2.2em;
	font-weight: bold;
	font-size: 16px;  /*caps 22px*/
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #FFF;
	letter-spacing: .5px;
	text-decoration: none;
	background: var(--primary-color);
	border: none;
	border-radius: 10rem;
}


.wp-block-button__link:hover {
	color: #FFF;
	text-decoration: none;
	background: var(--primary-dark);
}

.wp-block-button__link:focus-visible {
	outline-offset: 2px;
}

/*custom style: btn-white*/

.wp-block-button.is-style-btn-white .wp-block-button__link {
	color: var(--primary-color);
	background: #FFF;
	box-shadow: 0px 3px 25px -5px rgba(0,0,0, .1);
}

.wp-block-button.is-style-btn-white .wp-block-button__link:hover {
	background: rgba(255,255,255, .8);
}


/*custom style: btn-outline*/

.wp-block-button.is-style-btn-outline .wp-block-button__link {
	padding: .8em 2.0em;
	color: var(--primary-color);
	background: transparent;
	border: 1px solid var(--primary-color);
	transition: all 300ms ease;
}

.wp-block-button.is-style-btn-outline .wp-block-button__link:hover {
	background: transparent;
	color: #FFF;
	border-color: var(--primary-color);
	background:var(--primary-color);
}


/*custom style: btn-outline-white*/

.wp-block-button.is-style-btn-outline-white .wp-block-button__link {
	padding: .8em 2.0em;
	color: #FFF;
	background: transparent;
	border: 1px solid #FFF;
	transition: all 300ms ease;
}

.wp-block-button.is-style-btn-outline-white .wp-block-button__link:hover {
	background: transparent;
	color: var(--primary-color);
	border-color: var(--primary-color);
}
	
	
/*custom style: btn-video*/

.wp-block-button.is-style-btn-video .wp-block-button__link {
	color: var(--primary-color);
	background: #FFF;
}

.wp-block-button.is-style-btn-video .wp-block-button__link i {
	font-size: 1.6em;
	line-height: 0;
	margin-left: -.3em;
	margin-right: 0.2em;
}

.wp-block-button.is-style-btn-video .wp-block-button__link:hover {
	background: rgba(255,255,255, .8);
}
	






/* @end */



/* @group WP SHORTCODE  */

/* WP SHORTCODE
--------------------------------------------------------------------------------- */

.wp-block-shortcode { /* class only in editor */
}

/* @end */


/* @group WP HTML  */

/* WP HTML
--------------------------------------------------------------------------------- */

.wp-block-html { /* class only in editor */
}

/* @end */


/* @group WP VIDEO  */

/* WP VIDEO
--------------------------------------------------------------------------------- */

.wp-block-video {
}

/* @end */


/* @group WP AUDIO  */

/* WP AUDIO
--------------------------------------------------------------------------------- */

.wp-block-audio {
}

/* @end */


/* @group WP CODE  */


/* WP CODE
--------------------------------------------------------------------------------- */

.wp-block-code {
	background: #F1F1F1;
}

.wp-block-code code {
	background: none;
	padding: var(--box-padding);
	font-size: 1rem;
}

code {
	margin: 0;
}

/* @end */


/* @group WP DETAILS  */


/* WP DETAILS
--------------------------------------------------------------------------------- */

.wp-block-details {
	--block-gap: 1.4em;
}

.wp-block-details[open] {
	padding-bottom: var(--space-md);
}

.wp-block-details summary {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: .5em 1.4rem;
	font-size: var(--text-small);
	color: var(--primary-color);
	background: var(--primary-bg);
	border-radius: 10rem;
}

.wp-block-details summary:hover {
	color: var(--link-color);
}

.wp-block-details summary::marker,
.wp-block-details summary::-webkit-details-marker  {
	/*::marker has no safari support*/
	display: none;
}

.wp-block-details summary::before {
	content: "\e929";
	display: inline-block;
	margin-left: -.2em;
	font-family: 'icons';
	font-size: 1.3em;
	line-height: 1;
	transform: translateY(5%);
}

.wp-block-details[open] > summary::before {
	transform: rotate(180deg) translateY(5%);
}


.wp-block-details summary + * {
}

.wp-block-details + .wp-block-details {
	margin-top: 3px;
}


.wp-block-details .wp-block-details { /*details within details*/
	margin-left: 30px;
}



/* @end */


/* @group WP FOOTNOTES  */


/* WP FOOTNOTES
--------------------------------------------------------------------------------- */

.wp-block-footnotes {
	font-size: var(--text-tiny);
	padding-top: var(--space-sm);
	border-top: 1px solid var(--border-color);
}




/* @end */


/* @group WP SEPARATOR  */


/* WP SEPARATOR
--------------------------------------------------------------------------------- */

hr.wp-block-separator {
	position: relative;
	display: block;
	clear: both;
	height: 1px;
	border: 0;
	background: transparent;
	border-bottom: 2px solid var(--border-color);
	margin: var(--space-lg) 0;
}


/* @end */






/* @end */


/* @group CUSTOM BLOCKS  */

/* CUSTOM BLOCKS
--------------------------------------------------------------------------------- */


/* @group BANNER */

/* Banner
--------------------------------------------------------------------------------- */


.banner {
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1;
	overflow: hidden;
	margin-bottom: var(--main-padding-top);
	margin-bottom: var(--space-xxl);
	height: 880px; /*the height*/
	height: clamp(600px, 50vw, 880px);
	background-color: var(--primary-color); /*wcag*/
}

.entry-content > .banner:first-child {
	margin-top: calc((var(--main-padding-top) + var(--header-height)) * -1); /*on very top*/
}

.is-root-container > .wp-block-acf-banner:first-child { /*for editor*/
	margin-top: calc(var(--main-padding-top) * -1);
}

.banner__content {
	position: relative;
	width: 100%;
	height: 100%;
	justify-content: flex-end;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-inline: var(--page-padding);
	margin: 0 auto;
	max-width: var(--default-width);
}

.banner__content .container {
	display: flex;
	justify-content: center;
	text-align: center;
}


.banner__toptitle {
	text-transform: uppercase; /*caps*/
	color: #FFF;
	font-size: 20px;
	font-weight: normal;
	font-feature-settings: "smcp" 1;
	letter-spacing: .5px;
	text-shadow: 0px 2px 15px rgba(0,0,0, .3);	
	
	/*caps*/
	text-transform: lowercase;
	font-size: clamp(22px, 4vw, 26px);
	font-weight: normal;
	font-feature-settings: "smcp" 1;
}

.banner__title {
	width: 100%;
	text-align: center;
	color: #FFF;
	margin: 0;
	margin-bottom: var(--space-xxl);
	max-width: 55rem;
	text-shadow: 0px 2px 20px rgba(0,0,0, .3);
}


.banner__image-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.banner img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	opacity: 1;
}

.banner::after { /*gentle top overlay */
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 30%;
	background: linear-gradient(to bottom,  rgba(0,0,0, 1) 0%,rgba(0,0,0,0) 100%);
	opacity: 0.1;
}

.banner__overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.3; /*user*/
}

.banner__keyvisual {
	--size: clamp(340px, 70vw, 700px);
	position: absolute;
	bottom: 0;
	right: 0;
	width: var(--size);
	height: var(--size);
	max-height: 90%;
	opacity: 0;
	animation: bannerKeyvisual 700ms ease-in-out 1 forwards;
	animation-delay: 500ms;
}

.banner__keyvisual .inner {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	transform: translate(14%,14%);
	background: transparent url(assets/images/icon-loop-white) no-repeat right bottom;
	background-size: contain;
}



@keyframes bannerKeyvisual {
0% {
	opacity: 0.0;
	transform: translate(0,10%);
}

100% {
	opacity: 0.2;
	transform: translate(0,0);
	}
}




@media screen and (max-width: 600px) {
	.banner {
		height: clamp( 460px, 130vw, 600px);
	}
	
}


/* @end */



/* @group IMAGE-SLIDER */

/* Image-Slider
--------------------------------------------------------------------------------- */

.image-slider {
		margin-block: var(--space-xl)

}

.image-slider.alignwide {
}

.image-slider.alignfull {
}

.image-slider .swiper {
}

.image-slider .swiper-wrapper {
 }

.image-slider .swiper-slide {
	max-width: var(--default-width); /*default*/
}

/*size small */
.image-slider .swiper-slide.size-sm {
	max-width: 26rem;
}

/*size large*/
.image-slider .swiper-slide.size-lg {
	max-width: 980px;
}


.image-slider__image {
	position: relative;
	background: rgba(0,0,0, .05);
}

.image-slider.alignwide .image-slider__image,
.image-slider.alignfull .image-slider__image {
}

.image-slider:not(.alignfull) {
	border-radius: var(--radius);
}

.image-slider__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
	border-radius: var(--radius);
}


.image-slider__caption {
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
	margin: 0;
	color: #FFF;
	font-size: var(--text-small);
	padding: clamp(15px, 4vw, 30px);
	text-shadow: 0 2px 5px rgba(0,0,0, .5);
	background: rgba(0,0,0, .4);
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0, .6) 90%);
}


.image-slider .swiper-pagination-bullets {
	position: absolute;
}


/* style: is-contain */

.image-slider__image.is-contain img {
    object-fit: contain;
}


/* style: is-overflow */

.swiper.is-overflow {
	overflow: visible;
}


/* @end */



/* @group GALLERY */

/* Gallery
--------------------------------------------------------------------------------- */


.gallery {
}

.gallery__grid {
	--gallery-gap: clamp(10px, 2vw, 20px);
	display: flex;
	flex-wrap: wrap;
	gap: var(--gallery-gap) 0;
	margin-left: calc(var(--gallery-gap) * -.5); /*  offset gap */
	margin-right: calc(var(--gallery-gap) * -.5); /*  offset gap */
}

.gallery__grid.columns-align-center {
	justify-content: center;

}
.gallery__grid.columns-align-right {
	justify-content: flex-end;
}

.gallery__item {
	position: relative;
	flex: 0 0 auto;
	width: calc(100% / 3); /*default 3 colums*/
	overflow: hidden;
	display: flex;
	flex-direction: column;
	margin: 0;	
	padding-right: calc(var(--gallery-gap) * .5);
	padding-left: calc(var(--gallery-gap) * .5);
	aspect-ratio: unset!important;
}

.gallery-columns-1 .gallery__item { width: calc(100% / 1); }
.gallery-columns-2 .gallery__item { width: calc(100% / 2); }
.gallery-columns-3 .gallery__item { width: calc(100% / 3); }
.gallery-columns-4 .gallery__item { width: calc(100% / 4); }
.gallery-columns-5 .gallery__item { width: calc(100% / 5); }
.gallery-columns-6 .gallery__item { width: calc(100% / 6); }


@media screen and (max-width: 1024px) {

.gallery-columns-2 .gallery__item { width: calc(100% / 2); }
.gallery-columns-3 .gallery__item { width: calc(100% / 2); }
.gallery-columns-4 .gallery__item { width: calc(100% / 2); }
.gallery-columns-5 .gallery__item { width: calc(100% / 3); }
.gallery-columns-6 .gallery__item { width: calc(100% / 3); }

}

@media screen and (max-width: 600px) {

.gallery-columns-2 .gallery__item { width: calc(100% / 2); }
.gallery-columns-3 .gallery__item { width: calc(100% / 2); }
.gallery-columns-4 .gallery__item { width: calc(100% / 2); }
.gallery-columns-5 .gallery__item { width: calc(100% / 2); }
.gallery-columns-6 .gallery__item { width: calc(100% / 2); }

}


.gallery .gap-zero .gallery__grid {
	--gallery-gap: 0;
}

.gallery__image {
	overflow: hidden;
	border-radius: var(--radius);
}

.gallery__image a {
	display: block;
	height: 100%;
}

.gallery__image img {
	display: block;
	margin: 0;
	width: 100%;
	transition: all 600ms ease!important;
}

.gallery__image a:hover img {
	transform: scale(1.08);
	opacity: .8;
}


/* gallery cropped */
.gallery__item.is-cropped  {
	flex: 1 0 auto; /* images in last row take remaining space*/
}

.gallery__item.is-cropped img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}

/* gallery has custom aspect ratio */
.gallery__item.has-ratio .ratio-wrap {
	position: relative;
}

.gallery__item.ratio-1-1 .gallery__image { aspect-ratio: 1 }
.gallery__item.ratio-4-3 .gallery__image { aspect-ratio: 4/3 }
.gallery__item.ratio-3-2 .gallery__image { aspect-ratio: 3/2 }
.gallery__item.ratio-16-9 .gallery__image { aspect-ratio: 16/9 }


.gallery__item.has-ratio .gallery__image {
	overflow: hidden;
	position: relative;
}

.gallery__item.has-ratio img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}

.gallery__item figcaption {
	margin: 0;
}



/* -- Gallery Masonry (JS) */


.gallery .is-masonry {
}

.gallery .is-masonry .gallery__item {
	padding: calc(var(--gallery-gap) / 2);
}



/* @end */


/* @group ACCORDION  */

/* ACCORDION
--------------------------------------------------------------------------------- */


.accordion {
	position: relative;
	border: none;
	width: 100%;
	border-top: 1px solid var(--border-color);
	border-bottom: 1px solid var(--border-color);
	outline-offset: 1px;
}

.accordion + .accordion {
	border-top: none;
	margin-top: 0;
}

.accordion-heading {
	margin: 0;
	padding: 0;
	border: none;
	text-transform: none;
}

.accordion-trigger {
	display: block;
	position: relative;
	border: none;
	text-align: left;
	width: 100%;
	padding: 1.2em 0;
	padding-right: 35px;
	font-size: var(--base-font-size);
	line-height: var(--base-line-height);
	color: var(--link-color);
	background: transparent;
	font-weight: bold;
	transition: all 300ms ease;
}

.accordion-trigger:hover {
	text-decoration: none;
	color: var(--text-color);
}

.accordion-trigger.active {
}

.accordion-trigger:hover,
.accordion-trigger:hover i {
}

.accordion-trigger:hover i {
	text-decoration: none;
}

.accordion-trigger i:after {
	position: absolute;
	top: .75em;
	right: 0;
	margin: 0;
	content: "\e929";
	display: block;
	line-height: 1;
	border-radius:0;
	font-family: 'icons';
	font-size: 1.6em;
	font-weight: normal;
	font-style: normal;
	color: var(--link-color);
	text-decoration: none;
	transition: all 250ms ease-in-out;
}

.accordion-trigger:hover i:after {
	color: var(--text-color);
}

 .accordion-trigger.active i:after {
	transform: rotate(180deg);
}

.accordion-content {
	position: relative;
	padding: 5px 0 var(--space-md) 0;
}

.accordion-content > *:first-child,
.accordion-content .acf-innerblocks-container > *:first-child  {
	margin-top: 0;
}


.wp-block-acf-accordion .accordion-content {
	display: none; /*WP preview: collapse item*/
}

.wp-block-acf-accordion.is-selected .accordion-content,
.wp-block-acf-accordion.has-child-selected .accordion-content {
	display: block; /*WP preview: expand item on select*/
}

.wp-block-acf-accordion.is-selected  .accordion-trigger i:after {
	transform: rotate(180deg); /*WP editor*/
}

@media screen and (max-width: 600px) {
}

/* @end */


/* @group FORM */

/* Form
--------------------------------------------------------------------------------- */


.form {
}

/* @end */



/* @group IFRAME EMBED */

/* iframe embed
--------------------------------------------------------------------------------- */


.iframe-embed {
}

.iframe-embed iframe {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	background: rgba(0,0,0, .05);
}

.iframe-embed:not(.alignfull) iframe {
	border-radius: var(--radius);	
}

.wp-block.iframe-embed iframe {
	pointer-events: none; /*WP*/
}

.iframe-embed iframe {
	min-height: 320px; /*for mobile when ratio is to small*/
}

/* @end */


/* @group LINK CARD */

/* Link Card
--------------------------------------------------------------------------------- */

/* Note: "card" is taken by WP, so we use "link-card" */


.link-card  {
	container-type: inline-size;
}

.link-card  a {
	position: relative;
	display: flex;
	align-items: flex-end;
	aspect-ratio: 4/3;
	overflow: hidden;
	color: #FFF;
	border-radius: var(--radius);
}


.block-editor-block-list__block .link-card  a {
	pointer-events: none; /*diable link in editor*/
}

.link-card  a:hover {
	color: #FFF;
}

.link-card a::after { /*overlay*/
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0, 1) 100%);
	opacity: .6;
}

.link-card__image {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.link-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 600ms ease;
}

.link-card  a:hover img {
	transform: scale(1.1);
}


.link-card__title {
	position: relative;
	z-index: 1;
	display: flex;
	flex: 1;
	gap: 5px 10px;
	justify-content: space-between;
	padding: 30px;
	padding: clamp(20px, 2vw, 25px);
	text-align: left;
	font-weight: bold;
	line-height: 1.4;
}

@container (max-width: 340px) {
	.link-card__title {
		font-size: 1rem;
	}
}



.link-card__title::after {
	content: "\e91f";
	font-family: 'icons';
	font-weight: normal;
	font-size: 130%;
	line-height: 1.2;
	margin-top: auto;
	transition: all 300ms ease;
}

.link-card  a:hover .link-card__title::after {
	transform: translateX(30%);
}



/* @end */


/* @group QUOTE */

/* Quote
--------------------------------------------------------------------------------- */

.quote {
	padding-block: var(--space-xl);
	color: var(--primary-color);
}

.quote + .quote {
}

.quote.has-background {
	padding-block: var(--space-xxxl);
}

.quote blockquote {
	padding: 0;
	margin: 0 auto;
	max-width: 45rem;
	text-align: center;
}

.quote blockquote p {
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.4;
	font-size: clamp(36px, 7vw, 46px);
	font-family: var(--font-script);
}

.quote blockquote cite {
	padding: 0;
	margin: 0;
	text-align: center;
	font-style: normal;
	font-size: var(--text-tiny);
	color: inherit;
	text-transform: uppercase; /*caps*/
	font-weight: bold;
	opacity: 1;
}

@media screen and (max-width: 600px) {
	.quote blockquote br {
		display: none;
	}
}




/* @end */


/* @group STORY QUOTE */

/* Story Quote
--------------------------------------------------------------------------------- */

.story-quote {
	--offset: 50px;
	margin-block: var(--space-xxl);
	max-width: var(--semiwide-width);
}

.story-quote.has-background {
}


.story-quote__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
}

.story-quote__image {
	width: 100%;
	aspect-ratio: 3.1/4;
	margin-bottom: var(--offset);
	margin-right: calc(var(--offset)/2 *-1);
	overflow: hidden;
	border-radius: var(--radius);
	z-index: 1;
}

.story-quote__image.no-image {
	background: #EEE;
}

.story-quote__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.story-quote__quote {
	container-type: inline-size;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
	margin: 0;
	margin-top: var(--offset);
	margin-left: calc(var(--offset)/2 *-1);
	padding: 50px;
	padding: calc(var(--offset) + 20px);
	padding-right: calc(var(--offset) + 0px); /*optic*/
	text-align: center;
	border-radius: var(--radius);
	color: var(--primary-color);
	background: var(--safran-bg);
}

.story-quote__quote p {
	padding: 0;
	margin: 0 auto;
	text-align: center;
	line-height: 1.3;
	max-width: 25ch;
	font-size: clamp(28px, 3vw, 34px);
	font-size: clamp(25px, 8cqi, 36px);
	font-family: var(--font-script);
}

.story-quote__quote cite {
	padding: 0;
	margin: 0;
	margin-top: 20px;
	text-align: center;
	font-style: normal;
	font-size: var(--text-tiny);
	color: inherit;
	text-transform: uppercase; /*caps*/
	font-weight: bold;
	opacity: 1;
}


.story-quote__button {
	margin-top: 30px;
}


@media screen and (max-width: 840px) {
	.story-quote__quote p {
		font-size: clamp(22px, 8.5cqi, 30px);
	}
}


@media screen and (max-width: 600px) {
	.story-quote__grid {
		grid-template-columns: 1fr;
	}
	
	.story-quote__image {
		max-width: 60vw;
		margin: 0 auto;
	}
		
	.story-quote__quote {
		--offset: 45vw;
		margin: 0;
		margin-top: calc(var(--offset)*-1);
		padding: var(--space-xl) 30px;
		padding-top: calc(var(--offset) + var(--space-xl) - 10px);
	}
	
	.story-quote__quote p {
		font-size: clamp(26px, 7vw, 32px);
	}
	
	.story-quote__quote br {
		display: none;
	}
}




/* @end */



/* @group STORY CARDS */

/* Story Cards
--------------------------------------------------------------------------------- */


.storys {
	margin-block: var(--space-xxl)
}

.storys__grid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 30px;
}

.story-card {
	container-type: inline-size; 
	position: relative;
	text-align: center;
	background: var(--safran);
	background: rgba(0,0,0, .2);
	border-radius: var(--radius);
}

.story-card a {
	aspect-ratio: 3.1/4;
	overflow: hidden;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: var(--box-padding);
	border-radius: var(--radius);
	color: #FFF;
	outline-offset: 2px;
}

/*story card has image*/

.story-card.has-image {
	background: transparent;
	background: var(--primary-color); /*wcag*/
}

.story-card.has-image a::after { /*overlay*/
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom,  rgba(0,0,0, .05) 0%,rgba(0,0,0, 1) 100%);
	pointer-events: none;
	transition: all 300ms ease;
	opacity: .5;
}

.story-card a:hover::after {
	opacity: .6;
}

.story-card.has-image a {
	justify-content: flex-end;
}


.story-card__image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.story-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 600ms ease;
}

.story-card a:hover img {
	transform: scale(1.05);
} 


.story-card__content {
	position: relative;
	z-index: 1;
	padding-bottom: 10px;
}

.story-card__quote {
	font-family: var(--font-script);
	line-height: 1.4;
	font-size: 24px;
	font-size: clamp(20px, 6cqi, 28px);
	text-shadow: 0 0 6px rgba(0,0,0, .5);
}


.story-card__name {
	margin-top: 10px;
	text-transform: uppercase;/*caps*/
	font-weight: bold;
	letter-spacing: 1px;
	font-size:  var(--text-small);
}

@media screen and (max-width: 1024px) {
	.storys__grid {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
}


@media screen and (max-width: 600px) {
	.storys__grid {
		grid-template-columns: 1fr;
	}

}





/* @end */



/* @group TEASER-IMAGE-TEXT */

/* Teaser Image-Text
--------------------------------------------------------------------------------- */


.teaser-image-text {
	margin-block: var(--space-xxl);
}


.teaser-image-text__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 clamp(0px, 4vw, 100px);
}


.teaser-image-text__image {
	overflow: hidden;
	border-radius: var(--radius);
	background: rgba(0,0,0, .05);
	
}

.teaser-image-text__image img {
	aspect-ratio: 4/3;
	height: 100%;
	width: 100%;
	object-fit: cover;
	display: block;
	margin: 0;
}

.teaser-image-text__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 40rem;
	padding: var(--space-xl) var(--page-padding);
}

.teaser-image-text__content :where(h1,.h1) {
	margin-bottom: 0;
	text-align: left;
}


/* when has-background */

.teaser-image-text.has-background .teaser-image-text__image {
	margin-left: calc(var(--page-padding) * -1);
}

.teaser-image-text.has-background .order-text-first .teaser-image-text__image  {
	margin-left: auto;
	margin-right: calc(var(--page-padding) * -1);
}
	
.teaser-image-text.has-background {
	padding: var(--space-xxl) var(--page-padding);
}

.teaser-image-text.has-background.alignfull {
	padding: var(--space-xxl) 0;
}

.teaser-image-text.alignfull .teaser-image-text__image,	
.teaser-image-text.has-background .teaser-image-text__image {
	border-radius: 0 var(--radius) var(--radius) 0;
}

.teaser-image-text.has-background .teaser-image-text__content *:not(.wp-block-button__link) {
	color: inherit;
}


/* option: order */

.teaser-image-text__grid.order-text-first .teaser-image-text__image {
	order:  2;
}

.teaser-image-text.has-background 
.teaser-image-text__grid.order-text-first .teaser-image-text__image,
.teaser-image-text.alignfull 
.teaser-image-text__grid.order-text-first .teaser-image-text__image {
	border-radius: var(--radius) 0 0 var(--radius);
}

.teaser-image-text__grid.order-text-first .teaser-image-text__content {
	margin-left: auto;
}



/* option: image ratio */

.teaser-image-text__image.image-ratio-3-2 img { aspect-ratio: 3/2; }
.teaser-image-text__image.image-ratio-1-1 img { aspect-ratio: 1; }



@media screen and (max-width: 840px) {
	.teaser-image-text {
		padding: 0!important;
	}
	
	.teaser-image-text__grid {
		grid-template-columns: 1fr;
	}
	
	.teaser-image-text__image {
		order: 0!important;
		margin: 0 auto!important;
		aspect-ratio: 4/3;
	}
	
	.teaser-image-text.has-background .teaser-image-text__image {
		border-radius: var(--radius) var(--radius)0 0;
	}
	
	.teaser-image-text.alignfull .teaser-image-text__image {
		border-radius: 0!important;
	}
	
	.teaser-image-text__content {
		margin: 0 auto;
		padding: var(--space-xl) var(--space-sm);
	}

}

/* @end */


/* @group RECENT POSTS */

/* Recent Posts
--------------------------------------------------------------------------------- */


.recent-posts {
}


.recent-posts__grid {
	display: grid;
	grid-template-columns: 7fr 5fr;
	gap: 30px clamp(30px, 4vw, 60px);
}

.recent-post-card {
	container-type: inline-size;
	position: relative;
	aspect-ratio: 3/2;
	border-radius: var(--radius);
	overflow: hidden;
	background: var(--primary-color);
}

.recent-post-card a {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
	padding: var(--box-padding);
}


.recent-post-card__image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: var(--radius);
	overflow: hidden;
	margin: 0;
}

.recent-post-card__image::after { /*overlay*/
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom,  rgba(0,0,0, .05) 0%,rgba(0,0,0, 1) 100%);
	opacity: .5;
}


.recent-post-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	border-radius: var(--radius);
	transition: all 600ms ease;
}

.recent-post-card:hover img {
	transform: scale(1.1);
}

.recent-post-card.no-image {
}


.recent-post-card__title {
	position: relative;
	margin: 0;
	padding: 0;
	color: #FFF;
	font-size: clamp(1.3rem, 5cqi, 1.8rem);
	line-height: 1.2;
	text-shadow: 0 2px 20px rgba(0,0,0, .2);
	transition: all 300ms ease;
}

a:hover .recent-post-card__title {
	opacity: .8;
}

.recent-post-card__date {
	position: relative;
	margin-top: 5px;
	font-size: var(--text-small);
	color: #FFF;
	opacity: 1;
}


.recent-posts-entries {
	container-type: inline-size;
}

.recent-post-entry {
	padding: clamp(10px, 3cqi, 20px) 0;
}

.recent-post-entry + .recent-post-entry {
	border-top: 1px solid var(--border-color);
}

.recent-post-entry:first-child {
	padding-top: 0px;
}

.recent-post-entry a {
	display: block;
}

.recent-post-entry__title {
	margin: 0;
	font-size: var(--base-font-size);
}

.recent-post-entry__date {
	margin-top: 3px;
	font-size: var(--text-small);
	color: var(--text-gray);
}

@media screen and (max-width: 840px) {
	.recent-post-card {
		aspect-ratio: 4/3;
	}
}

@media screen and (max-width: 600px) {
	.recent-posts__grid {
		grid-template-columns: 1fr;
	}
}



/* @end */


/* @group LOGO GALLERY */

/* Logo Gallery
--------------------------------------------------------------------------------- */


.logo-gallery {	
}

.logo-gallery__grid {	
    container-type: inline-size;
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: clamp(20px, 3vw, 40px);
}

.logo-gallery__grid:not(:has(.style-outline, .style-shadow)) {
	row-gap: 0;
}

.logo-gallery__image {
}

.logo-gallery__grid.columns-1 {	grid-template-columns: repeat(1, 1fr); }
.logo-gallery__grid.columns-2 {	grid-template-columns: repeat(2, 1fr); }
.logo-gallery__grid.columns-3 {	grid-template-columns: repeat(3, 1fr); }
.logo-gallery__grid.columns-4 {	grid-template-columns: repeat(4, 1fr); }
.logo-gallery__grid.columns-5 {	grid-template-columns: repeat(5, 1fr); }
.logo-gallery__grid.columns-6 {	grid-template-columns: repeat(6, 1fr); }

.logo-gallery__image {
    container-type: inline-size;
	position: relative;
	display: block;
	aspect-ratio: 4/3;
}
 
.logo-gallery__image a {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0 auto;
}

.logo-gallery__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	margin: 0 auto;
	max-width: 240px;
	padding: 20px;
	padding: 10cqi;
}

/*option: outline*/

.logo-gallery__image.style-outline {
	background: #FFF;
}

.logo-gallery__image.style-outline img {
		border: 1px solid rgba(0,0,0, .08);
}

/*option: shadow*/

.logo-gallery__image.style-shadow {
		background: #FFF;
		box-shadow: 0px 3px 25px -5px rgba(0,0,0, .15);
}

.logo-gallery__image.style-shadow img {
}

@media (max-width: 840px) {
	.logo-gallery__grid.columns-6 {	grid-template-columns: repeat(3, 1fr); }	
}

	
@media (max-width: 600px) {
	.logo-gallery__grid {
		--gap: 15px;
	}
	.logo-gallery__grid.columns-mob-1 {	grid-template-columns: repeat(1, 1fr); }
	.logo-gallery__grid.columns-mob-2 {	grid-template-columns: repeat(2, 1fr); }
	.logo-gallery__grid.columns-mob-3 {	grid-template-columns: repeat(3, 1fr); }
	.logo-gallery__grid.columns-mob-4 {	grid-template-columns: repeat(4, 1fr); }
	.logo-gallery__grid.columns-mob-5 {	grid-template-columns: repeat(5, 1fr); }
	.logo-gallery__grid.columns-mob-6 {	grid-template-columns: repeat(6, 1fr); }	

}


/* @end */



/* @group STORYS SLIDER */

/* Storys Slider
--------------------------------------------------------------------------------- */


.storys-slider {
	position: relative;
		margin-block: var(--space-xl)

}

.storys-slider__grid {
	--title-column-width: 30%;
	display: grid;
	grid-template-columns: var(--title-column-width) 70%; /*swiper column can NOT be 'auto'*/
	grid-template-rows: auto 1fr;
	gap: 30px;
	grid-template-areas: 
    "heading slider"
    "button slider";
	transition: all 600ms ease;
}


/* option: no title and button */
.storys-slider__grid:not(.has-title-and-button) {
	   grid-template-columns: 1fr;
       grid-template-rows: auto; /* Stack rows */
	   gap: 0;
       grid-template-areas:
            "slider";
}

.storys-slider__grid:not(.has-title-and-button) .swiper-pagination {
	left: 0;
}

.storys-slider__grid:not(.has-title-and-button) .swiper-button-prev {
	left: 10px;
} 

/*end option*/


.storys-slider__grid > * {
	max-width: calc(100vw - 2*var(--page-padding));
}

.storys-slider-top { grid-area: heading; }
.storys-slider .swiper { grid-area: slider; }
.storys-slider-button { grid-area: button; }


.storys-slider-top,
.storys-slider-button {
	transition: all 300ms ease;
	overflow: hidden;
}

.storys-slider .swiper-pagination { /*center pagination */
	left: calc(var(--title-column-width)*-1 - 30px);
}

.storys-slider .swiper-button-prev {
	left: calc(var(--title-column-width)*1.5*-1);
} 

/*fade out title and button if first slide is no not active*/
.storys-slider:not(:has(.swiper-slide-active:first-child)) :is(.storys-slider-top, .storys-slider-button)  {
	opacity: 0;
	visibility: 0;
}


.storys-slider .swiper-button {
}

.storys-slider-top * {
	margin: 0;
}

.storys-slider-title {
	text-align: left;
}


.storys-slider-button {
}


.storys-slider .swiper {
	position: relative;
	width: 100%;
	z-index: 2;
    max-width: var(--wide-width);
}

.storys-slider .swiper-slide {
	min-width: 0;
	width: 400px; /*the width*/
	width: clamp(20rem, 30vw, 25rem);
	max-width: 75vw;
	overflow: visible;
}

.storys-slider .story-card {
	/*see .story-card */
}

@media (max-width: 1024px) {
	.storys-slider__grid {
		--title-column-width: 35%;
	}
}

@media (max-width: 840px) {

	.storys-slider__grid {
	   grid-template-columns: 1fr;
       grid-template-rows: auto auto auto; /* Stack rows */
	   gap: 50px;
       grid-template-areas:
            "heading"
            "slider"
            "button";
	}

	.storys-slider-top > *{
		text-align: center;
	}
	
	.storys-slider-button {
		text-align: center;
	}
	
	.storys-slider .swiper {
		max-width: calc(100vw - var(--page-padding) * 2);
	}
	
	.storys-slider .swiper-pagination {
		left: 0;
	}

	.storys-slider .swiper-button-prev {
		left: 0;
	} 
	
	.storys-slider :is(.storys-slider-top, .storys-slider-button)  {
		opacity: 1!important;
		visibility: 1!important;
	}
		
}

/* @end */


/* @group TEXT SLIDER */

/* Text Slider
--------------------------------------------------------------------------------- */


.text-slider {
	position: relative;
	margin-block: var(--space-xl)
}


.text-slider .swiper-slide {
	max-width: clamp(20rem, 26vw, 26rem);
	overflow: visible;
	height: auto; /*make same height*/
}


.text-card {
	container-type: inline-size;
	width: 100%;
	height: 100%;
	padding: 50px clamp(40px, 4vw, 50px);
	color: var(--primary-color);
	background: #FFF;
	box-shadow: 0px 3px 30px -10px rgba(0,0,0, .25);
	border-radius: var(--radius);
}

.wp-block-group.has-background .text-card {
	box-shadow: none;
}


.text-card__title {
	font-size: clamp(1.8rem, 13cqi, 2.5rem);
	min-height: clamp(7ch, 20vw, 9ch);
}

.text-card p {
	margin-top: var(--space-md);
}


/*is-style-small */

.text-slider.is-style-small 	.text-card__title {
	font-size: clamp(1.3rem, 5vw, 1.5rem);
	min-height: 6ch;
}

.text-slider.is-style-small 	.text-card__text {
	margin-top: var(--space-md);
	font-size: var(--text-small);
}

@media (max-width: 600px) {
	.text-slider .swiper-slide {
		max-width: 80vw;
	}

}


/* @end */



/* @group CONTACT PERSON */

/* Contact Person
--------------------------------------------------------------------------------- */

.contact-person {
}

.contact-person__grid {
	transition: all 600ms ease;
}


.contact-person__grid.has-image {
	display: grid;
	grid-template-columns: max(120px, 30%) auto;
	gap: clamp(30px, 5vw, 50px);
}


.contact-person__content p {
}

.contact-person__content a {
	word-break: break-word
}

.contact-person__image {
	overflow: hidden;
	aspect-ratio: 3/4;
	border-radius: var(--radius);
}

.contact-person__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;

}

/* @end */



/* @group HERO */

/* Hero
--------------------------------------------------------------------------------- */

.hero {
	--section-height: 100vh;
	position: relative;
	margin-bottom: var(--space-xxl);
}

.entry-content > .topper:first-child {
	margin-top: calc((var(--main-padding-top) + var(--header-height)) * -1); /*on very top*/
}

.is-root-container > .wp-block-acf-hero:first-child { /*for editor*/
	margin-top: calc(var(--main-padding-top) * -1);
	overflow: hidden;
}

/*== Key Visual */


.hero-keyvisual-container-color {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: var(--section-height);
	z-index: 2;
    clip-path: inset(0);
	pointer-events: none;
}

.hero-keyvisual-container-white {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
    clip-path: inset(0);
	pointer-events: none;
}

.hero-keyvisual {
	--size: clamp(500px, 45vw, 700px);
	--bottom: -5%;
	--right: -7%;
	position: fixed;
	bottom: var(--bottom);
	right: var(--right);
	width: var(--size);
	height: var(--size);
	max-width: 90vw;
	z-index: 0;
	background: transparent url(assets/images/icon-loop-color.svg) no-repeat right bottom;
	background-size: contain;
	opacity: 0.8;
}

.hero-keyvisual-white {
	background-image: url(assets/images/icon-loop-white.svg);
	opacity: .4;
}


/*==  Section  */

.hero-section {
	position: sticky;
	top: 0;
	width: 100%;
	height: var(--section-height);
}

.is-root-container .hero-section {
	max-height: 900px;
}


/*== Start Section / Video */

.hero-section-start {
	background: var(--primary-color);
}

.hero-section-start::after { /*blue fadeIn*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: var(--primary-color);
	pointer-events: none;
	animation: heroStartFadeIn 1000ms forwards;
}

.hero-section-start .hero-title {
	color: #FFF;
}


@keyframes heroStartFadeIn {
  from {
	opacity: 1;
  }
  to {
	opacity: 0;
  }
}

.hero-video-wrap {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
}

.hero-video,
.hero-video-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.hero-video-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	opacity: 1;
}

.hero-video video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
}

.hero-video-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: 1;
	opacity: 0;
}


/*== Text Sections */

.hero-section-text {
	position: relative;
	overflow: hidden;
}

.hero-section-text__bg-ani {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 1!important;
	transform: none!important;
	transform-origin: center;
	transition: all 1500ms ease!important;
}

.is-root-container .hero-section-text__bg-ani {
	display: none;
}

.hero-section-text__bg-ani.reveal-visible {
	AUS_transform: translateY(-110%) skewY(-5deg)!important;
	AUS_transform: scale(0) rotate(60deg)!important;
	opacity: 0!important;
}


.hero-content {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 60rem;
	height: 100%;
	margin: 0 auto;
	padding: var(--page-padding);
	padding-bottom: var(--space-xxl);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	border: 0px solid CYAN;
}

.hero-title {
	font-family: var(--font-script);	
	font-weight: normal;
	color: var(--primary-color);
	font-size: clamp(2.7rem, 6vw, 4rem);
	font-size: clamp(52px, 8vw, 80px);
	line-height: 1.2;
	text-align: center;
	min-width: 100%;
}


.hero-title strong {
	font-weight: normal;
}

.hero-title + * {
	margin-top: var(--space-xl);
}

.hero-content p {
	max-width: 30rem;
}

@media screen and (max-width: 600px) {
	.hero-text {
		text-align: center;
		padding-inline: 10px;
	}
}

/*== End Section */


.hero-section-end {
}

.hero-section-end .hero-title {
	color: #FFF;
}

.hero-buttons {
}


/* ==  Video Modal */

.video-modal,
.video-modal-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3000;
}
.video-modal {
	overflow: hidden;
	position: fixed;
	opacity: 0.0;
	
	transform: translate(500%,0%);
	transition: transform 0s linear 0s;
	
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--page-padding);
	transform-style: preserve-3d;
	background: rgba(0,0,0, .8);
}

.video-modal-overlay {
	  z-index: 0;
	  opacity: 0.0;
}

.video-modal-content {
	position: relative;
	z-index: 1;
	margin: 0 auto;
	width: 100%;
	max-width: 1200px;
	overflow-y: visible;
	background: #000;
	aspect-ratio: 16/9;	
}

.close-video-modal {
	display: block;
    position: absolute;
    right: 0;
    top: 0;
	transform: translateY(-120%);
    font-size: 2.0rem;
    color: #FFF;
}

iframe#youtube {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	background: #000;
	box-shadow: 0px 2px 16px rgba(0,0,0,0.5);
}

.show-video-modal .video-modal {
	opacity: 1.0;
	transform: translate(0%,0%);
}
.show-video-modal .video-modal-overlay {
	opacity: 1.0;
}
.show-video-modal .video-modal-content {
	transform: translate(0%,0%);
}




/* @end */

/* @group RELATED PAGES */

/* Related Pages
--------------------------------------------------------------------------------- */


.related-pages {
	margin-top: var(--space-xxl);
	container-type: inline-size;
}

.related-pages > *:first-child {
	margin-top: 0;
}

.related-pages ul {
	margin-top: var(--space-lg);
}



.related-pages__grid {
	margin-top: var(--space-lg);
	display: grid;
	grid-template-columns: repeat(3, minmax(0,1fr));
	gap: 30px;
}

@container (max-width: 840px) {
	.related-pages__grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}

@media screen and (max-width: 840px) {
	.related-pages__grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}

@media screen and (max-width: 600px) {
	.related-pages__grid {
		grid-template-columns: 1fr;
	}
}


.related-pages__grid .link-card a {
}

.link-card__image.no-image {
	background: rgba(0,0,0,.05);
}



/* @end */


/* @group KEY NUMBERS */

/* Key Numbers
--------------------------------------------------------------------------------- */


.key-numbers {
	container-type: inline-size;
}

.key-numbers__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0,1fr));
	gap: 40px;
}

.key-number__item {
	display: flex;
	flex-direction: column;
	text-align: center;
}

.is-root-container .key-number__item {
	border: 1px solid rgba(0,0,0, .1);
}

:where(.key-numbers) {
	color: var(--primary-color);
}	


.key-number__number {
	font-weight: bold;
}


[class*="has-text-color"] .key-number__number {
	color: inherit;
}


.key-number__title {
	margin: 15px 0 0 0;
}

.key-number__subtitle {
	margin: 0;
	font-size: var(--text-small);
}

@container (max-width: 840px) {
	.key-numbers__grid  {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}
@media screen and (max-width: 840px) {
	.key-numbers__grid {
		grid-template-columns: repeat(2, minmax(0,1fr));
	}
}

@media screen and (max-width: 600px) {
	.key-numbers__grid {
		grid-template-columns: 1fr;
	}
}





/* @end */


/* @end */






/* @group BLOG */

/* BLOG
--------------------------------------------------------------------------------- */


.post-cards-grid {
	margin-top: var(--space-xxxl);
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-columns: repeat(3, minmax(0,1fr));
	gap: 30px;
}


.post-card {
	border-radius: var(--radius);
}

.post-card__image {
	margin: 0;
}

.post-card__image a {
	display: block;
	overflow: hidden;
	border-radius: var(--radius);
}

.post-card__image img {
	display: block;
	aspect-ratio: 4/3;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin: 0 auto;
	transition: all 600ms ease!important;
}

.post-card__image a:hover img {
	transform: scale(1.1);
}

.post-card__content {
	padding: 20px;
	padding-inline: var(--box-padding-sm);
	padding-bottom: var(--space-md);
}


.post-card__title {
	margin: 0;
	padding: 0;
	font-size: var(--base-font-size);
	line-height: 1.4;
	
}

.post-card__title a {
	display: block;
	color: var(--link-color);
}

.post-card__title a:hover  {
	color: var(--text-color);
}

.post-card__date {
	margin-top: 10px;
	font-size: var(--text-small);
	color: var(--text-gray);
}

.post-card__more-btn {
	margin: 1rem 0 0 0;
}

@media screen and (max-width: 1024px) {
	.post-cards-grid {
		grid-template-columns: 1fr 1fr;
	}
	
	.post-card__content {
		padding-inline: 0;
	}
	
}

@media screen and (max-width: 600px) {
	.post-cards-grid {
		grid-template-columns: 1fr;
	}
	
	.post-card__content {
		padding-bottom: 10px;
	}

	
}

/* single post */

.post .topic-title {
	text-align: left;
	margin-top: -1em;
	margin-bottom: .1em;
}

.post-title {
	text-align: left;
	font-size: clamp(2.4rem, 5vw, 3.5rem); /*reduced max h1 size*/

}

.post-date {
	margin-top: 20px;
	color: var(--text-gray);
	font-size: var(--text-small);
}

.post-image {
	position: relative;
	width: 100%;
	margin: 0;
	margin-top: var(--space-xl);
	aspect-ratio: 4/3;
	border-radius: var(--radius);
	overflow: hidden;
}

.post-image img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

.post-image + * {
	margin-top: var(--space-lg);
}


.post-image p.wp-caption-text {
	margin: 0.6rem 0 0 0;
	font-size: 0.8rem;
}

.post-meta {
	margin-top: var(--space-lg);
}

.post-cats {
	color: var(--link-color);
	text-transform: uppercase; /*caps*/
	font-size: var(--text-small);
}

.post-cats span {
	display: none;
}

.post-cats a {
	font-weight: bold;
	margin-right: 1ch;
}

.post-cats a:hover {
}


.post-cats + .post-tags {
	margin-top: 20px;
}

.post-tags {
	font-size: var(--text-small);
}

.post-tags a {
	color: var(--text-gray);
	margin-right: .5ch;
	border-radius: 10rem;
	padding: .4em 1em;
	text-transform: uppercase;
	font-size: var(--text-tiny);
	border: 1px solid var(--border-color);
}

.post-tags a:hover {
	color: var(--primary-color);
	border-color: inherit;
}

.post-tags span {
	display: none;
}



/*related posts */


.related-posts-section {
	margin-top: var(--space-xxl);
	margin-bottom: -30px;
}

.related-posts {
}

.related-posts {
	margin-top: var(--space-xl);
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-columns: repeat(3, minmax(0,1fr));
	gap: 30px;
}

@media screen and (max-width: 1024px) {
	.related-posts {
		grid-template-columns: 1fr 1fr;
	}
	
	.post-card__content {
		padding-inline: 0;
	}
}


@media screen and (max-width: 600px) {
	.related-posts {
		grid-template-columns: 1fr;
	}
	
}





/* Archive */


.show-tax {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	margin-bottom: calc(var(--space-xl) * -1);
}

.show-tax__tax {
	flex: 1;
	color: var(--text-gray);
}

.show-tax__title {
	color: var(--text-color);
	font-weight: bold;
	text-transform: uppercase;
}

.show-tax__all {
	margin: 0 0 0 auto;
	line-height: 1;
	font-size: 1.5rem;
}


/* post-pagination */

.pagination {
	margin-top: var(--space-xl);
}

.pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

.pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 5px;
	font-size: var(--base-font-size);
	line-height: 1;
	height: 2em;
	border-bottom: 2px solid transparent;
}

.pagination .page-numbers.dots {
	border: none;
	font-weight: normal;
	margin-inline: -5px;
	color: var(--primary-color);
}

.pagination .page-numbers.current {
	color: var(--primary-color);
	border-color: inherit;
}

.pagination a:hover {
	color: var(--primary-color);
	border-color: inherit;
}

.pagination a.prev,
.pagination a.next {
		gap: 10px;

}

a.prev span,
a.next span { /* prev next*/
	display: none;
	text-transform: uppercase; /*caps*/
	font-size: 90%;
}

body:not(.paged) .pagination a.next,
body:not(.paged) .pagination a.next {
}

.pagination a.prev:before,
.pagination a.next:after {
	font-family: 'icons';
	font-weight: normal;
	font-size: 1.2em;
}

.pagination a.prev:before {
	content: "\e924"; /*927 924*/
}

.pagination a.next:after {
	content: "\e91f"; /*922 91f*/
}


@media screen and (max-width: 600px) {
		
}



/* Post Navigation */

.post-nav-section {
}

.post-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	justify-content: space-between;
}


.post-nav.first-post {
	grid-template-columns: 1fr;
	justify-content: flex-end;
}

.post-nav .prev-post,
.post-nav .next-post {
	display: flex;
}

.post-nav .next-post {
	justify-content: flex-end;
}

.post-nav a {
	position: relative;
	display: flex;
	gap: 10px;
	font-weight: bold;
	max-width: 25rem;
}

.post-nav .prev-post a {

}

.post-nav .next-post a {
	justify-content: flex-end;
	text-align: right;
}


.post-nav .prev-post a::before,
.post-nav .next-post a::after {
	content: "\e907";
	font-family: 'icons';
	font-weight: normal;
	font-size: 1.25em;
	margin-top: -.1em;
	
}

.post-nav .prev-post a::before {
	content: "\e901";
	left: 0;
}

.post-nav .next-post a::after {
	right: 0;
}


.post-nav span {
	display: block;
	font-size: 0.75rem;
	margin: 0 0 0.5rem 0;
	display: none;
}

.post-nav a br {
	display: none;
}

.post-nav a:hover {
}



.post-nav.first-post .next-post a,
.post-nav.last-post .prev-post a {

}



/* Post Taxonomies  */

.post-tax-section {
	position: relative;
	padding: 0 0 var(--main-padding-bottom) 0;
	border-top: 0px solid var(--border-color);
}


.post-tax-section .container {
}

.post-tax {
}

.post-tax__title {
	margin-top: 0;
}


.post-tax__list {
	margin-top: var(--space-md);
}

.post-tax__list li a {
	display: block;
	padding: 2px 0;
	text-decoration: none;
}

.post-tax__list li a:hover {
}



/* @end */


/* @group CPT: STORY */

/* Story 
--------------------------------------------------------------------------------- */

.story {
	
}

.story .topic-title {
	text-align: center;
}


.story .story-quote {
	margin-block: var(--space-xxl);
}


.story-nav-section {
	margin-top: var(--space-xxl);
}

.story-nav {
	margin-top: var(--space-xl);
	display: flex;
	justify-content: center;
	gap: 30px;
}

.story-nav-card {
	flex: 0 1 auto;
	position: relative;
	display: flex;
	align-items: center;
	aspect-ratio: 3/4;
	height: 100%;
	overflow: hidden;
	width: 15rem;
	max-width: 55vw;
	background: var(--primary-color); /*wcag*/
	outline-offset: 2px;
	border-radius: var(--radius);
}

.story-nav-card--prev {
	display: none;
}

.story-nav-card::after { /*overlay*/
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.story-nav-card.no-image {
}

.story-nav-card.no-image::after {
}

.story-nav-card__image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.story-nav-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 600ms ease;
}

.story-nav-card:hover img {
	transform: scale(1.05);
}

.story-nav-card__title {
	position: relative;
	z-index: 1;
	width: 100%;
	display: flex;
	justify-content: center;
	color: #FFF;
	font-size: 2rem;
	transition: all 300ms ease;
}

.story-nav-card__title i {
	display: block;
	text-shadow: 0 0 5px rgba(0,0,0,.2);
	transition: all 300ms ease;
}

.story-nav-card--prev:hover i {
	transform: translateX(-15%);
}

.story-nav-card--next:hover i {
	transform: translateX(15%);
}

/* @end */


/* @group SEARCH PAGE*/

/* Search Page
--------------------------------------------------------------------------------- */



.search-result {
	margin-bottom: var(--space-xl);
}

.search-result__title {

}

.search-result__title span {
	font-weight: bold;
	font-style: italic;
}

.search-result.no-result .searchform {

}

.search-result .searchform-wrap {
	position: relative;
	max-width: 100%;
	margin-top: var(--space-md);
}

.search-result .searchform {
	position: relative;
}

.search-result .searchform input[type="text"] {
	padding: 15px;
	width: 100%;
	font-size: var(--base-font-size);
	color: var(--text-color);
	border:  none;
	border: 1px solid var(--border-color);
	border-radius: 5px;
	box-shadow: none /*remove red border */;
}

.search-result .searchform input[type="text"]:focus {
	outline: 2px solid var(--primary-color);
}

.search-result .searchform input::placeholder {
	font-weight: normal;
}

.search-result .searchform .searchsubmit {
	position: absolute;
	top: 0;
	right: 0;
	width: 3rem;
	height: 100%;
	padding: 0 20px;
	font-size: 1.6rem;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	outline-offset: -5px;
	border: none;
	background: transparent;
}

.search-result .searchform i {
	position: relative;
	text-align: center;
	background: transparent;
}


.search-result__list {
	margin-top: var(--space-md);
}



.search .hentry {
	border: 0;
	border-bottom: 1px solid var(--border-color);
	margin: 0;
}

.search-result__entry a {
	display: block;
	text-decoration: none;
	padding: 0.6rem 0;
}

.search-result__post-type {
	color: var(--text-gray);
	text-transform: uppercase; /*caps*/
	font-size: var(--text-small);
	margin-left: 1ch;
}

.search-result__entry .type-page .entry-details {
	display: none;
}

.search .post-pagination {
	margin-top: 30px;
}


.search-results .entry-details span {
	display: none;
}

/* @end */




/* @group PW protected */

/* PW Protected
--------------------------------------------------------------------------------- */


.post-password-form {
	text-align: center;
	padding: var(--box-padding);
	background: var(--primary-bg);
}

.post-password-form p { /*WP info text*/
	display: none;
}

.post-password-form p + p {
	display: block;
	margin: 0;
}

.post-password-form label {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 20px
}

.post-password-form input {
	flex: 1 0 auto;
	font-size: 1rem;
	padding: 10px;
	max-width: 10rem;
	border: 1px solid var(--border-color);
}

.post-password-form input[type="submit"] {
	display: none;
}

/* @end */



/* @group SLIDER (swiperjs) */

/* SLIDER
--------------------------------------------------------------------------------- */


.swiper {
	--swiper-theme-color: var(--primary-color);
	
	/*navigation arrows*/
	--swiper-navigation-size: 50px;
	--swiper-navigation-color: #FFF;
	--swiper-navigation-top-offset: calc(50% - var(--swiper-padding-bottom)/2); /*!*/
	--swiper-navigation-sides-offset: 10px;
	
	/*pagination bullets*/
	--swiper-pagination-bullet-horizontal-gap: 5px;
    --swiper-pagination-bullet-vertical-gap: 5px;
    --swiper-pagination-bullet-size: 12px;
	--swiper-pagination-bullet-width: inherit;
	--swiper-pagination-bullet-height: inherit;
	--swiper-pagination-bullet-border-radius: 100px;
    --swiper-pagination-color: var(--primary-color);
	--swiper-pagination-bullet-inactive-color: var(--primary-color);
	--swiper-pagination-bullet-inactive-opacity: .2;
	
	/*custom*/
	--swiper-padding-bottom: 35px;
	
	width: 100%;
	height: 100%;
	padding-bottom: var(--swiper-padding-bottom); /*pagination outside swiper*/
}

.block-editor-block-list__block .swiper {
	pointer-events: none; /*disable in editor*/
}

.swiper:not(.swiper-initialized) .swiper-slide {
	margin-right: 30px; /*prevent layout if JS not loaded*/
}


.swiper-wrapper {
}

.swiper-slide {
	overflow: hidden;
	border-radius: var(--radius);
}

.swiper-button {
	--size: 50px;
	width: var(--size);
	height: var(--size);
	margin: 0;
	transform: translateY(-50%);
	transition: all 250ms ease-in-out;
	color: var(--primary-color);
	background: rgba(255,255,255, .9);
	border-radius: 10rem;
	box-shadow: 0px 2px 15px 0 rgba(0,0,0, .1);
	opacity: 0; /* ON/OFF*/
}

.swiper:focus-within .swiper-button {
	opacity: 1;
}

.swiper:hover .swiper-button {
	opacity: 1;
}

.swiper-button:hover {
}

.swiper-button::after {
	font-family: 'icons';
	font-size: 32px;
}

.swiper-button-prev {
}

.swiper-button-prev::after {
	content: "\e927";
}

.swiper-button-next {

}

.swiper-button-next::after {
	content: "\e922";
	padding-left: 3px;
}

.swiper-button.swiper-button-disabled {
	opacity: 0!important;
}

.swiper > .swiper-pagination-bullets {
	bottom: 0;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.swiper-pagination-bullet {
	transition: all 250ms ease;
}

.swiper-pagination-bullet-active,
.swiper-pagination-bullet-active-main {
	--swiper-pagination-bullet-width: calc(var(--swiper-pagination-bullet-size) * 3);
}

.swiper-pagination-bullet:only-child {
   visibility: hidden;
}

.swiper:has(.swiper-pagination-bullet:only-child) { /*no pagination if only 1 slide*/
	--swiper-pagination-height: 0;
}

@media screen and (max-width: 600px) {

	.swiper {
    --swiper-pagination-bullet-size: 12px;
	--swiper-padding-bottom: 30px;
	}
	
	.swiper-button {
		display: none;
	}
	
}





/* @end */




/* @group LIGHTBOX */

/* Lightbox PhotoSwipe Plugin
--------------------------------------------------------------------------------- */

.pswp {
	--pswp-bg: rgba(0,0,0, 1);
}


.pswp__caption {
	
}

.pswp__caption__text {
	font-size: var(--text-small);
	line-height: 1.4;
}

.pswp__button.pswp__button--zoom {
	display: none;
}

/* @end */




/* @group FOOTER */

/* FOOTER
--------------------------------------------------------------------------------- */


#footer {
}
.site-footer {
	position: relative;
	width: 100%;
	padding: var(--space-xxxl) 0;
	background: var(--primary-color);
	font-size: calc(16/16 * 1rem);
}

.site-footer::before { 	/* colorful strip */
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background: linear-gradient(270.12deg, 
	var(--green) 13.85%, 
	var(--safran) 39.2%, 
	var(--terracotta) 71.46%, 
	var(--sky) 90.67%);
	transform: matrix(1, 0, 0, -1, 0, 0);
	z-index: 1;
}

.site-footer > .container {
	AUS_max-width: 1320px;
}

:where(.site-footer),
:where(.site-footer) a {
	color: #FFF;
}

:where(.site-footer) a:hover {
	color: rgba(255,255,255, .5);
}


.footer-keyvisual {
	position: absolute;
	top: 0;
	right: 0px;
	width: 100%;
	height: 100%;
	background: transparent url(assets/images/icon-loop-white.svg) no-repeat right center;
	background-size: 80%;
	opacity: .05;
}


.footer-logo {
}

.footer-logo img {
	width: 100%;
	max-width: 160px;
}

.footer-columns {
	margin-top: var(--space-lg);
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.footer-column {
	line-height: 1.8;
	flex: 1 0 20%;
	max-width: 250px;
}

.footer-column:first-child {
	min-width: 25%; 
}

.footer-column :is(ul,li) {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer-column a {
	display: inline-block;
}

.footer-social {
	display: flex;
	align-items: center;
	gap: 25px;
	margin-top: var(--space-lg);
	font-size: 1.9rem;
}

.footer-social a {
	display: flex;
	line-height: 1;
}



@media screen and (max-width: 840px) {
	.footer-keyvisual {
		background-position: center bottom;
		background-size: 130%;
	}
	
	.footer-column:first-child {
		flex: 100%;
		max-width: 100%;
	}

}


@media screen and (max-width: 600px) {
	.footer-column {
		flex: 100%;
		max-width: 100%;
	}	
}




/* @end */


/* @group SCROLL TO TOP BUTTON */

/* Scroll to top button
--------------------------------------------------------------------------------- */

.scrolltopbtn {
	--size: 50px;
	position: fixed;
	bottom: 20px;
	right: var(--page-padding);
	height: var(--size);
	width: var(--size);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 28px;
	text-align: center;
	border-radius: 100%;
	transition: 300ms;
	transform: translateY(100%);
	opacity: 0;
	z-index: 5;
    color: #FFF;
	border: none;
	padding: 0;
	background: rgba(0,0,0, .2);
	
	
	background: #FFF;
	color: var(--primary-color);
	border: 2px solid var(--primary-color);
}

.scrolltopbtn i {
	margin-bottom: 1px;
	transition: 250ms ease;
}

.scrolltopbtn.active:hover i {
}

.scrolltopbtn.active {
	transform: translateY(0);
	opacity: 1;
}

/* @end */



/* @group BORLABS COOKIE */

/* Borlabs Cookie Banner
--------------------------------------------------------------------------------- */


#BorlabsCookieBox ._brlbs-box {
	box-shadow: 0px 3px 50px -10px rgba(0,0,0, .3)!important;
}

.BorlabsCookie ._brlbs-content-blocker {
	display: flex;
	justify-content: center;
	padding: 0;
}

.BorlabsCookie ._brlbs-content-blocker ._brlbs-embed {
	width: 100%;
	margin: 0!important;
}


.BorlabsCookie ._brlbs-content-blocker img {
	width: 100%;
	display: block;
}

.video-embed-wrap .BorlabsCookie {
	margin-bottom: -56.5%; /*minus the ratio*/
}

.BorlabsCookie input[type=checkbox] {
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
}

.BorlabsCookie span#CookieBoxTextHeadline {
}

.BorlabsCookie #CookieBoxTextDescription {

}

.BorlabsCookie ._brlbs-btn  {
}

.BorlabsCookie ._brlbs-btn._brlbs-btn-accept-all {
}

/* @end */


/* @group ACCESSIBILITY */

/* ACCESSIBILITY */


.sr-only {
	position: absolute;
	width: .0625rem;
	height: .0625rem;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

.sr-only-focusable {
	transition: all 0s ease;
}

.sr-only-focusable:focus {
	position: static;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip: auto;
}


.skip-link:focus {
	position: absolute;
	top: 0;
	left: 0;
	width: auto;
	height: auto;
	padding: 5px;
	margin: 0;
	overflow: visible;
	clip: auto;
	z-index: 100;
	color: #FFF;
	background: var(--primary-color);
	line-height: 1;
}


.menu-trigger--close:focus {
	position: absolute;
	bottom: 5px;
	right: 5px;
	width: auto;
	height: auto;
	padding: 5px;
	margin: 0;
	overflow: visible;
	clip: auto;
	z-index: 100;
	color: #FFF;
	background: transparent;
	border: 1px solid #FFF;
	font-size: var(--base-font-size);
	text-transform: none;
	line-height: 1;
}


/* @end */


/* @group ANIMATIONS */

/* ANIMATIONS
---------------------------------------------------------------------------------*/


/* scroll reveal */

.reveal {
  opacity: 0;
  transform: translate3d(0, 100px, 0);
  transition: opacity 700ms, transform 600ms;
}

.reveal-notransform,
.reveal-notransform.reveal-visible {
	opacity: 1;
	transform: none;
	transition: none;
}

.reveal--slow {
  transition: opacity 1000ms, transform 1000ms;
}

:where(.is-root-container) .reveal,
.reveal-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
    /*prevent old safari flicker*/
  -webkit-transform: translateZ(0);
  -webkit-backface-visibility: hidden;
}




/*  https://github.com/daneden/animate.css */


.animated {
	animation-duration: 1s;
	animation-fill-mode: both;
	animation-timing-function: ease-in-out;
}

.animated.infinite {
	animation-iteration-count: infinite;
}

@keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
}

.fadeIn {
  animation-name: fadeIn;
}


@keyframes fadeInDown {
  0% {
    opacity: 0;
   transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

.fadeInDown {
	animation-name: fadeInDown;
}


@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

.fadeInUp {
  animation-name: fadeInUp;
}

/* @end */


/* @group UTILITES */

/* UTILITES
---------------------------------------------------------------------------------*/

.mt-0  { 	margin-top: 0!important; }
.mt-5  { 	margin-top: 5px!important; }
.mt-10 {	margin-top: 10px!important; }
.mt-20  {	margin-top: 20px!important; }
.mt-30  {	margin-top: 30px!important; }
.mt-40  {	margin-top: 40px!important; }
.mt-50  {	margin-top: 50px!important; }
.mt-60  {	margin-top: 60px!important; }
.mt-70  {	margin-top: 70px!important; }
.mt-80  {	margin-top: 80px!important; }
.mt-90  {	margin-top: 90px!important; }
.mt-100  {	margin-top: 100px!important; }
.mt-110  {	margin-top: 110px!important; }
.mt-120  {	margin-top: 120px!important; }
.mt-130  {	margin-top: 130px!important; }
.mt-140  {	margin-top: 140px!important; }
.mt-150  {	margin-top: 150px!important; }


.mb-0  { 	margin-bottom: 0!important; }
.mb-5  { 	margin-bottom: 5px!important; }
.mb-10 {	margin-bottom: 10px!important; }
.mb-20  {	margin-bottom: 20px!important; }
.mb-30  {	margin-bottom: 30px!important; }
.mb-40  {	margin-bottom: 40px!important; }
.mb-50  {	margin-bottom: 50px!important; }
.mb-60  {	margin-bottom: 60px!important; }
.mb-70  {	margin-bottom: 70px!important; }
.mb-80  {	margin-bottom: 80px!important; }
.mb-90  {	margin-bottom: 90px!important; }
.mb-100  {	margin-bottom: 100px!important; }
.mb-110  {	margin-bottom: 110px!important; }
.mb-120  {	margin-bottom: 120px!important; }
.mb-130  {	margin-bottom: 130px!important; }
.mb-140  {	margin-bottom: 140px!important; }
.mb-150  {	margin-bottom: 150px!important; }

.ratio-1 	{ aspect-ratio: 1;}
.ratio-1-1	{ aspect-ratio: 1;}
.ratio-3-2	{ aspect-ratio: 3/2;}
.ratio-2-3	{ aspect-ratio: 2/3;}
.ratio-3-4	{ aspect-ratio: 3/4;}
.ratio-4-3 	{ aspect-ratio: 4/3;}
.ratio-16-9 { aspect-ratio: 16/9;}


.min-w-100 { min-width: 100px; }
.min-w-200 { min-width: 200px; }
.min-w-300 { min-width: 300px; }
.min-w-400 { min-width: 300px; }
.min-w-500 { min-width: 500px; }
.min-w-600 { min-width: 600px; }
.min-w-700 { min-width: 700px; }
.min-w-800 { min-width: 800px; }
.min-w-900 { min-width: 900px; }

.rounded-none { border-radius: 0; }

.whitespace-nowrap {
	white-space: nowrap;
}


/* @end */


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

MEDIA QUERIES

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


@media screen and (max-width: 1136px) {
body:after {
	content: "<1136";
	position: fixed;
	top: 0;
	line-height: 1;
	padding: 5px;
	font-size: 11px;
	background: lawngreen;
	z-index: 1000;
	opacity: .8;

	display: none; /* AN/AUS*/
}

}


@media screen and (max-width: 1024px) {
body:after {
	content: "<1024";
	background: TAN;
}


}


@media screen and (max-width: 840px) {
body:after {
	content: "<840";
	background: PINK;
}

}


@media screen and (max-width: 600px) {
body:after {
	content: "<600";
	background: YELLOW;
}

}


@media screen and (max-width: 360px) {
body:after {
	content: "<360";
	background: MAGENTA;
}


}




/* END
---------------------------------------------------------------------------------*/
