/*
Theme Name: Wsbase - WebSmart base theme
Theme URI: http://websmartdesign.co.nz
Author: Mick Buckley, Helen Beran, WebSmart Design
Author URI: http://websmartdesign.co.nz/
Description: Responsive base theme for WebSmart websites. Requires WebSmart's Custom Editor Styles plugin (move to plugins direcdtory and unzip). Requires Yoast SEO plugin.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: websmart, base, theme, child friendly
Text Domain: wsbase
*/

/* =Reset
-------------------------------------------------------------- */

/* Clearing floats */
.clear:after,
.wrapper:after,
.format-status .entry-header:after {
	clear: both;
}
.clear:before,
.clear:after,
.wrapper:before,
.wrapper:after,
.format-status .entry-header:before,
.format-status .entry-header:after {
	display: table;
	content: "";
}

.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after {
        content: "";
        display: table;
}
.clearfix:after { clear: both; }

/* Reset (from twentytwelve theme) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { font-weight: normal; text-align: left; }
h1, h2, h3, h4, h5, h6 { clear: both; }
html { overflow-y: scroll; font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
a:focus { outline: thin dotted; outline: none; }
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; }
audio:not([controls]) { display: none; }
del { color: #333; }
ins { background: #fff9c0; text-decoration: none; }
hr { background-color: #ccc; border: 0; height: 1px; margin: 24px; margin-bottom: 0; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
small { font-size: smaller; }
img { border: 0; -ms-interpolation-mode: bicubic; }
/* End reset */


/* http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

.alignleft, img.alignleft { display: inline; float: left; clear: left; margin: 5px 20px 0 0; } 
.alignright, img.alignright { display: inline; float: right; clear: right; margin: 5px 0 0 20px; }
.aligncenter, img.aligncenter { clear: both; display: block; margin: 10px auto 10px; }


#debug { position: absolute; top: 0px; left: 0px; display: none; }

area:focus, input:focus, textarea:focus { border: 1px solid #73b644; }

#wrapper { min-width: 260px; }
#header { position: relative; }
/* Removed in Ashgrove theme.  Alway use .site-width */
/* #header, #main, #footer-widgets, #footer, .site-width { margin: 0 auto; max-width: 960px; } */
.site-width { margin: 0 auto; max-width: 960px; }
.ie #header, .ie #main, .ie #footer-widgets, .ie #footer { min-width: 720px; } /* (ie7 or ie8) no media queries so set sensible min */

#logo { }
#logo a { display: block; text-align: center; outline: none; margin: 0; padding: 0; }
#logo img { max-width: 100%; height: auto; }
.ie8 #logo img { width: auto; }

/* Supports TwentyTwelve's navigation.js */
.main-navigation ul.nav-menu, .main-navigation div.nav-menu > ul { display: none; }
.main-navigation ul.nav-menu.toggled-on, .menu-toggle { display: inline-block; }

.menu-toggle:after { content:'\2261'; position:absolute; top: 11px; right: 0; line-height:0em; }

/* (NOT TESTED) Twenty Twelve navigation.js  IE8 */
.ie8 .main-navigation ul.nav-menu, .ie8 .main-navigation div.nav-menu > ul { display: inline-block !important; text-align: left; width: 100%; }
.ie8 .main-navigation ul { margin: 0; text-indent: 0; }
.ie8 .main-navigation li a, .ie8 .main-navigation li { display: inline-block; text-decoration: none; }
.ie8 .main-navigation li { position: relative; }
.ie8 .main-navigation li ul { display: none; margin: 0; padding: 0; position: absolute; top: 100%; z-index: 100; }
.ie8 .main-navigation li ul ul { top: 0; right: 100%; }
.ie8 .main-navigation ul li:hover > ul { display: block; }
.ie8 .main-navigation li ul li a { display: block; }
.ie8 .menu-toggle { display: none; }

