/*
 Theme Name:   Savvy
 Theme URI:    https://amyhooke.com/
 Description:  Custom Child Theme
 Author:       Amy Hooke
 Author URI:   https://amyhooke.com/
 Template:     Divi
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

/*--------------- SCROLL TO TOP BUTTON
----------------------------------------------------------------------------------*/

.et_pb_scroll_top.et-visible,
.et_pb_scroll_top.et-hidden {
    margin: 0px 15px;
    bottom: 3%;
    border-radius: 50%;
    background-color: #842894;
    color: #fff;
}

/*--------------- DOUBLE BUTTON INLINE
----------------------------------------------------------------------------------*/
.btn_float {
    float: left;
}

/*--------------- FOOTER
----------------------------------------------------------------------------------*/
ul#menu-main-menu, .bottom-nav {
    text-align: center !important;
}

/*--------------- SHADOW FOR COLUMN
----------------------------------------------------------------------------------*/
.shadow_column {
    box-shadow: 0px 20px 75px 0px rgba(0,0,0,0.1);
}
/*--------------- MENU MOBILE
----------------------------------------------------------------------------------*/

@media screen and (max-width: 980px) {
    .container {
        width: 100% !important;
    }
    .et_header_style_left .logo_container {
        padding-left: 25px;
    }
	
	/* Line below logo above hamburger stack */
    .et_header_style_centered #main-header .mobile_nav {
        background-color: transparent;
    }
    .mobile_nav.closed .select_page {
        display: none;
    }
	
    .et-fixed-header#main-header {
        background-color: #000 !important;
    }
}
/* line below logo & above X */
.et_mobile_menu {
    top: 0 !important;
    border-top: 3px solid #842894 !important;
    ;
    background-color: #fff !important;
    padding: 25% 0;
}
/* font size */
.et_mobile_menu li a {
    text-align: center;
	overflow-wrap: normal;
    font-size: 0.95em;
    border: 0;
    padding: 15px 0;
    text-transform: uppercase;
    letter-spacing: 6px;
}

/* Selected menu ~ colour */
.mobile_nav ul#mobile_menu .current_page_item > a {
    color: #842894;
	background-color: #fff;
}

/* submenu text ~ colour */
.mobile_nav ul#mobile_menu li ul li a {
    font-size: .85em !important;
    margin: auto;
    color: #000 !important;
	background-color:rgba(132,40,148,0.3);
    padding-top: 0.2em;
}
/* selected menu ~ colour */
.et_mobile_menu li a:hover {
    color: #842894;
	background-color: #fff;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

/* Hamburger stack colour */
.mobile_menu_bar:before {
    padding-right: 25px;
    color: #842894 !important;
}
/* x colour, when changed from hamburger stack */
.mobile_nav.opened .mobile_menu_bar:before {
    content: "\4d";
    z-index: 99999;
    color: #842894 !important;
}
/* NESTING MOBILE MENU */
/* when mobile menu is open, change hamburger icon to x icon */

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
    content: '\4d';
}
/* makes sub sub menu icon be right arrow instead of down arrow */

#top-menu .menu-item-has-children .menu-item-has-children > a:first-child::after,
#et-secondary-nav .menu-item-has-children .menu-item-has-children > a:first-child::after {
    content: '5';
}
/* - mobile menu toggling elements, injected via jQuery - */
/* make menu list item be relative, to be able to position toggle within this item */

#main-header #mobile_menu.et_mobile_menu .menu-item-has-children {
    position: relative;
}
/* the new toggle element, which is added via jQuery */

#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle {
    position: absolute;
    background-color: #842894;
    z-index: 1;
    width: 36px;
    height: 36px;
    line-height: 36px;
    border-radius: 50%;
    top: 6px;
    right: 10px;
    cursor: pointer;
    text-align: center;
}
/* the new toggle element when popped */

/* when the down arrow becomes when selected */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped {
    background-color: #edf000;
}
/* toggle icon ~ down arrows */

#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle::before {
    font-family: "ETmodules" !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
	color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 36px;
    font-size: 24px;
    text-transform: none;
    speak: none;
    content: '\33';
}
/* toggle icon when triggered */

