/*
Theme Name: Fencing Contractors NZ
Description: website theme for Fencing Contractors NZ, based on Storefront theme
Author: Ascona
Author URI: http://www.ascona.co.nz/
Template: storefront
Version: 100.0.0
*/


body, button, input, select, textarea {
	font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #000000;
}

b, strong { font-weight: 700; }

a { 
	color: #00b2c3; 
	font-weight: inherit; 
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
	
}
a:hover { color: #00b2c3; text-decoration: underline; }
.hentry .entry-content a:not(.button) { text-decoration: none; }
.hentry .entry-content a:not(.button):hover { text-decoration: underline; }

a:focus, button:focus, input:focus, textarea:focus {
    outline: 2px solid #00b2c3;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Lato', sans-serif;
    font-weight: 700;
    margin-bottom: 1.25em;
	color: #000000;
	padding-top: 10px;
	padding-bottom: 8px;
	line-height: 1.25;
	
}

h1, .page-template-template-homepage .entry-header h1 { font-size: 28px; border-bottom: 4px solid #26bdcc; margin-bottom: 1em; }
h2, .alpha { font-size: 22px; border-bottom: 5px solid #26bdcc; }
h3 { font-size: 21px; color: #00b2c3; }
h4 { font-size: 19px; margin-bottom: 1em; }
h5 { font-size: 15px; margin-bottom: 1em; text-transform: uppercase; margin-top: 1.5em; }
h6 { font-size: 16px; margin-bottom: 1em; margin-top: 1.5em; }

.page-template-template-homepage .entry-content, .page-template-template-homepage .entry-header {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
	text-align: left; 
}

p { margin-bottom: 1em; }

img {
    -o-border-radius: 0; 
    -ms-border-radius: 0; 
    -moz-border-radius: 0; 
    -webkit-border-radius: 0; 
    border-radius: 0;
}

hr { background-color: #ade5f9; height: 2px; margin: 0 0 1.25em; }

i.fa { margin-right: 10px; }

small { font-size: 85%; }

table { font-size: 0.9em; border-bottom: 4px solid #efefef; }
table td, table th { padding: 0.75em 1.25em; }
table tbody td { background-color: #f7f4f1; }
table tbody tr:nth-child(2n) td { background-color: #fff; }
table th, table thead tr td { background-color: #00b2c3; color: #fff; font-weight: 700; }

.clr { clear: both; }
.hidden { display: none; }
.visuallyhidden {
   position: absolute !important;
   top: -9999px !important;
   left: -9999px !important;
}
.col-full {
    margin-left: auto;
    margin-right: auto;
    max-width: 95%;
    width: 1280px;
	padding: 0;
}
.col-full .col-full {
    max-width: 100%;
    width: 100%;
}
.entry-content > p:last-child { 
	margin-bottom: 0; 
}

body .alignright, body .alignleft {
	max-width: 45%;
	margin-top: 7px;
	margin-bottom: 1em;
}

blockquote {
    margin: 34px 0;
    padding: 25px 30px 20px 55px;
    border-left: 4px solid rgba(247, 32, 133, 0.5);
    -o-border-radius: 4px 15px 15px 4px;
    -moz-border-radius: 4px 15px 15px 4px;
    -webkit-border-radius: 4px 15px 15px 4px;
    border-radius: 4px 15px 15px 4px;
    font-style: italic;
    background: rgba(0, 0, 0, 0.04);
}
blockquote::before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    content: "\f10d";
    display: block;
    height: 0;
    position: relative;
    font-size: 26px;
    left: -40px;
    top: -10px;
    color: rgba(247, 32, 133, 0.6);
}
blockquote p:last-child, blockquote ul:last-child, blockquote ol:last-child { margin: 0; }

blockquote+h2, blockquote+h3, blockquote+h4, blockquote+header h2, form+h2, form+h3, form+h4, form+header h2, ol+h2, ol+h3, ol+h4, ol+header h2, p+h2, p+h3, p+h4, p+header h2, table+h2, table+h3, table+h4, table+header h2, ul+h2, ul+h3, ul+h4, ul+header h2 {
    margin-top: 1.75em;
}

/* buttons */

button, 
input[type="button"], 
input[type="reset"], 
input[type="submit"], 
input[type="tel"],
.button, .added_to_cart, 
.widget a.button, 
.site-header-cart .widget_shopping_cart a.button {
    background-color: #fff;
    border: 3px solid #26bdcc;
    color: #00b2c3;
    padding: 4px 22px 5px 22px;
    box-shadow: none;
    font-weight: 700;
    display: inline-block;
    font-size: 22px;
	margin-bottom: 1em;
}/*
button:after, 
input[type="button"]:after, 
input[type="reset"]:after, 
input[type="submit"]:after, 
.button:after, .added_to_cart:after, 
.widget a.button:after, 
.site-header-cart .widget_shopping_cart a.button:after {
}
*/
button.blue, .button.blue {
    background-color: #00b2c3;
	color: #fff;
}
.entry-content .button span:after {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    display: inline-block;
    font-size: 0.85em;
    line-height: 1;
    transform: translate(0px, 0px);
    content: '\f061';
	margin-left: 10px;	
}
button:hover, 
input[type="button"]:hover, 
input[type="reset"]:hover, 
input[type="submit"]:hover, 
input[type="tel"]:hover, 
.button:hover, 
.added_to_cart:hover, 
.widget a.button:hover, 
.site-header-cart .widget_shopping_cart a.button:hover {
    background-color: #00b2c3;
    border-color: #00b2c3;
    color: #ffffff;
	text-decoration: none;
}
button.blue:hover, .button.blue:hover {
    background-color: #000000;
    border-color: #000000;
	color: #fff;
}
a:focus, .button:focus, .button.alt:focus, .button.added_to_cart:focus, .button.wc-forward:focus, button:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, .added_to_cart:focus {
    outline: #0a6fc6 dotted 1px;
}
.added_to_cart {
	background-color: #00b2c3;
    border-color: #00b2c3;
    color: #fff;
}
.added_to_cart:hover,
input[type="submit"].alt:hover, 
.button.alt:hover {
    background-color: #221f1f;
    border-color: #221f1f;
    color: #ffffff;
}
.page-template-template-homepage .type-page .storefront-hero__button-edit { opacity: 0.75; top: 0; right: 0; }

/* HEADER */
body .site-header {
	margin-bottom: 0 !important;
	border-bottom: none;
    font-weight: 700;
	color: #fff;
	text-align: center;
	background: #000000;
}
body .site-header a, body .site-header ul.menu li a { color: #fff; }
body .site-header a:hover, body .site-header ul.menu li a:hover  { color: #e96e32; text-decoration: none; }
.header-wrap, .site-footer {
	padding-top: 1.618em;
	padding-bottom: 1.618em;
}
.header-wrap { padding: 10px 0; text-align: center; }
.woocommerce-active .site-branding {
	float: none;
	margin: auto;
}
.logo { padding: 0; margin: 0; }

.site-header .custom-logo-link, .site-header .site-branding, .site-header .site-logo-anchor, .site-header .site-logo-link {
  float: none;
}
.site-header .site-branding { padding: 0 0 17px 0; }
.site-header .custom-logo-link img, .site-header .site-logo-anchor img, .site-header .site-logo-link img {
    margin: 0 auto;
    width: 300px;
    max-width: 95%;
	vertical-align: middle;
}
.site-header .menu { text-align: center; }
.site-header .menu a { padding: 0 15px; }
.secondary-navigation { display: block; }

/* NAVIGATION */

.main-navigation .handheld-navigation ul {
  background-color: #000000;
}
.handheld-navigation .dropdown-toggle { color: rgba(255, 255, 255, 0.65); border: none; }
.main-navigation .handheld-navigation ul.sub-menu > li > a { font-size: 1.05em; }

.storefront-primary-navigation {
	clear: both;
	background-color: #000000;
}

#content { margin-bottom: 40px; margin-top: 40px; }
.site-content { margin-bottom: 40px; }

.main-navigation { font-weight: 700; }
.main-navigation ul li a {
    color: #fff;
    font-size: 18px;
    padding: 13px 20px;
    line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.main-navigation ul li a:hover, .main-navigation ul li:hover > a, 
body ul.menu li.current-menu-item>a,
.site-header ul.menu li.current-menu-item > a {
  color: #fff;
  text-decoration: none;
}
.menu, .secondary-navigation .menu { list-style: none; margin: 0; font-size: 1em; }
.site-header .menu li { display: inline-block; vertical-align: middle; vertical-align: middle; }
button.menu-toggle, button.menu-toggle:hover {
    background-color: transparent;
    color: #fff;
    border: none;
    font-size: 1.5em;
    text-transform: uppercase;
    letter-spacing: 2px;
    width: 100%;
    text-align: center;
	padding: 10px;
	margin-bottom: 0;
}
button.menu-toggle span:before {
    background-color: transparent;
    position: relative;
    height: auto;
    width: auto;
    border: none;
    display: inline-block;
    margin: 0 13px 0 0;
    left: auto;
    top: auto;
	
    display: inline-block;
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
	
    font-size: 0.9em;
    line-height: 1;
    transform: translate(0px, 0px);
    content: '\f0c9';
}
.toggled button.menu-toggle span:before {
    opacity: 1;
    content: '\f00d';
}
button.menu-toggle:before, button.menu-toggle:after { display: none; }
.handheld-navigation .menu { padding-bottom: 20px; }

	.secondary-navigation, .header-navigation { display: inline-block; }
	body .site-header ul.menu li a { padding: 0 10px; vertical-align: middle; }
	body .site-header ul.menu li.small-on-mobile a { font-size: 0; }
	body .site-header ul.menu li a:before { font-size: 18px; }
	body .site-header ul.menu li.icon-close a:before { font-size: 20px; }
	body .site-header ul.menu li.small-on-mobile a:before { margin: 0; }

/* BANNER */

.banner { 
	margin: -15px -15px 10px -15px; 
	background-color: #090a1e; 
	position: relative; 
}
.banner img { opacity: 0.5; }
.banner-text { 
    padding: 20px 10px;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.25;
    color: #00b2c3;
}

/* OTHER */

.site-main { margin-bottom: 0; }
.entry-title { padding-top: 0; }

.page .hentry { margin-bottom: 0; padding-bottom: 0; }

.entry-content { margin-bottom: 40px; }

.entry-content ul:not(.products){
	list-style-type: none;
	margin-left: 10px;
}
.entry-content ul:not(.products) li {
	margin-bottom: 0.5em;
	text-indent: -16px;
	padding-left: 30px;
}
.entry-content ul:not(.products) li:before  {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    display: inline-block;
	
    font-size: 0.8em;
    line-height: 1;
    transform: translate(0px, 0px);
	content: "\f00c";
	color: #00b2c3;
	margin-right: 15px;
	vertical-align: middle;
}
.entry-content ul ul {
	padding-top: 20px;
}
.entry-content ul ul li:before  {
	content: "-";
}

.main-navigation ul li a, .site-title a, ul.menu li a, .site-branding h1 a, .site-footer .storefront-handheld-footer-bar a:not(.button), button.menu-toggle, button.menu-toggle:hover {
    color: #fff;
}

.widget .widget-title, .widget .widgettitle {
    font-size: 26px;
    color: #00b2c3;
    font-weight: 700;
    padding-bottom: 0;
    border: none;
}

body .pagination .page-numbers li .page-numbers.current, body .woocommerce-pagination .page-numbers li .page-numbers.current {
    background-color: #000000;
    color: #ffffff;
}
body .pagination .page-numbers li a.page-numbers:hover, body .woocommerce-pagination .page-numbers li a.page-numbers:hover {
    background-color: #00b2c3;
    color: #fff;
	text-decoration: none; 
}

.storefront-product-section { margin-top: 1.5em; }
	
/* ICONS */
.site-header .menu a:before, .site-footer .menu a:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    display: inline-block;
    line-height: 1;
	content: "\f061";
	margin-right: 10px;
	vertical-align: middle;
	font-size: 0.9em;
}
.menu .icon-arrow a:before { content: "\f0a9"; }
.menu .icon-arrow-share a:before { content: "\f064"; }
.menu .icon-phone a:before { content: "\f098"; }
.menu .icon-login a:before { content: "\f064"; }
.menu .icon-basket a:before { content: "\f291"; }
.menu .icon-user a:before { content: "\f2bd"; }
.menu .icon-truck a:before { content: "\f0d1"; }
.menu .icon-info a:before { content: "\f05a"; }
.menu .icon-close a:before { content: "\f057"; }
.menu .icon-calendar a:before { content: "\f073"; }

.menu .icon-facebook a:before { 
    font-family: "Font Awesome 5 Brands";
	font-weight: normal;
	content: "\f082"; 
}

/* HOME */
.page-template-template-homepage .entry-content {
    font-size: 1em;
}
.page-template-template-homepage .entry-content, 
.page-template-template-homepage .entry-header {
	max-width: 100%;
}
.page-template-template-homepage .entry-content { text-align: left; }
.page-template-template-homepage .site-main, 
.page-template-template-homepage .type-page { 
	padding-top: 0 !important; 
}
.page-template-template-homepage #secondary, 
.page-template-template-homepage #secondary h2 {
    padding-top: 1px;
}
.page-template-template-homepage #secondary > div {
	width: 480px;
	max-width: 100%;
	margin: 0 auto;
}
.subheading { text-align: center; }
.sidebar_fields {
	background-color: #00b2c3;
	color: #fff;
	border-radius: 20px;
	overflow: hidden;
}
.sidebar_fields .text-wrap {
	padding: 20px 20px 0 20px;
}
.sidebar_fields .title {
	color: #ffd121;
}
.sidebar_fields i { font-size: 0.85em; margin-right: 15px; }
.sidebar_fields p:last-child {
	margin-bottom: 0;
}

#fb-wrap {
	text-align: center;
}
#fb-content {
	margin: 10px auto;
	display: inline-block;
	text-align: left;
}

/* four_blocks */
#four_blocks { background: #00b2c3; }
#four_blocks a { 
	display: block;
	overflow: hidden;
    position: relative;
	text-align: center;
	color: #fff;
}
#four_blocks a .block_title { 
	position: absolute;
    top: 0;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.65);
    margin: 0;
    padding: 10px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    word-spacing: 0.125em;
	font-size: 20px;
    -webkit-transition: background-color .3s ease;
    -moz-transition: background-color .3s ease;
    -o-transition: background-color .3s ease;
    transition: background-color .3s ease;
	z-index: 1;
}
#four_blocks a .overlay { 
	display:none; 
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}
#four_blocks a:hover .overlay, #four_blocks  a.current .overlay {
    background-color: rgba(0, 178, 195, 0.4);
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
}
#four_blocks a:hover .block_title, #four_blocks a.current .block_title {
    background-color: #00b2c3;
}

