.gpulv-language-switcher {
	--gpulv-lang-cream: #fcf5e5;
	--gpulv-lang-burgundy: #790018;
	--gpulv-lang-border: #e5dfd1;
	position: relative;
	display: inline-block;
	color: var(--gpulv-lang-burgundy);
	font-family: Lato, Inter, sans-serif;
}

.gpulv-language-switcher *,
.gpulv-language-switcher *::before,
.gpulv-language-switcher *::after {
	box-sizing: border-box;
}

.gpulv-language-switcher__details {
	position: relative;
	display: inline-block;
}

.gpulv-language-switcher__summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 76px;
	height: 48px;
	margin: 0;
	padding: 14px 12px;
	border: 0;
	border-radius: 12px;
	background: var(--gpulv-lang-cream);
	color: var(--gpulv-lang-burgundy);
	font-family: Lato, Inter, sans-serif;
	font-size: 20px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	list-style: none;
	cursor: pointer;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}

.gpulv-language-switcher__summary::-webkit-details-marker {
	display: none;
}

.gpulv-language-switcher__summary::marker {
	content: "";
}

.gpulv-language-switcher__summary:hover,
.gpulv-language-switcher__summary:focus {
	color: var(--gpulv-lang-burgundy);
	text-decoration: none;
	outline: none;
}

.gpulv-language-switcher__summary:focus-visible {
	outline: 2px solid var(--gpulv-lang-burgundy);
	outline-offset: 3px;
}

.gpulv-language-switcher__label {
	display: inline-block;
	color: inherit;
	white-space: nowrap;
}

.gpulv-language-switcher__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	color: inherit;
	transition: transform 160ms ease;
}

.gpulv-language-switcher__details[open] .gpulv-language-switcher__icon {
	transform: rotate(180deg);
}

.gpulv-language-switcher__menu {
	position: absolute;
	left: 0;
	top: calc(100% + 8px);
	z-index: 10020;
	display: grid;
	gap: 4px;
	min-width: 100%;
	padding: 6px;
	border: 1px solid var(--gpulv-lang-border);
	border-radius: 12px;
	background: var(--gpulv-lang-cream);
	box-shadow: 0 10px 24px rgba(40, 15, 10, 0.14);
}

.gpulv-language-switcher__item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 10px 12px;
	border-radius: 9px;
	color: var(--gpulv-lang-burgundy);
	font-family: Lato, Inter, sans-serif;
	font-size: 18px;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

.gpulv-language-switcher__item:hover,
.gpulv-language-switcher__item:focus,
.gpulv-language-switcher__item.is-current {
	background: var(--gpulv-lang-burgundy);
	color: var(--gpulv-lang-cream);
	text-decoration: none;
	outline: none;
}

.gpulv-language-switcher__item:focus-visible {
	outline: 2px solid var(--gpulv-lang-burgundy);
	outline-offset: 2px;
}

