#header{
	position: fixed !important;
	width: 100%;
  top: 0;
	background-image: none;
}
.hfe-site-logo-container {
	line-height: 1;
}
.hfe-submenu-icon-arrow .hfe-nav-menu {
	--e-global-typography-primary-font-family: "Georgia" !important;
}
.hfe-submenu-icon-arrow .hfe-nav-menu .menu-item-has-children .sub-arrow i::before {
	content: "\f107";
}
.elementor-13015 .elementor-element.elementor-element-a482bf1:not(.elementor-motion-effects-element-type-background) {
	--e-global-color-secondary: #3E484E !important;
}
.elementor-13015 .elementor-element.elementor-element-1ace76e .elementor-button {
	--e-global-color-primary: #58B5CA !important;
}

/*
from yogibo.inc
------------------------------------------------------------------------------------------------------	*/

:root {
  --e-global-color-primary: #58B5CA;
  --e-global-color-secondary: #3E484E;
  --e-global-color-text: #3E484E;
  --e-global-color-accent: #FCA85A;
  --e-global-color-3257b38: #FFFFFF;
  --e-global-color-11c9cbf: #000000;
  --e-global-color-32894bd: #B7B7B7;
  --e-global-color-f2af137: #DEF0F4;
	--e-global-typography-primary-font-family: "Georgia";
	--e-global-typography-primary-font-size: 30px;
	--e-global-typography-primary-font-weight: 100;
	--e-global-typography-primary-line-height: 1em;
	--e-global-typography-primary-letter-spacing: 1.2px;
	--e-global-typography-secondary-font-family: "Georgia";
	--e-global-typography-secondary-font-size: 22px;
	--e-global-typography-secondary-letter-spacing: 1px;
	--e-global-typography-text-font-family: "Noto Sans JP";
	--e-global-typography-text-font-size: 16px;
	--e-global-typography-text-font-weight: normal;
	--e-global-typography-accent-font-family: "Georgia";
	--e-global-typography-39929c3-font-family: "Noto Serif";
	--e-global-typography-39929c3-font-size: 30px;
	--e-global-typography-39929c3-font-weight: 300;
	--e-global-typography-39929c3-letter-spacing: 3px;
}



/*
a part of https://yogibo.inc/wp-content/themes/ws_rife-free_child/style.css?ver=2.4.12
------------------------------------------------------------------------------------------------------	*/

/* ==========================================================================
   TABLE OF CONTENTS:

	   Header tools
	   Header menu general
	   Header menu horizontal
	   Header menu vertical
	   Logo
	   Header vertical
	   Header vertical variant right
	   Header horizontal general
	   Header horizontal variants
	   Top bar in header
	   Footer
	   Footer unravel effect
	   Social icons
   ========================================================================== */


   
/* ==========================================================================
   Header tools
   ========================================================================== */
#header-tools{
	min-height: 26px;
	color: #444;
}
#header-tools.only-menu{
	/* we don't want to touch display property, but still hide it */
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
	height: 1px;
	overflow: hidden;
	opacity: 0;
}
#header-tools .tool{
	display: inline-block;
	vertical-align: middle;
	color: #e5e5e5;
	text-align: center;
	font-size: 16px;
	line-height: 26px;
	cursor: pointer;
	transition: background-color .3s, color .3s;
}
#header-tools .tool a{
	transition: color .3s;
}
#header-tools button{
	height: 26px;
	width: 36px;
	background-color: transparent;
	border: none;
	padding: 0 5px;
}
/* FireFox 63 loses focus styles on button, when button styles are changed */
#header-tools button:-moz-focusring{
	outline: 1px dotted;
}
#header-tools .tool:hover,
#header-tools .tool.highlight,
#header-tools .tool.active{
	color: #4d4d4d;
}
#header-tools .tool::before{
	display: block;
}
#header-tools #mobile-menu-opener{
	font-size: 18px;
	display: none;
}
/* basket counter */
#basket-menu-switch{
	position: relative;
}
#basket-items-count{
	position: absolute;
	top: -5px;
	left: 18px;
	min-width: 15px;
	line-height: 15px;
	font-size: 9px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	font-family: 'Open Sans', arial, sans-serif;
	background-color: #F64747;
	-webkit-border-radius: 2px;
			border-radius: 2px;
}
#basket-items-count.zero{
	display: none;
}

/* language switcher */
#header-tools .language-switcher{
	position: relative;
}
#header-tools .languages{
	display: none;
	position: absolute;
	z-index: 10;
	top: 100%;
	left: 0;
	list-style-type: none;
	min-width: 26px;
	padding: 0 5px;
	margin: 0;
	text-transform: uppercase;
	outline: 1px solid;
	background-color: #fff;
	transition: background-color 0.3s;
}
#header-tools .open .languages{
	display: block;
}
#header-tools .language-switcher button{
	min-width: 36px;
	width: auto;
	text-transform: uppercase;
}
#header-tools .language-switcher.codes img{
	margin-right: 5px;
}

/* button */
.tools_button{
	display: inline-block;
	height: 27px;
	line-height: 27px;
	text-transform: uppercase;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	padding: 0 10px;
	margin-left: 10px;
	border: 1px solid #E5E5E5;
	-webkit-border-radius: 3px;
			border-radius: 3px;
	transition: all .3s;
	box-sizing: border-box;
}
.tools_button:hover{
	text-decoration: none;
}