/* contractors */
#contractors { }
#contractors .contractor { 
	background-color: #f7f4f1; 
	background-color: rgba(247, 244, 241, 0.75);
	padding: 15px; 
	border-bottom: 5px solid #26bdcc; 
    -webkit-transition: background-color .3s ease;
    -moz-transition: background-color .3s ease;
    -o-transition: background-color .3s ease;
    transition: background-color .3s ease;
}
#contractors .contractor:nth-child(2n) { background-color: #fff; }
#contractors .contractor:hover { background-color: #e2f4fb; }
#contractors .contractor > div { padding-top: 10px; padding-bottom: 10px; }
#contractors .contractor .title { padding-top: 0; margin-bottom: 0; border-bottom: none; }
#contractors .contractor .details p { margin-bottom: 0; }
#contractors .contractor .category { font-weight: 700; }
#contractors .accredited img { width: 200px; }
#contractors .contractor .fa { min-width: 20px; }
#contractors .contractor .fa-check { color: #17ce03; }
#contractors .contractor .fa-times { color: #ee002a; }

/* partners */
#partners { margin-bottom: 1em; }
#partners .image { padding: 20px; }
#partners .image img { width: 220px; margin: 0 auto; }

/* magazine */
#magazine .issue { margin-bottom: 2em; }
#magazine .title { margin-bottom: 0.5em; border-bottom: none; }

