/*
Theme Name: Moranbah Cumulative Impact Group (MCIG)
Theme URI: http://www.almostanything.com.au
Version: 2013
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,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;
            color:#474c55;
            text-transform:uppercase;
            font-weight:normal;
            font-family:"Gazole", "Lucida Sans", "Lucida Grande", "Lucida Sans Unicode", Verdana, Tahoma, sans-serif;
        }

            h1 {
                margin:0 0 .5em;
                color:#62bb46;
            }

            h3, h4, h5, h6 {
                color:#62bb46;
                text-transform:none;
            }

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;
}

@font-face {
    font-family: "Gazole";
    src: url("/wp-content/themes/mcig/gazole_normal.eot");
    src: url("/wp-content/themes/mcig/gazole_normal.eot?#iefix") format('embedded-opentype'), url("/wp-content/themes/mcig/gazole_normal.woff") format("woff"), url("/wp-content/themes/mcig/gazole_normal.ttf") format("truetype"), url("/wp-content/themes/mcig/gazole_normal.svg") format("svg");
}

/***************************************************************
 *
 * 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.6;
}

    html {
        min-height:100%; /* To ensure background image shows at bottom of browser window */
        font-family: "Lucida Sans", "Lucida Grande", "Lucida Sans Unicode", Verdana, Tahoma, sans-serif;
        background:#fff url(images/pixel_weave.png);
    }

    body {
        color: #474c55;
        font-size: 100%; /* Baseline: this means that 1em = 16px */
        position: relative;
    }

.contentbox {
    width: 100%;
    margin: auto;
    font-size: 1.15em; /* 20px for normal paragraph text */
}

    .site_info>.contentbox {
        padding:1.5em 3% 0;
    }

    header nav .contentbox, footer .contentbox {
        padding:0 3%;
    }

article, .contentbox .sidebar {
    padding:1px 3% 1em;
}
    
    article {
        padding:1.5em 3%;
    }

/***************************************************************
 *
 * Header
 *
 ***************************************************************/

.site_info {
    background: url(images/header.png) 100% 65% no-repeat;
    background-size:contain;
}

    .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:350px;
        max-width:100%;
    }

        .site_logo {
            margin:0 auto 1.5em;
        }

/* Skip links */
#skiplinks {
    position: absolute;
    left: -9999px;
}

/***************************************************************
 *
 * 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;}
ul#menu-main-nav{width:100%;}

/* main item width */
nav ul li ul, nav ul li li {width: 250px;}

/* Basic list reformatting */
.nav, nav ul, nav li {margin:0;padding:0;list-style:none;}
    .nav, .nav ul, .nav li { float:left; }

/* Customise from here... */
header nav {
    background: #474c55;
    box-shadow:0 -1px rgba(255,255,255,0.4), 0 0 30px rgba(255,255,255,0.8);
    background: -moz-linear-gradient(top, #535963, #474c55);
    background: -webkit-linear-gradient(top, #535963, #474c55);
    background: linear-gradient(to bottom, #535963, #474c55);
    line-height:2;
    clear:both;
}

    header .nav {
        font-size:1.2em;
    }

.nav a {
    color: #fff;
    background:transparent;
    padding:0 .8em;
    line-height:2;
    border:none;
    display:block;
    text-decoration: none;
}

    .nav .sub-menu a {
        font-size:.8em;
        line-height:1;
        padding:.45em .88em;
        background:#474c55;
        color:#fff;
    }

    .mobile_sub_menu a {
        padding:.2em .5em;
        display:block;
    }

nav a:focus, nav a:active, nav a:hover, nav .sfHover>a, nav .sub-menu a:hover {
    color: #d3df4e;
    background:#474c55;
}

    .mobile_sub_menu a:hover {
        color:#474c55;
        background:rgba(211,223,78,0.7);
    }

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 .sub-menu .current-menu-item>a, .mobile_sub_menu nav .current_page_item>a {
    text-shadow:1px 1px 0 rgba(255,255,255,0.3);
    background:#d3df4e;
    color:#474c55;
}

    .mobile_sub_menu nav .current_page_item>a {
        text-decoration:none;
        font-weight:bold;
    }

.nav li ul {
    display: none;
}

header .sub-menu {
    box-shadow:5px 5px 0 rgba(255,255,255,0.5);
}

/* 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% 0;
    margin:0 auto;
    overflow:hidden;
}

    .mobile_sub_menu h2 {
        margin:0 0 .25em;
    }

/* This is for the mobile nav icon */
#menu-icon {
    display: none;
}

/* Squish menu down into a button */
@media only screen and (max-width: 750px) {

    #menu-icon {
        color: #fff;
        width: 100%;
        line-height: 2.5;
        cursor: pointer;
        display: block;
        font-size:1.6em;
        text-align: center;
        text-transform:uppercase;
        font-family:"Gazole", "Lucida Sans", "Lucida Grande", "Lucida Sans Unicode", Verdana, Tahoma, sans-serif;
    }

    #menu-icon:after{
        content: " \2193"; /* down arrow */
    }

        #menu-icon.active:after {
            content: " \2191"; /* down arrow */
        }

    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 ul li {width:100%;}

    .nav li:hover ul, .nav li.sfHover ul {display:none;}

    header nav>ul {width:100%;}

}

