/*
 Theme Name:     Ace of Spades Contracting
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Husk
 Author URI:     https://www.husk.co.nz/
 Template:       Divi
 Version:        1.0.6
*/

/*------------------------------------------------*/
/*--------------[typography]-----------*/
/*------------------------------------------------*/
h1, h2, h3, h4, h5, h6, .et_pb_posts .pagination a {
	font-family: 'Poppins';
	line-height: 1.2em;
	text-transform: initial;
	font-weight: 900;
}

h1, 
.et_pb_column_1_3 h1, 
.et_pb_column_1_4 h1, 
.et_pb_column_1_5 h1, 
.et_pb_column_1_6 h1, 
.et_pb_column_2_5 h1{
	font-size: 64px;
} 

.hero .et_pb_text_inner h1 {
	font-size: 32px;
}

h2,
.et_pb_column_1_3 h2, 
.et_pb_column_1_4 h2, 
.et_pb_column_1_5 h2, 
.et_pb_column_1_6 h2, 
.et_pb_column_2_5 h2, 
.et_pb_title_container h1.entry-title {
	font-size: 56px;
}

h3, 
.et_pb_column_1_3 h3, 
.et_pb_column_1_4 h3, 
.et_pb_column_1_5 h3, 
.et_pb_column_1_6 h3, 
.et_pb_column_2_5 h3,
.et_pb_post h2,
h5.et_pb_toggle_title {
	font-size: 40px;
}

h4,
.et_pb_column_1_3 h4, 
.et_pb_column_1_4 h4, 
.et_pb_column_1_5 h4, 
.et_pb_column_1_6 h4, 
.et_pb_column_2_5 h4,
.et_pb_blog_grid h2 {
	font-size: 32px;
}

h5,
.et_pb_column_1_3 h5, 
.et_pb_column_1_4 h5, 
.et_pb_column_1_5 h5, 
.et_pb_column_1_6 h5, 
.et_pb_column_2_5 h5,
.et_pb_column_1_3 .et_pb_blurb_container h4 {
	font-size: 20px;
}

h6,
.et_pb_column_1_2 h6,
.et_pb_column_1_3 h6, 
.et_pb_column_1_4 h6, 
.et_pb_column_1_5 h6, 
.et_pb_column_1_6 h6, 
.et_pb_column_2_5 h6 {
	font-size: 18px;
	padding-bottom: 0px;
}

p, .et_pb_toggle_content, .et_pb_text_inner, .et_pb_blurb_description, .et_pb_tab_content, ul li, ol li, cite {
	font-family: 'Poppins';
	font-size: 16px;
	line-height: 1.8em;
	font-weight: 500;
}

.testimonial .et_pb_text_inner, .testimonial .et_pb_text_inner p {
	font-weight: 500;
}

.small .et_pb_text_inner, 
.small .et_pb_text_inner p, 
.small .et_pb_text_inner ul li, 
.small .et_pb_text_inner ol li {
	font-size:11px;
}

.popup-text .et_pb_text_inner, 
.popup-text .et_pb_text_inner p, 
.popup-text .et_pb_text_inner ul li, 
.popup-text .et_pb_text_inner ol li {
	font-size:13px;
	color: #333333;
}

.large .et_pb_text_inner, 
.large .et_pb_text_inner p, 
.large .et_pb_text_inner ul li, 
.large .et_pb_text_inner ol li {
	font-size:18px;
}

.huge .et_pb_text_inner, 
.huge .et_pb_text_inner p {
	font-size:20vw;
	line-height: 0.7em;
	text-transform: uppercase;
	font-weight: 700;
}

.capitalize .et_pb_text_inner h2, 
.capitalize .et_pb_text_inner h3{
	text-transform: capitalize;
}

@media only screen and (max-width: 767px) {	
	.et_pb_title_container h1.entry-title,
	h1, 
	.et_pb_column_1_3 h1, 
	.et_pb_column_1_4 h1, 
	.et_pb_column_1_5 h1, 
	.et_pb_column_1_6 h1, 
	.et_pb_column_2_5 h1 {
		font-size: 35px;
	}
	 
	h2, 
	.et_pb_column_1_3 h2, 
	.et_pb_column_1_4 h2, 
	.et_pb_column_1_5 h2, 
	.et_pb_column_1_6 h2, 
	.et_pb_column_2_5 h2,
	.hero .et_pb_text_inner h1 {
		font-size: 28px;
	}
	
	h3, 
	.et_pb_blog_grid h2,
	article.et_pb_post h2,
	h5.et_pb_toggle_title {
		font-size: 22px;
	}

	h4, 
	.thumbnail-tiles .et_pb_blurb_container h4{
		font-size: 20px;
	}
	
	h5,
	.et_pb_column_1_3 h5, 
	.et_pb_column_1_4 h5, 
	.et_pb_column_1_5 h5, 
	.et_pb_column_1_6 h5, 
	.et_pb_column_2_5 h5,
	.et_pb_column_1_3 .et_pb_blurb_container h4 {
		font-size: 18px;
	}
	
	h6,
	.et_pb_column_1_2 h6,
	.et_pb_column_1_3 h6, 
	.et_pb_column_1_4 h6, 
	.et_pb_column_1_5 h6, 
	.et_pb_column_1_6 h6, 
	.et_pb_column_2_5 h6 {
		font-size: 16px;
	}
	
	p, ul li, ol li, 
	.et_pb_toggle_content, 
	.et_pb_text_inner, 
	.et_pb_blurb_description,
	.et_pb_tab_content,
	.large .et_pb_text_inner, 
	.large .et_pb_text_inner p, 
	.large .et_pb_text_inner ul li, 
	.large .et_pb_text_inner ol li{
		font-size: 16px;
	}

}

