/*
Theme Name: Frei & Zeit
Author: Frei & Zeit
Author URI: https://freiundzeit.it
Version: 2.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/


/*Global CSS Rules*/


:root {
    font-size: 100%;
    --fuz-padding-side: 80px;
}

@media screen and (max-width: 1024px) {
    :root {
        --fuz-padding-side: 40px; 
    }
}

@media screen and (max-width: 767px) {
    :root {
        --fuz-padding-side: 16px;
    }
}

@media screen and (max-width: 767px) {
.elementor-button-text {
    text-align: left;
}
}

html,
body {
    margin: 0;
    padding: 0;
    font-family: Inter, sans-serif;
    position: relative;
}

html {
    -webkit-box-sizing: border-box;
         box-sizing: border-box;
  }


  *,
  *::before,
  *::after {
    -webkit-box-sizing: inherit;
        box-sizing: inherit;
  }
  
  @media screen and (max-width: 767px){
    body.fuz-nav-menu-open {
        height: 100vh;
        overflow-y: hidden;
    }
  }

  a {
    color: inherit;
  }

	button,
	a {
		cursor: pointer;
}

  ul.menu {
    padding: 0;
    margin: 0;
    display: flex;
  }
  
  .menu li {
    list-style: none;
  } 
  .menu a {
    text-decoration: none;
  }



/*Header Styles*/

.fuz-header-navbar {
    position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	display: flex;
    flex-direction: row;
    height: 70px;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 48px;
    padding-right: var(--fuz-padding-side);
    justify-content: space-between;
    align-items: center;
    z-index: 10;
	background-color: black;
	transition: 0.5s ease-in-out;
}

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

.home .fuz-header-navbar {
	top: -80px;
}

.home.fuz-scrolled-body .fuz-header-navbar {
	top: 0%;
}

	.home .fuz-header-navbar:focus-within {
	top: 0%;
	}	
	
}

.fuz-header-branding {
    height: 100%;
}
.fuz-header-branding img {
    height: 40px;
    width: auto;
}

.fuz-header-col {
    display: flex;
    align-items: center;
}

.fuz-header-col-second {
    flex-grow: 2;
    justify-content: flex-end;
}

.fuz-nav-become-member-cta {
	display: flex;
	margin-right: 50px;
	background-color: white;
	padding: 8px;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
}

.fuz-nav-contact-cta {
	color: white;
	border: none;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
	margin-right: 50px;
}

.fuz-navbar-lang-switcher {
	color: white;
	margin-right: 50px;
	text-transform: uppercase;
	
}

.fuz-header-primary-menu a {
    padding: 8px 16px;
    text-transform: uppercase;
	color: white;
	font-weight: 500;
}

button.fuz-header-menu-toggle {
    height: 24px;
    width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
	border-bottom: unset;
}

.fuz-header-menu-toggle-bar,
.fuz-header-menu-toggle-bar:before,
.fuz-header-menu-toggle-bar:after
 {
    width: 100%;
    height: 4px;
    background-color: white;
}

.fuz-header-menu-toggle-bar {
    position: relative;
}

.fuz-header-menu-toggle-bar:before,
.fuz-header-menu-toggle-bar:after {
    content: "";
    position: absolute;
    left: 0;
    transition: 0.3s ease-in-out;
}

.fuz-header-menu-toggle-bar:before {
    bottom: 10px;
}

.fuz-header-menu-toggle-bar:after {
    top: 10px;
}

.fuz-nav-menu-open .fuz-header-menu-toggle-bar:before {
    bottom: 0;
}

.fuz-nav-menu-open .fuz-header-menu-toggle-bar:after {
    top: 0;
}

@media screen and (max-width: 767px) {
    .fuz-header-navbar {
        height: 50px;
		padding-left: 16px;
		top: unset;
		bottom: 0;
    }

    .fuz-header-col {
        height: 100%;
    }

    .fuz-header-branding {
        height: 100%;
    }

    .fuz-header-branding img {
        height: 100%;
        width: auto;
    }
	
	.fuz-navbar-lang-switcher {
	margin-right: 24px;
}
	
}

/*Fullscreen Menu*/

.fuz-fullscreen-menu {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	display: none;
}

.fuz-fullscreen-menu ul {
	display: flex;
	flex-direction: column;
	width: 100vh;
	transform: rotate(-90deg) translateY(-100%);
	transform-origin: top right;
}