/* animated icons */
#header-tools .tool.hamburger{
	position: relative;
	margin: 0 5px;
}
.hamburger i{
	display: block;
	position: absolute;
	top: 50%;
	left: 5px;
	right: 5px;
	height: 2px;
	width: calc(100% - 10px);
	background-color: #000;
	transition: background-color 0.3s;
}
.hamburger i::before,
.hamburger i::after{
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000;
	content: "";
	transition: background-color 0.3s;
}
.hamburger i::before{
	top: -6px;
}
.hamburger i::after{
	bottom: -6px;
}

/* transform to X effect */
.hamburger--efx i::before,
.hamburger--efx i::after{
	transition-duration: 0.3s;
	transition-delay: 0.3s, 0s, 0s;
}
.hamburger--efx i::before{
	transition-property: top, background-color, transform;
}
.hamburger--efx i::after{
	transition-property: bottom, background-color, transform;
}
/* active state */
.hamburger--efx.active i{
	background-color: transparent !important;
}
.hamburger--efx.active i::before{
	top: 0;
	-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
			transform: rotate(45deg);
}
.hamburger--efx.active i::after{
	bottom: 0;
	-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
}
.hamburger--efx.active i::before,
.hamburger--efx.active i::after{
	transition-delay: 0s, 0.3s, 0.3s;
}

/* transform to X2 effect */
.hamburger--efx2 i::before,
.hamburger--efx2 i::after{
	transition-duration: .3s;
	transition-delay: .3s, 0s, 0s;
}
.hamburger--efx2 i::before{
	transition-property: top, background-color, transform;
}
.hamburger--efx2 i::after{
	transition-property: bottom, background-color, transform;
}
/* active state */
.hamburger--efx2 i{
	background-color: transparent !important;
}
.hamburger--efx2.active i::before{
	-webkit-transform: rotateZ(135deg) scaleX(1.1) translate(4px, -4px);
		-ms-transform: rotateZ(135deg) scaleX(1.1) translate(4px, -4px);
			transform: rotateZ(135deg) scaleX(1.1) translate(4px, -4px);
}
.hamburger--efx2.active i::after{
	-webkit-transform: rotateZ(-135deg) scaleX(1.1) translate(4px, 4px);
		-ms-transform: rotateZ(-135deg) scaleX(1.1) translate(4px, 4px);
			transform: rotateZ(-135deg) scaleX(1.1) translate(4px, 4px);
}

/* transform to X3 effect */
.hamburger--efx3 i::before,
.hamburger--efx3 i::after{
	transition-duration: .3s;
	transition-delay: .3s, 0s, 0s;
}
.hamburger--efx3 i::before,
.hamburger--efx3 i::after{
	transition-property: background-color, transform;
}
/* active state */
.hamburger--efx3 i{
	background-color: transparent !important;
}
.hamburger--efx3.active i::before{
	-webkit-transform: rotateZ(45deg) scaleX(1.1) translate(4px, 3px);
		-ms-transform: rotateZ(45deg) scaleX(1.1) translate(4px, 3px);
			transform: rotateZ(45deg) scaleX(1.1) translate(4px, 3px);
}
.hamburger--efx3.active i::after{
	-webkit-transform: rotateZ(-45deg) scaleX(1.1) translate(5px, -4px);
		-ms-transform: rotateZ(-45deg) scaleX(1.1) translate(5px, -4px);
			transform: rotateZ(-45deg) scaleX(1.1) translate(5px, -4px);
}


/* transform to Slider effect */
.hamburger--efslider i{
	top: 7px;
	transition-timing-function: ease;
	transition-duration:        .3s;
	transition-property:        transform, background-color;
}
.hamburger--efslider i::before{
	top: 12px;
}
.hamburger--efslider i::after{
	bottom: -6px;
}
.hamburger--efslider i::before,
.hamburger--efslider i::after{
	transition-duration: .3s;
	transition-property: background-color, transform, width, height;
}

/* active state */
.hamburger--efslider.active i{
	-webkit-transform: rotateZ(-45deg) translate(-4px, 4px);
		-ms-transform: rotateZ(-45deg) translate(-4px, 4px);
			transform: rotateZ(-45deg) translate(-4px, 4px);
}
.hamburger--efslider.active i::before{
	-webkit-transform: rotateZ(90deg) scaleX(1.05) translate(-11px, 0);
		-ms-transform: rotateZ(90deg) scaleX(1.05) translate(-11px, 0);
			transform: rotateZ(90deg) scaleX(1.05) translate(-11px, 0);
}
.hamburger--efslider.active i::after{
	-webkit-transform: rotateZ(45deg) translate(-60px, -7px);
		-ms-transform: rotateZ(45deg) translate(-60px, -7px);
			transform: rotateZ(45deg) translate(-60px, -7px);
	background-color: transparent !important;
	width: 0;
	height: 0;
}

/* transform to <-- effect */
.hamburger--efla i{
	transition: background-color 0.3s, transform 0.3s;
}
.hamburger--efla i::before{
	left: auto;
	right: 0;
	-webkit-transform-origin: top right;
		-ms-transform-origin: top right;
			transform-origin: top right;
	transition: background-color 0.3s, transform 0.3s, width 0.3s, top 0.3s;
}
.hamburger--efla i::after{
	left: auto;
	right: 0;
	-webkit-transform-origin: bottom right;
		-ms-transform-origin: bottom right;
			transform-origin: bottom right;
	transition: background-color 0.3s,  transform 0.3s, width 0.3s, bottom 0.3s;
}
/* active state, i.e. menu open */
.hamburger--efla.active i{
	-webkit-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
			transform: rotate(180deg);
}
.hamburger--efla.active i::before,
.hamburger--efla.active i::after{
	width: 32%;
}
.hamburger--efla.active i::before{
	top: 0;
	-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
			transform: rotate(45deg);
}
.hamburger--efla.active i::after{
	bottom: 0;
	-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
}