#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped::before {
    content: '\32';
}
/* hide sub menus by default */

#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle ~ ul.sub-menu {
    display: none !important;
    padding-left: 0;
}
/* show sub menu when triggered via jQuery toggle, and add slight bg color */

/* submenu background ~ colour */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped ~ ul.sub-menu {
    display: block !important;
    background-color: #ffc807;
}
/* remove sub menu list item left padding, since padding will be on anchors */

#main-header #mobile_menu.et_mobile_menu li li {
    padding-left: 0;
}
/* adjust mobile menu anchors side paddings */

#main-header #mobile_menu.et_mobile_menu li a {
    padding-left: 20px;
    padding-right: 20px;
}
/* indent sub menu */

#main-header #mobile_menu.et_mobile_menu li li a {
    padding-left: 40px;
    padding-right: 20px;
}
/* indent sub sub menus further */

#main-header #mobile_menu.et_mobile_menu li li li a {
    padding-left: 60px;
    padding-right: 0px;
}
/* if mobile menu anchor has toggle, make room for it to fit next to the link */

#main-header #mobile_menu.et_mobile_menu .menu-item-has-children .sub-menu-toggle + a {
    padding-right: 44px;
}
/* - end mobile menu toggling elements - */
/* undo Divi's default styling of mobile menu links that have children */

#main-header #mobile_menu.et_mobile_menu .menu-item-has-children > a {
    background-color: transparent;
    font-weight: inherit;
	padding-left: 45px;
}
/* make the current page's mobile menu link be different */

#main-header #mobile_menu.et_mobile_menu li.current-menu-item > a {
    font-weight: bolder;
}

/*--------------- COLUMN STACKING ORDER ON MOBILE
----------------------------------------------------------------------------------*/
@media all and (max-width: 980px) {
.custom_row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
-webkit-flex-wrap: wrap; /* Safari 6.1+ */
flex-wrap: wrap;
}
 
.first-on-mobile {
-webkit-order: 1;
order: 1;
}
 
.second-on-mobile {
-webkit-order: 2;
order: 2;
}
 
.third-on-mobile {
-webkit-order: 3;
order: 3;
}
 
.fourth-on-mobile {
-webkit-order: 4;
order: 4;
}
/*** add margin to last column ***/
.custom_row:last-child .et_pb_column:last-child {
margin-bottom: 30px;
}
}
/*--------------- MAKE IT PRESENT WELL ON MOBILE & TABLET
----------------------------------------------------------------------------------*/
/* Make email address not spill off screen on mobile, in header and footer */
#mobile_menu a[href^="mailto"] { word-break: break-all; }

#main-footer a[href^="mailto"] { word-break: break-all; }

/* Make email address not spill off screen on mobile, in header and footer */
#divimegapro-300 a[href^="mailto"] { word-break: break-all; }

/* make bottom menu appear along the bottom of tablet, instead of partly running up the side */
#et-footer-nav { clear: both; }

/* Hide Top Header (coloured bar with mobile phone + email) on Mobile */
@media only screen and (max-width: 981px) {
#top-header {height: 0px; visibility: hidden; }
}

/*---------[GQ ALIGN BUTTONS TO BOTTOM]-----------*/ 
        /* buttons fixed to the bottom */
            .gq_r_fixed_buttons .et_pb_column {
                padding-bottom:30px;}
            .gq_r_fixed_buttons .et_pb_button_module_wrapper {
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                margin: auto;}

/* hide top header on scroll by Geno Quiroz */
    #top-header {
            z-index: 9;}
    #main-header{
        transition: 0.5s;
        -moz-transition: 0.5s;
        -webkit-transition: 0.5s;}
    #main-header.et-fixed-header {
        top: 0 !important;}

/*--------------- CONTACT FORM 7 STYLING
----------------------------------------------------------------------------------*/
/*--- 2 Column Form Styles Start ---*/
#left {
    width: 48.5%;
    float: left;
    margin-right:3%;
} 
#right {
    width: 48.5%;
    float: left;
}
.clearfix:after {
    content:"\0020";
    display:block;
    height:0;
    clear:both;
    visibility:hidden;
    overflow:hidden;
    margin-bottom: 15px;
}
.clearfix {
    display:block;
}
/*--- 2 Column Form Styles End ---*/