/***************************************************************
 *
 * Main Content - <article>
 *
 ***************************************************************/

article h1, article h2 {
    margin-left:-9999px;
    padding-left:9999px;
    border-bottom:3px dashed #62bb46;
    text-shadow:2px 2px 0 rgba(255,255,255,0.5);
}

    article h1 {
        font-size: 2.4em;
    }

    article h2 {
        font-size: 1.8em;
        margin-top:2em;
        border-bottom:2px solid #474c55;
    }

        article header+h2 {
            margin-top:1em;
        }

            .home article h2 {
                margin-top:0;
            }

article h3 {
    font-size: 1.4em;
}

article h4, article h5, article h6{
    font-size: 1.1em;
}

article ul {
    padding-left:2.5em;
}

    article li {
        list-style:none;
        position:relative;
    }

        article li:before {
            position:absolute;
            left:-1em;
            top:-.35em;
            color:#62bb46;
            font-size:1.5em;
            display:block;
            content:"\2299";
        }

a {
    color: #62bb46;
    background: rgba(211,223,78,0.3);
    padding: .15em .3em;
    -moz-transition:all 100ms ease-in-out;
    -webkit-transition:all 100ms ease-in-out;
    transition:all 100ms ease-in-out;
}

a:hover {
    color:#474c55;
    background: rgba(211,223,78,0.7);
}

/* 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;
}

    article img {
        border: 3px dashed #62bb43;
        padding: .3em;
        box-shadow: -10px 0 30px rgba(98,187,70,0.2);
    }

        article img.plain, .google-map-placeholder img {
            box-shadow:none;
            border:none;
            padding:0;
        }

article .google-map-placeholder {
    border: 3px dashed #62bb43;
}

.homepage_map {
    width:100%;
}

/* These 2 will make image captions look a bit like polaroids */
.wp-caption {
    background:#edf2c3;
    background:rgba(211,223,78,0.3);
    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:.9em;
        }

.gallery .gallery-item {
    float: left;
    margin:0 0 3%;
}

.gallery a, .gallery img {
    display:block;
}

    .gallery img {
        max-width:95%;
        width:auto;
        height: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:#474c55;
    background:#d3df4e;
    border:none;
    cursor:pointer;
    font-weight:bold;
    border-radius:3px;
    padding: .5em .75em;
    text-decoration: none;
    text-shadow:1px 1px 0 rgba(255,255,255,0.5);
    box-shadow:3px 3px 0 rgba(255,255,255,0.5);
}

    .button.block {
        display:block;
    }

    .button:hover {
        text-shadow:1px 1px 2px rgba(0,0,0,0.3);
        background:#62bb46;
        color:#fff;
    }

/* Gravity Forms Style fixes */ 

.gform_wrapper form {
    margin-top:0;
}

article .gform_fields>li {
    margin:0 0 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], 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], input, textarea {
        padding:.25em .4em;
        font-size:.9em;
        max-width:100%;
        color:#474c55;
        border:2px solid #62bb46;
    }

article .gform_wrapper .top_label .gfield_label {
    margin:0 0 .2em;
}

article .gform_wrapper .gform_footer {
    padding:0;
}

/***************************************************************
 *
 * Sidebar
 *
 ***************************************************************/