/* transform to --> effect */
.hamburger--efra i{
	transition: background-color 0.3s, transform 0.3s;
}
.hamburger--efra i::before{
	-webkit-transform-origin: bottom left;
		-ms-transform-origin: bottom left;
			transform-origin: bottom left;
	transition: background-color 0.3s, transform 0.3s, width 0.3s, top 0.3s;
}
.hamburger--efra i::after{
	-webkit-transform-origin: top left;
		-ms-transform-origin: top left;
			transform-origin: top left;
	transition: background-color 0.3s,  transform 0.3s, width 0.3s, bottom 0.3s;
}
/* active state, i.e. menu open */
.hamburger--efra.active i{
	-webkit-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
			transform: rotate(180deg);
}
.hamburger--efra.active i::before,
.hamburger--efra.active i::after{
	width: 32%;
}
.hamburger--efra.active i::before{
	top: 0;
	-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
}
.hamburger--efra.active i::after{
	bottom: 0;
	-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
			transform: rotate(45deg);
}




/* ==========================================================================
   Header menu general
   ========================================================================== */
.top-menu, .top-menu ul{
	list-style: none;
	margin: 0;
	padding: 0;
}
.top-menu li {
	position:    relative;
	min-height:  22px; /* place for sub-mark */
	font-size: 14px;
}
.top-menu li a,
.top-menu li span.title{ /* span.title only to gain color and block */
	color: #000;
	display: block;
	text-decoration: none;
}
.top-menu > li > a,
.top-menu > li > span.title{
	position: relative;
	transition: background-color .5s, color .5s, line-height .5s, height .5s;
}
/* hover and active */
.top-menu a:hover,
.top-menu li.menu-parent-item:hover > span.title,
.top-menu li.open > a,
.top-menu li.open > span.title,
.top-menu li.current-menu-item > a,
.top-menu li.current-menu-ancestor > a,
.top-menu li.current-menu-item > span.title,
.top-menu li.current-menu-ancestor > span.title{
	color: #444;
}
.top-menu li a i { /* icon */
	width: 15px;
	text-align: center;
}
/* margin for icon */
.top-menu span i + span, .top-menu a i + span{
	margin-left: 8px;
}
.top-menu span span i, .top-menu a span i{
	margin-right: 8px;
}
/* sub menu mark */
.top-menu i.sub-mark{
	height: 26px;
	width: 26px;
	display: inline-block;
	position: absolute;
	top: 0;
	cursor: pointer;
	color: #666;
}
.top-menu i.sub-mark::before{
	line-height: 16px;
	height: 16px;
	width: 100%;
	display: block;
	text-align: center;
	font-size: 14px;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -8px;
}
.top-menu.opener-icons-off i.sub-mark{
	display: none;
}
.top-menu li.menu-parent-item:hover > span.title + i.sub-mark,
.top-menu i.sub-mark:hover,
.top-menu li.open > i.sub-mark{
	color: #fff;
}
/* not linkable sub parent */
.top-menu li.menu-parent-item > span.title{
	cursor: pointer;
}
/* when effect for menu is added */
.top-menu.with-effect a em,
.top-menu.with-effect span.title em{
	font-style: normal;
}

/* next levels */
.top-menu ul{
	display: none;
	padding: 30px 0;
}
.top-menu li li{
	font-size: 12px;
}
/* keep submenu open */
.top-menu .current-menu-ancestor.to-open > ul{
	display: block;
}

/* menu item with rollover icon */
.top-menu > li.hidden-icon > span.title,
.top-menu > li.hidden-icon > a{
	overflow: hidden;
	height: 30px; /* needed for hidden icons to behave proper */
}
.top-menu > li.hidden-icon > span.title i,
.top-menu > li.hidden-icon > a i{
	position: absolute;
	top: -50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: top .3s;
}
.top-menu > li.hidden-icon > span.title span,
.top-menu > li.hidden-icon > a span{
	position: relative;
	top: 0;
	transition: top .3s;
}
.top-menu li.hidden-icon > span i + span,
.top-menu li.hidden-icon > a i + span {
	margin-left: 0;
}
.top-menu li.hidden-icon:hover > a i,
.top-menu li.hidden-icon.menu-parent-item:hover > span.title i,
.top-menu li.hidden-icon.open > a i,
.top-menu li.hidden-icon.open > span.title i,
.top-menu li.hidden-icon.current-menu-item > a i,
.top-menu li.hidden-icon.current-menu-ancestor > a i,
.top-menu li.hidden-icon.current-menu-item > span.title i,
.top-menu li.hidden-icon.current-menu-ancestor > span.title i{
	top: 50%;
}
.top-menu li.hidden-icon:hover > a span,
.top-menu li.hidden-icon.menu-parent-item:hover > span.title span,
.top-menu li.hidden-icon.open > a span,
.top-menu li.hidden-icon.open > span.title span,
.top-menu li.hidden-icon.current-menu-item > a span,
.top-menu li.hidden-icon.current-menu-ancestor > a span,
.top-menu li.hidden-icon.current-menu-item > span.title span,
.top-menu li.hidden-icon.current-menu-ancestor > span.title span{
	top: 200%;
}


/********/
/* END OF TOP MENU */


/* WPML FLAGS IN MENU */
.menu-item-language img.iclflag {
	margin-right: 7px;
	margin-bottom: -1px;
}

