/* 
Theme Name: Grünliberale Partei Schweiz
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Grünliberale Partei Schweiz is a child theme of Hello Elementor, created by Elementor team
Author: pr24 GmbH
Author URI: https://pr24.ch/
Template: hello-elementor
Version: 12
Text Domain: grunliberale
License: Private.
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
 * Main menu
 */
.elementor-89 .elementor-element.elementor-element-6307001 {
	display: flex;
	align-items: center;
	gap: 37px; /* Abstand zwischen Hauptmenü und Buttons */
}
/* Header */
.elementor-element-f851e06.active {
	z-index: 100;
	position: relative;
	background-color: white !important;
}

.elementor-element-f851e06 {
	z-index: 100;
	position: relative;
}

.close-menu-btn {
	z-index: 1000;
	position: absolute;
	top: 37vh;
	left: 44vh;
	
	display: block;
	
    height: max-content !important;
    width: max-content !important;
    padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	
	background-color: transparent !important;
	
	font-size: 47px !important;
	font-weight: 100 !important;
	line-height: 1 !important;
}

#grunliberale-main-menu-nav ul {
    display: flex;
    flex-direction: row;
    gap: 45px;
}

.menu-item-has-children.depth-0 {
	height: max-content;
}

.menu-item-has-children.depth-0 > a,
.menu-item-has-children.depth-0 > a:hover,
.menu-item-has-children.depth-0 > a:focus {
	padding: 0;

    color: #000;
}

ul.sub-menu.depth-1 {
    --submenu-Width: 150vh;
    --submenu-PaddingLeft: 50px;
    --menuLeft-backgroundColor: #004b32;
    --menuRight-backgroundColor: #00A3EA;
    --menuItem-marginBottom: 10px;
    --linkText-color: #fff;

    --subMenuLeft-height: 150vh;
    --menuLeft-borderRadiusTopLeft: 50%;
    --menuLeft-borderRadiusBottomLeft: 50%;

    --subMenuRight-height: 150vh;
    --menuRight-borderRadiusTopLeft: 50%;
    --menuRight-borderRadiusBottomLeft: 50%;
	
	--menu-padding-top: 62vh;
	--menu-margin-top: 60px;
	--menu-margin-left: 45px;
	
	--menuLeft-active: 93vh;
	--menuLeft-doubleActive: 89vh;
	--menuRight-active: 84vh;

    z-index: 9;

    display: grid;
    align-content: start;
    justify-content: start;

    height: var(--subMenuLeft-height);
    width: calc(var(--submenu-Width) - var(--submenu-PaddingLeft));

	margin-top: var(--menu-margin-top);
	padding-top: var(--menu-padding-top);
    padding-left: var(--submenu-PaddingLeft);

    position: fixed;
    /* Sodass Inhalt immer mittig ist */
    top: calc(((var(--subMenuLeft-height) - 100vh) / 2) - (var(--subMenuLeft-height) - 100vh));
    right: 0px;

    transform: translateX(var(--submenu-Width));
	transition: all .3s ease-out;

    background-color: var(--menuLeft-backgroundColor);
    border-radius: var(--menuLeft-borderRadiusTopLeft) 0 0 var(--menuLeft-borderRadiusBottomLeft);
}
ul.sub-menu.depth-1.active {
    transform: translateX(var(--menuLeft-active));
	transition: all .3s ease-out;
}
ul.sub-menu.depth-1.doubleactive {
    cursor: pointer;
    transform: translateX(var(--menuLeft-doubleActive));
	transition: all .5s ease-out;
}
ul.sub-menu.depth-1.inactive {
    transform: translateX(var(--submenu-Width));
    transition: all .1s ease-out;
}

ul.sub-menu.depth-2 {
    z-index: 9;

    display: grid;
    align-content: start;
    justify-content: start;

    height: var(--subMenuRight-height);
    width: var(--submenu-Width);

	padding-top: var(--menu-padding-top);
    padding-left: var(--submenu-PaddingLeft);

    position: fixed;
    /* Sodass Inhalt immer mittig ist */
    top: calc(((var(--subMenuLeft-height) - 100vh) / 2) - ((var(--subMenuRight-height) - 100vh) / 2));
    right: calc(var(--submenu-Width) / 2);

    transform: translateX(calc(2 * var(--submenu-Width)));
    transition: all .5s ease-out;

    background-color: var(--menuRight-backgroundColor);
    border-radius: var(--menuRight-borderRadiusTopLeft) 0 0 var(--menuRight-borderRadiusBottomLeft);
}

ul.sub-menu.depth-2.active {
    cursor: auto;
    transform: translateX(var(--menuRight-active));
    transition: all .5s ease-out;
}
ul.sub-menu.depth-2.inactive {
    transform: translateX(calc(2 * var(--submenu-Width)));
    transition: all .5s ease-out;
}

ul.sub-menu, .menu-item {
    list-style-type: none;
    margin: 0;
    padding: 0;
	margin-left: var(--menu-margin-left);		/*added*/
}
.sub-menu > .menu-item {
    margin-bottom: var(--menuItem-marginBottom);
}
.sub-menu > .menu-item > a {
    color: var(--linkText-color);
}

/* Adjust the left menu h2 */
h2.header-menu-depth-1 {
    color: white;
	margin-left: var(--menu-margin-left);
}

/* Adjust the left menu h2 */
h2.header-menu-depth-2 {
    color: white;
	margin-left: var(--menu-margin-left);
}

/*Sub-Menu letter-spacing*/
ul.sub-menu > li > a {
    letter-spacing: 0.3px;
}
/*-----*/