/* Lower CF7 send button relative to Message field */

body #page-container .dsm_contact_form_7_0 .wpcf7-form-control.wpcf7-submit {
margin-top: -10px;/* change this to what you want  */
float: right;
}
@media screen and (min-width: 486px) {
	.dsm_contact_form_7_0 .wpcf7-form-control.wpcf7-submit {
	margin-top: -106px!important;	
	}}
@media screen and (max-width: 485px) {
	.dsm_contact_form_7_0 .wpcf7-form-control.wpcf7-submit {
	width: 100%!important;
	}}

/*------------- Move reCaptcha field relative to CF7 ------------*/
.anr_captcha_field {
margin-top: -10px !important;	
}

@media screen and (max-width: 381px) {
	.anr_captcha_field {
	margin-left: -7vw !important;}
}

/*Style CF7 success + failure messages*/

.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors {
    color: #D8000C;
    background-color: #FFBABA;
    border: 0;
    padding: 10px;
}
.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok {
    color: #4F8A10;
    background-color: #DFF2BF;
    border: 0;
    padding: 10px;
}
div.wpcf7-mail-sent-ok:before,div.wpcf7-validation-errors:before {
    font: 26px/30px dashicons;
    margin-right: 16px;
    vertical-align: middle;
}
div.wpcf7-mail-sent-ok:before {
    content: "\f147";
}
div.wpcf7-validation-errors:before {
    content: "\f158";
}
span.wpcf7-form-control .checkbox { size: 25px; }

/*------------- SOCIAL MEDIA ICONS via Font Awesome ------------*/
i.fa.fa-facebook-square {font-size:22px!important;}
i.fa.fa-linkedin-square {font-size:22px!important;}

/*---------------[GQ - OUTLINE]-------------------*/

#top-menu li {
	padding-right: 15px;
}

#top-menu > li > a {
	padding: 15px 15px!important;
	margin-bottom: 15px;
}

#top-menu .menu-item-has-children > a:first-child:after {
	display:none;
}

#top-menu-nav > ul > li > a, .et-fixed-header #top-menu-nav > ul > li > a {
/* 	background: #000; */
	color: #333 !important;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px transparent;
	position: relative;
}

#top-menu-nav > ul > li > a:before {
	content: '';
	position: absolute;
/* 	border: #2B9F1B solid 1px; */
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: top, right, bottom, left;
	transition-property: top, right, bottom, left;
}

#top-menu-nav > ul > li > a:hover, .et-fixed-header #top-menu-nav > ul > li > a:hover {
	background: #842894;
	color: #fff !important;
}

#top-menu li.current-menu-item>a, .et-fixed-header #top-menu li.current-menu-item>a {
	color: #842894 !important;
}

#top-menu-nav > ul > li > a:hover:before, 
#top-menu-nav > ul > li > a:focus:before, 
#top-menu-nav > ul > li > a:active:before {
	border: #842894 solid 2px;
	top: -5px;
	right: -5px;
	bottom: -5px;
	left: -5px;
}

.nav li ul {
	border-color: #842894;
}

#header-button, #header-button:after {
	font-size: 24px;
}

body #page-container #header-button:hover {
	color: #842894 !important;
}

.dsm_text_divider_0 .dsm-text-divider-wrapper {
	height: auto !important;
}

header .container {
	max-width: 1580px;
}

img#logo {
	filter: brightness(90%);
}

/* mobile menu */
#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped {
	background-color: #842894;
}

#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped ~ ul.sub-menu {
	background-color: #842894;
	padding-top: 10px;
}

#main-header #mobile_menu.et_mobile_menu .sub-menu-toggle.popped ~ ul.sub-menu .current_page_item > a {
	background-color: transparent;
}



/*--------------- PUT YOUR CSS CODE BELOW THIS LINE -----------------------*/