/**/
.featured_content {
	background-color: #00373e;
	color: #fff;
	font-style: italic;
	font-weight: 400;
	font-size: 17px;
	padding: 50px 0;
	text-align: center;
}
.featured_content p {
	padding: 0 10px;
	margin-bottom: 0;
}
.featured_content a {
	color: #fff;
}

/**/
body .woocommerce .button, body .woocommerce button { margin-bottom: 0; }
#featured_section .storefront-product-section { margin-top: 0; }
#featured_section .storefront-featured-products .section-title { padding-top: 0; }
.storefront-featured-products .section-title {
	font-size: 26px;
}
ul.products li.product .woocommerce-loop-product__title, ul.products li.product h2, ul.products li.product h3, .product-title {
	font-size: 20px;
    font-family: 'Lato', sans-serif;
    font-weight: 700;
	border: none;
	padding-top: 0;
	padding-bottom: 0;
}
ul.products li.product a:hover .woocommerce-loop-product__title, ul.products li.product a:hover h2, ul.products li.product a:hover h3, a:hover .product-title {
	color: #00b2c3;
}
ul.products li.product .woocommerce-LoopProduct-link:hover { text-decoration: none; }
ul.products li.product .woocommerce-LoopProduct-link:hover img { opacity: 0.75; }
body ul.products li.product .price, .woocommerce-Price-amount {
    font-size: 24px;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}
ul.products li.product .price { color: #e96e32; }
.woocommerce-price-suffix { font-size: 85%; }

ul.products li.product img { 
	width: 260px;
}

.product_list_widget li img {
    max-width: 60px;
    float: right;
    margin-left: 10px;
}

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

 a.add_to_cart_button:after { display: none; }
 a.add_to_cart_button:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
	content: "\f291";
	display: inline-block;
	font-size: 0.85em;
	padding-right: 15px;
}

