/*
Theme Name: BF Sheds 2014
Theme URI: http://www.almostanything.com.au
Description: A generic starting point. Mobile-first, fully responsive. Home page has 3 Calls to Action. Main content with right sidebar. Horizontal Nav, requiring WP built-in menu management. Inbuilt homepage CTA management.
Version: 2012.2
Author: The Almost Anything Web and Graphic Design Crew
Author URI: http://www.almostanything.com.au
*/

/*
 * RELATIVE EMS: target/context=result
 * So if you want a 24px heading, and the parent element is 15px, you need to specify 1.6ems
 * ie 24/15=1.6
 * Got it yet Stu?
 * Similarly with widths. Elements will be a %age or their parent.
 *
 * THIS IS A MOBILE-FIRST STYLESHEET
 * If you're styling for the desktop you are editing the WRONG FILE
 * Go back, do not pass Go, do not collect $200
 */

/* Resets, Globals */

* {
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
}

div,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,select,button,p,table,blockquote,th,td {
    margin:0;
    padding:0;
    line-height:inherit;
}

    dl,ul,ol,h1,h2,h3,h4,h5,h6,form,fieldset,p,blockquote,table {
        margin:1em 0;
    }

        h1,h2,h3,h4,h5,h6 {
            margin:1em 0 .5em;
            line-height:1.2;
        }

            h1 {
                margin:0 0 .5em;
            }

table {
    border-collapse:collapse;
    border-spacing:0;
}

address,caption,cite,code,dfn,var {
    font-style:normal;
    font-weight:normal;
}
 
caption,th {
    text-align:left;
}

sup {
    vertical-align:text-top;
}

sub {
    vertical-align:text-bottom;
}

input,textarea,select {
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    padding:0 .4em;
}

/* Clearfix */
    
.clearfix:after, header>nav:after {
    content:"";
    display:block;
    clear:both;
}

/* End Clearfix */

/* Styles to support our JS scrollbar width calculations */
.scrollbar_measure {
    width: 100px;
    height: 100px;
    overflow: scroll;
    position: absolute;
    top: -9999px;
}

/***************************************************************
 *
 * Let's play Tetris!
 * This is basic grid, we're layout out the main semantic blocks
 *
 ***************************************************************/

html, body {
    margin:0;
    padding:0;
    line-height:1.5;
}

    html {
        font-family: Arial, sans-serif;
    }

    body {
        color: #FFF;
        font-size: 100%; /* Baseline: this means that 1em = 16px */
		background:#292728;
		font-weight:100;
    }

.contentbox {
    width: 100%;
    margin: auto;
    font-size: 1.25em; /* 20px for normal paragraph text */
}

article, .contentbox .sidebar {
    padding:0 3%;
}
    
    article {
        padding:1em 3%;
    }

/***************************************************************
 *
 * Header
 *
 ***************************************************************/

.site_info {
    padding:1.5em 3%;
	min-height: 140px;
}

    .site_title {
        text-indent:-9999px;
        width:0;
        height:0;
        margin:0;
    }

    .site_logo, .site_logo:hover, .site_logo img {
        display:block;
        background:none;
        position:relative;
        border:none;
		width:300px;
		max-width:300px;
		float:left;
    }

/* Skip links */
#skiplinks {
    position: absolute;
    left: -9999px;
}

