/* Vertical Header */
.header-position-right #header-main-wrapper {
	flex-direction: row-reverse;
}

.vertical-header #header-wrapper {
    margin-left: 0;
    padding: 40px 0 0;
    display: block;
    box-sizing: border-box;
    padding: 0;
    height: 100%;
}
.vertical-header #header-wrapper.fixed {
	position: fixed;
}
.vertical-header #header-wrapper.fixed #header {
	height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
}
.header-position-right #header-wrapper {
	margin-left: auto;
	margin-right: 0;
}
.vertical-header #header {
	padding: 0;
	transition: none;
	position: relative;

	height: auto;
}
.header-position-left #header {
	padding-left: 3vw;
}
.header-position-right #header {
	padding-right: 3vw;
	right: 0;
}
.vertical-header #branding {
	float: left;
    height: auto;
}
.vertical-header .site-title-description-wrapper {
	align-items: normal;
}
.vertical-header #site-title {
	height: auto;
	display: inline-block;
	margin-right: auto;
}
.vertical-header .site-description {
	margin-left: 0;
	display: inline-block;
}
.vertical-header .header .menu-wrapper {
	display: block;
	height: auto;
	width: 100%;
    float: left;
    margin-left: 0;
}
.vertical-header .nav-menu-primary-header-wrapper,
.vertical-header .nav-menu-secondary-header-wrapper {
	height: auto;
	width: 100%;
}
.vertical-header .header .nav-menu,
.vertical-header #sliding-menu-dropdown-wrapper {
    float: left;
    margin-left: 0;
    height: auto;
    margin-top: 25px;
    clear: both;
}
.vertical-header #access .nav-menu {
	float: left;
	width: 100%;
}
.vertical-header .header .social-links-wrapper {
	height: auto;
	padding-left: 0;
	clear: both;
	float: left;
	justify-content: flex-start;
}
.vertical-header #access .search-header-wrapper {
	float: left;
    justify-content: flex-start;
    clear: both;
    height: auto;
}
.vertical-header #access .woocommerce-links-wrapper {
	float: left;
    justify-content: flex-start;
    clear: both;
    margin-left: 0;
    margin-top: 25px;
    align-items: flex-start;
}
.vertical-header .product-list-cart,
.vertical-header .product-list-right {
	display: none;
}
.vertical-header .header .nav-menu ul,
.vertical-header .header .nav-menu ul ul {
	display: block;
	width: 100%;
    float: left;
}
.vertical-header .header .nav-menu ul li,
.vertical-header .header .nav-menu ul ul li {
    margin-left: 0;
    float: left;
    clear: both;
    margin-top: .575em;
    line-height: 1.4;
}
.vertical-header .header .nav-menu ul ul li {
	margin-left: .575em;
}
.vertical-header .header .nav-menu ul li:first-of-type {
	margin-top: 0;
}
.vertical-header .header .nav-menu ul ul li:first-of-type {
	margin-top: .575em;
}
.vertical-header #access {
	display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative;
    padding-top: 50px;
    padding-bottom: 50px;
    box-sizing: border-box;
}
.header-elements-wrapper {
	float: left;
	margin-top: auto;
	margin-top: 25px;
	clear: both;
}
.header-elements-wrapper > div {
	margin-top: 25px;
	margin-left: 0;
}
.header-elements-wrapper > div:first-of-type {
	margin-top: 0;
}
.vertical-header #page .info-header {
	padding-left: 0;
	margin-top: 1.15rem;
	float: left;
	display: block;
	text-align: left;
    clear: both;
    margin-left: 0;
}
.vertical-header #page .info-header p {
	margin-bottom: .5em;
}
.vertical-header #page .info-header p:last-of-type {
	margin-bottom: 0;
}
.vertical-header #page #sliding-menu-wrapper {
	display: none;
}
.vertical-header #page #sliding-menu-dropdown-wrapper {
	display: none;
}

.header-position-right #main-content {
	flex-direction: row-reverse;
}

.header-position-right #to-top.fixed {
	left: 40px;
	right: auto;
}

.header-position-left .entry-content > .wpb_row > .wrapper {
	padding-right: 3vw;
}
.header-position-right .entry-content > .wpb_row > .wrapper {
	padding-left: 3vw;
}

.header-position-left .entry-content > .full-width > .wrapper {
	padding-left: 30px;
	padding-right: 0;
}
.header-position-right .entry-content > .full-width > .wrapper {
	padding-right: 30px;
	padding-left: 0;
}