/* Twenty Twelve navigation.js  IE7 */
.ie7 .main-navigation ul.nav-menu, .ie7 .main-navigation div.nav-menu > ul { display: inline-block !important; zoom: 1; display: inline; text-align: left; width: 100%; } /* See http://blog.mozilla.org/webdev/2009/02/20/cross-browser-inline-block/ */
.ie7 .main-navigation ul { margin: 0; text-indent: 0; }
.ie7 .main-navigation li a, .ie7 .main-navigation li { display: inline; zoom: 1; text-decoration: none; } /* See http://blog.mozilla.org/webdev/2009/02/20/cross-browser-inline-block/ */
.ie7 .main-navigation li { position: relative; z-index: 1; }
.ie7 .main-navigation li ul { display: none; margin: 0; padding: 0; position: absolute; top: 100%; z-index: 1; }
.ie7 .main-navigation li ul ul { top: 0; left: 100%; }
.ie7 .main-navigation ul li:hover > ul { display: block; z-index: 1; left: 0; }
.ie7 .main-navigation li ul li a { display: block; }
.ie7 .menu-toggle { display: none; }
.ie7 #header-container { position: relative; z-index: 1000; }

.main-navigation ul { line-height: 27px; font-size: 16px; list-style: none; padding: 0; margin: 0; }
.main-navigation ul a { text-decoration: none; }
.main-navigation ul a:hover { }
.main-navigation ul li.current-menu-item > a, .main-navigation ul li.current-post-ancestor > a, .main-navigation ul li.current_page_parent > a, .main-navigation ul li.current-menu-ancestor > a { }
.main-navigation ul li { padding: 0 15px; }
.main-navigation ul ul { background: white; }
.main-navigation ul ul li { min-width: 10em; border-top: 1px solid #e9e9e9; padding: 6px 15px; }
.main-navigation ul ul li a { }
.main-navigation ul li:hover {}
.main-navigation ul li a:hover { }

#main-subnav { padding: 0 15px; }

#main { position: relative; overflow: hidden; background: url(images/main-bg10x10.png) left top repeat; }
#main img { max-width: 100%; height: auto; }
.ie8 #main img { width: auto; }

/* See http://dbushell.com/2013/03/19/on-responsive-layout-and-grids/ */
/*
#main-sidebar { width: 23%; max-width: 220px; float: right; }
#main-sidebar-inner { margin: 0 1%; }
#main-content { width: 74%; max-width: 700px; float: left; }

#main-content.no-sidebar { width: 100%; max-width: 960px; }
#main-sidebar.sidebar-left23 { width: 23%; max-width: 220px; float: left; }
#main-content.sidebar-left23 { width: 74%; max-width: 700px; float: right; }

#main-sidebar.sidebar-right23 { width: 23%; max-width: 220px; float: right; }
#main-content.sidebar-right23 { width: 74%; max-width: 700px; float: left; }

#main-sidebar.image-left32 { width: 32%; max-width: 305px; float: left; }
#main-content.image-left32 { width: 66%; max-width: 625px; float: right; }

#main-sidebar.image-right32 { width: 32%; max-width: 305px; float: right; }
#main-content.image-right32 { width: 65%; max-width: 625px; float: left; }

#main-sidebar.image-left49 { width: 49%; max-width: 465px; float: left; }
#main-content.image-left49 { width: 49%; max-width: 465px; float: right; }

#main-sidebar.image-right49 { width: 49%; max-width: 465px; float: right; }
#main-content.image-right49 { width: 49%; max-width: 465px; float: left; }
*/

/* for .intro, .gold and other custom styles see custom-styles.css in plugin */
.intro { font-size: 16px; }
.gold { font-size: 18px; color: #97814f; }
blockquote { font-style: italic; font-size: 95%; padding: 10px 25px; }


.websmart-row { display: block; width: 100%; clear: both; }

.websmart-half { width: 48%; display: inline-block; vertical-align: top; margin-right: 1.5%; }
.websmart-third { width: 31%; display: inline-block; vertical-align: top; margin-right: 1.5%; }
.websmart-quarter { width: 23%; display: inline-block; vertical-align: top; margin-right: 1%; }

.one-half { width: 48%; float: left; margin-right: 1.5%; margin-bottom: 20px; }
.one-half:nth-child(2n) { margin-right: 3%; }
.one-half:nth-child(2n+1) { margin-right: 0; }

.one-third { width: 31%; float: left; margin-right: 2%; margin-bottom: 20px; }
.one-third:nth-child(3n+1) { margin-right: 3%; }
.one-third:nth-child(3n+2) { margin-right: 3%; }
.one-third:nth-child(3n) { margin-right: 0; }

.one-quarter { width: 23%; float: left; margin: 0; margin-bottom: 20px; border: 1px solid black; }
.ie8 .one-quarter { margin-right: 1.9%; }
.ie7 .one-quarter { margin-right: 1.9%; }
.one-quarter:nth-child(4n) { margin-right: 0; }
.one-quarter:nth-child(4n+1) { margin-right: 2.66%; }
.one-quarter:nth-child(4n+2) { margin-right: 2.66%; }
.one-quarter:nth-child(4n+3) { margin-right: 2.66%; }
.quarters { overflow: hidden; }


/* styles for Hero Slider page template 
 * ASSUMES: hero slider images are 670x340px */
#herowrapper { position: relative; width: 690px; height: 360px; }
.herotabs li, #content-panel-main .herotabs li { list-style:none; display:inline; border: none; margin: 0 10px 0 0; }

.herotabs a { padding: 5px 20px; border-radius: 20px; display:inline-block; color:#fff; text-decoration:none; font-size: 14px; font-weight: bold; background: #234390; outline: none; }
.herotabs a:hover { color: #1e92c6; }
.herotabs a:hover:after { background-position: 0 -10px; }

.herotabs { position: absolute; z-index: 100; bottom: 30px; right: 30px; }
.herotabs a { text-indent: -9999em; width: 10px; height: 10px; border-radius: 5px; border: 1px solid #636262; background: transparent; padding: 0; }
.herotabs a.active { background: #636262; border: 1px solid #636262; }

.heroslide { position: absolute; border: 10px solid white; box-shadow: 0 0 5px #8a9596; max-width: 670px; top: 0; left: 0; }
.heroslide img { display: block; }
.herolabel { position: absolute; bottom: 10px; left: 230px; width: 430px; padding: 10px 75px 10px 15px; background: white; background: rgba(255, 255, 255, 0.9); }

.testimonial-content { border: 1px solid #DDDDDD; border-radius: 5px 5px 5px 5px; padding: 15px 15px 20px; position: relative; }
.testimonial-content:after { background: url("images/ta20x10.png") no-repeat scroll 0 0 transparent; bottom: -10px; content: ""; display: block; height: 10px; left: 50%; margin-left: -10px; position: absolute; width: 20px; }
.testimonial-title { margin: 10px 0; text-align: center; color: #977f49; font-size: 18px; text-transform: uppercase; }

.page .entry-content h1, .page .entry-content h2, .page .entry-content h3, .post .entry-content h1, .post .entry-content h2, .post .entry-content h3, .testimonial .entry-content h2, .testimonial .entry-content h3 { margin-top: 12px; margin-bottom: 6px; }
.page .entry-content p, .post .entry-content p, .testimonial .entry-content p { margin-bottom: 6px; }

.page-image .caption { display: block; text-align: center; font-size: 12px; font-style: italic; }

.archive-list-item { margin: 20px 0; clear: both; overflow: hidden; }
.archive-list-item .entry-content { overflow: hidden; }
.archive-list-item a { text-decoration: none; }

.taxconomy .post { margin: 20px 0; clear: both; overflow: hidden; }
.taxconomy .post .entry-content { overflow: hidden; }
.taxconomy .post a { text-decoration: none; }

.nav-single { overflow: hidden; margin: 20px 0; }
.nav-previous { float: left; margin-left: 30px; }
.nav-next { float: right; margin-right: 30px; }

/* For category-inline */
.entry-category-description { margin-bottom: 20px; }
.archive .post.category-third { border: 1px solid #e8e8e8; box-shadow: 0 0 4px #e8e8e8; padding: 4px; }
.archive .post.category-third .entry-header { padding: 0; }
.archive .post.category-third .entry-header h1 { font-size: 18px; line-height: 25px; padding: 5px 0; text-align: right; padding-right: 45px; background: url(images/blue-arrow-circle35x35.gif) right center no-repeat; }
.category-third, .archive .post.category-third { width: 210px; display: inline-block; margin: 0 2.5% 20px 0; }
.category-thumbnail-box { text-align: center; }
.category-archive-image { -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }

.archive img.featured { clear: left; }

.featured-image { margin: 0 0 12px 0; text-align: center; background: url(images/featured-image-bg685x166.png) center top no-repeat; padding-top: 10px; }
.featured-image .caption-box { display: inline-block; max-width: 100%; height: auto; }
.featured-image .caption-box p { margin: 0; padding: 3px 12px; font-size: 14px; clear: both; float: right; margin-right: 10px; background: #97814f; color: white; }
.featured-image img { max-width: 100%; height: auto; display: block; }
.xx-ie8 .featured-image img { width: auto; }

.entry-content.gallery-right { float: left; width: 60%; }
.entry-gallery.gallery-right { float: right; width: 37%; }
.entry-gallery img { display: block; border-radius: 7px 0 0 7px; }
.gallery-image-title { font-size: 14px; color: white; background: #262262; border-radius: 27px 0 0 0; line-height: 27px; float: right; padding: 0 6px 0 27px; margin-top: -27px; position: relative; z-index: 100; }
.gallery-image-caption { font-size: 11px; display: block; text-align: right; padding: 0 6px 0 0; }
.gallery-attachment { overflow: hidden; margin-bottom: 15px; }

.ws-sidebar-gallery a { display: block; }
.ws-sidebar-gallery img { display: block; }
.ws-sidebar-gallery .caption { margin-bottom: 12px; }

/* Single Post galleries (with Fancybox) */
.single-gallery .gallery { overflow: hidden; margin-bottom: 10px; }
.single-gallery .gallery li { float: left; margin-right: 15px; }
.single-gallery .gallery li:first-child img { margin-top: 0; }
.single-gallery .gallery img { border: 5px solid white; box-shadow: 5px 5px 5px #999999; margin: 5px 0; max-width: 100%; height: auto; }
.ie8 .single-gallery .gallery img { width: auto; }

#footer-widgets { background: url(images/footer-widgets-bg10x10.png) top left repeat; overflow: hidden; }
.ie7 #footer-widgets { padding: 0; }
#footer-widgets .widget { float: left; width: 31%; margin: 0 3.5% 0 0; list-style: none; border: none; }
#footer-widgets .widget:nth-child(3n) { margin: 0; }

#copyright, #site-by { line-height: 25px; margin-left: 10px; }

/* MainPage Tables */
#main-content table { border-top: 5px solid; border-left: #dee0e0 1px solid; margin: 0 0 30px 0; font-size: 14px; }

#main-content table td, #main-content table th { border-right: #dee0e0 1px solid; border-bottom: #dee0e0 1px solid; text-align: center; vertical-align: top; }
#main-content table th { padding: 15px 10px 15px 10px; font-size: 14px; font-weight: 700; padding: 10px; }
#main-content table tr:nth-child(2n) { /* background: #f5f5f5; */ }

.blog-archive-image { float: left; margin-right: 15px; }

/* From Organic Theme */
.col2-set { overflow: hidden; width: 100%; margin-bottom: 25px; }
.col2-set .col-1 { float: left; width: 48%; }
.col2-set .col-2 { float: right; width: 48%; }

form .form-row input.input-text, form .form-row textarea, 
.wpcf7-form input.input-text, .wpcf7-form textarea {
    line-height: 1em;
    margin: 0;
    xx-outline: 0 none;
    width: 100%;
}

.wpcf7-form input[type="text"]:active, .wpcf7-form input[type="text"]:hover,
.wpcf7-form input[type="password"]:active, .wpcf7-form input[type="password"]:hover,
.wpcf7-form input[type="email"]:active, .wpcf7-form input[type="email"]:hover,
.wpcf7-form textarea:active, .wpcf7-form textarea:hover,
#comment:active, #comment:hover {
        color: #818181;
}

/*
 * Media quieries now in style-media.css.
 * Child themes must @import these separately.
 */
