/*--------------------------------------------------------------
13.1 Header
--------------------------------------------------------------*/

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  margin: 0px 0px 50px 0px;
}



.top-bar {
  background: #0070ff;
  color: #fff;
  text-align: center;
  padding: 10px 20px;
  transition: transform .3s ease,opacity .3s ease;
  font-size: 15px;
  letter-spacing: .05em;
}

.site-header .header-content {
  padding: 0px;
  background: #fff;
  border-bottom: 1px solid #d7d9e6;
}

.top-bar a {
  color: #fff;
  text-underline-offset: 4px;
  color: inherit;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: 2px;
}

.top-bar a::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-left: 4px;
  background-color: #fff;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960'%3E%3Cpath d='M636.89-610.61 290.22-263.93q-12.92 12.91-31.83 12.79-18.91-.12-31.82-13.03-12.92-12.92-12.92-31.95t12.92-31.95L573-674.5H282.39q-19.15 0-32.32-13.17-13.18-13.18-13.18-32.33t13.18-32.33q13.17-13.17 32.32-13.17h400q19.15 0 32.33 13.17 13.17 13.18 13.17 32.33v400q0 19.15-13.17 32.33-13.18 13.17-32.33 13.17t-32.32-13.17q-13.18-13.18-13.18-32.33v-290.61Z'/%3E%3C/svg%3E") no-repeat center;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960'%3E%3Cpath d='M636.89-610.61 290.22-263.93q-12.92 12.91-31.83 12.79-18.91-.12-31.82-13.03-12.92-12.92-12.92-31.95t12.92-31.95L573-674.5H282.39q-19.15 0-32.32-13.17-13.18-13.18-13.18-32.33t13.18-32.33q13.17-13.17 32.32-13.17h400q19.15 0 32.33 13.17 13.17 13.18 13.17 32.33v400q0 19.15-13.17 32.33-13.18 13.17-32.33 13.17t-32.32-13.17q-13.18-13.18-13.18-32.33v-290.61Z'/%3E%3C/svg%3E") no-repeat center;
  -webkit-mask-size: contain;
  mask-size: contain;
  vertical-align: middle;
}

.blog .site-header,
.single-quote .site-header,
.page-template-default .site-header,
.page-template-page-builder-thin .site-header {
	margin: 0px;
}


/* Add flex alignment to header container */
.header-content-inner.container {
	display: flex;
	align-items: center;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.site-header .site-logo {
	display: block;
	margin-top: -4px;
}

.site-header .site-logo a {
	display: block;
	margin: 2px 0 0 0;
	padding: 0px;
}

.site-header .site-logo img {
	display: block;
	margin: 0px;
	padding: 0px;
}

.site-header .main-menu {
	width: calc(100% - 170px);
	margin-left: 35px;
}

/*--------------------------------------------------------------
12.0 Navigation
--------------------------------------------------------------*/

.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation a {
  display: block;
  font-size: 17px;
  line-height: 20px;
  padding: 26px 14px;
  text-decoration: none;
  color: #1c1c1c;
  font-weight: 500;
  letter-spacing: .02em;
  /*! font-family: Mona Sans; */
  font-family: "Mona Sans";
}


.main-navigation > a {
	float: left;
}

.main-navigation ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

.main-navigation li {
	position: relative;
	display: block;
	margin: 0;
	padding: 0;
}

.main-navigation li li,
.main-navigation li:last-child {
	border: none;
}

.main-navigation li li {
	-webkit-transition: background-color 0.2s ease-in-out;
	transition: background-color 0.2s ease-in-out;
}


.main-navigation li li a {
	-webkit-transition: color 0.3s ease-in-out;
	transition: color 0.3s ease-in-out;
}


/* CSS Arrow for dropdown menus - Desktop & Mobile */
.main-navigation li.menu-item-has-children > a::after,
.main-navigation li.page_item_has_children > a::after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 2px solid #171718;
	border-bottom: 2px solid #171718;
	transform: rotate(45deg);
	margin-left: 8px;
	vertical-align: middle;
	margin-top: -5px;
}