.addressbox, .addressbox h1, .addressbox h2 {color:#008552;}

.addressbox a {color:#008552; text-decoration:none;}
.addressbox a:hover {color:#008552; text-decoration:underline;}

.addressbox {width:60%; float:right; text-align:right;}

.addressbox h1 {font-size:2.8em; margin:0;}
.addressbox h1 span {font-size:0.6em;}
.addressbox h2 {font-size:0.85em; margin:0;}

@media only screen and (max-width: 800px) {
	.addressbox {width:100%; float:none; text-align:center; margin:1em 0 0;}
	
	.site_logo, .site_logo:hover, .site_logo img {margin:0 auto; text-align:center; float:none;}
}

@media only screen and (max-width: 500px) {
	.addressbox h1 {font-size:2.4em; margin:0;}
	.addressbox h1 span {display:none;}
	.addressbox h2 {font-size:0.65em; margin:0;}
}

/***************************************************************
 *
 * Navigation
 *
 ***************************************************************/
/* Basic list reformatting */
.nav li {position:relative;}
.nav ul {position:absolute;top:-9999px;left:0;}
.nav ul, .nav ul li {display:block;}
.nav li:hover ul, .nav li.sfHover ul {top:2em;z-index:100;display:block;}
.nav li li:hover ul, .nav li li.sfHover ul {top:0; left:-250px;}

/* Basic list reformatting */
.nav, nav ul, nav li {margin:0;padding:0;list-style:none;}
    .nav ul, .nav li { float:left; }

/* Customise from here... */
header {background:#FFF;}

header>nav {
    background: #008552;
    line-height:2;
    padding:0 3%;
	clear:both;
}

.nav a {
    color: #FFF;
    padding:0 0.5em;
    border:none;
    display:block;
    text-decoration: none;
	font-family: "adelle-sans",sans-serif; 
	font-weight:100 !important; 
	text-transform:uppercase;
	letter-spacing:-0.5px;
	font-size:0.9em;
	}

.nav a:focus, .nav a:hover, .nav a:active, nav a:hover, nav .sfHover>a {
    background:#06623f;
    color: #fff;
}

nav .current_page_item>a, .single-post nav .current_page_parent>a, nav .current_page_ancestor>a, nav .current-menu-item>a, nav .current-menu-ancestor>a, nav .current-page-ancestor>a/*, .single-aacommerce_product nav .menu-item-151>a */ {
    background:#023c26;
    color:#fff;
}

.nav li ul {
    display: none;
}


ul.sub-menu {background:#FFF;}

ul.sub-menu a {color:#000;}

ul.sub-menu a:hover {color:#FFF}

/* Displays a sub nav immediately after the main (if exists). Here for ease of use on mobile. Hide for desktop and add dropdowns if required */
.mobile_sub_menu {
    padding:1em 3%;
    margin:0 auto;
    overflow:hidden;
    background: #eee;
}

    .mobile_sub_menu h2 {
        margin:0;
    }

/* This is for the mobile nav icon */
#menu-icon {
    display: none;
}

/* Squish menu down into a button */
@media only screen and (max-width: 860px) {

    #menu-icon {
        padding:0 .75em;
        display: block;
        text-align: center;
        line-height: 3;
        color: #FFF;
        cursor: pointer;
		-webkit-backface-visibility: hidden;
-moz-backface-visibility:    hidden;
-ms-backface-visibility:     hidden;
    }
	
	#menu-icon:before {
		content:"\2261 "; /* triple bar */
		display:inline-block;
		/* Firefox */
		-moz-transition: all 1s ease;
		/* WebKit */
		-webkit-transition: all 1s ease;
		/* Opera */
		-o-transition: all 1s ease;
		/* Standard */
		transition: all 1s ease;}

    #menu-icon:after{
       /* content: " \2193"; /* down arrow */
    }

        #menu-icon.active:after {
            content: " \2191"; /* up arrow */
        }
		
		#menu-icon.active:before {
		display:inline-block;
		-ms-transform: scale(1) rotate(270deg) translate(0px); /* IE 9 */
    	-webkit-transform: scale(1) rotate(270deg) translate(0px); /* Chrome, Safari, Opera */
		transform: scale(1) rotate(270deg) translate(0px);
		-webkit-backface-visibility: hidden;
-moz-backface-visibility:    hidden;
-ms-backface-visibility:     hidden;}
		

    .mobile_sub_menu {
        border-top: 1px solid #333; /* Hacky - bottom border gets cut off menu :( */
		-webkit-backface-visibility: hidden;
-moz-backface-visibility:    hidden;
-ms-backface-visibility:     hidden;
    }

    header nav {
        margin:0 0 1em;
    }

    header nav>ul {
        clear: both;
        position: relative;
        z-index: 10000;
        background: #f8f8f8;
        border: 1px solid #999;
        border-top:none;
    }

    .nav { margin:0 0 1em; }

    .nav li:hover ul, .nav li.sfHover ul {display:none;}

    .nav ul, .nav li { float:none; }

}

/***************************************************************
 *
 * Main Content - <article>
 *
 ***************************************************************/
article.home {text-align:center;}

article h1 {
    font-size: 1.8em;
    font-family: "adelle-sans",sans-serif;
    font-weight:100;
    text-transform:uppercase;
    color:#008552;
    border-bottom:1px solid #008552;
    padding-bottom:0.25em;
    font-weight: 500;
}

article h2, .gform_wrapper h2.gsection_title {
    font-size: 1.4em;
	font-family: "adelle-sans",sans-serif;
	font-weight:100 !important;
	text-transform:uppercase;
	color:#008552;
}

article h3 {
    font-size: 1.2em;
	font-family: "adelle-sans",sans-serif;
	font-weight:100;
	text-transform:uppercase;
	color:#008552;
}

article h4, article h5, article h6 {
    font-size: 1em;
}

article a {
    color:#008552;
}

article a:hover {
    color:#FFF;
}

/* Clear any floated images down near the bottom of posts */
.blog_navigation {
    clear:both;
}

/* the next 3 rules are for the way WP sets its image floats. On skinny screens we'll just centre them all */
article .alignleft, article .alignright, article .aligncenter {
    text-align:center;
    margin:1.5em auto;
    display:block;
}

img {
    max-width:100%;
    height:auto;
}

a img {
    border:none;
}

/* Featured Image on Pages */

.FeaturedImg {max-height:400px; overflow:hidden; width:100%; margin:0 auto; text-align:center; background:#000;}

.FeaturedImg img {width:100%; margin-bottom: -10px;}

#colorbox, #colorbox * {
    -moz-box-sizing:content-box;
    -webkit-box-sizing:content-box;
    box-sizing:content-box;
}

/* These 2 will make image captions look a bit like polaroids */
.wp-caption {
    background:#eee;
    overflow:hidden;
    max-width:100%;
}

    body.attachment .wp-caption {
        background:none;
        overflow: visible;
    }

    .wp-caption.alignnone {
        margin:1.5em 0;
    }

    .wp-caption>a, .wp-caption img {
        display:block;
    }

        .wp-caption img {
            width:100%;
        }

    .wp-caption-text {
        padding:0;
        margin:.75em 1em;
        line-height:1.3;
    }

        body.attachment .wp-caption-text {
            margin:.75em 0;
            font-weight:bold;
        }

        .gallery .wp-caption-text {
            margin:.25em 1em 0 0;
            font-size:.7em;
			margin:10px auto;
			text-align:center;
        }

.gallery .gallery-item {
    float: left;
    margin:0 0 3%;
}

.gallery a, .gallery img {
    display:block;
}

    .gallery img {
        max-width:95%;
        width:auto;
        height:auto;
		margin: 0 auto;
    }

@media only screen and (max-width: 450px) {

    .gallery dl.gallery-item {
        float: none;
        margin: 0 0 1em;
        width:auto;
        text-align:center;
    }

        .gallery a {
            display:inline-block;
        }

    .gallery .wp-caption-text {
        text-align: center;
        font-size:inherit;
    }

    .gallery br {
        display:none;
    }

}

/*
Image sizes depending on the number of columns
Based on Hybrid theme
*/

.gallery-columns-0 .gallery-item {
    width: 100%;
}
.gallery-columns-1 .gallery-item {
    width: 100%;
}
.gallery-columns-2 .gallery-item {
    width: 50%;
}
.gallery-columns-3 .gallery-item {
    width: 33.33%;
}
.gallery-columns-4 .gallery-item {
    width: 25%;
}
.gallery-columns-5 .gallery-item {
    width: 20%;
}
.gallery-columns-6 .gallery-item {
    width: 16.66%;
}
.gallery-columns-7 .gallery-item {
    width: 14.28%;
}

/* Callouts, pullquotes */
blockquote {
    position:relative;
    padding:0 0 0 2.3em;
    margin:1.5em 0;
}

blockquote:before, blockquote:after {
    content: "Ã¢â‚¬Å“";
    font-size: 5em;
    position: absolute;
    left: 0;
    top: .27em;
    color:#333;
}

blockquote:after {
    line-height:0;
    right:0;
    left:auto;
    top:auto;
    bottom:-.1em;
    color:#ddd;
    content:""";
}

/* Tables */

table, th, td {
    border:none;
    border:1px solid #ddd;
    text-align:left;
    border-collapse:collapse;
}

    table {
        margin:1em 0;
    }

    td, th {
        line-height:1.3;
        padding:.4em .6em;
    }
	

     @media only screen and (max-width:500px) {

        article table {
            border:none;
        }

        article tr, article td, article th {
            display:block;
            border:none;
        }

            article tr {
                margin:0 0 1em;
            }
            
    }
            
/* CTA Buttons */

.button {
    color: #fff;
    background: #008552;
    border:none;
    cursor:pointer;
    font-weight:bold;
    border-radius:3px;
    padding: .5em .75em;
    text-decoration: none;
	-webkit-appearance:none;
}

    .button:hover {
         background:#000;
		 color: #fff;
    }

/* Gravity Forms Style fixes */ 

.gform_wrapper form {
    margin-top:0;
}

article .gform_wrapper textarea, article .gform_wrapper input[type=text], article .gform_wrapper input[type=url], article .gform_wrapper input[type=email], article .gform_wrapper input[type=tel], article .gform_wrapper input[type=number], article .gform_wrapper input[type=password], article .gform_wrapper .ginput_complex label, article .gform_wrapper .gfield_time_hour label, article .gform_wrapper .gfield_time_minute label, article .gform_wrapper .gfield_date_month label, article .gform_wrapper .gfield_date_day label, article .gform_wrapper .gfield_date_year label, article .gform_wrapper .instruction {
    font-size:1em;
}

    article .gform_wrapper textarea, article .gform_wrapper input[type=text], article .gform_wrapper input[type=url], article .gform_wrapper input[type=email], article .gform_wrapper input[type=tel], article .gform_wrapper input[type=number], article .gform_wrapper input[type=password] {
        padding:.3em;
        font-size:.9em;
        max-width:100%;
    }

article .gform_wrapper .gform_footer {
    padding:0;
}

.gform_wrapper .gsection {border:none !important;}

.gform_wrapper h2.gsection_title {border-bottom:1px solid #008552;}

span.gfield_required {color:#008552!important;}

/***************************************************************
 *
 * Sidebar
 *
 ***************************************************************/

.sidebar {
    background:#eee;
}

.sidebar, .sidebar ul, .sidebar li {
    padding: 0;
    margin: 0;
    list-style: none;
    clear: both;
}

.sidebar li ul { /* a nested list, so this should actually be displayed as a list */
    padding-left: 7.142857142857%; /* 20/280=0.07142857142857 */
}

.sidebar li ul li {
    list-style: disc;
}

/***************************************************************
 *
 * News and/or blog
 *
 ***************************************************************/
.postdate, .postmetadata {
    font-size:0.8em;
    font-style:italic;
    margin:0;
}

/***************************************************************
 *
 * Homepage
 *
 ***************************************************************/

ul.menu, ul.menu li {list-style:none; margin:0; padding:0}

ul.menu li {width:32%; float:left; background:#008552; margin: 0.25em 0.25em; border:2px solid #008552;}

ul.menu a {display:block; text-align:center; padding:30px 5px 30px; text-decoration:none; color:#FFF; font-family: "adelle-sans",sans-serif; font-weight:100 !important; text-transform:uppercase; }

ul.menu li:hover {background:#FFF;}

ul.menu a:hover {color:#008552;}

@media only screen and (max-width:800px) {
	ul.menu li {width:48%; display:block;}
}

@media only screen and (max-width:600px) {
	ul.menu li {width:100%; display:block; float:none}
}

.cta {
    width:30%;
    margin: 0 3% 1em 0;
    background: #ccc;
    float: left;
}

    #cta3 {
        margin-right:0;
        width:33%;
    }

    .cta a {
        display:block;
        padding: .75em 1em;
    }

    .cta p {
        display:inline;
    }

@media only screen and (max-width:800px) {

    .cta, #cta3 {
        width: 100%;
        margin: 0 auto 1em auto;
        float: none;
    }

}

/***************************************************************
 *
 * Contact Page
 *
 ***************************************************************/

#google_map { /* The outer div */
    margin: 1.5em 0;
}

#google_map #map_canvas { /* the inner container that defines the actual map size */
    width: 95%;
    height: 300px;
    margin: auto;
}

/***************************************************************
 *
 * Footer
 *
 ***************************************************************/


#AppDownload {width:100%; background:url(images/black.png) center 50px repeat-x; background-size:cover; margin:0 auto; text-align:center; color:#FFF; position:relative; max-height:390px;}

#ipadImage {display:none;}

#ipadImageSmall {width:100%; text-align:left;}

#ipadImageSmall img {margin-bottom: -5px}

body#page174 #AppDownload {display:none;}

footer {
    border-bottom: 20px solid #008552;
    background:#FFF;
    font-size:.8em; /* footer has been set to 12.8px */
    clear: both;
	text-align:right;
}

    footer .contentbox {
        padding:1em 0;
    }
	
	@media only screen and (max-width:1055px) {
		footer {text-align:center;}
	
	}

footer .widgetarea {
    width:33.333%;
    padding: 0 3% 1em;
    float: left;
}

footer .widgetarea>ul, footer .widgetarea>ul>li {
    list-style:none;
    margin:0;
    padding:0;
}

section.credits {
    clear:both;
    color:#FFF;
    padding:1em 0 1em;
    text-align:center;
	font-size:0.7em;
}

section.credits a {color:#FFF; text-decoration:none;}
section.credits a:hover {color:#008552; text-decoration:underline;}

span.divider {color:#008552;}

img.bf {margin-right:1em;}

@media only screen and (max-width:600px) {
		span.divider {display:none}
		span.AA {display:block;}
		
		img.accreditation {display:inline-block; width:30%;}
	
	img.bf {width:100%; max-width:300px; margin-right:0;}
		
}

/* Rich Contact Widget */

.widget_rc_widget ul, .widget_rc_widget li {
    list-style:none;
    margin:0;
    padding:0;
}

    .widget_rc_widget>ul>li {
        margin:0 0 .5em;
    }

    .widget_rc_widget .email {
        font-size:.8em;
    }

    .widget_rc_widget .tel:before {
        content: "Phone: ";
        font-weight:bold;
    }

@media only screen and (max-width:800px) {

    footer .widgetarea {
        width:100%;
        padding:0;
        margin:1em 0;
    }

    footer>nav, footer .vcard, section.credits {
        width: auto;
        float: none;
    }
	

}

/* Advertising */

.AdvertisingBanner {
    position:relative;
    z-index:3;
    display:block;
    text-align:center;
    color:#FFF;
    background: #008552;
    padding:1px;
}

.AdvertisingBanner a {
    color:#FFF;
    text-decoration: none;
}

.AdvertisingBanner a:hover {
    color:#FFF;
    text-decoration:underline;
    font-weight:bold;
}

#DesktopAdvert {
    display:none;
}

@media (min-width:700px) {
    
	#DesktopAdvert {
        display:block;
        padding: .5em 0 .7em;
    }
	
	#DesktopAdvert p {
        margin:0 auto;
        margin-bottom:-5px;
        text-transform: uppercase;
        font-weight: 100;
        font-family: "adelle-sans",sans-serif;
    }
	
	#MobileAdvert {
        display:none;
    }
	
} 

#MobileAdButton {
    display:block;
    cursor:pointer;
}
	
#MobileAdContent {
    position:fixed;
    top:0;
    bottom:-10px;
    left:0;
    right:0;
    z-index:9999;
    background:rgba(0,0,0,0.8);
    overflow-y: auto;
}

#MobileAdContent .inner {
    width:90%;
    margin:40px auto 40px;
    text-align:center;
    color:#FFF;
}


#MobileAdContent a {
    color:#FFF;
    text-decoration:underline
}

#MobileAdContent a:hover {
    color:#FFF;
    text-decoration:underline;
    font-weight:bold;
}

#MobileAdContent {
    display:none;
}	

#maCloseButton {
    display:block;
    margin:20px auto 20px;
    font-size:1.3em;
    font-weight:200; 
    color:#FFF;
    line-height:2;
    padding-bottom:5px;
}

#maCloseButton span {
    vertical-align:middle;
}

#maCloseButton span.close {
    font-size:1.8em;
    vertical-align:middle;
}

#maCloseButton:hover {
    cursor:pointer;
    font-weight: 500;
}

#MobileAdButton p {
    font-family: "adelle-sans",sans-serif;
    text-transform: uppercase;
    font-weight: 300;
}

ul.menu li img {
    height: 130px;
}

.menu-item a.menu-image-hovered img.hovered-image {
    margin: 0 !important;
    display: none;
}

.menu-item a.menu-image-hovered:hover img.menu-image {
    display: none;
}

.menu-item a.menu-image-hovered:hover img.hovered-image {
    display: block;
    margin: 0  auto !important;
}

.TC {
    font-weight: 100;
    font-size: .5em;
}

.Promo blockquote:before {
    display: none;
}

.Promo blockquote:after {
    display: none;
}

.Promo blockquote {
    font-size: 2em;
    padding: 0;
}

.Promo strong {
    text-transform: uppercase;
}

a.button.Promo_button {
    font-size: 1.5em;
    font-weight: 100;
}

a.button.Promo_button:hover {
    color: #008552;
    background: #fff;
}