/*======================================
Theme Name: 316 Strategy Group Child Theme
Theme URI: https://316strategygroup.com/
Description: A custom child theme designed for Your Website
Version: 1.0
Author: Hannah Callahan
Author URI: https://316strategygroup.com/
Template: Divi
======================================*/


/*Flex Classes*/
.hc-vertical-align {
	-webkit-box-orient: vertical;
	box-align: center;
	-ms-flex-direction: column;
	display: -webkit-box;
    display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: center;
	
}

.hc-vertical-stretch {
	-webkit-box-orient: vertical;
	-ms-flex-direction: column;
	display: -webkit-box;
    display: -ms-flexbox;
	box-align: stretch;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.hc-vertical-end {
	-webkit-box-orient: vertical;
	box-align: end;
	-ms-flex-direction: column;
	display: -webkit-box;
    display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.hc-horizontal-align {
	-webkit-box-orient: horizontal;
	-ms-flex-direction: row;
	display: -webkit-box;
    display: -ms-flexbox;
	box-align: center;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.hc-horizontal-stretch {
	-webkit-box-orient: horizontal;
	-ms-flex-direction: row;
	display: -webkit-box;
    display: -ms-flexbox;
	box-align: stretch;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}


/*Mobile Flex*/
@media all and (max-width: 980px) {
  .et_pb_row.reverse-on-mobile {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media (max-width: 980px) {
.mobile-flex .et_pb_row {
  display: flex; }
.mobile-flex .et_pb_row {
  flex-wrap: wrap; }
.mobile-flex.two-columns .et_pb_column {
  width: 50%; } 
.mobile-flex.three-columns .et_pb_column {
  width: 33.3%; } 
}
@media (max-width: 479px) {
.mobile-flex.two-columns .et_pb_column {
  width: 50% !important;}
.mobile-flex.three-columns .et_pb_column {
  width: 100%; }
}



/*Back To Top Button*/
.et_pb_scroll_top:before {
    content: "\42";
} 
.et_pb_scroll_top.et-pb-icon {
    right: 20px;
    bottom: 20px;
    border-radius: 0px;
    background: #000000;
    padding: 10px;
    font-size: 1.2rem;
    transition: all .1s ease-in-out; 
}
.et_pb_scroll_top.et-pb-icon:hover {
    background: #000000;
    transition: all .1s ease-in-out;
}




/*MENU*/

/*ALTERNATE MENU STYLES*/
/*Footer Menu*/
.hc-vertical-menu .et-menu > li {
        padding-left: 0px;
        padding-right: 0px;
}

.hc-vertical-menu .et_pb_menu__menu nav ul li {
        display: block;
        width: 100%;
        margin: 5px 0;
}
@media (max-width: 980px) {
        /*open the mobile menu up and use on all devices*/
        .et-db #et-boc .et-l .hc-vertical-menu .et_pb_menu__menu {
                display: flex;
        }
        /*hide the hamburger icon*/
        .et-db #et-boc .et-l .hc-vertical-menu .et_mobile_nav_menu {
                display: none;
        }
}
@media (max-width: 980px) {
.hc-vertical-menu.et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center; }}

.hc-vertical-menu .et_mobile_menu {
        border: 1px solid #000000 !important;
}

.hc-vertical-menu.et_pb_menu .et_mobile_menu {
        text-align: center !important;
}

.hc-vertical-menu .et_mobile_menu li a {
        border-bottom: none;
}

.hc-vertical-menu.et_pb_menu .et-menu {
        margin-left: 0px;
        margin-right: 0px;
}

/*OPEN MENU: show desktop menu on phone*/

@media (max-width: 980px) {
        .hc-open-menu .et_pb_menu__menu {
                display: flex!important;
        }
        .hc-open-menu .et_mobile_nav_menu {
                display: none!important;
        }
}

/*MOBILE MENU STYLES*/
/*change hamburger icon to x when mobile menu is open*/
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
        content: '\4d';
}
/* Make mobile menu fullwidth */
@media only screen and (max-width: 980px) {
.et_mobile_menu {
min-width: 100vw;
margin-left: -3vw;
        }}


/*CSS Code for Collapsing Submenus on Mobile*/
/*adjust the new toggle element which is added via jQuery*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
        width: 44px;
        height: 100%;
        padding: 0px !important;
        max-height: 44px;
        border: none;
        position: absolute;
        right: 0px;
        top: 0px;
        z-index: 999;
        background-color: transparent;
}


/*some code to keep everything positioned properly*/
ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
        position: relative;
}


/*remove default background color from menu items that have children*/
.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
        background-color: transparent;
}


/*hide the submenu by default*/
ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
        display: none !important;
        visibility: hidden !important;
}


/*show the submenu when toggled open*/
ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
        display: block !important;
        visibility: visible !important;
}


/*adjust the toggle icon position and transparency*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
        text-align: center;
        opacity: 1;
}


/*submenu toggle icon when closed*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
        top: 10px;
        position: relative;
        font-family: "ETModules";
        content: '\33';
        color: #fff;
		background: #000;
        border-radius: 30px;
        padding: 5px;
}
.mobile_menu_bar {
        bottom: 5px !important;
}

/*submenu toggle icon when open*/
ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
        content: '\32';
}


/*add point on top of the menu submenu dropdown*/
.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
        position: absolute;
        right: 5%;
        margin-left: -20px;
        top: -14px;
        width: 0;
        height: 0;
        content: '';
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        border-bottom: 20px solid #ffffff;
}

/*adjust the position of the hamburger menu*/
.mobile_menu_bar {
        position: relative;
        display: block;
        bottom: 10px;
        line-height: 0;
}


/*ADDITIONAL ELEMENTS*/

/* Hide element on Desktop */
@media only screen and (min-width: 981px) {
    .hide-on-desktop {
        display: none !important;
    }
}

/* Hide element on Tablet/Phone */
@media only screen and (max-width: 980px) {
    .hide-on-mobile-tablet {
        display: none !important;
    }
}



/*MEGA MENU STYLING*/
.et-menu-nav li.mega-menu>ul {
        padding: 40px;
        border-radius: 0px;
}
.et-menu-nav li.mega-menu li>a {
        text-transform: initial !important;
}
.et-menu-nav li.mega-menu>ul>li>a:first-child {
        text-transform: uppercase !important;
}
.et_pb_menu .nav li ul.sub-menu a {
        text-transform: initial;
        font-weight: 500; }

.hc-main-menu.et_pb_menu .et_pb_menu__menu .nav ul.sub-menu li a {
        margin-top: 0px !important;
}

.hc-main-menu .nav ul li a:hover {
  		background-color: #ffffff20;
        border-radius: 0px;
}