/* toggles - read more */
.read-more h5.et_pb_toggle_title {
	text-transform: capitalize;
	font-weight: 700;
	font-size: 16px;
}

/* blog posts */
.et_pb_title_container h1.entry-title {
	text-transform: capitalize;
}

.wp-block-quote p {
	font-weight: 700;
	font-size: 18px;
}
	
/* underlines */
.et_pb_text_inner p a, 
.et_pb_text_inner ul li a,
.et_pb_text_inner a, 
.et_pb_text_inner table p a,
.et_pb_tab_content a,
.et_pb_toggle_content a,
.et_pb_toggle_content p a,
.et_pb_post_content p a {
    text-decoration: none;
}

.et_pb_text_inner p a:hover, 
.et_pb_text_inner ul li a:hover,
.et_pb_text_inner a:hover, 
.et_pb_text_inner table p a:hover,
.et_pb_post_content p a:hover,
.et_pb_post .entry-title a:hover, 
.et_pb_post h2 a:hover,
.et_pb_post .post-meta a:hover, 
.et_pb_posts .pagination a:hover, 
.et_pb_blurb_description a:hover {
	text-decoration: underline;
}

.et_pb_text_inner p a.btn:hover, 
.et_pb_text_inner a.btn:hover {
	text-decoration: none;
}

.underline-magic, .menu-underline-magic a {
	background-image: linear-gradient(120deg, #7ec108 0%, #a8f620 100%);
	background-repeat: no-repeat;
	background-size: 100% 0.2em;
	background-position: 0 88%;
	transition: background-size 0.25s ease-in;
}

.underline-magic:hover {
    background-size: 100% 88%;
}

#et-top-navigation nav>ul>li.menu-underline-magic>a {
	padding-bottom:10px !important;
}


/*change color of text highlight*/
::-moz-selection {
  color: #333333;
  background: #7ec108;
}
::selection {
  color: #333333;
  background: #7ec108;
}

/*------------------------------------------------*/
/*--------------[menu]-----------*/
/*------------------------------------------------*/
#main-header {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

#top-menu li a, .et_search_form_container input,
#top-header, #top-header a, 
#et-secondary-nav li li a, 
#top-header .et-social-icon a:before {
	font-weight: 700 !important;
	font-family: 'Poppins';
}

/**** This hides the sub menu items on mobile ****/
#page-container .mobile_nav li ul.hide {
    display: none !important;
}
/**** This adjusts the positioning and the background transparency of the parent menu item on mobile ****/
#page-container .mobile_nav .menu-item-has-children {
    position: relative;
}
#page-container .mobile_nav .menu-item-has-children > a {
    background: transparent;
}
/**** This styles the icon and moves it to the right ****/
#page-container .mobile_nav .menu-item-has-children > a + span {
    position: absolute;
    right: 0;
    top: 0;
    padding: 10px 20px;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    z-index: 3;
}
/**** Here you can swap out the actual icons ****/
#page-container span.menu-closed:before {
    content: "\4c";
    display: block;
    color: #000;
    font-size: 16px;
    font-family: ETmodules;
}
#page-container span.menu-closed.menu-open:before {
    content: "\4d";
}

/*------------------------------------------------*/
/*--------------[buttons]-----------*/
/*------------------------------------------------*/
/* inline Divi buttons (add class to row) */
.inline-buttons .et_pb_button_module_wrapper {
	display: inline-block;
}

.btn, .nf-form-content input[type=submit], .et_pb_button, .button, .btn-menu a {
	display: inline-block; 
	font-size: 14px !important;
	font-family: 'Poppins';
	font-weight: 700 !important;
	text-transform: uppercase!important;
	letter-spacing: 1px;
	line-height: 1.7em!important;
	border-radius: 0px !important;
	border: 2px solid !important;
	padding-right: 1.5em!important;
    padding-left: 1.5em!important;
	padding-top: 14px!important;
    padding-bottom: 14px!important;
	transition: all 300ms ease 0ms;
	-webkit-transition-duration: .2s;
    transition-duration: .2s;
    -webkit-transition-property: all!important;
    transition-property: all!important;
	cursor: pointer !important;
}

.btn {
	margin: 0 10px 10px 0;
}

