:root {
--header-height:79px;
--neutral-800:#3E3232;
--e-global-color-accent: #cafc5f;
}

body {
	margin-top:var(--header-height);
}

.elementor-location-header {
	overflow-x:hidden;
}

.e-n-menu-title.e-click .e-n-menu-title-text {
	cursor:pointer;
}

.elementor-widget-n-menu .e-n-menu-toggle {
	--n-menu-toggle-align: end;
}

.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-toggle[aria-expanded=true]+.e-n-menu-wrapper {
	height: calc(100vh - 80px);
    overflow: auto;
	background:#fff;
}

.e-n-menu-item:nth-last-child(2) {
	--n-menu-title-space-between:0;
}
a:focus-visible,
button:focus-visible {
	outline:2px dotted black;
}

.e-n-menu-title.e-click {
	position:relative;
	padding-right:20px;
}

.e-n-menu-title.e-click .e-n-menu-dropdown-icon {
	position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    height: unset;
    width: unset;
    margin: 0;
    display: flex;
    outline-offset: 5px;
}
.e-n-menu-title.e-click .e-n-menu-dropdown-icon .e-n-menu-dropdown-icon-opened,
.e-n-menu-title.e-click .e-n-menu-dropdown-icon .e-n-menu-dropdown-icon-closed {
	margin-left:auto;
}

.elementor-location-header .e-n-menu-title-container {
	padding: 0 5px;
    margin: 0 -5px;
}

.elementor-widget-theme-site-logo a:focus-visible,
.elementor-location-header .e-n-menu-item button:focus-visible,
.elementor-location-header .e-n-menu-item .e-n-menu-title-container:focus-visible,
.elementor-location-header .menu-item > a:focus-visible,
.elementor-location-header .elementor-button:focus-visible {
	outline:2px dotted black;
}



#support-btn {
	display:none;
}

.page-header {
	padding: 0 10px;
}

.page-header .entry-title {
	hyphens: auto;
	max-width: min(100%,1320px);
}

/*----- Language Switcher -----*/
.elementor-widget-polylang-language-switcher {
	align-self:center;
}

.elementor-widget-polylang-language-switcher .elementor-widget-container {
	height:fit-content;
}

.cpel-switcher__lang a {
	display:block;
	padding: 11px 6px 13px;
	border: 1px solid var(--neutral-800);
	line-height:1;
	transition:color 0.3s;	
}
.cpel-switcher__lang--active {
	background-color: var(--neutral-800);
}

/*----------*/


@media (max-width:1199px) {
	#top-menu {
		flex:unset;
	}		
	.elementor-widget-polylang-language-switcher {
		margin-left:auto;
	}
}

@media (max-width:767px) {
	#support-btn {
		display:flex;
		padding: 10px 30px;
		height:52px;
		justify-content:center;
		align-items:center;
		text-transform:uppercase;
		background:#CAFC5F;
		color:#332C29;
		font-weight:bold;
		margin:20px 10px;
		width:fit-content;
	}
	#support-btn span {
		font-weight:500;
	}
}

.overflow-hidden {
	overflow:hidden;
}

.col-right-ext {
	position: relative;
	width: calc(55% + (100vw - 1278px) / 2);
    margin-right: calc(-1 * (100vw - 1320px) / 2);
	border-bottom: 1px solid #fff;
}
.col-right-ext > div {
	border-left: 1px solid #fff;
}

.col-right-ext--brown {
	border-color: var(--neutral-800);
	border-bottom: none;
}

.col-right-ext--brown  > div:not(:last-child) {
	border-color: var(--neutral-800);
	border-bottom: 1px solid var(--neutral-800);
}
.col-right-ext--brown  > div {
	border-color: var(--neutral-800);
	border-bottom: 1px solid var(--neutral-800);
}

.col-right-ext--brown  > div:last-child {
	border-bottom: none;
}

.footer-currency  {
	border-top: 1px solid var(--neutral-800);
}

.footer-currency > div:not(:last-child) {
	border-right: 1px solid var(--neutral-800);
}


.footer-currency-cell  {
	position:relative;
}

.footer-currency-cell .elementor-widget-heading  {
	position:static;
}

.footer-currency-cell:hover  {
	background-color: var(--neutral-800);
}

.footer-currency-cell a {
	transition:all 0.3s;
}

.footer-currency-cell a:before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
}

.elementor-location-footer .elementor-icon svg {
	transition:all 0.3s;
}

.elementor-location-footer .elementor-nav-menu__container a:hover {
	color:var(--e-global-color-accent)!important;	
}

.elementor-location-footer .elementor-nav-menu__container a:focus-visible,
.elementor-element-2589f98 a:focus-visible {
	outline-color:#fff;
	color:#fff;
}
 
@media (max-width:1399px) {
	.col-right-ext {
		width: calc(0.55 * 100vw + 10px);
        margin-right: min(-10px, -1 * (100vw - 1320px) / 2);
        margin-left: auto;
	}
}

@media (max-width:1023px) {
	.col-right-ext {
		position:static;
		border-top: 1px solid #fff;
		margin-left: -10px;
		margin-right: -10px;
		width: calc(100% + 20px);
	}
	.col-right-ext > div:first-child,
	.col-right-ext--brown > div	{
		border-left: none;
	}
}

@media (max-width:575px) {
	.footer-currency > div:first-child,
	.footer-currency > div:nth-child(2) {
		border-bottom: 1px solid var(--neutral-800);
	}
	.footer-currency > div:nth-child(2) {
		border-right:none;
	}
}

.shrink-0 {
	flex-shrink:0;
}
.flex-1 {
	flex:1;
}

/*----------CF7---------*/
.form-row {
	display:flex;
}

.wpcf7-form-control {
	display:block;
	height:52px;
	
}

input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], select, textarea {
	border-radius:0;
	padding: 12px 24px;
}

.elementor-location-footer .form-row > label {
	width: 399px;
}

.elementor-location-footer input[type=email] {
	color: #fff;
	background: transparent;
	border: 1px solid #808080;
	width: 100%;
}
.elementor-location-footer input[type=email]::placeholder {
	color: #808080;
}

input[type="submit"].wpcf7-form-control {
	display:flex;
	align-items:center;
}

.elementor-location-footer .wpcf7-not-valid-tip {
    margin-top: 10px;
}
.elementor-location-footer .wpcf7 form .wpcf7-response-output {
	margin: 15px 0 0;
}

.wpcf7-spinner {
	position: absolute;
    right: 50px;
    bottom: 125%;
}

@media (max-width:1399px) {
	.elementor-location-footer .form-row > label {
		width: 307px;
	}	
}

@media (max-width:767px) {
	.elementor-location-footer .form-row > label {
		width: unset;
		flex:1;
	}	
}