/* Sub-Menu items and Plus will hover */
.depth-1:hover > a, .depth-2:hover > a {
	
    -webkit-text-stroke-width: .4px;
	/*font-weight: 600;*/
    -webkit-text-stroke-color: var(--linkText-color);
}

.depth-1.active > a, .depth-2.active > a {
    -webkit-text-stroke-width: .4px;
	/*font-weight: 600;*/
    -webkit-text-stroke-color: var(--linkText-color);
}

/*Filter Modul Pfeile Entfernen*/	
.jet-date-period__next {
    display: none !important;
  }

.jet-date-period__prev {
  display: none !important;
  }

.jet-date-period__datepicker {
  width: 85% !important;
  }
  
  
  .jet-date-period__datepicker-button svg {
   display: none;	
  }
  
  @media only screen and (max-width: 767px) {
      .jet-date-period__datepicker {
          width: 100% !important;
      }
  }
  
/*Breadscrump "Startseite" entfernen*/
.jet-breadcrumbs__wrap .jet-breadcrumbs__item:nth-child(-n + 2){
 display: none;
}  	

/* Handles the badge for person */
.personen-badge {
    opacity:0;
}

.personen-badge .elementor-widget-container {
    width: 90px !important;
    aspect-ratio: 1/1;
    
    display: grid;
    align-items: center;
    justify-content: center;
    
    background-color: #00A3EA;
    border-radius: 50%;
    position: relative;
    top: 85px;
    left: 96px;
    z-index: 5;
}
.personen-badge .jet-listing-dynamic-field__content {
    font-size: 90% !important;		
    color: white !important;
    text-align: center;
}

/*.personen-badge .jet-listing-dynamic-field__inline-wrap:has(.jet-listing-dynamic-field__content:empty) {
    background-color: transparent;
}*/

/*Eventin Image Border*/
.etn-event-single-content-wrap .etn-single-event-media img {
	border-radius: 10px;
	border-width: 2px solid #000 !important;
}

/*Menu hide-title*/
h2.header-menu-depth-1:has(+li.menu-heading-link) {
	display: none;
}
.hide-title .header-menu-depth-2 {
	display: none;
}
	
.menu-heading-link {
	margin-top: 10px;
	font-size: 25px;
	font-weight: 700;
	padding-bottom: 7px;
}

/*Menschen Listing – Style*/
.menschen-badge .jet-listing-grid__item.jet-equal-columns {
    margin-top: -100px;
}

/*slider hover*/
.custom-hover {
	opacity: .8 ;
	transition: opacity 0.3s ease;
}
.custom-hover:hover {
	opacity: 1 ;
}

/*Topbar*/
.kontakt-icon a::before {
    content: '';
    display: block;
    width: 12px;
    height: 20px;
    background-image: url(https://grunliberale.ch/wp-content/uploads/2024/08/Icons-Gruenliberale-Location.webp);
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: -22px;
    margin-top: 9px;
		opacity: 1 !important;
}
	
.suchen-icon a::before {
    content: '';
    display: block;
    width: 12px;
    height: 20px;
    background-image: url(https://grunliberale.ch/wp-content/uploads/2024/08/Icons-Gruenliberale-Suchen.webp);
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: -22px;
    margin-top: 9px;
		opacity: 1 !important;
}	
	
	.suchen-icon {
	padding-left: 20px !important;
	}

/*Betrifft Externe Formulare mittels Hitobito*/
fieldset {
    border: none;
    padding: 0;
    margin: 0;
}

.form-row {
    margin: 20px 0;
}

label {
    padding: 10px 0 10px 0;
}

input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea{
    border-color: #E3EBE8;
}

input[type="submit"] {
    margin-top: 40px;
}

/*Filter*/
/*
nav.datepicker--nav{
	display:none !important;
}
*/
.datepicker--nav-title.-disabled- {
	display:none;
}	
.datepicker--cell.datepicker--cell-year.-disabled- {
	display:none;
}

/*Spacer für Personen fix bestimmen*/
@media (max-width: 767px) {
	.elementor-element-7dafcb9 .elementor-spacer-inner {
		height: 25px !important;
	}
}
@media (max-width: 767px) {
	.elementor-element-f91cae2  .elementor-spacer-inner {
		height: 50px !important;
	}
}

/*Menschen – Badge – Mobile – scale & position*/
@media only screen and (max-width: 450px) {
	.menschen-badge .jet-listing-dynamic-field__inline-wrap {
		scale: .85;
		top: 197px;
		left: 56px;
	}
}

/*Menschen – Repeater – Icons – flex-wrap*/
.single-person-icons .jet-listing-dynamic-repeater__items {
	flex-wrap: wrap;
	row-gap: 6px;
}

/*Eventin Kategorie*/
.etn-event-category {
	display: none;
}

/*Menschen – Badge – overflow: hidden*/
main {
	overflow: hidden;
}


/* Single persons shortcode implementation */
.glp-single-person-section {
	padding: 0 10px;
}
.glp-single-person-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
.glp-single-person-separator {
	padding: 30px 0 25px 0;
}
.glp-single-person-separator > div {
	border-top: 2px dotted #E3EBE8;
}
/*'Microsoft Teams Call' Button */
.etn-event-meta-external-link .etn-btn {
    visibility: hidden;
}

/* Badge ausblenden */ 
 @media screen and (max-width: 767px) {
    .personen-badge.elementor-widget .elementor-widget-container {
        display: none !important;
    }

    .personen-badge.elementor-widget {
        margin-top: 90px !important;
    }
}