/********/
/* MEGA MENU STYLE */
.mega-menu > ul{
	position: absolute;
	z-index: 250;
	min-width: 200px;
	width: 840px;
	padding: 0;
}
.mega-menu.mm_columns_3 > ul{
	width: 630px;
}
.mega-menu.mm_columns_2 > ul{
	width: 420px;
}
.mega-menu > ul > li{
	background-color: transparent !important;
	float: left;
	width: 25%;
	box-sizing: border-box;
}
.mega-menu > ul > li::before{
	content: "";
	width: 1px;
	background-color: #fff;
	display: block;
	position: absolute;
	top: 30px;
	bottom: 30px;
}
.mega-menu > ul > li:first-child::before{
	display: none;
}
.top-menu li.mega-menu > ul > li{ /* stronger selector */
	padding-right: 0;
}
.mm_columns_2 > ul > li{ width: 50%; }
.mm_columns_3 > ul > li{ width: 33.33%; }

.mega-menu > ul > li.mm_new_row{
	clear: left;
}
.mega-menu > ul ul{
	position: static;
	display: block!important;
	margin: 0;
	box-shadow: none;
	min-width: 0;
	padding-top: 0;
}
.top-menu .mega-menu > ul > li > span.title,
.top-menu .mega-menu > ul > li > a{
	font-size: 14px;
	font-weight: bold;
	margin: 30px 0 10px;
}
.top-menu .mega-menu > ul > li > span.title{
	cursor: default;
}
.top-menu .mega-menu > ul > li > span.title,
.top-menu .mega-menu ul li > a{ /* both group titles and links in submenu of megamenu*/
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
.top-menu .mm_dont_show > span.title,
.top-menu .mm_dont_show > a,
.top-menu .mega-menu > ul > li > span.title .sub-mark,
.top-menu .mega-menu > ul > li > .sub-mark{
	display: none;
}


/* HTML ITEM */
.mega-menu .html_item{
	padding: 0;
}
.mega-menu > ul .html_item ul{
	display: none !important;
}
.top-menu .mega-menu > ul > li.html_item > a{
	padding: 0;
}
/********/
/* END OF MEGA MENU STYLE */



/* ==========================================================================
   Header menu horizontal
   ========================================================================== */
.header-horizontal .navigation-bar{
	width: 100%;
	padding: 0 15px;
	position: relative; /* so submenus can be positioned properly */
}
.header-horizontal .top-menu{
	text-align: right;
	font-size: 0;/* no space between items */
}
.header-horizontal .top-menu li {
	white-space: nowrap;
}
/* sub menu mark */
.header-horizontal .top-menu i.sub-mark{
	right: 0;
	height: 100%;
}

/* First level */
.header-horizontal .top-menu > li{
	float: none;
	display: inline-block;
	vertical-align: bottom;
	text-align: left;
}
.header-horizontal .top-menu > li > a,
.header-horizontal .top-menu > li > span.title{
	padding: 0 10px; /* spacing in most top level */
}
.header-horizontal .top-menu.opener-icons-on li.menu-parent-item{
	padding-right: 26px; /* menu opener */
}
.header-horizontal .top-menu.opener-icons-on > li.menu-parent-item > a,
.header-horizontal .top-menu.opener-icons-on > li.menu-parent-item > span.title{
	padding-right: 4px;
}

/* next levels */
.header-horizontal .top-menu ul{
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 250;
	min-width: 200px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.07);
}
.header-horizontal .desktop_menu .top-menu ul{
	visibility: hidden;
	opacity: 0;
	transform: translateY(-50px);
	transition: opacity 0.5s, visibility 0s 0.5s, transform 0.5s;
}
.header-horizontal .desktop_menu .top-menu ul.measure{
	visibility: hidden;
	opacity: 0;
	transition: none;
	display: block;
}
.header-horizontal .desktop_menu .menu-parent-item.open > ul{
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.5s, transform 0.5s;
}
.header-horizontal .desktop_menu .mega-menu > ul ul{
	visibility: visible;
	opacity: 1;
	transform: none;
}
.header-horizontal .top-menu ul ul{
	top: -30px;
	left: 100%;
	border-top: none;
	margin-top: 0;
}
.header-horizontal .mega-menu > ul ul{
	position: static;
	box-shadow: none;
}
.header-horizontal .top-menu li li{
	padding: 0; /* reset side padding */
}
.header-horizontal .top-menu.opener-icons-on li li.menu-parent-item{
	padding-right: 51px; /* 25px of link side padding + 26px for arrow */
}
.header-horizontal .top-menu li li a,
.header-horizontal .top-menu li li span.title{ /* span.title only to gain color and block */
	line-height: 25px;
	padding: 0 30px;
}
.header-horizontal .top-menu ul i.sub-mark{
	right: 25px;
}

/* submenu opened other way */
.header-horizontal .top-menu ul.otherway{
	left: auto;
	right: 0;
}
.header-horizontal .top-menu ul ul.otherway{
	left: auto;
	right: 100%;
}



/* ==========================================================================
   Header menu vertical
   ========================================================================== */
.header-vertical .top-menu ul{
	padding: 10px 0;
}
.header-vertical .top-menu li a,
.header-vertical .top-menu li span.title{
	min-height: 27px;
	line-height: 27px;
	padding: 0 40px;
}
.header-vertical .top-menu > li.hidden-icon > a,
.header-vertical .top-menu > li.hidden-icon > span.title{
	height: 1.5em; /* so we have height that we can relate to in effects */
}
.header-vertical .top-menu.with-effect > li > a > span,
.header-vertical .top-menu.with-effect > li > span.title > span{
	display: inline-block;
}
/* sub menu mark */
.header-vertical .top-menu i.sub-mark{
	right: 14px;
}