.sidebar, .sidebar ul, .sidebar li {
    padding: 0;
    margin: 0;
    list-style: none;
    clear: both;
}

    .sidebar {
        background:#003660;
        background: -moz-linear-gradient(top, #00477f, #003660);
        background: -webkit-linear-gradient(top, #00477f, #003660);
        background: linear-gradient(to bottom, #00477f, #003660);
        box-shadow:-10px 0 30px rgba(98,187,70,0.2);
        color:#fff;
        border-left:10px dashed #62bb46;
        position:relative;
    }

        .sidebar:after {
            content:"";
            display:block;
            position:absolute;
            left:-5px;
            top:0;
            bottom:0;
            top:0;
            border-left:5px dashed rgba(255,255,255,0.3);
        }

        .sidebar:before {
            content:"";
            display:block;
            position:absolute;
            left:-20px;
            bottom:0;
            border-left:10px solid rgba(255,255,255,0.25);
        }

    .sidebar a {
        color:#fff;
        background:transparent;
        padding:0;
    }

        .sidebar a:hover {
            color:#62bb46;
        }

    .sidebar h2, .sidebar h3, .sidebar h4 {
        text-shadow:2px 2px 0 rgba(0,0,0,0.2);
        color:#62bb46;
    }

    .newsletter_subscribe label {
        font-weight:bold;
    }

    .newsletter_subscribe input {
        width:100%;
    }

    .newsletter_subscribe .button {
        margin:0;
        font-size:1em;
        color:#00477f;
        box-shadow:3px 3px 0 rgba(0,0,0,0.15);
    }

        .newsletter_subscribe .button:hover {
            color:#fff;
        }

    .widget_recent_entries {
        line-height:1.4;
    }

        .widget_recent_entries a {
            display:block;
            background:rgba(255,255,255,0.1);
            background: -moz-linear-gradient(left, #00477f, rgba(255,255,255,0.1));
            background: -webkit-linear-gradient(left, #00477f, rgba(255,255,255,0.1));
            background: linear-gradient(to left, #00477f, rgba(255,255,255,0.1));
            margin:0 -3% 0 -10%;
            padding:.5em 3% .5em 10%;
            text-decoration:none;
            position: relative;
            overflow: hidden;
        }

            .widget_recent_entries a:after {
                display: block;
                position: absolute;
                top: 50%;
                bottom: 0;
                right: .05em;
                content: "\00BB";
                font-size: 4em;
                line-height: 2em;
                margin-top: -1.08em;
                color: rgba(255,255,255,0.1);
                -moz-transition:all 50ms ease-in-out;
                -webkit-transition:all 50ms ease-in-out;
                transition:all 50ms ease-in-out;
            }

                .widget_recent_entries a:hover:after {
                    right:-.3em;
                }

            .widget_recent_entries li:nth-child(even) a {
                background:rgba(255,255,255,0.1);
            }

/***************************************************************
 *
 * News and/or blog
 *
 ***************************************************************/
.postdate, .postmetadata {
    font-size:0.8em;
    font-style:italic;
    margin:0;
}

/***************************************************************
 *
 * Homepage
 *
 ***************************************************************/

.cta a {
    position:relative;
    display:block;
    z-index:2;
    margin:0 0 -3px;
    padding: .85em 1em .5em;
    border:3px dashed #62bb46;
    border-color:#474c55;
    background:#d3df4e;
    color:#474c55;
    font-size:1.2em;
    line-height:1.1;
    text-align:left;
}

    .cta strong {
        display:block;
        font-weight:bold;
        font-size:1.6em;
        text-transform:uppercase;
        font-family:"Gazole", "Lucida Sans", "Lucida Grande", "Lucida Sans Unicode", Verdana, Tahoma, sans-serif;
    }

    .cta a:hover {
        background:#62bb46;
        color:#fff;
        border-color:#62bb46;
    }

.cta p {
    display:inline;
}

/***************************************************************
 *
 * Footer
 *
 ***************************************************************/

footer {
    background:#d3df4e;
    background:rgba(211,223,78,0.5);
    border-top:5px dashed #fff;
    font-size:.8em; /* footer has been set to 12.8px */
    clear: both;
    position: relative;
}

    footer .contentbox {
        padding: 1.25em 3%;
        background:url(images/greyscale_logo.png) 97% 50% no-repeat;
    }

        @media only screen and (max-width:700px) {
            footer .contentbox {
                padding-bottom:115px;
                background-position:50% 85%;
            }
        }

section.credits {
    clear:both;
}

footer a {
    color:#003660;
    background:none;
}

/* 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;
    }

}