/*
 Theme Name:     Decks & Fences
 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.21
*/

#page-container { 
	-moz-box-shadow:none !important; 
	-webkit-box-shadow:none !important; 
	box-shadow:none !important; 
}

/*------------------------------------------------*/
/*--------------[typography]-----------*/
/*------------------------------------------------*/
h1, h2, h3, h4, h5, h6, .et_pb_posts .pagination a {
	font-family: "Montserrat", sans-serif;
	font-weight: 700; 
	line-height: 1.2em; 
	text-transform: initial;
}

h1, h2, h3, h4 {
	letter-spacing: -0.065em;
}

h1, 
.et_pb_column_1_2 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: 72px;
} 

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

h2,
.et_pb_column_1_2 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: 52px;
}

h3, 
.et_pb_column_1_2 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_2 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_2 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;
}

p, .et_pb_toggle_content, .et_pb_text_inner, .et_pb_blurb_description, .et_pb_tab_content, ul li, ol li, cite {
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	line-height: 1.8em;
	font-weight: 400;
}

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

.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:12px;
}

.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:20px;
}

.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_2 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: 45px;
	}
	 
	h2, 
	.et_pb_column_1_2 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: 40px;
	}
	
	h3,
	.et_pb_column_1_2 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_blog_grid h2,
	article.et_pb_post h2,
	h5.et_pb_toggle_title {
		font-size: 32px;
	}

	h4, 
	.et_pb_column_1_2 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,
	.thumbnail-tiles .et_pb_blurb_container h4{
		font-size: 20px;
	}
	
	h5,
	.et_pb_column_1_2 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_toggle_content a:hover ,
.et_pb_toggle_content 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 {
	text-decoration: underline;
}

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

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

@media only screen and (min-width: 981px) {
.et_header_style_left #et-top-navigation, .et_header_style_split #et-top-navigation {
    padding: 12px 0 0 0 !important;
	}
}

#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: "Montserrat", sans-serif;
	
}

@media (max-width: 1199px) {
 #et_mobile_nav_menu {
 display: block;
 }
 
#top-menu {
 display: none;
 }
 }

/**** 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: 400;
    cursor: pointer;
    z-index: 3;
}
/**** Here you can swap out the actual icons ****/
#page-container span.menu-closed:before {
    content: "\4c";
    display: block;
    color: #002564;
    font-size: 16px;
    font-family: ETmodules;
}
#page-container span.menu-closed.menu-open:before {
    content: "\4d";
}


/*------------------------------------------------*/
/*--------------[icons]-----------*/
/* icon list: https://gist.github.com/SJ-James/cfcdbde560fe5f214205a254f7e21a4d */
/*------------------------------------------------*/
.icon_etModules:before {
	font-family: 'etModules';
/* 	margin-right: 10px; */
	vertical-align: middle;
}

.icon_phone:before {
	content: "\e090";
	color: #002564;
	border: 1px solid #002564;
    border-radius: 50%;
	padding: 1px;
}

/*------------------------------------------------*/
/*--------------[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: 16px !important;
	font-family: "Montserrat", sans-serif;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0px;
	line-height: 1.7em!important;
	border-radius: 10px !important;
	border: 1px solid !important;
	padding-right: 36px!important;
    padding-left: 36px!important;
	padding-top: 12px!important;
    padding-bottom: 12px!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;
	height: auto !important;
}

#main-header #top-menu .btn-menu a, 
.et-fixed-header #top-menu .btn-menu a {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #ffffff !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: 15px !important;
		padding-right: 20px!important;
    	padding-left: 20px!important;
		padding-top: 10px!important;
		padding-bottom: 10px!important;
	}
	.btn {
		margin: 0 3px 7px 0;
	}
}

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

.btn-blue, .nf-form-content input[type=submit], .button, .btn-menu a, .nf-form-content button, .nf-form-content input[type=button] {
	color: #ffffff !important;
	background-color: #0091D5 !important;
	border-color: #0091D5 !important;
}

.btn-blue-transparent {
	color: #0091D5 !important;
	background-color: transparent !important;
	border-color: #0091D5 !important;
}

.btn-white {
	color: #002564 !important;
	background-color: #ffffff !important;
	border-color: #ffffff !important;
}
.btn-white-transparent {
	color: #ffffff !important;
	background-color: transparent !important;
	border-color: #ffffff !important;
}

.btn-black {
	color: #ffffff!important;
	background-color: #002564 !important;
	border-color: #002564 !important;
}
.btn-black-transparent {
	color: #002564 !important;
	background-color: transparent !important;
	border-color: #002564 !important;
}

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

.cta-menu-link a, .et-fixed-header #top-menu .cta-menu-link a{
	color: #0091D5!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]-----------*/
/*------------------------------------------------*/
@media all and (max-width: 800px) { 
	.nf-form-cont .one-half {
		margin-bottom: 25px !important;
	}
}

.nf-form-content {
	margin-left: 0px !important;
}

.nf-form-fields-required,
.nf-error.field-wrap .nf-field-element:after,
.nf-pass.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-label,
.nf-form-content label {
	line-height: 1.4em !important;
}

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


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

.nf-form-content .label-above .list-checkbox-wrap .nf-field-label {
	margin-bottom: 17px !important;
}

.nf-form-content input:not([type=submit]), 
.nf-form-content textarea,
.nf-error textarea.ninja-forms-field {
	border-radius: 10px !important;
	background-color: transparent !important;
	padding: 16px 16px !important;
	color: #a9b7cc !important;
	font-size: 16px;
	border-width: 1px !important;
	border-color: #d1d3d4 !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: #ffffff !important;
}

.listcheckbox-wrap .nf-field-element label:after,
.checkbox-wrap .nf-field-label label:after {
	width: 16px !important;
    height: 16px !important;
}

.checkbox-container.label-right label:after,
.listcheckbox-container.label-right label:after {
	top: 2px !important;
}

.nf-form-content .list-checkbox-wrap .nf-field-element li input, 
.nf-form-content .list-image-wrap .nf-field-element li input, 
.nf-form-content .list-radio-wrap .nf-field-element li input {
	margin-top: 0 !important;
}

/* form light */
.form-light .nf-form-content input:not([type=submit]), 
.form-light .nf-form-content textarea,
.form-light .nf-error textarea.ninja-forms-field,
.form-light .nf-form-content input[type=checkbox] {
	background-color: transparent !important;
	color: #ffffff !important;
	border-color: #ffffff !important; 
}

/* Change placeholder text color for all input fields */
.form-light ::placeholder {
    color: #FAF9F6; 
}

.form-light .listcheckbox-wrap .nf-field-element label.nf-checked-label:after {
	border-radius: 3px !important;
	background-color: transparent !important;
	color: #0091D5 !important;
	border-width: 1px !important;
	border-color: #ffffff !important; 
}

.form-light .listcheckbox-wrap .nf-field-element label.nf-checked-label:before {
	color: #ffffff !important;
}

.form-light .nf-form-content .list-select-wrap .nf-field-element>div:focus, 
.form-light .nf-form-content input:not([type=submit]):focus, 
.form-light .nf-form-content textarea:focus,
.form-light .listcheckbox-wrap .nf-field-element label.nf-checked-label:after:focus {
	background-color: transparent !important;
	border-color: #0091D5 !important; 
}

.form-light .nf-response-msg {
	border: 2px solid #ffffff;
}