/* next levels */
.header-vertical .top-menu li li a,
.header-vertical .top-menu li li span.title{ /* span.title only to gain color and block */
	min-height: 17px;
	line-height: 17px;
}
.header-vertical .top-menu li li i.sub-mark{
	height: 17px;
	line-height: 17px;
}
.header-vertical .top-menu li li li a,
.header-vertical .top-menu li li li span.title{ /* span.title only to gain color and block */
	padding-left: 50px;
}

/********/
/* MEGA MENU STYLE */
.header-vertical .mega-menu > ul{
	left: 100%;
	top: 0;
}
.header-vertical .top-menu .mega-menu li a,
.header-vertical .top-menu .mega-menu li span.title{
	padding: 0 30px;
	line-height: 25px;
}
.header-vertical .mega-menu > ul ul{
	padding: 0 0 30px;
}



/* ==========================================================================
   Logo
   ========================================================================== */
a.logo{
	display: block;
	max-width: 200px;
	word-wrap: break-word;
	white-space: nowrap;
	padding: 10px 0;
	opacity: 1;
	vertical-align: middle;
	background: transparent 50% 50% no-repeat;
	background-size: contain;
	background-origin: content-box;
	transition: max-width .5s, padding .5s, color .5s, opacity .5s;
}
a.logo img{
	opacity: 0;/* we have image so its display when no styles are applied */
	width: 100%;
	height: auto;
	display: block;
}
a.logo.text-logo{
	/* reset user.css styles */
	background-image: none;
	height: auto;
	line-height: 40px; /* min height of header part */
}
a.logo.image-logo{
	/* reset user.css styles */
	font-size: 0;
}
/* SVG logos */
.svg-logo .scaling-svg{
	display: block;
	width: 100%;
	height: 0;
	padding: 0;
	position: relative;
}
.svg-logo svg{
	position: absolute;
	top: 0;
	left: 0;
	max-width: 100%;
	width: 100%;
}
a.logo.svg-logo{
	background: none!important;
}

a.hidden-logo{
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	opacity: 0;
}



/* ==========================================================================
   Header vertical
   ========================================================================== */
.header-vertical #header{
	position: absolute;
	top: 0;
	left: 0;
	width: 280px;
	min-height: 100%;
	color: #000;
	z-index: 9;/* below footer */ /* bg-color is for hover, rest for "to-move" class */
	transition: transform .5s, background-color .5s;
}
.header-vertical.site-layout-bordered #header{
	margin-top: 30px;
	/*rtl:ignore*/
	margin-left: 30px;
	margin-bottom: 30px;
}
.header-vertical.site-layout-bordered.no-border-left #header{ /*rtl:ignore*/margin-left: 0; }
.header-vertical.site-layout-bordered.no-border-top #header{ margin-top: 0; }
.header-vertical.site-layout-bordered.no-border-bottom #header{ margin-bottom: 0; }

.header-vertical #header.stick_to_bottom,
.admin-bar.header-vertical #header.stick_to_bottom{
	position: fixed;
	bottom: 0;
	top: auto;
}
.header-vertical #header.stick_to_top{
	position: fixed;
	bottom: auto;
	top: 0;
}
.admin-bar.header-vertical #header{
	top: 32px;
}
.header-vertical.site-layout-bordered.no-border-bottom.no-border-top #header{
	min-height: 100%;
}
.header-vertical.site-layout-bordered.no-border-top #header,
.header-vertical.site-layout-bordered.no-border-bottom #header{
	min-height: calc(100% - 30px);
}
.header-vertical.site-layout-bordered #header{
	min-height: calc(100% - 60px);
}

.admin-bar.header-vertical #header,
.admin-bar.header-vertical.site-layout-bordered.no-border-bottom.no-border-top #header{
	min-height: calc(100% - 32px);
}
.admin-bar.header-vertical.site-layout-bordered.no-border-top #header,
.admin-bar.header-vertical.site-layout-bordered.no-border-bottom #header{
	min-height: calc(100% - 62px);
}
.admin-bar.header-vertical.site-layout-bordered #header{
	min-height: calc(100% - 92px);
}
.header-vertical .logo-container .logo{
	display: inline-block;
}
.header-vertical .logo-container .logo.svg-logo{
	width: 200px;
}
.header-vertical #header-tools{
	padding: 0 40px 0 30px;
	margin-top: 20px;
}
.header-vertical #mid{
	padding: 0 0 0 280px;
}
.header-vertical #header.scrollable-menu{
	position: absolute;
}
.header-vertical .navigation-bar{
	position: relative;
}
.header-vertical .logo-container{
	padding: 0 40px;
}
.header-widgets{
	padding: 0 40px;
}

.header-vertical #header.centered,
#header.centered .widget h3.title{
	text-align: center;
}

/* vertical mid */
.header-vertical .variant-content_in_mid .navigation-bar{
	display: table;
	width: 100%;
}
.variant-content_in_mid div.menu-container{
	display: table-cell;
	vertical-align: middle;
}



/* ==========================================================================
   Header vertical variant right
   ========================================================================== */
/* GENERAL LAYOUT */
.header-side-right.header-vertical #header{
	/*rtl:ignore*/
	left:  auto;
	/*rtl:ignore*/
	right: 0;
}
.header-side-right.header-vertical.site-layout-bordered #header{
	/*rtl:ignore*/
	margin-left: 0;
	/*rtl:ignore*/
	margin-right: 30px;
}
.header-side-right.header-vertical.site-layout-bordered.no-border-right #header{
	/*rtl:ignore*/
	margin-right: 0;
}
.header-side-right #mid{
	/*rtl:ignore*/
	padding: 0 280px 0 0;
}