.main-navigation ul.menu li.menu-item-has-children > a.show-child {
	display: none;
}


/* Dropdown Submenu - Base styles for all screens */
.main-navigation ul ul {
  display: none;
  background: #ffffff;
  border-radius: 0 0 8px 8px;
  padding: 30px;
  margin: 0px;
  position: absolute;
  top: 100%;
  z-index: 99999;
  width: 280px;
  overflow: hidden;
  box-shadow: 3px 3px 0px #dee1e7;
  border: 1px solid #d7d9e6;
}

/* Desktop only - Center the dropdown */
@media screen and (min-width: 1024px) {
  .main-navigation ul ul {
    left: 50%;
    transform: translateX(-34%);
  }
  
  /* Keep deeper nested menus left-aligned (3rd level+) */
  .main-navigation ul ul ul {
    left: 100%;
    top: 0;
    transform: none;
    margin-top: -10px;
  }
}




.main-navigation ul ul a {
	letter-spacing: 0;
	padding: 20px 20px;
	position: relative;
	text-transform: none;
	font-size: 17px;
}

.main-navigation ul.menu > li {
	margin: 0px;
	float: left;
}

.main-navigation ul.menu > li:last-child {
}

.main-navigation ul.menu > li:last-child > a {
    background: #0070ff;
    color: #ffffff;
    margin: 11px 0 11px 8px;
    padding: 15px 26px 16px;
    border-radius: 6px;
    font-weight: 500;
    font-size: 18px;
    transition: all 0.2s ease;
    /*! border: 1.75px solid #272728; */
    /*! box-shadow: 0px 1px 0px #272728; */
}

.main-navigation ul.menu > li:last-child > a:hover {
	box-shadow: none;
	transform: translate(0px, 1px);
}

.main-navigation.toggled-on ul.nav-menu {
	display: block;
}


.main-navigation ul li.menu-item-has-children:hover:before,
.main-navigation ul li.menu-item-has-children:hover:after,
.main-navigation ul li.page_item_has_children:hover:before,
.main-navigation ul li.page_item_has_children:hover:after {
	display: block;
}

.main-navigation ul li.menu-item-has-children:before,
.main-navigation ul li.page_item_has_children:before {
	border-color: transparent transparent #fff;
	bottom: 0;
}



.main-navigation ul li:hover > ul {
	display: block;
}

.main-navigation ul ul ul {
	left: 100%;
	margin-top: -1px;
	top: 0;
}

.main-navigation ul ul li.menu-item-has-children:hover:before,
.main-navigation ul ul li.menu-item-has-children:hover:after,
.main-navigation ul ul li.page_item_has_children:hover:before,
.main-navigation ul ul li.page_item_has_children:hover:after {
	display: none;
}

/* Menu toggle - Clean 2-bar hamburger implementation */
.site-header .menu-toggle {
	float: right;
	background: none;
	border: none;
	box-shadow: none;
	text-shadow: none;
	color: #171718;
	display: none;
	line-height: 0;
	padding: 15px;
	margin: -10px;
	text-transform: uppercase;
	min-width: 44px;
	min-height: 44px;
	transition: opacity 0.3s ease;
	position: relative;
	z-index: 11111111;
}

