/*
Theme Name: Oz Trees
Theme URI: http://bso.net.au/
Author: BSO
Author URI: http://bso.net.au/
Version: 1.0
*/

/* Fonts --- */
@import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700|Roboto+Slab:700);

/* Base / Typography --- */
body { min-width:960px; } /* Disable Responsiveness */
body { overflow-x:hidden; font-size:14px; font-family:"Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif; }
h1, h2, h3, h4, h5, h6 { font-family:"Roboto Slab", serif; line-height:1.2; margin-top:20px; margin-bottom:15px; }
h1 { font-size:32px; line-height:1.1; }
h2 { font-size:28px; line-height:1.1; }
h3 { font-size:24px; }
h4 { font-size:21px; }
h5 { font-size:18px; }
h6 { font-size:15px; text-transform:uppercase; }
h3 label, h4 label, h5 label, h6 label { display:inline; }

p, ul, ol, blockquote, blockquote p { line-height:1.5; }
p, ul, ol, dl, table, blockquote, form { margin-bottom:16px; }
ul, ol { margin-left:20px; }

a { transition:0.1s all ease-in; color:#2f7501; }
a:hover, a:focus { color:#b6b503; text-decoration:underline; }
small { font-size:75%; }

hr { margin-top:25px; margin-bottom:25px; }
blockquote { padding:5px 5px 1px 20px; }
blockquote p, blockquote cite { margin-bottom:5px; }

img { vertical-align:bottom; }
iframe { max-width:100%; border:0; }

table { width:100%; }
table thead tr th, table thead tr td, table tfoot tr th, table tfoot tr td, table tr th, table tr td { font-size:1em; }


/* Elements --- */
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], textarea, select { font-family:"Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif; margin-bottom:15px; border-color:#bababa; height:32px; font-size:14px; line-height:20px; padding:5px 10px; border-radius:4px; box-shadow:none; }
input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, textarea:focus, select:focus, textarea:focus { box-shadow:none; }

label { line-height:1.2; font-size:1em; }
select { padding-left:7px; }
input[type="checkbox"], input[type="radio"] { vertical-align:middle; margin:3px 0; }


/* Buttons */
.button { font-weight:400; font-size:14px; line-height:18px; padding:9px 20px; font-weight:700; background:#3e3e7e; margin-bottom:20px; border-radius:3px; border:0; outline:none; box-shadow:none; transition:0.2s background ease, 0.2s color, 0.2s border ease; }
.button:active { box-shadow:inset 0 2px 6px rgba(0,0,0,0.2) !important; }

.flex-video, .panel { margin-bottom:20px; }

.flex-video { background:#000; }

[class*="block-grid-"] { margin:0 -10px 10px; }
[class*="block-grid-"]>li { padding:0 10px 20px; }

.vcard { display:inline; border:0; margin:0; padding:0; }

.inline-list { overflow:visible; }
.inline-list>li>a { display:inline; }
.inline-list:after { content:""; display:table; clear:both; }

/* Select2 */
.select2-container { font-size:14px; line-height:1.3; }
.select2-results { line-height:1.3; }

/* Recaptcha Fix */
#recaptcha_area input[type="text"] { display:inline-block; height:auto; }
#recaptcha_response_field { margin:12px 0 0 0 !important; }
#recaptcha_area table thead tr th, table tfoot tr th, table tbody tr td, table tr td, table tfoot tr td { line-height:normal;}

/* Google Maps (APIv2) */
#map_container { margin:0 -25px; }
#map_canvas { width:100%; height:500px; }
#map_canvas table { border:0; }
#map_canvas table tr th, #map_canvas table tr td { padding:2px 3px; }
#map_canvas table tr th>*, #map_canvas table tr td>* { margin:0; }


/* WP --- */
.alignleft { float:left; }
.alignright { float:right; }
.aligncenter { display:block; margin-left:auto; margin-right:auto; }
img.alignleft, .wp-caption.alignleft { margin:3px 15px 10px 0; }
img.alignright, .wp-caption.alignright { margin:3px 0 10px 15px; }
img.aligncenter { margin-top:20px; margin-bottom:20px; }
img.alignnone { margin-bottom:20px; }

.wp-caption { max-width:100%; padding:4px 0; }
.wp-caption .wp-caption-text { font-style:italic; line-height:1.2; padding-top:3px; }

.sticky {}

.screen-reader-text { position:absolute !important; width:1px; height:1px; clip:rect(1px 1px 1px 1px); clip:rect(1px, 1px, 1px, 1px); }

/* Helpers */
body .is-logged-in { display:none; }
body.logged-in .is-logged-out { display:none; }
body.logged-in .is-logged-in { display:block; }


/* Layout --- */
body { background:#333; }

.site-container { background:#fff; }
.wrapper { padding:25px 25px 30px; }

/* Grid */

.row { max-width:960px; }
.row .row { margin-left:-15px; margin-right:-15px; }
.columns { padding-left:15px; padding-right:15px; }


/* Header & Nav --- */
.site-header { position:relative; z-index:1; }
.site-header .banner { position:relative; background:#888; box-shadow:inset 0 0 25px rgba(0,0,0,0.2); height:180px; overflow:hidden; }
.site-header .logo { z-index:999; display:block; position:absolute; bottom:0; left:0; width:960px; height:126px; background:url(img/logo.png); }

.site-header .slider { height:100%: overflow:hidden; }
.site-header .slider .slide { position:relative; width:100%; height:180px; background:no-repeat center center; background-size:cover; }

/* Nav */
nav.primary { background:#000; font-size:14px; padding:5px 10px; }
nav.primary ul { list-style:none; margin:0; }
nav.primary>ul:after { content:""; display:table; clear:both; }
nav.primary>ul>li { float:left; position:relative; margin:0 1px; }
nav.primary>ul>li>a { display:inline-block; position:relative; line-height:1; color:#fff; font-weight:700; line-height:30px; padding:0 10px; border:1px solid transparent; border-radius:3px; transition:0.2s background ease, 0.2s border ease, 0.2s color ease; }
nav.primary>ul>li:hover>a, nav.primary>ul>li>a:focus { color:#fff9a9; background:#1a3c09; text-decoration:none; }
nav.primary>ul>li:focus>a, nav.primary>ul>li.active>a, nav.primary>ul>li.current_page_parent>a { border-color:#1c5100; }
nav.primary>ul>li:active>a { box-shadow:inset 0 2px 5px rgba(0,0,0,.3); }
nav.primary>ul>li.has-flyout>a { border-radius:3px 3px 0 0; }
nav.primary .flyout-toggle { display:none !important; }

nav.primary ul.flyout { display:none; background:#8fa260; z-index:9; position:absolute; margin-top:-1px; top:100%; left:0; width:200px; padding:5px 0; border-radius:0 0 3px 3px; }
nav.primary ul>li:hover>ul.flyout { display:block; }
nav.primary ul.flyout>li>a { display:block; color:#fff; font-weight:700; padding:5px 20px; margin-bottom:1px; }
nav.primary ul.flyout>li:hover>a, nav.primary ul.flyout>li>a:focus { text-decoration:none; }
nav.primary ul.flyout>li:hover>a, nav.primary ul.flyout>li>a:focus, nav.primary ul.flyout>li.active>a { background:rgba(255,255,255,0.2); }

/* Mobile Nav */
a.mobile-menu { display:none; float:right; margin-top:5px; margin-right:-12px; color:#fff; font-weight:600; height:46px; padding:0 15px; font-size:18px; transition:none; opacity:0.9; }
a.mobile-menu span { float:left; line-height:46px; padding-right:10px; }
a.mobile-menu svg { height:32px; width:27px; margin:8px 0; fill:#fff; }
a.mobile-menu:hover, a.mobile-menu:focus { background:rgba(255,255,255,0.1); }
.offcanvas-active a.mobile-menu { background:rgba(255,255,255,0.2); opacity:1; }

.offcanvas-container, .offcanvas-menu { transition:0.4s all ease-out; }
.offcanvas-container { position:relative; z-index:2; }
.offcanvas-menu { display:none; position:absolute; z-index:1; top:0; right:0; box-shadow:inset 45px 0 40px -40px rgba(0,0,0,0.4); width:240px; height:100%; background:#273e7c; }
.offcanvas-menu a { color:#dbdbdb; }
.offcanvas-menu a:hover { text-decoration:none; }
.offcanvas-menu ul { list-style:none; margin:0; line-height:1.2; }
.offcanvas-menu>ul { font-weight:400; font-size:17px; margin-top:45px; }
.offcanvas-menu ul>li { position:relative; margin:1px 0; }
.offcanvas-menu ul>li>a { padding:15px 20px; padding-right:30px; display:block; }
.offcanvas-menu ul>li:hover>a, .offcanvas-menu ul>li.flyout-active>a, .offcanvas-menu ul>li.active>a { color:#fff; background:rgba(255,255,255,0.1); }

.offcanvas-menu ul.flyout { display:none; font-size:15px; background:rgba(255,255,255,0.18); padding:7px 0 12px; margin-bottom:10px; }
.offcanvas-menu ul>li.flyout-active>ul.flyout { display:block; }
.offcanvas-menu ul.flyout>li>a { padding:9px 30px; }

.offcanvas-menu .flyout-toggle { position:absolute; top:0; right:0; width:50px; padding-top:15px; background:none !important; }
.offcanvas-menu .flyout-toggle:after { content:"▼"; }
.offcanvas-menu ul>li.flyout-active>.flyout-toggle:after { content:"▲"; }


/* Content --- */
.content>:first-child, .entry-title, .page-title { margin-top:0; }

.page-title, .entry-title { color:#2f7501; margin-top:0; margin-bottom:20px; }

h2.entry-title { margin-bottom:10px; }
.entry-meta { line-height:1.5; margin-bottom:15px; }
.entry-summary p { margin-bottom:10px; }
body.blog article, body.archive article, body.search article { margin-bottom:40px; }
body.single .entry-meta { margin-top:25px;clear:both; }

.navigation { border-top:1px solid #ddd; padding-top:20px; margin:15px 0 10px; font-weight:700; }
.navigation span { padding-bottom:10px; }

.sidebar .widget { margin-bottom:40px; }
.widget .widgettitle { margin-top:0; margin-bottom:10px; font-size:20px; text-transform:uppercase; font-weight:700; }


/* Footer --- */
.pre-footer { background:#111; color:#fff; padding:15px; text-align:center; }
.pre-footer h4 { color:inherit; margin:5px 0; }
.site-footer { color:#fff; font-size:14px; margin-top:15px; text-align:center; }
.site-footer .pre-footer { margin-bottom:15px; }
.site-footer a, .site-footer a:hover, .site-footer a:active { color:#fff; }
.site-footer a:hover { text-decoration:underline; }


/* WooCommerce Tweaks --- */
body.woocommerce-page .woocommerce-error, body.woocommerce-page .woocommerce-info, body.woocommerce-page .woocommerce-message { line-height:1.3; }

body.woocommerce-page .woocommerce-error .button, body.woocommerce-page .woocommerce-info .button,body.woocommerce-page .woocommerce-message .button { margin-left:5px; border:1px solid rgba(0,0,0,0.2); }
body.woocommerce-page #respond input#submit.alt, body.woocommerce-page a.button.alt, body.woocommerce-page button.button.alt, body.woocommerce-page input.button.alt { background:#77a464; }
body.woocommerce-page #respond input#submit.alt:hover, body.woocommerce-page a.button.alt:hover, body.woocommerce-page button.button.alt:hover, body.woocommerce-page input.button.alt:hover { background:#7EBA65; }

/* Single Product */
body.woocommerce-page #respond input#submit, body.woocommerce-page a.button, body.woocommerce-page button.button, body.woocommerce-page input.button { height:32px; padding:8px 15px; font-size:14px; }

body.woocommerce-page .quantity .qty { width:55px; padding-left:8px; padding-right:5px; }

body.woocommerce-page div.product p.price del, body.woocommerce ul.products li.product .price del, body.woocommerce ul.products li.product .price ins { display:inline-block; }
body.woocommerce-page div.product span.price del { display:inline-block; }
body.woocommerce-page span.onsale { width:40px; height:40px; line-height:30px; padding:5px; }
body.woocommerce-page div.product div.images a { display:block; background:#ddd; }
body.woocommerce-page div.product div.images img { width:auto; margin:0 auto; }

/* Grid to List View */
body.woocommerce-page ul.products { margin-left:-12px; margin-right:-12px; clear:both; }

body.woocommerce-page ul.products li.product { float:none; width:100%; margin-right:0; padding:0 12px; }
body.woocommerce-page ul.products li.product a img { max-width:160px; float:left; margin:0; }
body.woocommerce-page ul.products li.product .content { display:block; padding-left:180px; }
body.woocommerce-page ul.products li.product .content:after { content:""; display:table; clear:both; }
body.woocommerce-page ul.products li.product h3 { padding:0; margin-bottom:0.75em; }
body.woocommerce-page ul.products li.product .content div p { color:#666; font-weight:700; line-height:1.2; margin-top:-0.5em; margin-bottom:0.75em; }
body.woocommerce-page ul.products li.product .price { font-size:1.25em; line-height:1; }
body.woocommerce-page ul.products li.product .description { max-width:500px; line-height:1.4; margin-bottom:0.25em; }
body.woocommerce-page ul.products li.product .button { margin-top:10px; }

/* Keep grid styling for category & related products */
body.woocommerce-page ul.products li.product.product-category, body.woocommerce-page div.related ul.products li.product { float:left; clear:none; }
body.woocommerce-page ul.products li.product.product-category { width:33.3333%; }
body.woocommerce-page div.related ul.products li.product { width:23.5%; }
body.woocommerce-page ul.products li.product.product-category a img, body.woocommerce-page div.related ul.products li.product a img { float:none; max-width:none; margin-bottom:1em; }
body.woocommerce-page ul.products li.product.product-category .content, body.woocommerce-page div.related ul.products li.product .content { padding-left:0; }

.woocommerce .related ul li.product, .woocommerce .related ul.products li.product, .woocommerce .upsells.products ul li.product, .woocommerce .upsells.products ul.products li.product, .woocommerce-page .related ul li.product, .woocommerce-page .related ul.products li.product, .woocommerce-page .upsells.products ul li.product, .woocommerce-page .upsells.products ul.products li.product { width:23% !important; float:left; }
body.woocommerce-page .related ul.products li.product .content{
	    padding-left: 0px;
    clear: both;
    padding-top: 20px;
}
.woocommerce .related ul.products li.product:nth-child(3n+4), .woocommerce-page ul.products li.product:nth-child(3n+4){
	clear:none!important;
	margin-right:0;
}
.woocommerce .related ul.products li.product:nth-child(3n+3), .woocommerce-page .related ul.products li.product:nth-child(3n+3){
	margin-right:2%!important;
}

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product{
	width:32%!important;
	margin-right:2%!important;
}
.woocommerce ul.products li.product:nth-child(3n+3), .woocommerce-page ul.products li.product:nth-child(3n+3){
	margin-right:0!important;
}
.woocommerce ul.products li.first, .woocommerce-page ul.products li.first{
	clear:none!important;
}
.woocommerce ul.products li.product:nth-child(3n+4), .woocommerce-page ul.products li.product:nth-child(3n+4){
	clear:both!important;
}

/* Cart & Checkout */
body.woocommerce-page table.cart td.actions .coupon .input-text { line-height:20px; padding:5px 10px; min-width:100px; }
body.woocommerce-page table.cart a.button, body.woocommerce-page table.cart button.button, body.woocommerce-page table.cart input.button { height:32px; padding:8px 15px; }
body.woocommerce-page .cart-collaterals .cart_totals table { border:0; }

body.woocommerce-page form .form-row label { line-height:1.2; margin-bottom:5px; }
body.woocommerce-page ul#shipping_method li { padding-left:0; text-indent:0; }
body.woocommerce-page ul#shipping_method input[type="radio"] { float:left; }
body.woocommerce-page ul#shipping_method label { padding-left:18px; margin-bottom:5px; }

body.woocommerce-page .payment_methods label { margin-bottom:15px; font-weight:700; }
body.woocommerce-page .payment_methods input[type="radio"] { float:left; }

/* My Account */
body.woocommerce-page form.checkout_coupon, body.woocommerce-page .woocommerce form.login, body.woocommerce-page .woocommerce form.register { margin:10px 0 20px; max-width:500px; }
body.woocommerce-account div.woocommerce>form { max-width:600px; }

header.title>h3 { margin-top:0; }

/* Hide Shipping Calculator Fields */
.shipping-calculator-form #calc_shipping_country_field, .shipping-calculator-form #calc_shipping_state_field, .shipping-calculator-form #calc_shipping_postcode_field, .shipping-calculator-form #calc_shipping_city_field { display:none !important; }

#delivery_area label { font-weight:700; }


/* Gravity Form Styling --- */
.gform_fields { max-width:600px; }
.gform_fields, .gform_fields ul { margin-left:0; }
.gform_wrapper { margin-bottom:15px; }
.gform_title { font-weight:400; }
.gform_description { color:#777; line-height:1.4; display:block; margin-bottom:10px; }

.gform_fields, .gform_fields ul { list-style:none; padding-left:0; margin-top:0; }
.gform_fields .gfield_label { padding-bottom:2px; font-weight:700; font-size:15px; }
.gform_fields .gfield_label .gfield_required { color:red; padding-left:2px; }
.gform_fields .hide_label .gfield_label { display:none; }

.gform_fields .gfield { margin-bottom:20px; }
.gform_fields input, .gform_fields select, .gform_fields textarea { margin-bottom:0; }

.gform_fields .gfield_error input, .gform_fields .gfield_error select, .gform_fields .gfield_error textarea { background:#fcc7c6; }
.gform_fields .gfield_description { line-height:1.2; padding-top:5px; padding-left:15px; margin-bottom:16px; color:#777; }
.gform_fields .gfield_description.validation_message { font-weight:700; color:#d9534f; font-style:italic; }
.validation_error, .gform_confirmation_message { padding:10px; line-height:1.4; border-radius:3px; margin-bottom:20px; }
.validation_error { background:#d9534f; color:#fff; }
.gform_confirmation_message { background:#5cb85c; color:#fff; }

.ginput_complex label, .clear-multi label { color:#555; padding-top:2px; padding-left:15px; margin-bottom:2px; }
.clear-multi label { margin-bottom:3px; }
.ginput_container i { display:none; }

.ginput_complex>span { float:left; width:49%; }
.ginput_complex>.ginput_right, .ginput_complex>span:last-child { float:right; }
.gf_clear:after, .ginput_complex:after, .ginput_complex>.ginput_right:after, .ginput_complex>span:last-child:after { content:""; display:table; clear:both; }

.gfield_radio, .gfield_checkbox { margin-top:4px; }
.gfield_radio input, .gfield_checkbox input { float:left; position:relative; margin-top:2px; }
.gfield_radio label, .gfield_checkbox label { line-height:1.2; padding-left:20px; padding-bottom:3px; margin-bottom:3px; }



/* Admin Bar */
#awpadminbar { display:none; }
html.js {  margin-top:0 !important; }



/* Responsiveness ------- */
@media screen and (max-width:767px) {
	.site-header .hide-for-small { display:none !important; }
	.site-header .show-for-small, a.mobile-menu { display:block !important; } 
	.offcanvas-menu { display:block; }
	body.offcanvas-active .offcanvas-container { -webkit-transform:translateX(-240px); -moz-transform:translateX(-240px); -ms-transform:translateX(-240px); -o-transform:translateX(-240px); transform:translateX(-240px); }
}

.facebook-link {
  background-color: #3A5795;
  background-image: url("img/facebook.png");
  background-position: center center;
  background-size: 100% 100%;
  border-radius: 50%;
  bottom: 3.25em;
  display: block;
  height: 1.5em;
  position: absolute;
  right: 1.25em;
  width: 1.5em;
  z-index: 1000;
}

.woocommerce img, .woocommerce-page img {
  height: auto;
  max-width: 100%;
  width: 100%;
}