/* HEADER MENU */
.header-side-right .mega-menu > ul{
	/*rtl:ignore*/
	left: auto;
	/*rtl:ignore*/
	right: 100%;
}



/* =============================================================================
   Header horizontal general
   ========================================================================== */
.header-horizontal #header{
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 11;/* above footer */ /* bg-color is for hover, rest for "to-move" class */
	transition: transform .5s, background-color .5s;
}
.header-horizontal #header.no-fixed,
.header-horizontal #header.default-sticky{/* overwritten in JS */
	position: absolute;
}
.mobile-menu-open.header-horizontal #header.default-sticky{
	position: fixed;
	/* if we are at top of page we don't want header to jump around while scrolling down */
}
#header.a13-horizontal{ /* removed from above rules too be easier overwritten */
	border-bottom: 1px solid #E5E5E5;
}
/*
.admin-bar.header-horizontal #header{
	margin-top: 32px;
}
*/
.header-horizontal #header .head{
	padding: 0 40px;
	margin: 0 auto;
	width: 100%;
	box-sizing: border-box;
}
.header-horizontal #header.narrow-header{
	max-width: 1240px;
	left: 50%;
	-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
			transform: translateX(-50%);
}
#header.narrow .head,
#header.narrow .top-bar{
	max-width: 1240px;
}
.header-horizontal .logo-container{
	transition:  max-width .5s, min-width .5s;
}
.header-horizontal .logo-container,
.header-horizontal .navigation-bar,
.header-horizontal #header-tools,
.header-horizontal header .socials {
	display:        table-cell;
	vertical-align: middle;
}
.header-horizontal #header-tools,
.header-horizontal header .socials {
	white-space: nowrap;
	text-align: right;
}
.header-horizontal #header-tools{
	padding-right: 15px;
}
.header-horizontal #header-tools::before,
.header-horizontal .head .socials::before{
	content: "";
	display: inline-block;
	height: 25px;
	width: 1px;
	background-color: #E5E5E5;
	margin-right: 15px;
	vertical-align: middle;
}
.header-horizontal .head .socials a{
	vertical-align: middle;
}

/* STICKY HEADER */
#header.sticky-values{
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.09);
}
.header-horizontal #header.sticky-hide,
.header-horizontal #header.hide-until-scrolled-to{
	-webkit-transform: translateY(-102%);
		-ms-transform: translateY(-102%);
			transform: translateY(-102%);
	/* 102% cause it leaves one pixel behind when doing 3d transforms */
}
.mobile-menu-open.header-horizontal #header.sticky-hide{
	-webkit-transform: none !important;
		-ms-transform: none !important;
			transform: none !important;
	/* it makes sure menu will not run away while scrolling on mobile menu */
}
.site-layout-bordered.header-horizontal #header{
	top: 30px;
	left: 30px;
	right: 30px;
	width: auto;
}
.no-border-top.header-horizontal #header{ top: 0; }
.no-border-right.header-horizontal #header{ /*rtl:ignore*/right: 0; }
.no-border-left.header-horizontal #header{ /*rtl:ignore*/left: 0; }

/* narrow overwrites */
.header-horizontal #header.narrow-header{
	left: 50%;
	-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
			transform: translateX(-50%);
}
.header-horizontal #header.sticky-hide.narrow-header,
.header-horizontal #header.hide-until-scrolled-to.narrow-header{
	-webkit-transform: translate(-50%, -102%);
		-ms-transform: translate(-50%, -102%);
			transform: translate(-50%, -102%);
	/* 102% cause it leaves one pixel behind when doing 3d transforms */
}
.site-layout-bordered.header-horizontal #header.narrow-header{
	width: 100%;
	right: auto;
}
.no-border-right.header-horizontal #header.narrow-header,
.no-border-left.header-horizontal #header.narrow-header{
	/* not fully supported, as no one should use such configuration */
	/*rtl:ignore*/
	left: 50%;
	/*rtl:ignore*/
	right: auto;
}

/* header scrollable menu */
.header-horizontal #header.scrollable-menu{
	position: absolute !important;/* so it overwrites any inline style for hiding sticky header */
}



/* =============================================================================
   Header horizontal variants
   ========================================================================== */
/* ONE LINE */
.header-type-one_line .head{
	display: table;
}


/* ONE LINE MENU CENTERED */
.header-variant-one_line_menu_centered .top-menu{
	text-align: center;
}


/* ONE LINE LOGO CENTERED */
.header-variant-one_line_centered .socials-cell,
.header-variant-one_line_centered .tools-cell{
	width: 15%;
	display: table-cell;
	vertical-align: middle;
}
.header-variant-one_line_centered .tools-cell{
	text-align: right;
}
.header-variant-one_line_centered #header-tools,
header.header-variant-one_line_centered .socials{
	white-space: normal;
	padding: 0;
	display: block;
}
header.header-variant-one_line_centered .socials{
	text-align: left;
}
.header-variant-one_line_centered #header-tools::before,
.header-variant-one_line_centered .head .socials::before {
	display: none;
}
.header-variant-one_line_centered .menu-cell{
	width: 70%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	position: relative;
}
.header-variant-one_line_centered .navigation-bar{
	display: block;
	box-sizing: border-box;
	/* for JS operation */
	transition: min-height .5s;
}
.header-variant-one_line_centered .logo-container{
	display: block;
	max-width: 200px;
	z-index: 1;
	position: absolute;
	top: 0;
	/*rtl:begin:ignore*/
	left: 50%;
	-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
			transform: translateX(-50%);
	/*rtl:end:ignore*/
}
.header-variant-one_line_centered .logo-container a.logo{
	margin: 0 auto;
}
.header-variant-one_line_centered .menu-cell .top-menu{
	width: calc(50% - 100px);
	float: left;
	text-align: right;
	/* for JS operation */
	transition: width .5s, line-height .5s;
}
.header-variant-one_line_centered .menu-cell .right-part{
	float: right;
	text-align: left;
}
.header-variant-one_line_centered .top-menu > li,
.header-variant-one_line_centered .top-menu > li > a,
.header-variant-one_line_centered .top-menu > li > span.title{
	line-height: inherit;
}