@media only screen and (max-width: 414px) { 
	.btn, .nf-form-content input[type=submit], .et_pb_button, .button {
		font-size: 12px !important;
		padding-right: 12px!important;
    	padding-left: 12px!important;
		padding-top: 8px!important;
		padding-bottom: 8px!important;
	}
	.btn {
		margin: 0 3px 7px 0;
	}
}

a.btn:hover {
 	text-decoration: none;
}

.btn-green, .nf-form-content input[type=submit], .button {
	color: #ffffff!important;
	background-color: #7ec108 !important;
	border-color: #7ec108 !important;
}

.btn-white {
	color: #7ec108!important;
	background-color: #ffffff !important;
	border-color: #ffffff !important;
}

.btn-green-transparent {
	color: #7ec108 !important;
	background-color: transparent !important;
	border-color: #7ec108 !important;
}

.btn-green:hover, .btn-white:hover, .btn-green-transparent:hover, .nf-form-content input[type=submit]:hover, .button:hover, .btn-menu a:hover {
	opacity: 0.9;
}

.cta-menu-link a, .et-fixed-header #top-menu .cta-menu-link a{
	color: #e16b30!important;
}

@media only screen and (max-width: 414px) { 
	.menu-hide-mobile {
		display: none;
	}
}


/*------------------------------------------------*/
/*--------------[columns]-----------*/
/*------------------------------------------------*/
@media only screen and (max-width: 980px) and (min-width: 600px) {
	/*** Keep Columns on Tablet	- add class to row ***/
	.two-columns .et_pb_column {
		width: 50%!important;
	}

	.three-columns .et_pb_column {
		width: 33.33%!important;
	}


	.four-columns .et_pb_column {
		width: 25%!important;
	}
 
}

@media only screen and (max-width: 600px) {
	/*** Keep Columns on Mobile	- add class to row ***/
	.two-columns-mobile .et_pb_column {
		width: 50%!important;
	}

	.three-columns-mobile .et_pb_column {
		width: 33.33%!important;
	}


	.four-columns-mobile .et_pb_column {
		width: 25%!important;
	}
	
}

@media only screen and (max-width: 980px) {
	/***Switch column order on mobile - add flip class to row ***/
	.flip {
		display: -webkit-flex;
		-webkit-flex-direction: column-reverse;
		display: flex;
		flex-direction: column-reverse !important;
	}
	
	.flip.et_pb_row .et_pb_column.et-last-child {
		    margin-bottom: 30px !important;
	}
}

/* Changing the Column Stacking Order On Mobile */
@media all and (max-width: 980px) {
	/*** wrap row in a flex box ***/
	.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;
	}

	/*** custom classes that will designate the order of columns in the flex box row ***/
	.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;
	}
 
}

/*------------------------------------------------*/
/*--------------[ninja forms]-----------*/
/*------------------------------------------------*/
.nf-form-content {
	margin-left: 0px !important;
}

.nf-form-fields-required,
.nf-error.field-wrap .nf-field-element:after {
	display: none;
}

.nf-form-content {
	padding: 0 !important
}

.nf-error-msg {
	font-size: 12px;
	line-height: 1.4em;
}

.nf-field-container {
	margin-bottom: 10px !important;
}

.nf-form-content label {
	font-size: 16px !important;
	font-weight: 700 !important;
}

.nf-form-content .label-above .nf-field-label {
	margin-bottom: 5px !important;
}

.nf-form-content input:not([type=submit]), 
.nf-form-content textarea,
.nf-error textarea.ninja-forms-field {
	border-radius: 0px !important;
	background-color: #ffffff !important;
	padding: 16px 16px !important;
	color: #666666 !important;
	font-size: 16px;
	border-width: 2px !important;
	border-color: #666666 !important; 
}

.popup-text .nf-form-content input:not([type=submit]), 
.popup-text .nf-form-content textarea {
	font-size: 13px;
}

.nf-form-content input:-webkit-autofill,
.nf-form-content input:-webkit-autofill:hover, 
.nf-form-content input:-webkit-autofill:active {
    -webkit-background-clip: text;
    -webkit-text-fill-color: #666666;
    transition: background-color 5000s ease-in-out 0s;
    box-shadow: inset 0 0 20px 60px #ffffff !important;
}

.nf-form-content input:-webkit-autofill:focus {
	    -webkit-background-clip: text;
    	-webkit-text-fill-color: #666666;
	    box-shadow: inset 0 0 20px 60px #fafafa !important;
}

.nf-form-content .list-select-wrap .nf-field-element>div:focus, 
.nf-form-content input:not([type=submit]):focus, 
.nf-form-content textarea:focus {
	background-color: #fafafa !important;
}

.nf-response-msg {
	border: 2px solid #333333;
	padding: 20px;
	margin-bottom: 30px;
}


/*------------------------------------------------*/
/*--------------[popup]-----------*/
/*------------------------------------------------*/
.pum-theme-135 .pum-container, .pum-theme-lightbox .pum-container {
	padding: 30px;
}