/* The main hamburger bar - bottom bar */
.ic-menu {
	display: inline-block;
	width: 18px;
	height: 2px;
	background: #171718;
	position: relative;
	border-radius: 8px;
	transition: transform 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* Top bar using :before */
.ic-menu:before {
	content: '';
	position: absolute;
	width: 18px;
	height: 2px;
	background: #171718;
	border-radius: 8px;
	top: -8px;
	left: 0;
	transition: transform 0.3s cubic-bezier(0.4, 0.0, 0.2, 1), 
	            top 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* When menu is open - transform to X */
.menu-toggle[aria-expanded="true"] .ic-menu {
	transform: rotate(45deg);
	background: #171718;
}

.menu-toggle[aria-expanded="true"] .ic-menu:before {
	top: 0;
	transform: rotate(90deg);
	background: #171718;
}

.site-header .menu-toggle:hover,
.site-header .menu-toggle:focus {
	background: none;
	box-shadow: none;
	text-shadow: none;
}

.site-header .menu-toggle:focus {
	outline: 0;
}



.header-phone a {
  font-weight: 600;
  color: #171718;
  font-size: 18px;
  margin-right: 10px;
  font-family: Mona Sans;
}

@media screen and (min-width: 1024px) {
	
	body.admin-bar .site-header {
  top: 32px;
}
}

/* Mobile Styles */
@media screen and ( max-width: 1023px ) {

.site-header .menu-toggle {
	display: block;
}

.site-header .header-content {
  padding: 24px 0px;
  }
  

.site-header .main-menu {
	position: relative;
	float: right;
	margin-top: -2px;
}

.main-navigation {
	background: #ffffff;
	float: none;
	position: absolute;
	top: 100%;
	right: 0px;
	bottom: auto;
	left: auto;
	display: none;
	z-index: 9999;
	width: 300px;
	border-radius: 8px;
	box-shadow: 0px 16px 30px 5px rgba(2, 2, 26, 0.2);
}

.main-navigation.toggled-on {
	display: block;
	position: fixed;
	z-index: 11;
	background: #f6f8fe;
	width: 100%;
	left: 0;
	top: 0;
	height: 100%;
	padding-top: 100px;
}

.main-navigation::before,
.main-navigation::after {
	border-style: solid;
	border-width: 0 6px 6px;
	content: "";
	display: none;
	height: 0;
	position: absolute;
	top: -6px;
	right: 55px;
	bottom: auto;
	left: auto;
	width: 0px;
	z-index: 100000;
}

.main-navigation.toggled-on::before,
.main-navigation.toggled-on::after {
	display: block;
}

.main-navigation::before {
	border-color: transparent transparent #ffffff;
}

.main-navigation::after {
	border-color: transparent transparent #ffffff;
	top: -5px;
}

.main-navigation a {
	padding: 10px 20px;
}

.header-phone {
	display: none !important;
}

.main-navigation ul {
	padding: 1rem;
}

.main-navigation ul.menu > li {
	float: none;
	padding: 0px;
	margin: 0px;
}

.main-navigation ul li:hover > ul {
	display: none;
}

.main-navigation ul.menu > li:last-child {
	margin: 0px;
}

.main-navigation ul.menu > li:last-child > a {
	padding: 10px 20px;
}


.main-navigation ul li.menu-item-has-children:hover:before,
.main-navigation ul li.menu-item-has-children:hover:after,
.main-navigation ul li.page_item_has_children:hover:before,
.main-navigation ul li.page_item_has_children:hover:after {
	display: none;
	position: static;
	content: normal;
}

/* Hide dropdown toggle arrows and show all submenus expanded */
.main-navigation ul.menu li.menu-item-has-children > a.show-child {
	display: none !important;
}

/* Show all submenus expanded by default */
.main-navigation ul ul {
	display: block !important;
	width: auto;
	float: none;
	position: static;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	border: none;
	background: #f6f8fe;
}

.main-navigation ul.menu > li > ul {
	box-shadow: none;
}

.main-navigation ul ul a {
	letter-spacing: 0;
	padding: 12px 20px 12px 40px;
	font-size: 16px;
}

.main-navigation ul ul ul a {
	letter-spacing: 0;
	padding: 12px 20px 12px 60px;
	color: #888;
}

.main-menu .main-navigation ul ul.toggled-on {
	display: block;
}

.mobile-footer {
	z-index: 111;
}

html.body-on {
	overflow: hidden;
}

}