/* ONE LINE LOGO CENTERED WITH SHIELD  */
.header-variant-one_line_centered .logo-container.shield{
	transition: max-width .5s, min-width .5s, transform .5s;
}
.header-variant-one_line_centered .logo-container .scaling-svg-container{
	width: 100%;
	height: 0;
	padding: 0;
	padding-bottom: 125.6%;
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
}
.header-variant-one_line_centered .logo-container > .scaling-svg-container svg{
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
}
.header-variant-one_line_centered.with-shield .top-menu > li > a,
.header-variant-one_line_centered.with-shield .top-menu > li > span.title{
	padding-top: 20px;
	padding-bottom: 20px;
	/* below are needed for "show icons" Hover effect of menu */
	height: 25px; /* so icons will move properly in FireFox */
	line-height: 25px; /* text aligned with icons */
}


/* MULTI LINE */
#header.header-type-multi_line.narrow .head{
	max-width: none;
}
#header.header-type-multi_line.narrow .top-head{
	max-width: 1240px;
	margin: 0 auto;
}
#header.header-type-multi_line .head{
	padding: 0;
	display: block;
}
.header-type-multi_line .top-head{
	width: 100%;
	padding: 0 340px;
	box-sizing: border-box;
	position: relative;
	min-height: 40px;
}
.header-type-multi_line .bottom-head{
	padding: 0 40px;
	border-color: #E5E5E5;
	border-top: 1px solid;
}
/*noinspection CssOptimizeSimilarProperties*/
.header-type-multi_line.header-variant-menu_above .bottom-head{
	/* not optimized cause color is set in user.css */
	border-top: none;
	border-bottom-style: solid;
	border-bottom-width: 1px;
}
.header-type-multi_line .logo-container{
	display: block;
	text-align: center;
}
.header-type-multi_line a.logo{
	margin: auto;
}

.header-type-multi_line .navigation-bar,
.header-type-multi_line #header-tools,
.header-type-multi_line .head .socials{
	display: block;
}
.header-type-multi_line #header-tools,
.header-type-multi_line .head .socials{
	position: absolute;
	padding: 0;
	right: 40px;
	top: 50%;
	-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
			transform: translateY(-50%);
}
.header-type-multi_line .head .socials{
	right: auto;
	left: 40px;
}
.header-type-multi_line #header-tools::before,
.header-type-multi_line .head .socials::before{
	display: none;
}
.header-type-multi_line.narrow .navigation-bar{
	max-width: 1160px;
	margin: 0 auto;
}
.header-type-multi_line .top-menu{
	text-align: center;
}
.header-type-multi_line .top-menu > li > a,
.header-type-multi_line .top-menu > li > span.title{
	line-height: 40px;
	height: 40px;
	min-height: 40px;
}



/* ==========================================================================
   Top bar in header
   ========================================================================== */
.top-bar-container{
	border-bottom: 1px solid #E5E5E5;
	overflow: hidden;/* for animating from sticky header to normal */
	transition: background-color .5s, color .5s, opacity .7s, height .5s;/* height is .5 to match animation of other size propeties in header */
	visibility: visible;
	opacity: 1;
}
.top-bar-container.hide{
	visibility: hidden;
	opacity: 0;
	height: 0;
	transition: background-color .5s, color .5s, opacity .7s, visibility 0s .7s, height .5s;
}
.top-bar-container.measure{
	visibility: hidden;
	opacity: 0;
	height: auto;
	transition: none;
}
.top-bar-container .top-bar{
    margin: 0 auto;
    width: 100%;
	padding: 7px 40px;
    display: table;
	line-height: 26px;
    font-size: 12px;
	box-sizing: border-box;
	/* for header color variant switching */
	transition: color .5s;
}
.top-bar .top-bar-msg a:hover{
    text-decoration: underline;
}
.top-bar > div{
    display: table-cell;
    height: 26px; /* works as min-height */
    width: 50%;
    vertical-align: top;
}
.top-bar .part2{
    text-align: right;
}
.top-bar .part1:empty,
.top-bar .part2:empty{
    width: 0;
}
.top-bar ul{
    margin: 0;
    padding: 0;
    list-style: none;
}
.top-bar li{
    display: inline-block;
    position: relative;
}
.top-bar li a i{
    margin-right: 8px;
}
.top-bar-menu li{
	padding: 0 10px;
}
.top-bar-menu li:first-child{
	padding-left: 0;
}
.top-bar .part2 .socials,
.top-bar .part2 .language-switcher{
	display: inline-block;
}
.top-bar .part2 .socials{
    margin-left: 15px;
}
.top-bar .language-switcher a{
    padding: 0 10px;
	display: inline-block;
}
.top-bar .language-switcher li::before{
	content: "";
	height: 13px;
	width: 1px;
	background-color: #E5E5E5;
	display: inline-block;
	vertical-align: middle;
}
.top-bar .language-switcher li:first-child::before{
	display: none;
}