@media (min-width: 922px) {
	li.pll-parent-menu-item.gpulv-header-language-switcher {
		position: relative !important;
		width: 65px !important;
		min-width: 65px !important;
		max-width: 65px !important;
	}

	.elementor-location-header .pll-parent-menu-item,
	#ast-desktop-header .pll-parent-menu-item,
	header .elementor-nav-menu .pll-parent-menu-item {
		position: relative;
		display: inline-flex;
		align-items: center;
	}

	.elementor-location-header .pll-parent-menu-item > a,
	#ast-desktop-header .pll-parent-menu-item > a,
	header .elementor-nav-menu .pll-parent-menu-item > a {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 2px !important;
		width: 65px !important;
		min-width: 65px !important;
		max-width: 65px !important;
		height: 28px !important;
		min-height: 28px !important;
		margin: 0 !important;
		padding: 4px 12px !important;
		border: 0 !important;
		outline: 0 !important;
		overflow: hidden;
		border-radius: 6px !important;
		background: #fcf5e5 !important;
		box-shadow: inset 0 0 0 1px #790018 !important;
		color: #790018 !important;
		font-family: Lato, Inter, sans-serif !important;
		font-size: 16px !important;
		font-weight: 900 !important;
		line-height: 20px !important;
		text-align: center !important;
		text-decoration: none !important;
		text-transform: none !important;
		letter-spacing: 0 !important;
		white-space: nowrap !important;
		appearance: none !important;
		-webkit-appearance: none !important;
	}

	li.pll-parent-menu-item.gpulv-header-language-switcher > a {
		width: 65px !important;
		min-width: 65px !important;
		max-width: 65px !important;
		height: 28px !important;
		min-height: 28px !important;
		padding: 4px 12px !important;
		box-sizing: border-box !important;
	}

	li.pll-parent-menu-item.gpulv-header-language-switcher > a > .dropdown-menu-toggle:not(.gpulv-header-language-switcher__icon),
	li.pll-parent-menu-item.gpulv-header-language-switcher > a > .sub-arrow:not(.gpulv-header-language-switcher__icon),
	li.pll-parent-menu-item.gpulv-header-language-switcher > a > .ast-header-navigation-arrow:not(.gpulv-header-language-switcher__icon) {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.elementor-location-header .pll-parent-menu-item > a:hover,
	.elementor-location-header .pll-parent-menu-item > a:focus,
	.elementor-location-header .pll-parent-menu-item.current-menu-parent > a,
	#ast-desktop-header .pll-parent-menu-item > a:hover,
	#ast-desktop-header .pll-parent-menu-item > a:focus,
	#ast-desktop-header .pll-parent-menu-item.current-menu-parent > a,
	header .elementor-nav-menu .pll-parent-menu-item > a:hover,
	header .elementor-nav-menu .pll-parent-menu-item > a:focus,
	header .elementor-nav-menu .pll-parent-menu-item.current-menu-parent > a {
		background: #fcf5e5 !important;
		color: #790018 !important;
		text-decoration: none !important;
	}

	.elementor-location-header .pll-parent-menu-item > a::after,
	#ast-desktop-header .pll-parent-menu-item > a::after,
	header .elementor-nav-menu .pll-parent-menu-item > a::after {
		display: none !important;
	}

	.gpulv-header-language-switcher__label {
		display: inline-block;
		color: inherit;
		font: inherit;
		line-height: inherit;
		min-width: 16px;
		text-align: center;
	}

	.gpulv-header-language-switcher__icon {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 20px !important;
		height: 20px !important;
		margin: 0 !important;
		padding: 0 !important;
		color: #790018 !important;
		background: transparent !important;
		border: 0 !important;
		line-height: 0 !important;
		transition: transform 160ms ease;
	}

	.gpulv-header-language-switcher__icon::before,
	.gpulv-header-language-switcher__icon::after {
		display: none !important;
		content: none !important;
	}

	.gpulv-header-language-switcher__icon svg {
		display: block;
		width: 20px;
		height: 20px;
	}

	.elementor-location-header .pll-parent-menu-item:hover .gpulv-header-language-switcher__icon,
	.elementor-location-header .pll-parent-menu-item:focus-within .gpulv-header-language-switcher__icon,
	#ast-desktop-header .pll-parent-menu-item:hover .gpulv-header-language-switcher__icon,
	#ast-desktop-header .pll-parent-menu-item:focus-within .gpulv-header-language-switcher__icon,
	header .elementor-nav-menu .pll-parent-menu-item:hover .gpulv-header-language-switcher__icon,
	header .elementor-nav-menu .pll-parent-menu-item:focus-within .gpulv-header-language-switcher__icon {
		transform: rotate(180deg);
	}

	.elementor-location-header .pll-parent-menu-item > .sub-menu,
	#ast-desktop-header .pll-parent-menu-item > .sub-menu,
	header .elementor-nav-menu .pll-parent-menu-item > .sub-menu {
		left: 0 !important;
		right: auto !important;
		min-width: 65px !important;
		width: 65px !important;
		max-width: 65px !important;
		margin-top: 8px !important;
		padding: 6px !important;
		border: 1px solid #e5dfd1 !important;
		border-radius: 8px !important;
		background: #fcf5e5 !important;
		box-shadow: 0 10px 24px rgba(40, 15, 10, 0.14) !important;
		box-sizing: border-box !important;
		transform: none !important;
	}

	li.pll-parent-menu-item.gpulv-header-language-switcher > ul.sub-menu,
	li.pll-parent-menu-item.gpulv-header-language-switcher > ul.sub-menu.elementor-nav-menu--dropdown {
		left: 0 !important;
		right: auto !important;
		min-width: 65px !important;
		width: 65px !important;
		max-width: 65px !important;
		padding: 6px !important;
		box-sizing: border-box !important;
	}

	.elementor-location-header .pll-parent-menu-item > .sub-menu .lang-item,
	#ast-desktop-header .pll-parent-menu-item > .sub-menu .lang-item,
	header .elementor-nav-menu .pll-parent-menu-item > .sub-menu .lang-item {
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.elementor-location-header .pll-parent-menu-item > .sub-menu .lang-item > a,
	#ast-desktop-header .pll-parent-menu-item > .sub-menu .lang-item > a,
	header .elementor-nav-menu .pll-parent-menu-item > .sub-menu .lang-item > a {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 52px !important;
		min-width: 52px !important;
		max-width: 52px !important;
		min-height: 34px;
		padding: 8px 10px !important;
		border: 0 !important;
		outline: 0 !important;
		border-radius: 6px !important;
		background: transparent !important;
		color: #790018 !important;
		font-family: Lato, Inter, sans-serif !important;
		font-size: 15px !important;
		font-weight: 900 !important;
		line-height: 1 !important;
		text-align: center !important;
		text-decoration: none !important;
		text-transform: none !important;
		white-space: nowrap !important;
		box-sizing: border-box !important;
	}

	li.pll-parent-menu-item.gpulv-header-language-switcher > ul.sub-menu .lang-item > a {
		width: 52px !important;
		min-width: 52px !important;
		max-width: 52px !important;
		box-sizing: border-box !important;
	}

	.elementor-location-header .pll-parent-menu-item > .sub-menu .lang-item.current-lang > a,
	#ast-desktop-header .pll-parent-menu-item > .sub-menu .lang-item.current-lang > a,
	header .elementor-nav-menu .pll-parent-menu-item > .sub-menu .lang-item.current-lang > a {
		background: transparent !important;
		color: #790018 !important;
		text-decoration: none !important;
	}

	.elementor-location-header .pll-parent-menu-item > .sub-menu .lang-item > a:hover,
	.elementor-location-header .pll-parent-menu-item > .sub-menu .lang-item > a:focus,
	#ast-desktop-header .pll-parent-menu-item > .sub-menu .lang-item > a:hover,
	#ast-desktop-header .pll-parent-menu-item > .sub-menu .lang-item > a:focus,
	header .elementor-nav-menu .pll-parent-menu-item > .sub-menu .lang-item > a:hover,
	header .elementor-nav-menu .pll-parent-menu-item > .sub-menu .lang-item > a:focus {
		background: transparent !important;
		color: #ffbd52 !important;
		text-decoration: none !important;
	}
}