.fuz-fullscreen-menu ul li {
	width: 100%;
	height: 100%;
}

button.fuz-fullscreen-menu-close-button {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 30;
	cursor: pointer;
	width: 92px;
	height: 92px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 0px;
	border-bottom: 0px;
	border-style: none!important;
}

.fuz-fullscreen-menu li a {
	display: flex;
	height: 100%;
	width: 100%;
	font-size: 2.25rem;
	text-transform: uppercase;
	font-weight: 500;
	font-family: Inter, sans-serif;
	padding: 24px 60px;
	transition: 0.2s cubic-bezier(.64,0,.3,1);
}	

@media screen and (max-width: 1024px) {
	.fuz-fullscreen-menu  {
		z-index: 5;
	}
	.fuz-fullscreen-menu ul {
		padding-top: 70px;
		transform: none;
		height: 100vh;
		width: 100vw;
	}
	.fuz-fullscreen-menu ul a {
		align-items: center;
	}
}

@media screen and (max-width: 767px) {
	.fuz-fullscreen-menu  {
		z-index: 5;
	}
	.fuz-fullscreen-menu ul {
		padding-top: 0;
		padding-bottom: 50px;
		transform: none;
		height: 100vh;
		width: 100vw;
	}
	.fuz-fullscreen-menu ul a {
		align-items: center;
		font-size: 1.5rem;
		padding: 24px 16px;
	}
}

/*Main Styles*/

/*Primary Menu Colors*/

.fuz-primary-menu-colors ul {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	width: 100vh;
	transform: rotate(-90deg) translateY(-100%);
	transform-origin: top right;
	position: absolute;
	top: 0;
	right: 0;
	height: auto;
	z-index: 10;
}
.fuz-primary-menu-colors li {
	list-style: none;
}

.fuz-primary-menu-colors li a {
	display: flex;
	height: 100%;
	width: 100%;
	font-size: 2.25rem;
	text-transform: uppercase;
	font-weight: 500;
	font-family: Inter, sans-serif;
	padding: 24px 60px;
	transition: 0.2s cubic-bezier(.64,0,.3,1);
}	

.fuz-primary-menu-colors li a:hover,
.fuz-fullscreen-menu li a:hover {
	/*animation-name: menu-item-wobble;
	animation-timing-function: cubic-bezier(.64,0,.3,1);
	animation-duration: 0.3s;
	animation-fill-mode: forwards;*/
	padding: 36px 60px;
}
/*
@keyframes menu-item-wobble {
	0% {
		padding: 24px 60px;
	}
	40% {
		padding: 38px 60px;
	}
	60% {
		padding: 36px 60px;
	}
	80% {
		padding: 37px 60px;
	}
	100% {
		padding: 36px 60px;
	}
}
*/

.fuz-primary-menu-colors li.fuz-main-menu-about,
.fuz-fullscreen-menu li.fuz-main-menu-about,
.fuz-mobile-static-menu li.fuz-main-menu-about{
	background-color: var(--e-global-color-a3b7970);
}
.fuz-primary-menu-colors li.fuz-main-menu-news,
.fuz-fullscreen-menu li.fuz-main-menu-news,
.fuz-mobile-static-menu li.fuz-main-menu-news {
	background-color: var(--e-global-color-accent);
}
.fuz-primary-menu-colors li.fuz-main-menu-young-talents,
.fuz-fullscreen-menu li.fuz-main-menu-young-talents,
.fuz-mobile-static-menu li.fuz-main-menu-young-talents {
	background-color: var(--e-global-color-33ac3e4);
}
.fuz-primary-menu-colors li.fuz-main-menu-members,
.fuz-fullscreen-menu li.fuz-main-menu-members,
.fuz-mobile-static-menu li.fuz-main-menu-members {
	background-color: var(--e-global-color-7bd6dea);
}
.fuz-primary-menu-colors li.fuz-main-menu-info,
.fuz-fullscreen-menu li.fuz-main-menu-info,
.fuz-mobile-static-menu li.fuz-main-menu-info {
	background-color: var(--e-global-color-689be34);
}
.fuz-primary-menu-colors li.fuz-main-menu-become-member,
.fuz-fullscreen-menu li.fuz-main-menu-become-member,
.fuz-mobile-static-menu li.fuz-main-menu-become-member {
	background-color: var(--e-global-color-b5f41be);
}