/* Vertical Header Submenu */
.vertical-header #page #access .nav-menu ul li ul {
    padding: 0;
    overflow: hidden;
    transition: max-height .2s ease;
    position: relative;
    width: 100%;
    margin-left: 0;
    display: block;
    max-width: none;
    visibility: visible;
    opacity: 1;
    float: left;
    transform: none;
    left: auto;
    min-width: auto;
    max-height: 0;
}
.vertical-header #page .header .nav-menu ul li li:hover ul,
.vertical-header #page .header .nav-menu ul li li.sfHover ul {
	margin-top: 0;
}
.vertical-header #page #access .nav-menu ul > .menu-item-has-children {
    display: inline-block;
}
.vertical-header #page #access .nav-menu ul > .menu-item-has-children > a {
    cursor: pointer;
}
.vertical-header #page #access .nav-menu .drop-icon {
    margin-left: .5em;
    right: auto;
}
.vertical-header .nav-menu-primary-header ul li a > span:after,
.vertical-header .nav-menu-secondary-header ul li a > span:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background: var(--primary-menu-link-color);
    transform: scaleX(0);
    transform-origin: bottom right;
    transition: transform .2s cubic-bezier(.67, .02, .2, .97), opacity .2s ease, background .2s ease;
    display: block;
    opacity: 1;
    bottom: 0;
}
.vertical-header .nav-menu-secondary-header ul li a > span:after {
	background: var(--secondary-menu-link-color);
}
.vertical-header .nav-menu-primary-header ul li a:hover > span:after,
.vertical-header .nav-menu-primary-header > ul .current-menu-item > a > span:after,
.vertical-header .nav-menu-primary-header > ul .current_page_item > a > span:after,
.vertical-header .nav-menu-primary-header > ul .current-menu-ancestor > a > span:after,
.vertical-header .nav-menu-primary-header > ul .current-menu-item > span a > span:after,
.vertical-header .nav-menu-primary-header > ul .current_page_item > span a > span:after,
.vertical-header .nav-menu-primary-header > ul .current-menu-ancestor > span a > span:after {
    transform-origin: bottom left;
    transform: scaleX(1);
}
.vertical-header .nav-menu-secondary-header ul li a:hover > span:after,
.vertical-header .nav-menu-secondary-header > ul .current-menu-item > a > span:after,
.vertical-header .nav-menu-secondary-header > ul .current_page_item > a > span:after,
.vertical-header .nav-menu-secondary-header > ul .current-menu-ancestor > a > span:after,
.vertical-header .nav-menu-secondary-header > ul .current-menu-item > span a > span:after,
.vertical-header .nav-menu-secondary-header > ul .current_page_item > span a > span:after,
.vertical-header .nav-menu-secondary-header > ul .current-menu-ancestor > span a > span:after {
    transform-origin: bottom left;
    transform: scaleX(1);
}
.vertical-header .header .nav-menu ul li li a {
    width: auto;
}
.vertical-header .header .menu-item.active > a:after {
	transform: perspective(100px) rotateX(180deg);
}

.vertical-header #comments-wrapper {
    padding-top: 0;
    border: none;
    max-width: 1170px;
    margin: 0 auto;
}

@media (max-width: 1023px) {
	.vertical-header #header-wrapper {
		position: fixed !important;
		height: 60px;
	}
	.vertical-header #header-wrapper.fixed #header {
	    overflow-y: initial;
	    overflow-x: initial;
	}
	.header-elements-wrapper {
		display: none;
	}
	.vertical-header .entry-content > .wpb_row > .wrapper {
		padding: 0;
	}
	.vertical-header .entry-content > .wpb_row.full-width.portfolio-padding > .wrapper {
		padding: 0 15px;
	}
	.single-post.main-sidebar-is-active.vertical-header #primary,
	.blog.main-sidebar-is-active.vertical-header #primary {
		padding-left: 15px;
		padding-right: 15px;
	}
	.vertical-header #header,
	.vertical-header #branding,
	.vertical-header .branding-helper,
	.vertical-header #access {
		height: 100%;
	}
	.vertical-header #header-wrapper {
	    padding: 0;
	    z-index: 1000;
	}
	.vertical-header #header {
		padding-left: 15px;
    	padding-right: 15px;
	}
	.vertical-header #branding {
		float: none;
	}
	.vertical-header #access {
		flex-direction: row;
    	align-items: center;
    	padding: 0;
	}
	.vertical-header #page .site-description,
	.vertical-header #page #access .info-header,
	.vertical-header #page .header .social-links-wrapper {
		display: none;
	}
	.vertical-header #site-title {
		display: flex;
		height: 100%;
	}
	.vertical-header #access .woocommerce-links-wrapper {
		align-items: center;
		margin-top: 0;
	}
	.vertical-header #comments-wrapper {
	    padding-bottom: 0;
	}
	.single-post.main-sidebar-is-active.vertical-header #primary,
	.blog.main-sidebar-is-active.vertical-header #primary {
		padding-left: 15px;
		padding-right: 15px;
	}
}