/* ==========================================================================
   Footer
   ========================================================================== */
#footer{
	font-size: 10px;
	background-color: #1E1E1E;
	width: 100%;
	box-sizing: border-box;
}
.foot-items,
#footer .foot-widgets{
	margin: 0 auto;
	padding: 0 70px;
}
#footer.narrow .foot-items .foot-content{
	margin: 0 auto;
}
#footer.narrow .foot-items .foot-content,
#footer.narrow .foot-widgets{
	max-width: 1160px;
}
.foot-items{
	color: #989898;
	background-color: #101010;
}
.foot-widgets .foot-content{
	padding: 15px 0 60px;
	margin-left: -3%;
}
.foot-items .foot-content{
	padding: 15px 0;
}
.footer-separator .foot-items .foot-content{
	border-top: 1px solid transparent;
}
.foot-widgets .widget{
	margin: 60px 0 0 3%;
	float: left;
	width: 30.3%;
	box-sizing: border-box;
}
.widgets_margin_top_off .foot-widgets .widget{
	margin-top: 60px; /* make sure widgets in footer wont be affected */
}
.one-col .widget{
	width: 97%;
}
.two-col .widget{
	width: 46.95%;
}
.four-col .widget{
	width: 21.95%;
}
.five-col .widget{
	width: 16.95%;
}
.two-col .widget:nth-child(2n+1),
.three-col .widget:nth-child(3n+1),
.four-col .widget:nth-child(4n+1),
.five-col .widget:nth-child(5n+1){
	clear: both;
}


/* content */
.f-links{
	float: right;
	text-align: right;
	max-width: 50%;
}
.foot-text {
	line-height: 26px;
	max-width: 50%;
	float: left;
}

/* centered footer */
#footer.centered,
#footer.centered .widget h3.title,
#footer.centered .widget .socials{
	text-align: center;
}
#footer.centered .f-links,
#footer.centered .foot-text {
	float: none;
	text-align: center;
	max-width: none;
}
#footer.centered .f-links + .foot-text{
	margin-top: 25px;
}
#footer.centered .foot-widgets .widget {
	display: inline-block;
	float: none;
	vertical-align: top;
}

/* footer in vertical header */
.header-vertical .whole-layout > #footer{
	display: none; /* hide footer while it is not moved to header */
}
#header #footer{
	position: absolute;
	bottom: 0;
	left: 0;
	min-height: 40px;
	width: 280px;
	background-color: transparent!important;
	padding: 0;
	text-align: inherit;
	margin-top: 20px;
}
#header .foot-items{
	background-color: transparent!important;
	padding: 0 40px 30px;
}
#header .foot-items .foot-content{
	padding: 0;
}
#header .footer-separator .foot-items .foot-content{
	padding-top: 30px;
}
#header #footer .f-links, /* double id selector to overwrite footer .centered styles */
#header #footer .foot-text{
	float: none;
	max-width: none;
	text-align: inherit;
}
#header .foot-text{
	line-height: 1.5em;
}
#header .f-links + .foot-text{
	margin-top: 30px;
}



/* =============================================================================
   Footer unravel effect
   ========================================================================== */
#footer.unravel{
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 1;
	opacity: 1;
	visibility: visible;
	transition: opacity 0.3s;
}
#footer.unravel.hide-it{
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.3s, visibility 0s 0.3s;
}
.site-layout-boxed #footer.unravel{
	max-width: 1240px;
	margin: 0 auto;
	left: auto;
}
.site-layout-bordered #footer.unravel{
	right: 30px;
	left: 30px;
	bottom: 30px;
	width: auto;
}
.site-layout-bordered.no-border-left #footer.unravel{ /*rtl:ignore*/left: 0; }
.site-layout-bordered.no-border-right #footer.unravel{ /*rtl:ignore*/right: 0; }
.site-layout-bordered.no-border-bottom #footer.unravel{ bottom: 0; }



/* ==========================================================================
   Social icons
   ========================================================================== */
.socials{
	margin: 0;
	vertical-align: top;
	line-height: 0; /*remove white space*/
}
.socials .fa {
	font-family: 'Font Awesome 5 Brands';
}
.socials a{
	display: inline-block;
	margin-left: 4px;
	height: 26px;
	width: 26px;
	line-height: 26px;
	color: #fff;
	text-align: center;
	text-decoration: none !important;
	font-size: 16px;
	transition: background-color .5s, color .5s, opacity .5s !important;;
}
.socials a:first-child{
	margin-left: 0;
}
/* icons with background */
.socials.circles a{
	-webkit-border-radius: 13px;
			border-radius: 13px;
}
.socials.white a{
	background-color: #fff;
	color: #000;
}
.socials.black a{
	background-color: #000;
	color: #fff;
}
.socials.semi-transparent a{
	background-color: #fff;
	color: #000;
	opacity: 0.5;
}
.socials.color a{
	background-color: #3498DB;
	color: #fff;
}

/* icons without background */
.socials.icons-only a,
.socials.icons-only a:hover{
	background-color: transparent;
}
.socials.icons-only.white a{
	color: #fff;
}
.socials.icons-only.black a{
	color: #000;
}
.socials.icons-only.semi-transparent a{
	color: #000;
	opacity: 0.5;
}
.socials.icons-only.color a{
	color: #3498DB;
}



/*
Style Override by Shinsuke Nakamura 2025.07
------------------------------------------------------------------------------------------------------	*/

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block {
    align-items: center !important;
}
