
/* Ensure various mobile elements elements transition smoothly */
.mobile_menu_section .h_m_l, .mobile_menu_section .h_m_i, .mobile_menu_section .h_m_l_s {-webkit-transition: all 0.35s ease;-moz-transition: all 0.35s ease;-o-transition: all 0.35s ease;transition: all 0.35s ease;}

/* The hamburger menu bar */
.mobile_menu_section .h_m_i {position: relative;color: rgba(0,0,0,1);line-height: 1rem;font-size: 1.1rem;letter-spacing:1.5px;height:58px;padding: 0 16px 0 15px;cursor: pointer;font-weight: 600;background: rgba(255,255,255,1);float: left;width: 100%;text-align: center;text-transform: uppercase;}
.mobile_menu_section .h_m_i .h_m_i_burger {display: inline-block;width: 27px;font-size: 0;position: relative;top: 5px;margin: -10px 3px 0;}
.mobile_menu_section .h_m_i .h_m_i_burger span {width: 100%;height: 4px;background: rgba(0,0,0,1); margin: 3px 0;display: block;}
.mobile_menu_section .h_m_i .h_m_i_inside {position:relative;top:50%;left:50%;transform:translate(-50%,-50%);}

/* The mobile menu section */
.mobile_menu_section {text-align:center;display:inline-block;}
.mobile_menu_section.smaller {width:auto;}
.mobile_menu_section.fuller {width:100%;}
.mobile_menu_section .h_m_l {margin-bottom:13px; z-index: 999;position: fixed;height: 100%;background: rgba(255,255,255,1);padding:15px 19px 59px 19px;overflow-y: scroll;box-shadow:-2px 0px 18px 0px #333;top:0;left:-110%;width: 100%;text-align:left;}
.mobile_menu_section .h_m_l.menu_show {left:0;}
.mobile_menu_section .h_m_l ul {float:left;width:100%;margin:0 0 10px 0;padding-left:0;}
.mobile_menu_section .h_m_l ul li {list-style:none;float:left;width:100%;position: relative;}
.mobile_menu_section .h_m_l ul li .sub_menu_plus {position: absolute;top: 1px;right: 0;color: rgba(255,255,255,1);height: 100%;width: 35px;text-align: center;font-size: 1.25rem;line-height: 0.95rem;background:rgba(0,0,0,1);}
.mobile_menu_section .h_m_l ul li .sub_menu_plus b {display:none;vertical-align: middle;top: 50%;position: relative;margin-top: -10px;}
.mobile_menu_section .h_m_l ul li .sub_menu_plus b.show_arrow {display:block;}
.mobile_menu_section .h_m_l ul li .sub_menu_plus b.sub_arrow_2 {font-size:1.1rem;}
.mobile_menu_section .h_m_l ul li a {float: left;width: 100%;color: rgba(0,0,0,1);font-weight: 500;border-top: 1px solid rgba(0,0,0,1);line-height: 1.2em;font-size: 1rem;letter-spacing: 0.65px;padding: 15px 40px 15px 0;text-transform:uppercase;text-decoration:none;}
.mobile_menu_section .h_m_l ul li.current-menu-item a {background:none !important;}
.mobile_menu_section .h_m_l ul li:first-child a {border:none;}
.mobile_menu_section .h_m_l ul li.menu-item-has-children {cursor:pointer;}
.mobile_menu_section .h_m_l ul li.menu-item-has-children ul.sub-menu {margin:0 0 0 0;display:none;padding:0 0 20px 0;-webkit-transition: none;-moz-transition: none;-o-transition: none;transition: none;}
.mobile_menu_section .h_m_l ul li.menu-item-has-children ul.sub-menu a {font-weight:300;padding:6px 0;font-size:0.9rem;border:none;text-transform:capitalize;pointer-events:visible;}
.mobile_menu_section .h_m_l ul li.menu-item-has-children ul.sub-menu.show_sub {display:block;}
.mobile_menu_section .h_m_l ul li.menu-item-has-children.current_page_item:hover ul.sub-menu {display:none}
.mobile_menu_section span.h_m_l_s {float: right;padding: 10px 16px 13px;line-height: 1.3rem;font-size: 1.5rem;font-weight: 500;cursor:pointer;margin-bottom:10px;background:rgba(0,0,0,1);color:rgba(255,255,255,1);}

/* Mobile details styling */
.h_m_l_details {width: 100%;display: inline-block;margin: 15px 0 15px 0;padding: 0 0 0 12px;border-left: 5px solid rgba(0,0,0,1);}
.h_m_l_details p {color: rgba(0,0,0,1);font-weight: 400;margin: 0 0 6px 0;line-height:1.05em;}
.h_m_l_details p:last-child {margin:0;}
.h_m_l_details p a {text-decoration:none;color: rgba(0,0,0,1);}

/* Desktop navigation */
.desktop_menu_section nav {width:100%;float:left;background:rgba(255,255,255,1);display: block;padding:18px 0 20px;text-align:left;}
.desktop_menu_section nav .container {overflow: visible;}
.desktop_menu_section nav ul {margin:0;padding:0;}
.desktop_menu_section nav ul li {width:auto;position: relative;display:inline-block;}
.desktop_menu_section nav ul li a {width:auto; text-align:center; display:block;color:rgba(0,0,0,1); text-decoration:none;font-size:0.85em;padding:0 10px;border:none;font-weight:500;letter-spacing:0.4px;height: 30px;line-height: 30px;}
.desktop_menu_section nav ul li.a-active a, .desktop_menu_section nav ul li.current-menu-item a {background:none !important;text-decoration: none}
.desktop_menu_section nav ul li.menu-item-has-children a::after {content:'\25BE';margin-left: 4px;position: relative;top: -1px;}
.desktop_menu_section nav ul li ul.sub-menu, nav.main-navigation li.menu-item-has-children ul.sub-menu, nav.main-navigation li.menu-item-has-children.current_page_item ul.sub-menu {display: none;margin:0;overflow: hidden;}
.desktop_menu_section nav ul li:hover ul.sub-menu {position: absolute;width:105px;text-align: center;z-index: 9999;left:10px;padding-top:20px;}
.desktop_menu_section nav ul li.menu-item-has-children ul.sub-menu li {font-size:0.7em;width:100%;}
.desktop_menu_section nav ul li.menu-item-has-children ul.sub-menu li a, .desktop_menu_section nav li.menu-item-has-children.current_page_item ul.sub-menu a {width:100%;display:block;background:rgba(17,17,17,1) !important;font-size:0.95em;line-height:1em;height:auto;padding:15px 0 15px 14px;font-weight:400;border-bottom: solid 1px rgba(255,255,255,1);text-align:left;}
.desktop_menu_section nav ul li.menu-item-has-children ul.sub-menu li:last-child a {border:none;}
.desktop_menu_section nav ul li.menu-item-has-children ul.sub-menu li a::after {content:'';}
.desktop_menu_section nav ul li:hover ul.sub-menu {display: block}

/* Mobile popup menu */
@media (min-width:500px) {
	.mobile_menu_section .h_m_l {padding:25px 29px 69px 29px;}
}

/* Desktop text size styling */
@media (min-width:1200px) {
    .desktop_menu_section nav ul li a {padding:0 19px;font-size:1.0em;}
    .desktop_menu_section nav ul li:hover ul.sub-menu {left:17px;width:171px;}
	.desktop_menu_section nav ul li.menu-item-has-children ul.sub-menu li {font-size:0.85em;}
}

/* General styling */
@media (min-width:960px) {
    .mobile_menu_section .h_m_l {left:auto;right:-80%;max-width:475px;}
    .mobile_menu_section .h_m_l.menu_show {left:auto;right:0;}
}

/* Centre align desktop navigation */


/* Menus to show / hide */

	.desktop_menu_section {display:none;}
	@media (min-width:980px) {
	    .mobile_menu_section {display:none;}
	    .desktop_menu_section {display:block;}
	}


/* Custom CSS styling */
.desktop_menu_section nav ul li a { font-weight: 600; }
.desktop_menu_section .container { width: 100%; text-align: right; padding: 0; }
.desktop_menu_section nav { padding: 14px 0 20px; }
@media (min-width: 1200px) {
.desktop_menu_section nav ul li a {
    padding: 0 14px;
    font-size: 1.0em;
}
}
.desktop_menu_section nav ul li a { padding: 0 7px; }