.fuz-primary-menu-colors li.fuz-main-menu-become-member a,
.fuz-fullscreen-menu li.fuz-main-menu-become-member a,
.fuz-mobile-static-menu li.fuz-main-menu-become-member a {
	color: white!important;
}

/*Fuz News Categories Styling*/

ul.fuz-news-cats {
	margin: 0;
	padding: 0;
	display: flex;
	gap: 8px;
}

.fuz-news-cats li {
	list-style: none;
	padding: 8px;
	border: 2px solid black;
	background-color: white;
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
}




/*Core Members Loop Styling*/

.fuz-core-team-description-container,
.fuz-core-team-description-container button {
	color: white;
}

.fuz-core-team-description-container button.fuz-core-team-description-container-toggle-button {
	cursor: pointer;
	font-size: 1.125rem;
}

.fuz-core-team-description-container-toggle-hide {
	display: none;
}

.fuz-core-team-description-container-expandable{
	display: none;
}

.fuz-member-single-profile-picture img {
	aspect-ratio: 4/5;
  	object-fit: cover;
  	object-position: top;
}

img.fuz-member-loop-picture {
	aspect-ratio: 4/5;
  	object-fit: cover;
  	object-position: top;
}



.fuz-tribe-terms-list {
	display: flex;
	padding: 0;
	margin: 0;
	gap: 4px;
}

.member-single-tribes .fuz-tribe-terms-list {
	flex-direction: row;
}

.member-loop-tribes .fuz-tribe-terms-list {
	flex-direction: column;
}

.fuz-fuz-tribe-term {
	list-style: none;
	padding: 8px;
	border: solid 2px black;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
}

.fuz-fuz-tribe-term-Stage {
	background-color: #A3FEBE;
}
.fuz-fuz-tribe-term-Music {
	background-color: #FFB625;
}
.fuz-fuz-tribe-term-Dance {
	background-color: #95DBFE;
}
.fuz-fuz-tribe-term-Tech {
	background-color: #ED2C31;
}

.fuz-fuz-tribe-term-Young.Talents {
	background-color: #0009AD;
	color: white!important;
}


.fuz-tribe-terms-sf .search-filter-input-button {
	list-style: none;
	padding: 8px;
	border: solid 2px black;
	color: black;
	font-size: 1rem;
	font-weight: 700;
	text-transform: uppercase;
	transition: 0.3s ease-in-out;
	transform: scale(1);
}

.fuz-tribe-terms-sf button.search-filter-input-button:hover {
	border: solid 2px black;
	transform: scale(1.2);
	border-color: black;
}

.fuz-tribe-terms-sf .search-filter-input-button {
	background-color: #fff;
}

.fuz-tribe-terms-sf .search-filter-input-button:hover {
	border: solid 2px black;
	color: black!important;
}

.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=stage],
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=stage]:hover{
	background-color: #A3FEBE;
	border: solid 2px black;
	color: black;
}
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=music],
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=music]:hover {
	background-color: #FFB625;
	border: solid 2px black;
	color: black;
}
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=dance],
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=dance]:hover {
	background-color: #95DBFE;
	border: solid 2px black;
	color: black;
}
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=tech],
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=tech]:hover {
	background-color: #ED2C31;
	border: solid 2px black;
	color: black;
}

.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=members-young-talents],
.fuz-tribe-terms-sf .search-filter-input-button[data-option-value=members-young-talents]:hover {
	background-color: #0009AD;
	border: solid 2px black;
	color: white!important;
}



.fuz-tribe-terms-sf .search-filter-input-button--is-selected {
	transform: scale(1.2);
}

.fuz-tribe-terms-sf .search-filter-input-button-group {
	column-gap: 16px;
}



/*Members single page*/

.fuz-member-section-heading {
    margin-top: 40px;
    text-transform: uppercase;
}

.fuz-member-teaching,
.fuz-member-assistance,
.fuz-members-link {
	margin-top: 20px;
}

/*Footer Styles*/

.fuz-footer {
    padding-top: 80px;
    padding-bottom: 80px;
    padding-left: var(--fuz-padding-side);
    padding-right: var(--fuz-padding-side);
    background-color: var(--e-global-color-689be34);
    width: 100vw;
    display: flex;
    flex-direction: column;
}