/* SLIDESHOW */
.slideshow { 
	position: relative; 
	overflow: hidden;
	margin-bottom: 10px;
}
.slick-slider { margin-bottom: 0; }
.slick-slide { position: relative; }
.slick-slide img { width: 100%; }
.slick-next { right: 25px; display: none !important; }
.slick-prev { left: 25px; display: none !important; }
.slick-slider:hover .slick-next, .slick-slider:hover .slick-prev { 
	display: block !important;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.slick-dots { margin: 0; }
.slideshow-text {
    color: #ffffff;
    z-index: 1;
    line-height: 1.2;
    width: 100%;
    height: 100%;
	background: #231f20;
}
.slideshow-text .wrap-text { padding: 15px 10px; text-align: center; }
.slideshow-text .title {
    line-height: 1.2;
    padding: 0;
    font-size: 20px;
    color: #33c1cf;
    border-bottom: none;
    margin-bottom: 0.75em;
}
.slideshow-text .button {
    padding: 4px 20px 5px 20px;
    font-size: 16px;
    background: transparent;
    border-color: #33c1cf;
    color: #fff;
}
.slideshow-text .button:hover {
    background: #33c1cf;
    border-color: #33c1cf;
    color: #fff;
}
.slideshow-text .button:after {
    display: none;
}
.slideshow-text .description { display: none; }
.slick-prev, .slick-next { 
    background-color: rgba(0, 0, 0, 0.7);
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
    height: 30px;
    width: 30px;
	margin-top: -20px;
}
.slick-prev:before, .slick-next:before {
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
	content: "\f053";
	opacity: 1;
	font-size: 16px;
	margin-left: -3px;
}
.slick-next:before {
	content: "\f054";
	margin-left: 3px;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
    background-color: rgba(0, 178, 195, 0.6);
}

/* FORMS */

fieldset { background-color: #f7f4f1; }
fieldset legend { background: #00b2c3; color: #fff; margin-left: -0.75em; }
label { font-weight: 700; }

.input-text, 
input[type=text], 
input[type=email], 
input[type=url], 
input[type=password], 
input[type=search], 
input[type=tel],
body textarea, 
body select, .select2-container--default .select2-selection--single {
	background-color: #fff;
    border-radius: 0;
    box-shadow: none;
    font-size: 18px;
    line-height: 1.5em;
    font-weight: 400;
    border: 3px solid #f7f4f1;
    padding: 13px 15px;
}
.select2-container--default .select2-selection--single { box-sizing: content-box; padding: 13px 15px !important; } 
.select2-container--default .select2-selection__arrow { height: 100% !important; }
.select2-container--default .select2-selection--single {
    padding: initial;
}
.input-text:focus, 
input[type=text]:focus, 
input[type=email]:focus, 
input[type=url]:focus, 
input[type=password]:focus, 
input[type=search]:focus, 
input[type=tel]:focus, 
body textarea:focus, 
body select:focus, .select2-container--default .select2-selection--single:focus {
	background-color: #fff;
    border-left: 4px solid #00b2c3;
    color: #000000;
	font-weight: 400;
}
.input-text:placeholder, 
input[type=text]:placeholder, 
input[type=email]:placeholder, 
input[type=url]:placeholder, 
input[type=password]:placeholder, 
input[type=search]:placeholder, 
input[type=tel]:placeholder, 
body textarea:placeholder, 
body select {
    color: #000000;
	opacity: 1;
	font-weight: 400;
}
[placeholder]::-webkit-input-placeholder{ color: #000000; }
img.ninja-forms-help-text { display: inline-block; }
.ninja-forms-field-description { font-size: 0.85em; }
#nf-form-1-cont .nf-form-title h3 { padding-top: 0; }
body .nf-error .ninja-forms-field { border: 3px solid #f7f4f1; border-left: 4px solid #ee0032; }
body .nf-error-msg, body .ninja-forms-req-symbol { color: #ee0032; font-size: 0.9em; font-weight: 400; }
body .listcheckbox-container .nf-field-element label { font-weight: 400; }
body .listcheckbox-container li:before { display: none; }
body .nf-field p:last-child { margin-bottom: 0; }
body .nf-field-description { font-size: 0.85em; opacity: 0.6; margin-top: 7px; }
body .nf-form-fields-required { margin-bottom: 1.25em; }
body .nf-response-msg { color: #ee0032; font-weight: 700; }

.required {
    color: #ee0032;
    font-size: 0.9em !important;
    border: none;
    text-decoration: none;
}
.required:after { display: none; }

/** FOOTER */

.site-footer { background-color: #000000; color: #7b7b7b; padding-bottom: 5em; }
.site-footer a:not(.button) { color: #7b7b7b; text-decoration: none; }
.site-footer a:not(.button):hover { color: #e96e32; }
.footer-widgets { padding-top: 0; border-bottom: none; }
.site-footer h1, .site-footer h2, .site-footer h3, .site-footer h4, .site-footer h5, .site-footer h6,
.site-footer .widget .widget-title {
  color: #fff;
  font-size: 20px;
	padding: 0;
	border-bottom: none;
}
.site-footer .widget { margin-bottom: 2.5em; }
.site-footer .widget_nav_menu ul li:before { display: none; }
.site-footer p { margin-bottom: 0.5em; }
.site-footer img { display: inline-block;  }

.site-info {
	padding: 1em 0 1em 0;
	font-size: 14px;
	text-align: center;
}

.widget-area .widget a:not(.button) { text-decoration: none; }

.storefront-handheld-footer-bar, .storefront-handheld-footer-bar ul li > a, .storefront-handheld-footer-bar ul li.search .site-search {
    background-color: #00b2c3;
}
.storefront-handheld-footer-bar {
    -o-box-shadow: none;
    -ms-box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-top: 4px solid #fff;
}
.storefront-handheld-footer-bar ul li.cart .count {
    background-color: #fff;
    color: #00b2c3;
    border: 2px solid #00b2c3;
	font-weight: 400;
}


/* WooCommerce */
.woocommerce-breadcrumb { font-size: .85em; }
.storefront-breadcrumb,
.woocommerce-breadcrumb {
    background-color: transparent;
    padding: 0;
    margin-bottom: 1em;
    margin-top: -1em;
	color: #9a9aad;
}

.woocommerce-breadcrumb a, .storefront-breadcrumb a {
    font-weight: 400;
    text-decoration: none;
    color: #9a9aad;
}
.woocommerce-breadcrumb a:hover, .storefront-breadcrumb a:hover { color: #00b2c3; }
.woocommerce-breadcrumb a:first-of-type:before { margin-right: 0; }

.comment-form textarea { height: 150px; }

.pagination .page-numbers li .page-numbers.current, 
.woocommerce-pagination .page-numbers li .page-numbers.current {
    background-color: #090a1e;
    color: #90909e;
}
.pagination .page-numbers li .page-numbers, 
.woocommerce-pagination .page-numbers li .page-numbers {
    background-color: rgba(9, 10, 30, 0.1);
    color: #090a1e;
}
.pagination .page-numbers li a.page-numbers:hover, 
.woocommerce-pagination .page-numbers li a.page-numbers:hover {
    background-color: rgb(237, 28, 36);
    color: #fff;
}

del span { text-decoration: line-through; }

.woocommerce-page.archive #primary, .woocommerce-page.single-product #primary { margin-right: 0; width: 100%; }

.checkout ul li, .woocommerce-MyAccount-navigation ul li { text-indent: 0; padding-left: 0; }
.checkout ul li:before, .woocommerce-MyAccount-navigation ul li:before, .entry-content .woocommerce-order ul li:before { display: none; }

.woocommerce-info, .woocommerce-noreviews, p.no-comments { background-color: #00b2c3; }
.woocommerce-error { background-color: #e96e32; }

/* Find a contractor */
#image-map-pro-2770 { width: 420px; max-width: 100%; margin: 2em auto; }
.imp-tooltip { font-size: 15px; letter-spacing: 0.0125em; }

/* ACCORDION */
#accordion_slides { margin: 2em 0; }
.ui-accordion-header {
    font-size: 20px;
    color: #00b2c3;
    background: rgba(0, 0, 0, 0.05);
    margin: 3px 0;
    padding: 18px;
	cursor: pointer;
	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease;
}
.ui-state-active, .ui-accordion-header:hover { background: #00b2c3; color: #fff; }
.ui-accordion-content {
    padding: 18px;
	
}

/* Sidebar Buttons */
.sidebar_buttons { 
	list-style: none; 
	margin: 0;
    font-weight: 700;
}
.sidebar_buttons li a { 
	background-color: #00b2c3;
	color: #fff;
	padding: 15px 45px 15px 15px;
	display: block;
	margin-bottom: 10px;
	position: relative;
	font-size: 18px;
	line-height: 1.3;
}
.sidebar_buttons li:last-child a { 
	margin-bottom: 0;
}
.sidebar_buttons li:nth-child(3n-2) a { /*
    background-color: #61cfda;
    background-color: rgba(0, 178, 195, 0.62);*/
}
.sidebar_buttons li:nth-child(3n-1) a { /*
    background-color: #33c1cf;
    background-color: rgba(0, 178, 195, 0.8);*/
}
.sidebar_buttons li a:hover { 
	background: #000000;
	text-decoration: none;
}
.sidebar_buttons li a i {
	margin: 0;
	position: absolute;
    right: 15px;
	top: 50%;
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

/**/
.acf-2col-content { padding: 30px 0; }
.acf-2col-content p:last-child { margin-bottom: 0; }

.post .posted-on, .hentry .entry-header .posted-on { font-size: 0.8em; }
.hentry .entry-header { border-bottom: 2px solid #00b2c3; }
.hentry.type-post .entry-content { width: 100%; float: none; }
.entry-title a { color: #fff; }
.entry-title a:hover { color: #00b2c3; text-decoration: none; }
.widget-area .widget_recent_entries a { color: #00b2c3; font-size: 1.1em; }
.widget-area .widget_recent_entries a:hover, .entry-title a:hover { color: #00b2c3; }
.post .entry-title {     
    border-bottom: none;
    padding: 10px 15px;
    margin-top: 10px;
    background-color: #000000;
	color: #fff;
}
.post .entry-header { border-bottom: none; margin-bottom: 0; }
.beta+h3, h2+h3 { border-top: none; padding-top: inherit; }

.back-to-top {
	cursor: pointer;
    position: fixed;
    bottom: 5.5em;
    right: 20px;
    display: none;
    background-color: #e96e32;
    border-color: #e96e32;
    padding: 6px 8px;
    line-height: 1em;
    color: #fff;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    width: 40px;
    height: 40px;
	font-size: 0.95em;
	z-index: 10;
}
.back-to-top:hover { 
	color: #fff; 
    background-color: #00b2c3;
    border-color: #00b2c3;
}
.back-to-top i { margin: 0; padding: 4px; }

/* category_blocks */
#category_blocks { padding-top: 3em; }
#category_blocks .block { margin-bottom: 2em; }
#category_blocks .title { font-size: 26px; }
#category_blocks a:hover { text-decoration: none; }
#category_blocks a:hover .title { color: #00b2c3; }
#category_blocks a:hover img { opacity: 0.75; }

.rpwwt-widget ul { border-top: 1px solid #d6d6de; }
.rpwwt-widget ul li {
    margin: 0;
    border-bottom: 1px solid #d6d6de;
    padding: 13px 0;
}
.rpwwt-post-title {
    color: #000;
    font-size: 1.2em;
    line-height: 1.2;
}
.rpwwt-widget ul li img { margin-top: 0; margin-bottom: 0; }
.widget-area .widget a:hover img { opacity: 0.75; }
.widget-area .widget a:hover .rpwwt-post-title { color: #00b2c3; }
.rpwwt-post-date { font-size: 0.85em; color: #9a9aad; }

.hentry .wp-post-image {
    max-height: 330px;
    width: auto;
}

.custom_html { margin-top: 3em; }

#loginform input[type=text], #loginform input[type=email], #loginform input[type=password] { width: 100%; }

h3.addon-name { font-size: 21px; margin-bottom: 0; }
.product-addon .form-row { margin-bottom: 0; }
.form-row label { font-size: 0.9em; }
.form-row .woocommerce-Price-amount { font-size: 1.1em; }

#category_events .post { margin-bottom: 3em; }
#category_events .content { padding: 0 0.5em; }
#category_events .image { margin-bottom: 1.5em; }
#category_events i { width: 22px; color: #00b2c3; }

.woocommerce-cart-form .product-name a { font-weight: 700; }

#order_review li, .woocommerce-MyAccount-navigation li { margin-bottom: 0 !important; text-indent: 0 !important; padding-left: 0 !important; }
#order_review li:before, .woocommerce-MyAccount-navigation li:before { display: none !important; }

.star-rating span:before, .quantity .plus, .quantity .minus, p.stars a:hover:after, p.stars a:after, .star-rating span:before, #payment .payment_methods li input[type=radio]:first-child:checked+label:before {
    color: #00b2c3;
}


#payment .payment_methods > li:not(.woocommerce-notice) {
    background-color: #eee8e3;
}
#payment .payment_methods > li .payment_box, #payment .place-order {
    background-color: #f7f4f1;
}

@media (min-width: 480px) {
	body .site-header ul.menu li a { padding: 15px; }
	body .site-header ul.menu li a:before { font-size: 22px; }
	body .site-header ul.menu li.icon-close a:before { font-size: 24px; }
	body .site-header ul.menu li.icon-facebook a:before { font-size: 23px; }
	
	.slideshow-text {
		background: transparent;
		position: absolute;
		top: 0;
		left: 0;
	}
	.slideshow-text .col-full { height: 100%; position: relative; }
	.slideshow-text .wrap-text {
		width: 50%;
		background: rgba(0, 0, 0, 0.7);
		padding: 15px;
		right: 0;
		top: 50%;
		position: absolute;
		-o-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.slideshow-text .title { font-size: 18px; }
	
	.featured_content { font-size: 19px; }
	
	.storefront-featured-products .section-title { font-size: 28px; }
	
	#four_blocks .block { width: 50%; float: left; }
	#four_blocks a .block_title { font-size: 17px; }
	
	#contractors .company { width: 60%; float: left; }
	#contractors .category { width: 35%; float: right; clear: right; }
	#contractors .accredited   { width: 35%; float: right; }
	
	#partners { margin: -10px -10px 1em -10px; }
	#partners .image { width: 50%; float: left; padding: 20px 30px; }
	#partners .image:nth-child(odd) { clear: both; }
    
	
	.team-photo { width: 35%; float: left; margin: 5px 30px 20px 0; }
	.team-photo img { width: 100%; }
}

@media (min-width: 600px) {
	.site-header { padding-top: 0.75em; padding-bottom: 0.75em; }
	.site-header .site-branding { width: 45%; margin-right: 5%; float: left; padding-top: 20px; padding-bottom: 0; }
	.site-header .custom-logo-link img, .site-header .site-logo-anchor img, .site-header .site-logo-link img { width: 390px; max-width: 100%; margin: 0; }
	.secondary-navigation, .header-navigation { width: 50%; float: right; }
	.site-header .menu { text-align: right; }
	.site-header .menu li { display: inline-block; padding: 5px 10px; text-align: right; }
	body .site-header ul.menu li a, body .site-header ul.menu li.small-on-mobile a { padding: 0; font-size: 17px; line-height: 1.4; }
	body .site-header ul.menu li a:before { font-size: 15px; }
	body .site-header ul.menu li.icon-close a:before { font-size: 17px; }
	body .site-header ul.menu li.icon-facebook a:before { font-size: 16px; }
	body .site-header ul.menu li a:before, body .site-header ul.menu li.small-on-mobile a:before { margin-right: 10px; }
	
	.slideshow-text .title { font-size: 20px; }
	
	#four_blocks a .block_title { font-size: 20px; }
/*
	body .site-main ul.products,
	.site-main .columns-2 ul.products, 
	.site-main .columns-3 ul.products, 
	.site-main .columns-4 ul.products,
	.page-template-template-homepage-php .site-main .columns-2 ul.products {
		margin-right: -3%;
		margin-left: -3%;
	}
	body .site-main ul.products li.product,
	.site-main .columns-2 ul.products li.product, 
	.site-main .columns-3 ul.products li.product, 
	.site-main .columns-4 ul.products li.product,
	.page-template-template-homepage-php .site-main .columns-2 ul.products li.product {
		width: 44%;
		float: left;
		margin-right: 3%!important;
		margin-left: 3%!important;
		margin-bottom: 2.5em;
	}
	body .site-main ul.products li.product:nth-child(odd), 
	.site-main .columns-2 ul.products li.product:nth-child(odd), 
	.site-main .columns-3 ul.products li.product:nth-child(odd), 
	.site-main .columns-4 ul.products li.product:nth-child(odd),
	.page-template-template-homepage-php .site-main .columns-2 ul.products li.product:nth-child(odd) {
		clear: both;
	}
	ul.products li.product.last { margin-right: 0!important; }
	*/
	#magazine { margin: 0 -2.5% 1.5em -2.5%; }
	#magazine .issue { width: 45%; margin: 0 2.5% 1.5em 2.5%; float: left; text-align: center; }
	#magazine .issue:nth-child(odd) { clear: both; }
	#magazine .issue object { margin: 0 auto; }
	
	/* category_blocks */
	#category_blocks { margin: 0 -2.5%; }
	#category_blocks .block { 
		width: 45%;
		float: left;
		margin: 0 2.5% 2em 2.5%;
	}
	#category_blocks .block:nth-child(odd) { clear: both; }
}

@media (min-width: 640px) {
}

@media (min-width: 768px){
	.floatleft { float: left; }
	.floatright { float: right; }
	.width20 { width: 20%; }
	.width33 { width: 33.333%; }
	.width40 { width: 40%; }
	.width45 { width: 45%; }
	.width50 { width: 50%; }
	.width55 { width: 55%; }
	.width60 { width: 60%; }
	.width75 { width: 75%; }
	
	body .site-header { text-align: left; padding-top: 0.25em; padding-bottom: 0.25em; }
    
	.storefront-secondary-navigation.woocommerce-active .site-header .secondary-navigation { float: right; margin-right: 0; }
	.storefront-secondary-navigation.woocommerce-active .site-header .site-branding {
		width: 30%;
		float: left;
		margin: 1.5em 5% 0.25em 0;
	}
	.storefront-secondary-navigation.woocommerce-active .site-header .secondary-navigation { width: 65%; }
	.site-header .site-branding { width: 39%; float: left; padding: 0; }
	.header-navigation { width: 56%; float: right; }
	.woocommerce-active .site-header .secondary-navigation, .site-header .secondary-navigation { width: 56%; float: right; margin-right: 0; }
	.site-header .secondary-navigation, .header-navigation { margin: 10px 0 0 0; }
	.site-header .menu { text-align: right; }
	.site-header .menu li { display: inline-block; padding: 5px 10px; }
	.secondary-navigation .menu { float: none; }
	.main-navigation ul li a { font-size: 14px; }
	.primary-navigation { width: 1280px; max-width: 98%; margin: 0 auto; }
	.main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a { padding: 15px 0; }
	.main-navigation ul.menu>li, .main-navigation ul.nav-menu>li { margin: 0 6px; }
	.main-navigation ul.menu>li:last-child>a, .main-navigation ul.nav-menu>li:last-child { margin-right: 0; }
	.main-navigation ul.menu>li:first-child>a, .main-navigation ul.nav-menu>li:first-child { margin-left: 0; }
	.main-navigation ul.menu > li.menu-item-has-children > a:after, 
	.main-navigation ul.menu > li.page_item_has_children > a:after, 
	.main-navigation ul.nav-menu > li.menu-item-has-children > a:after, 
	.main-navigation ul.nav-menu > li.page_item_has_children > a:after {
		font-size: 10px;
		content: "\f078";
		margin-left: 0.3em;
		opacity: 0.5;
	}
	.main-navigation ul li a:hover, .main-navigation ul li:hover > a, body ul.menu li.current-menu-item>a {
	  color: #fff;
	}
	/*
	.site-header ul.menu li.current-menu-item > a {
	  color: #fff;
	}
	*/
	.primary-navigation > .menu > li.current-menu-item>a:before,
	.main-navigation ul > li.current-menu-parent>a:before,
	.primary-navigation > ul > li > a:hover:before{ 
		width: 100%;
		height: 5px;
		content: " ";
		display: block;
		background-color: #e96e32;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	.primary-navigation > ul > li.menu-item-has-children > a:hover:before { display: none; }
	.primary-navigation > .menu > li.current-menu-item:hover>a:before,
	.main-navigation ul > li.current-menu-parent:hover>a:before	{ display: none; }
	.main-navigation ul > li.current-menu-parent>a:after { color: #ffffff; }
	
	.main-navigation ul.menu, .main-navigation ul.nav-menu { margin-left: -7px; margin-right: -7px; }

	/* sub-menu */
	.main-navigation ul li.focus>ul, .main-navigation ul li:hover>ul, .secondary-navigation ul li.focus>ul, .secondary-navigation ul li:hover>ul { left: -10px; }
	.site-header-cart .widget_shopping_cart, .main-navigation ul.menu ul.sub-menu, .main-navigation ul.nav-menu ul.children {
		background-color: #e96e32;
		padding-bottom: 0.5em;
		padding-top: 0.5em;
	}
	.main-navigation ul ul li a, .secondary-navigation ul ul li a {
		width: 250px;
		line-height: 1.4;
	}
	.main-navigation ul.menu ul li a, .main-navigation ul.nav-menu ul li a {
		padding: .75em 1.41575em;
		font-weight: 700;
	}
	.main-navigation ul.menu ul a:hover, 
	.main-navigation ul.menu ul li.focus, 
	.main-navigation ul.menu ul li:hover>a, 
	.main-navigation ul.nav-menu ul a:hover, 
	.main-navigation ul.nav-menu ul li.focus, 
	.main-navigation ul.nav-menu ul li:hover>a,
	body ul.menu ul.sub-menu li.current-menu-item>a	{
		background-color: transparent;
		color: #000000;
	}
	.main-navigation ul.menu ul li.menu-item-has-children>a, .main-navigation ul.menu ul li.page_item_has_children>a, .main-navigation ul.nav-menu ul li.menu-item-has-children>a, .main-navigation ul.nav-menu ul li.page_item_has_children>a {
		position: relative;
		padding-right: 2em;
	}
	.main-navigation ul.menu ul li.menu-item-has-children>a::after, .main-navigation ul.menu ul li.page_item_has_children>a::after, .main-navigation ul.nav-menu ul li.menu-item-has-children>a::after, .main-navigation ul.nav-menu ul li.page_item_has_children>a::after {
		float: none;
		position: absolute;
		right: 1em;
		top: 50%;
		font-size: 1em;
		margin-top: -0.5em;
		line-height: 1em;
	}
	
	
	.storefront-breadcrumb, .woocommerce-breadcrumb { margin-top: -0.5em; }
	
	.slideshow-text { line-height: 1.35; }
	.slideshow-text .wrap-text { text-align: left; }
	.slideshow-text .title { font-size: 22px; margin-bottom: 0.5em; }
	.slideshow-text .description { display: block; font-size: 15px; margin-bottom: 1em; }
	.slideshow-text .description p { margin-bottom: 0.5em; }
	.slick-prev, .slick-next { height: 50px; width: 50px; 	}
	.slick-prev:before, .slick-next:before { font-size: 20px; }
	
	.entry-content { margin-bottom: 10px; }
	
	.page-template-template-homepage .content-area,
	.right-sidebar .content-area {
		width: 62%;
		float: left;
		margin-right: 8%;
	}
	.page-template-template-homepage #secondary,
	.right-sidebar .widget-area {
		width: 30%;
		float: right;
	}
	.page-template-template-2columns .content-area,
	.page-template-template-fullwidth-php .content-area,
	.page-template-template-contractors .content-area,
	.page-template-template-magazine .content-area,
	.storefront-full-width-content .content-area,
	.tax-product_cat .content-area,
	.woocommerce.post-type-archive-product .content-area,
	.content-area.fullwidth {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.subheading { margin-bottom: 1em; }
	
	.sidebar_fields .title { font-size: 24px; }
	
	.storefront-full-width-content .woocommerce-products-header, 
	.storefront-full-width-content.woocommerce-account .entry-header, 
	.storefront-full-width-content.woocommerce-cart .entry-header, 
	.storefront-full-width-content.woocommerce-checkout .entry-header {
		padding: 0;
	}
	
	ul.products li.product .button { padding: 4px 16px 5px 16px; font-size: 18px; letter-spacing: -0.0125em; }
	a.add_to_cart_button:before { padding-right: 8px; }
	ul.products li.product .woocommerce-loop-product__title, 
	ul.products li.product h2, ul.products li.product h3, .product-title {
    font-size: 18px; 
	}
	body ul.products li.product .price, .woocommerce-Price-amount { font-size: 20px; }
	ul.products li.product img { width: 340px; }
	.woocommerce-tabs { padding-top: 0 }
	.woocommerce-tabs ul.tabs { width: 23%; margin-right: 5%; }
	.woocommerce-tabs .panel { width: 72%; }
	.single-product .product { padding-top: 20px; }
	.single-product div.product .woocommerce-product-gallery { width: 34%; margin-right: 6%; }
	.single-product div.product .summary { width: 60%; }
	table.cart td, table.cart th { padding: .875em; }
	
	/*
	.site-main .columns-3 ul.products li.product, .site-main .columns-4 ul.products li.product, body .site-main ul.products li.product {
		width: 27.333%;
	}
	.site-main .columns-3 ul.products li.product:nth-child(odd), .site-main .columns-4 ul.products li.product:nth-child(odd), body .site-main ul.products li.product:nth-child(odd) {
		clear: none!important;
	}
	.site-main .columns-3 ul.products li.product:nth-child(3n-2), .site-main .columns-4 ul.products li.product:nth-child(3n-2), body .site-main ul.products:not(.columns-2) li.product:nth-child(3n-2) {
		clear: both!important;
	}
	.site-main .columns-2 ul.products li.product { clear: none!important; }
	.site-main .columns-2 ul.products li.product:nth-child(odd) { clear: both!important; }
	*/
	.featured_content { font-size: 23px; padding: 70px 0; }
	
	.storefront-featured-products ul.products li.product { margin-bottom: 0; }
	.storefront-featured-products .section-title { text-align: left; }
	
	.sidebar_buttons { margin-top: 10px; }
	
	#four_blocks a .block_title { font-size: 22px; padding: 13px; }
	#secondary #four_blocks .block {
		width: 100%; 
		float: none; 
		border-bottom: 15px solid #fff; 
	}
	#secondary #four_blocks a .block_title { font-size: 20px; }
	
	#contractors .company { width: 75%; }
	#contractors .accredited, #contractors .category { width: 20%; }
	#contractors .company-with-img .details { width: 55%; float: left; }
	#contractors .company-with-img .image { width: 40%; float: right; }
	
	#partners { margin: -10px -20px 1.5em -20px; }
	
	.acf-2col-left { width: 35%; float: left; margin: 0 6% 0 0; }
	.acf-2col-right { width: 59%; float: right; }
	.team-photo { width: 100%; float: none; margin: 0 0 25px 0; }
	.acf-2col-title { padding-top: 0; }
	.acf-2col-content { padding: 50px 0; }
	
	.col-half-left {width: 45%; float: left; }
	.col-half-right {width: 45%; float: right; }
	
	.site-footer { padding: 2em 0; }
	.site-info { text-align: left; }
	.credit { text-align: right; }
}

@media (min-width: 920px){
	body, button, input, select, textarea { font-size: 18px; }
	
	h1, .page-template-template-homepage .entry-header h1 { font-size: 30px; }
	h2, .alpha { font-size: 24px; }
	h3 { font-size: 23px; }
	h4 { font-size: 21px; }
	h5 { font-size: 17px; }
	h6 { font-size: 18px; }
	
	body .site-header ul.menu li a, body .site-header ul.menu li.small-on-mobile a { font-size: 18px; }
	body .site-header ul.menu li a:before { font-size: 16px; }
	body .site-header ul.menu li.icon-close a:before { font-size: 18px; }
	body .site-header ul.menu li.icon-facebook a:before { font-size: 17px; }
	.header-navigation { margin-top: 15px; }
	.site-header .secondary-navigation { margin-top: 20px; }
	
	.main-navigation ul li a { font-size: 16px; }
	.main-navigation ul.menu>li, .main-navigation ul.nav-menu>li { margin: 0 10px; }
	
	.slideshow { margin-bottom: 20px; }
	.slideshow-text .wrap-text { width: 47%; padding: 25px; }
	.slideshow-text .title { font-size: 24px; }
	.slideshow-text .description { font-size: 16px; }
	.slideshow-text .button { padding: 4px 22px 5px 22px; font-size: 18px; }
	
	.sidebar_fields .title { font-size: 30px; }
	
	#four_blocks .block { width: 25%; }
	#four_blocks a .block_title { font-size: 16px; }
	#secondary #four_blocks a .block_title { font-size: 22px; }
	
	.featured_content { padding: 80px 0; }
	.featured_content p { padding: 0 80px; }
	
	#magazine .issue { width: 28.333%; }
	#magazine .issue:nth-child(odd) { clear: none; }
	#magazine .issue:nth-child(3n-2) { clear: both; }
	#magazine .title { font-size: 22px; }
	
	body ul.products li.product .price, .woocommerce-Price-amount { font-size: 25px; }
	
	.site-info { font-size: 16px; }
	
	.sidebar_buttons li a { padding: 20px 45px 20px 20px; }
	
	#category_blocks .block { width: 28.333%; }
	#category_blocks .block:nth-child(odd) { clear: none; }
	#category_blocks .block:nth-child(3n-2) { clear: both; }
	#category_blocks .title { font-size: 24px; }
}

@media (min-width: 980px){
	.main-navigation ul li a { font-size: 17px; }
	.main-navigation ul.menu>li, .main-navigation ul.nav-menu>li { margin: 0 11px; }
	/*
	.site-main .columns-4 ul.products li.product, body .site-main ul.products li.product { width: 19%; }*/
	.site-main .columns-4 ul.products li.product:nth-child(3n-2), body .site-main ul.products li.product:nth-child(3n-2) { clear: none!important; }
	.site-main .columns-4 ul.products li.product:nth-child(4n-3), body .site-main ul.products li.product:nth-child(4n-3) { clear: both!important; }
	
	ul.products { margin-left: -2%; margin-right: -2%; }
	.site-main ul.products.columns-3 li.product {
		width: 21%;
		float: left;
		margin-right: 2% !important;
		margin-left: 2% !important;
	}
	
	#contractors .company { width: 61%; margin-right: 3%; }
	#contractors .company-with-img .image { width: 30%; }
	#contractors .company-with-img .details { width: 65%; }
	#contractors .accredited { width: 17%; margin-right: 3%; float: left; }
	#contractors .category { width: 16%; }
}

@media (min-width: 1024px){

	#content { margin-bottom: 50px; margin-top: 50px; }
	.site-content { margin-bottom: 50px; }

	button, input[type="button"], input[type="reset"], input[type="submit"], 
	.button, .added_to_cart, .widget a.button, .site-header-cart .widget_shopping_cart a.button {
		border-width: 3px; 
	}
	body .site-header ul.menu li a:before { font-size: 17px; }
	body .site-header ul.menu li.icon-close a:before { font-size: 19px; }
	body .site-header ul.menu li.icon-facebook a:before { font-size: 18px; }
	
	.main-navigation ul li a { font-size: 18px; }
	
	.slideshow-text .title { font-size: 30px; }
	.slideshow-text .description { font-size: 18px; }
	
	.featured_content { font-size: 24px; }
	.featured_content p { padding: 0 110px; }
	
	#four_blocks a .block_title { font-size: 18px; }
	
	#partners .image { width: 33.333%; }
	#partners .image:nth-child(odd) {clear: none; }
	#partners .image:nth-child(3n-2) {clear: both; }

	.storefront-featured-products .section-title { font-size: 30px; }
	
	.sidebar_fields .text-wrap { padding: 25px 25px 0 25px; }
	
	.acf-2col-left { width: 30%; }
	.acf-2col-right { width: 62%; }
	
	.ui-accordion-header { font-size: 24px; padding: 20px; margin: 5px 0; }
	
	a.add_to_cart_button { font-size: 24px; padding: 4px 28px 5px 28px; border-width: 4px; }
}

@media (min-width: 1100px){

	#content { margin-bottom: 60px; margin-top: 60px; }
	.site-content { margin-bottom: 60px; }
	
	h1, .page-template-template-homepage .entry-header h1 { font-size: 34px; }
	h2, .alpha { font-size: 28px; }
	h3 { font-size: 26px; }
	h4 { font-size: 25px; }
	h5 { font-size: 21px; }
	h6 { font-size: 22px; }
	
	body .site-header ul.menu li a:before { font-size: 18px; }
	body .site-header ul.menu li.icon-close a:before { font-size: 20px; }
	body .site-header ul.menu li.icon-facebook a:before { font-size: 19px; }
		
	.main-navigation ul li a { font-size: 19px; }
	.main-navigation ul.menu > li.menu-item-has-children > a:after, 
	.main-navigation ul.menu > li.page_item_has_children > a:after, 
	.main-navigation ul.nav-menu > li.menu-item-has-children > a:after, 
	.main-navigation ul.nav-menu > li.page_item_has_children > a:after {
		font-size: 14px;
	}
	
	.slideshow-text .wrap-text { padding: 30px; width: 45%; }
	
	.featured_content { font-size: 26px; padding: 90px 0; }
	.featured_content p { padding: 0 120px; }
	
	#four_blocks a .block_title { font-size: 19px; }
	
	.sidebar_fields .text-wrap { padding: 30px 25px 0 25px; }
	.sidebar_fields .title { font-size: 38px; margin-bottom: 25px; }
	
	.storefront-featured-products .section-title { font-size: 34px; }
	
	ul.products li.product .woocommerce-loop-product__title, 
	ul.products li.product h2, ul.products li.product h3,
	.product-title { font-size: 20px; }
	ul.products li.product .button { font-size: 20px; }

	.sidebar_buttons li a { font-size: 20px; }
	
	#category_blocks .title { font-size: 26px; }
}

@media (min-width: 1200px){
	body, button, input, select, textarea { font-size: 20px; }

	#content { margin-bottom: 60px; margin-top: 60px; }
	.site-content { margin-bottom: 60px; }
	
	.main-navigation ul.menu>li, .main-navigation ul.nav-menu>li { margin: 0 16px; }
	.main-navigation ul.menu>li>a, .main-navigation ul.nav-menu>li>a { padding: 17px 0; }
	
	.main-navigation ul.menu ul li a, .main-navigation ul.nav-menu ul li a { font-size: .825em; }
	.main-navigation ul ul li a, .secondary-navigation ul ul li a { width: 285px; }
	
	.slideshow-text .title { font-size: 32px; }
	.slideshow-text .description { font-size: 20px; }
	.slideshow-text .button { font-size: 21px; }
	
	.featured_content { font-size: 28px; }
	.featured_content p { padding: 0 130px; }
	
	#four_blocks a .block_title { font-size: 21px; }
	
	#partners .image { padding: 30px 35px; }
	
	#magazine .issue { width: 20%; }
	#magazine .issue:nth-child(3n-2) { clear: none; }
	#magazine .issue:nth-child(4n-3) { clear: both; }
	#magazine .title { font-size: 21px; }
	
	.sidebar_fields .text-wrap { padding: 35px 30px 0 30px; }
	
	.acf-2col-left { width: 25%; }
	.acf-2col-right { width: 66%; }
	
	ul.products li.product .woocommerce-loop-product__title, 
	ul.products li.product h2, ul.products li.product h3,
	.product-title { font-size: 22px; }
	ul.products li.product .button { padding: 4px 22px 5px 22px; }

	.sidebar_buttons li a { font-size: 22px; margin-bottom: 4px; padding-left: 23px; }
}

@media (min-width: 1280px){
	
	h1, .page-template-template-homepage .entry-header h1 { font-size: 36px; }
	h2, .alpha { font-size: 30px; }
	h3 { font-size: 28px; }
	h4 { font-size: 27px; }
	h5 { font-size: 23px; }
	h6 { font-size: 25px; }

	.main-navigation ul.menu>li, .main-navigation ul.nav-menu>li { margin: 0 21px; }
	.main-navigation ul li a { font-size: 20px; }
	
	.slideshow-text { line-height: 1.5; }
	.slideshow-text .title, .slideshow-text .description p { margin-bottom: 0.75em; }
	.slideshow-text .description { margin-bottom: 1.5em; }
	
	.sidebar_fields .title { font-size: 46px; }
	.sidebar_fields .text-wrap { padding: 35px 32px 0 32px; }
	
	.storefront-featured-products .section-title { font-size: 36px; }
	
	.sidebar_buttons li a { font-size: 23px; padding-right: 55px; }
	.sidebar_buttons li a i { right: 20px; }
}

@media (min-width: 1440px){
	
	h2, .alpha { font-size: 32px; }
	h3 { font-size: 30px; }
	h4 { font-size: 29px; }
	h5 { font-size: 25px; }
	h6 { font-size: 27px; }

	#content { margin-bottom: 70px; margin-top: 70px; }
	.site-content { margin-bottom: 70px; }
	
	.slideshow-text .title { font-size: 34px; }
	.slideshow-text .description { font-size: 22px; }
	.slideshow-text .button { font-size: 22px; }
	
	.sidebar_buttons li a { font-size: 24px; }
	
	.featured_content { font-size: 30px; padding: 100px 0; }
	.featured_content p { padding: 0 170px; }
	
	#four_blocks a .block_title { font-size: 23px; }
	#secondary #four_blocks a .block_title { font-size: 24px; }
	
	ul.products li.product .woocommerce-loop-product__title, 
	ul.products li.product h2, ul.products li.product h3,
	.product-title { font-size: 24px; }
}

@media (min-width: 1680px){
	.slideshow-text .wrap-text { padding: 40px; }
	.slideshow-text .title { font-size: 36px; }
	.slideshow-text .description { font-size: 24px; }
	.slideshow-text .button { font-size: 26px; padding: 4px 30px 5px 30px; }
	#four_blocks a .block_title { font-size: 27px; letter-spacing: 0.065em; }
}

@media (min-width: 1920px){
	#four_blocks a .block_title { font-size: 28px; }
	
	.featured_content { font-size: 34px; padding: 110px 0; }
	.featured_content p { padding: 0 110px; }
}


@media only screen and (max-width: 359px){
	body .alignright, body .alignleft {
		max-width: 100%;
		float: none;
		margin-left: 0;
		margin-right: 0;
		display: block;
		margin-bottom: 1.4em;
	}
}

@media only screen and (max-width: 1023px){
	.single-product #primary, .single-product #secondary { width: 100%; margin-right: 0; float: none; }
}

@media only screen and (min-width: 480px) and (max-width: 767px){

	.sidebar_buttons li a {
		padding: 20px 55px 20px 20px;
		font-size: 22px;
	}
	.sidebar_buttons li a i {
		right: 20px;
	}
	
}