.fuz-footer-row {
    display: flex;
    justify-content: space-between;
	width: 100%;
	max-width: 1500px;
	margin: auto;
	flex-direction: row;
}


.fuz-footer-row-first .fuz-footer-col-first {
	width: 50%;
}



.fuz-footer-row-first .fuz-footer-col-second {
	width: 35%;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.fuz-footer-email {
	margin-top: 24px;
}

.fuz-footer-email a {
	text-decoration: none;
}

.fuz-footer-social-icons {
	display: flex;
	gap: 24px;
}

.fuz-footer-meta-menu {
	display: flex;
	flex-direction: row;
	gap: 20px;
	justify-content: space-between;
}


.fuz-footer-meta-menu ul {
    flex-direction: column;
    gap: 8px;
}

.fuz-footer-meta-menu a {
    padding: 8px 0;
    text-transform: none;
	color: black;
	position: relative;
	padding-left: 24px;
}

.fuz-footer-meta-menu a:before {
	content: '→';
	position: absolute;
	left: 0;
}

.fuz-footer-page-title {
	font-size: 1.625rem;
	text-transform: uppercase;
	font-weight: 700;
}

.fuz-footer-page-description {
	font-size: 1.125rem;
	text-transform: uppercase;
	font-weight: 500;
}

.fuz-footer-address {
	margin-top: 24px;
}

.fuz-footer-supporters-section {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.fuz-footer-supporters-section-icons {
	display: flex;
	gap: 32px;
}

.fuz-footer-second-row {
    margin-top: 80px;
    text-align: center;
	color: white;
}

.fuz-footer-lang-switcher {
	color: black;	
}

.fuz-footer-lang-switcher .wpml-ls {
	padding-left: 0;
}

.fuz-footer-lang-switcher ul {
	text-align: left;
}

.fuz-footer-lang-switcher ul a {
	padding-left: 0;
	padding-right: 24px;
}

.fuz-footer-legal-menu ul {
	gap: 24px;
}

.fuz-footer-legal-menu a {
	color: black;
}

.fuz-footer-scroll-top-button-text {
	font-size: 1.125rem;
	font-weight: 500;
}

.fuz-footer-scroll-top button.fuz-footer-scroll-top-button {
	padding: 0;
	border: none;
	display: flex;
	align-items: center;
	gap: 16px;
}

.fuz-footer-scroll-top-button-icon {
	display: flex;
	align-items: center;
}

.fuz-footer-second-row .fuz-footer-col-second {
	display: flex;
	align-items: flex-end;
}

@media screen and (max-width: 1024px) {
	.fuz-footer-row {
        flex-direction: column;
        gap: 40px;
    }
	.fuz-footer-col,
	.fuz-footer-row-first .fuz-footer-col-first,
	.fuz-footer-row-first .fuz-footer-col-second {
		width: 100%;
	}
	
	.fuz-footer-row-first {
		gap: 80px;
	}
	
	.fuz-footer-row-first .fuz-footer-col-second {
		gap: 64px;
	}
}

@media screen and (max-width: 767px) {
    .fuz-footer {
        gap: 40px;
    }
	
	.fuz-footer-row-first .fuz-footer-col {
		width: 100%;
	}
	
	.fuz-footer-second-row {
		margin-top: 0;
	}
	
	.fuz-footer-meta-menu {
		flex-direction: column;
		gap: 64px;
	}
	
	.fuz-footer-legal-menu ul {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}
	
	.fuz-footer-supporters-section-icons {
		display: flex;
		flex-direction: column;
		gap: 32px;
	}
}


/* FUZ Branding*/

.fuz-credit {
	position: absolute;
	bottom: 10px;
	right: 20px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.fuz-credit-text {
	font-size: 0.75rem;
}

@media screen and (max-width: 767px) {
   .fuz-credit {
		bottom: 60px;
	}
}


/*Hide Elements depending on Screensize*/

@media screen and (max-width: 767px) {
    .fuz-hide-on-mobile {
        display: none!important;
    }
}


@media screen and (min-width: 1025px) {
    .fuz-hide-on-desktop {
        display: none;
    }
}


@media screen and (min-width: 768px) and (max-width: 1024px) {
    .fuz-hide-on-tablet {
        display: none!important;
    }
}


@media screen and (max-width: 767px){
body.request-form-visible {
	height: 100vh;
	overflow-y: hidden;
	}
}


