/*
Theme Name: CJ Psychology & Associates
Author: Leesa Ward @ GOOP.
Author URI: http://www.goop.com.au/
Description: Custom WordPress theme for CJ Psychology & Associates by GOOP
Text Domain: cjpsychology
SASS: 1.6.1
Version: 1.0
*/
/* Font imports */
@import url("//goopfiles.com/library/fonts/font-awesome/css/font-awesome.min.css");
@import url("//fonts.googleapis.com/css?family=Raleway:300,400,600");
/* SASS file imports*/
/* Core */
/*========================================================================
Rem Calc function - from Zurb Foundation, licenced under MIT Open Source
========================================================================*/
/*
Simplified breakpoints
You may need to add to these or add manually numbered ones in _main.scss if you need to fine-tune more than this.
Note that you can use mathematical operators in your media queries, e.g. ($small - 1)
*/
/*Stop letting things get bigger after 1920*/
/* Colour scheme */
/* Typography */
/*leave this as 16px (the browser default) and use this value in base.css, otherwise the calculations go off*/
/* Grid additions */
/* Navigation */
/* Links */
/* Transitions */
/* Border radii */
/*==============================================
	BUTTON MIXINS
==============================================*/
/*==============================================
	REMOVE UNNEEDED ELEMENTS ON SMALL/MEDIUM SCREENS
==============================================*/
/*==============================================
	REALIGN TEXT ON SMALL/MEDIUM SCREENS
==============================================*/
/*==============================================
	CENTRE ITEMS ON SMALL/MEDIUM SCREENS
==============================================*/
/*==============================================
	MAKE IMAGES FULL WIDTH ON MOBILE
==============================================*/
/*==============================================
	HIDE THINGS ON PRINT VERSION
==============================================*/
/*==============================================
	MAKE THINGS FULL WIDTH ON PRINT VERSION
==============================================*/
/*==============================================
	GRID MIXINS
==============================================*/
/* Usage:

.class {
	@include six-columns;
}

Output:

.class {
	width:37.5%;
	float:left;
	display:inline;
}

*/
/* Base */
/*=================================================================================
	base.css v1.6
=================================================================================*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, main { margin: 0; padding: 0; border: 0; outline: 0; font-size: inherit; vertical-align: baseline; background: transparent; }

html { -webkit-text-size-adjust: none; }

body { line-height: 1; background: #ffffff; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main { display: block; }

nav ul, aside ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

ins { text-decoration: none; }

mark { font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 0.0625rem dotted #f8f9f9; cursor: help; }

hr { display: block; height: 0.0625rem; border: 0; border-top: 0.0625rem solid #f8f9f9; margin: 1.25rem 0; padding: 0; }

input, select { vertical-align: middle; }

ul, ol { font-size: 0; }

main pre, article pre { width: 100%; white-space: pre-wrap; white-space: -moz-pre-wrap !important; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word; margin-bottom: 1em; }

main blockquote, article blockquote { margin: 0 1.25rem 1em 1.25rem; }

main ul.columns-1, article ul.columns-2, article ul.columns-3, article ul.columns-4 { clear: both; width: 100%; font-size: 0; }

main ul.columms-1 { float: left; display: inline; width: 100%; }

main ul.columns-2 li { float: left; display: inline; width: 50%; }

main ul.columns-3 li { float: left; display: inline; width: 33.333%; }

main ul.columns-4 li { float: left; display: inline; width: 25%; }

/*=================================================================================
	FLUID COLUMNS
=================================================================================*/
.container { position: relative; width: 98%; padding: 0 1%; margin: 0 auto; max-width: 60rem; }
@media only screen and (min-width: 1200px) { .container { max-width: 1200px; } }

.container .column, .container .columns { float: left; display: inline; }

.row { margin-bottom: 0; }

.container .one.column, .container .one.columns { width: 6.25%; }

.container .two.columns { width: 12.5%; }

.container .three.columns { width: 18.75%; }

.container .four.columns { width: 25%; }

.container .five.columns { width: 31.25%; }

.container .six.columns { width: 37.5%; }

.container .seven.columns { width: 43.75%; }

.container .eight.columns { width: 50%; }

.container .nine.columns { width: 56.25%; }

.container .ten.columns { width: 62.5%; }

.container .eleven.columns { width: 68.75%; }

.container .twelve.columns { width: 75%; }

.container .thirteen.columns { width: 81.25%; }

.container .fourteen.columns { width: 87.5%; }

.container .fifteen.columns { width: 93.75%; }

.container .sixteen.columns { width: 100%; }

.container .one-third.column { width: 33.33%; }

.container .two-thirds.column { width: 66.66%; }

/*=================================================================================
	FORMS
=================================================================================*/
.container:after { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }

/*=================================================================================
	OFFSETS
=================================================================================*/
.container .columns.offset-by-one { margin-left: 6.25%; }

.container .columns.offset-by-two { margin-left: 12.5%; }

.container .columns.offset-by-three { margin-left: 18.75%; }

.container .columns.offset-by-four { margin-left: 25%; }

.container .columns.offset-by-five { margin-left: 31.25%; }

.container .columns.offset-by-six { margin-left: 37.5%; }

.container .columns.offset-by-seven { margin-left: 43.75%; }

.container .columns.offset-by-eight { margin-left: 50%; }

.container .columns.offset-by-nine { margin-left: 56.25%; }

.container .columns.offset-by-ten { margin-left: 62.5%; }

.container .columns.offset-by-eleven { margin-left: 68.75%; }

.container .columns.offset-by-twelve { margin-left: 75%; }

.container .columns.offset-by-thirteen { margin-left: 81.25%; }

.container .columns.offset-by-fourteen { margin-left: 87.5%; }

.container .columns.offset-by-fifteen { margin-left: 93.75%; }

/*=================================================================================
	OFFSETS - Smaller offsets using a variable $gutter as padding
=================================================================================*/
.gutter-left { padding-left: 1.25rem; }

.gutter-right { padding-right: 1.25rem; }

@media only screen and (max-width: 767px) { .container .one.column, .container .one.columns, .container .two.columns, .container .three.columns, .container .four.columns, .container .five.columns, .container .six.columns, .container .seven.columns, .container .eight.columns, .container .nine.columns, .container .ten.columns, .container .eleven.columns, .container .twelve.columns, .container .thirteen.columns, .container .fourteen.columns, .container .fifteen.columns, .container .sixteen.columns, .container .one-third.column, .container .two-thirds.column { width: 100%; padding: 0; margin: 0 auto; } }
/*=================================================================================
	CLEARFIX
=================================================================================*/
.clearfix:before, .clearfix:after, .row:before, .row:after, .group:before, .group:after, section:before, section:after, article:before, article:after { content: '\0020'; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; }

.clearfix:after, .row:after, .group:after, section:after, article:after { clear: both; }

.clearfix, .row, .group, section, article { zoom: 1; }

/*=================================================================================
	SELECTIONS
=================================================================================*/
::-moz-selection { background: #dddddd; }
::selection { background: #dddddd; }

::-moz-selection { background: #dddddd; }

.lt-ie8 .clearfix, .lt-ie8 .row, .lt-ie8 .group { zoom: 0; }

/*=================================================================================
	ACTIVE NUMBERS
=================================================================================*/
a[href^=tel] { color: inherit; text-decoration: none; }

/*=================================================================================
	OFFSETS - Smaller offsets using a variable $gutter as padding
=================================================================================*/
@font-face { font-family: 'GOOP'; src: url("goop/GOOP.eot?9ommr"); src: url("goop/GOOP.eot?#iefix9ommr") format("embedded-opentype"), url("goop/GOOP.woff?9ommr") format("woff"), url("goop/GOOP.ttf?9ommr") format("truetype"), url("goop/GOOP.svg?9ommr#GOOP") format("svg"); font-weight: normal; font-style: normal; }
.goop-logo { font-family: 'GOOP'; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; display: inline-block; }

.goop-logo:before { content: "\e600"; }

/*=================================================================================
	REPLACE [at] - requires GOOP plugin version 0.1.10 at least
=================================================================================*/
.domain:before { content: "\40"; margin-right: 0px; }

/*=================================================================================
	SITEMAP
=================================================================================*/
main ul.sitemap li ul { margin-top: 0.1875rem; margin-bottom: 0; }
main ul.sitemap li.current_page_item { display: none; }

/*=================================================================================
	SCROLL
=================================================================================*/
#scroll { padding: 0; font-size: 1.5625rem; position: fixed; bottom: 0.625rem; right: 0.625rem; cursor: pointer; display: none; color: #5bbec8; z-index: 10000; opacity: 0.5; }

/*=================================================================================
	VIDEOS
=================================================================================*/
.video-container { position: relative; padding-bottom: 56.25%; /* 16:9 */ padding-top: 1.5625rem; height: 0; margin-bottom: 1.25rem; }
.video-container iframe { /* .video-container iframe */ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/*=================================================================================
	IFRAMES
=================================================================================*/
main iframe { margin: 0 0 1.25rem; display: block; width: 100% !important; }

/*==============================================
	UTILITY CLASSES
==============================================*/
.clearfix { clear: both; }

.left, .columns.left { float: left; }

.right, .columns.right { float: right; }

/*=================================================================================
	SKIP TO CONTENT
=================================================================================*/
.skip { position: absolute; top: -1000px; left: -1000px; text-align: left; overflow: hidden; padding: 0.625rem; display: block; width: 100%; text-decoration: none; }
.skip:active, .skip:focus, .skip:hover { top: 0; left: 0; position: relative; background: #FFCE00; color: #000; }

/*=================================================================================
	MAIN NAVIGATION
=================================================================================*/
nav { padding: 0; margin: 0 0 1.25rem; width: 100%; display: none !important; z-index: 999; border-bottom: 1px solid #8b9999; font-size: 0; }
@media only screen and (min-width: 768px) { nav { display: block !important; } }
nav .sixteen.columns { text-align: center; }
nav ul { font-size: 0; display: inline-block; margin: 0 auto; }
nav ul li { font-family: "Raleway", "Verdana", "Tahoma", sans-serif; font-size: 0.875rem; color: #718080; padding: 1.25rem 0.3125rem; margin: 0; line-height: 1.875rem; position: relative; margin: 0; float: left; font-weight: 400; /*==============================================
	DROPDOWNS
==============================================*/ /*==============================================
	SECOND LEVEL HOVER
==============================================*/ }
@media only screen and (min-width: 960px) { nav ul li { font-size: 1.125rem; padding: 1.25rem 0.41667rem; } }
@media only screen and (min-width: 1200px) { nav ul li { font-size: 1.125rem; padding: 1.25rem 0.625rem; } }
nav ul li > a { color: #8b9999; text-decoration: none; margin: 0; display: block; padding: 0; }
nav ul li:hover, nav ul li:focus, nav ul li.current-menu-item, nav ul li.current-page-item, nav ul li.current-page-ancestor, nav ul li.current_page_parent { background: white; }
nav ul li:hover > a, nav ul li:focus > a, nav ul li.current-menu-item > a, nav ul li.current-page-item > a, nav ul li.current-page-ancestor > a, nav ul li.current_page_parent > a { color: #5bbec8; }
nav ul li > ul { border-top: 1px solid #8b9999; }
nav ul li ul { position: absolute; left: 0; top: -9999px; opacity: 0; z-index: 1; font-size: 0.85em; -webkit-box-shadow: 0 2px 2px 0 #8b9999; box-shadow: 0 2px 2px 0 #8b9999; -webkit-transition: opacity 0.3s ease-in-out; transition: opacity 0.3s ease-in-out; }
nav ul li ul li { background: white; display: block; margin: 0; padding: 0; line-height: 1.875rem; font-weight: 300; font-size: 1em; display: block; width: 100%; }
nav ul li ul li.menu-item-has-children { position: relative; padding: 0 0.625rem 0 0; }
nav ul li ul li.menu-item-has-children:before { background: none; position: absolute; top: 0.125rem; right: 0.625rem; font-size: 0.75rem; content: "\f105"; color: #8b9999; opacity: 0.5; }
nav ul li ul li > a { color: #8b9999; margin: 0 0.625rem; padding: 0.3125rem 0; border-bottom: 1px dashed #8b9999; display: block; }
nav ul li ul li > a:hover, nav ul li ul li > a:focus { color: #5bbec8; }
nav ul li ul li:last-child a { border: 0; }
nav ul li ul li:hover, nav ul li ul li:focus, nav ul li ul li.current-menu-item, nav ul li ul li.current-page-item, nav ul li ul li.current-page-ancestor, nav ul li ul li.current_page_parent { background: white; }
nav ul li ul li:hover > a, nav ul li ul li:focus > a, nav ul li ul li.current-menu-item > a, nav ul li ul li.current-page-item > a, nav ul li ul li.current-page-ancestor > a, nav ul li ul li.current_page_parent > a { color: #5bbec8; }
nav ul li ul li ul li { background: white; }
nav ul li:hover ul { opacity: 1.0; position: absolute; left: 0; top: 100%; display: block; height: auto; white-space: nowrap; margin: 0; text-align: left; visibility: visible; padding: 0; /*==============================================
	THIRD LEVEL HOVER
==============================================*/ }
nav ul li:hover ul li ul { visibility: hidden; top: -9999px; left: 0; opacity: 0; border: 0; }
nav ul li:hover ul li:hover ul { top: 0; left: 100%; visibility: visible; opacity: 1; }

ul.social { position: relative; top: 0.1875rem; }
ul.social li { padding: 0; margin: 1.25rem 0.3125rem; }
ul.social i { font-size: 1.5em; }

/*=================================================================================
	FORMS
=================================================================================*/
form li { list-style: none; }
form label { display: block; margin-top: 1em; }
form input[type=radio] + label { margin-top: 0; }
form input[type=checkbox] + label, form input[type=radio] + label, form label.checkbox { display: inline-block; }
form input[type=text], form input[type=email], form input[type=password], form textarea, form select { border: 0.0625rem solid #5bbec8; padding: 0.3125rem; display: block; margin-left: 0 !important; width: 100% !important; color: #c2c9c9; border-radius: 0.1875rem; }
form input[type=text]:hover, form input[type=text]:focus, form input[type=email]:hover, form input[type=email]:focus, form input[type=password]:hover, form input[type=password]:focus, form textarea:hover, form textarea:focus, form select:hover, form select:focus { color: #8b9999; }

/*=================================================================================
	NINJA FORMS
=================================================================================*/
.ninja-forms-cont { padding-bottom: 1.25rem; }
.ninja-forms-cont .ninja-forms-response-msg { margin: 0; font-weight: 700; }
.ninja-forms-cont .ninja-forms-response-msg.ninja-forms-error-msg { color: #cc0000; }
.ninja-forms-cont .ninja-forms-response-msg.ninja-forms-error-msg p { display: inline; padding-right: 0.3125rem; }
.ninja-forms-cont ninja-forms-response-msg.ninja-forms-success-msg { color: #333333; margin: 0 0 1.25rem; }
.ninja-forms-cont .ninja-forms-field-error { color: #cc0000; font-size: 0.75rem; }
.ninja-forms-cont .ninja-forms-field-error p { display: inline; }
.ninja-forms-cont .ninja-forms-error input[type=text], .ninja-forms-cont .ninja-forms-error input[type=email], .ninja-forms-cont .ninja-forms-error textarea, .ninja-forms-cont .ninja-forms-error select { border-color: #cc0000 !important; }
.ninja-forms-cont .ninja-forms-field-description { font-size: 0.75rem; }
.ninja-forms-cont .ninja-forms-field-description p { margin: 0 0 0.3125rem; color: #c2c9c9; }
.ninja-forms-cont .ninja-forms-required-items { display: block; margin: 0 0 0.3125rem 0; font-size: 0.75rem; color: #c2c9c9; font-style: italic; }
.ninja-forms-cont .input-group { margin-top: 1em; }
.ninja-forms-cont .field-wrap { margin-bottom: 0.5rem !important; }
.ninja-forms-cont .field-wrap:last-child { margin-bottom: 0 !important; }

/*=================================================================================
	DATEPICKER
=================================================================================*/
.ui-datepicker-header { background: #5bbec8; color: #ffffff; }

.ui-datepicker-calendar { border: 1px solid #5bbec8; }

a.ui-state-default { color: #5bbec8; display: block; padding: 2px; }
a.ui-state-default:hover, a.ui-state-default:focus { background: #5bbec8; color: #ffffff; }

/*==============================================
	IMAGES
==============================================*/
.alignnone { margin: 0 0 1.25rem 0; }

.aligncenter, div.aligncenter { display: block; margin: 0 auto 1.25rem; }

.alignright { float: right; margin: 0 0 1.25rem 1.25rem; }

.alignleft { float: left; margin: 0 1.25rem 1.25rem 0; }

.aligncenter { display: block; margin: 0 auto; }

img, img[class*="align"], img[class*="wp-image-"] { max-width: 100%; height: auto; }

img.alignright { margin-left: 0 0 1.25rem 1.25rem; }

img.alignleft { margin: 0 1.25rem 1.25rem 0; }

img.aligncenter { display: block; margin: 0 auto 1.25rem; }

img[class*="align"], img[class*="wp-image-"] { border: none; }

img.wp-post-image { display: block; margin: 0 auto; margin-bottom: 1.875rem; }

@media only screen and (max-width: 599px) { .alignnone, .aligncenter, div.aligncenter, .alignright, .alignleft, .aligncenter { float: none; display: block; margin-left: auto; margin-right: auto; text-align: center; width: 100%; max-width: 100%; } }
@media only screen and (max-width: 600px) { .alignnone, .aligncenter, div.aligncenter, .alignright, .alignleft, .aligncenter { width: 100% !important; max-width: 100%; margin-left: 0; margin-right: 0; float: none; } }

.size-full { width: 100%; height: auto; }

.size-medium { width: 60%; height: auto; }

.size-small { width: 30%; height: auto; }

/*=================================================================================
	WP-CAPTION
=================================================================================*/
.wp-caption { margin-bottom: 1.25rem; max-width: 100%; text-align: left; position: relative; }
@media only screen and (max-width: 600px) { .wp-caption { width: 100% !important; max-width: 100%; margin-left: 0; margin-right: 0; float: none; } }
.wp-caption img { display: block; margin: 0 auto; }
@media only screen and (max-width: 600px) { .wp-caption img { width: 100% !important; max-width: 100%; margin-left: 0; margin-right: 0; float: none; } }

.wp-caption-text { font-size: 0.75rem; padding: 0.625rem 0.3125rem; opacity: 0.8; }

/*=================================================================================
	PAGINATION
=================================================================================*/
main .pagination { margin-top: 1.25rem; margin-bottom: 1.25rem; padding: 0; display: block; /*=================================================================================
	SINGLE POSTS
=================================================================================*/ }
main .pagination span, main .pagination a { display: inline-block; background: #5bbec8; color: #ffffff; height: 1.25rem; width: 1.25rem; line-height: 1.25rem; text-align: center; font-size: 0.75rem; border: none; text-decoration: none; display: inline-block; }
main .pagination span:hover, main .pagination span:focus, main .pagination span.current, main .pagination a:hover, main .pagination a:focus, main .pagination a.current { background: #3ca9b4; border: none; color: #ffffff; }
main .pagination.single div { display: inline-block; width: 50%; margin: 0; }
main .pagination.single div.newer { text-align: right; }

/*=================================================================================
	BUTTONS
=================================================================================*/
.btn, input[type=submit], button { color: #5bbec8; background: transparent; border: 1px solid #5bbec8; border-radius: 0.41667rem; font-size: 1.125rem; font-weight: 400; padding: 0.5rem 0.83333rem; margin: 0; cursor: pointer; display: inline-block; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; line-height: 1.4; margin-bottom: 0.625rem; text-decoration: none; -webkit-appearance: none; /*Stops iOS from taking over how buttons look*/ }
.btn:hover, .btn:focus, input[type=submit]:hover, input[type=submit]:focus, button:hover, button:focus { color: #FFF; background: #5bbec8; border: 1px solid #5bbec8; }

/*=================================================================================
	BUTTON VARIATIONS
=================================================================================*/
.btn-primary { color: #5bbec8; background: transparent; border: 1px solid #5bbec8; border-radius: 0.41667rem; font-size: 1.125rem; font-weight: 400; padding: 0.5rem 0.83333rem; margin: 0; cursor: pointer; display: inline-block; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; line-height: 1.4; margin-bottom: 0.625rem; text-decoration: none; -webkit-appearance: none; /*Stops iOS from taking over how buttons look*/ background: #FFF; border: 1px solid #8b9999; color: #8b9999; }
.btn-primary:hover, .btn-primary:focus { color: #FFF; background: #5bbec8; border: 1px solid #5bbec8; }
.btn-primary:hover, .btn-primary:focus { background: #5bbec8; color: #FFF; border: 1px solid #5bbec8; }

.btn-secondary { color: #5bbec8; background: transparent; border: 1px solid #5bbec8; border-radius: 0.41667rem; font-size: 1.125rem; font-weight: 400; padding: 0.5rem 0.83333rem; margin: 0; cursor: pointer; display: inline-block; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; line-height: 1.4; margin-bottom: 0.625rem; text-decoration: none; -webkit-appearance: none; /*Stops iOS from taking over how buttons look*/ background: transparent; border: 1px solid #FFF; color: #FFF; }
.btn-secondary:hover, .btn-secondary:focus { color: #FFF; background: #5bbec8; border: 1px solid #5bbec8; }
.btn-secondary:hover, .btn-secondary:focus { background: #FFF; border: 1px solid #FFF; color: #5bbec8; }

.btn-accent { color: #5bbec8; background: transparent; border: 1px solid #5bbec8; border-radius: 0.41667rem; font-size: 1.125rem; font-weight: 400; padding: 0.5rem 0.83333rem; margin: 0; cursor: pointer; display: inline-block; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; line-height: 1.4; margin-bottom: 0.625rem; text-decoration: none; -webkit-appearance: none; /*Stops iOS from taking over how buttons look*/ background: black; }
.btn-accent:hover, .btn-accent:focus { color: #FFF; background: #5bbec8; border: 1px solid #5bbec8; }
.btn-accent:hover, .btn-accent:focus { background: black; }

.btn.full-width, .btn-primary.full-width, .btn-secondary.full-width, .btn-accent.full-width { /*To be used in conjunction with other button styles*/ width: 100%; padding: 0.41667rem 0.625rem; font-size: 0.75rem; text-transform: uppercase; }
.btn span, .btn-primary span, .btn-secondary span, .btn-accent span { padding-top: 0.625rem; padding-bottom: 0.625rem; display: inline-block; }
.btn i, .btn-primary i, .btn-secondary i, .btn-accent i { display: inline-block; line-height: 1; margin-left: 0.375rem; }
.btn i.fa-2x, .btn-primary i.fa-2x, .btn-secondary i.fa-2x, .btn-accent i.fa-2x { font-size: inherit; }

.btn-small { padding: 0.41667rem 0.625rem; font-size: 0.75rem; text-transform: uppercase; }

br + .btn { margin-top: 0.625rem; }

/*==============================================
	MESSAGES
==============================================*/
.message, #mce-responses > div { padding: 1.25rem; margin-bottom: 1.25rem; margin-top: 1.25rem; }
.message.warning, #mce-responses > div.warning { background: #fffbd7; border: 1px solid #d7c200; }
.message.error, .message #mce-error-response, #mce-responses > div.error, #mce-responses > div #mce-error-response { background: #ffc6c7; border: 1px solid #c60004; }
.message.success, .message #mce-success-response, #mce-responses > div.success, #mce-responses > div #mce-success-response { background: white; border: 1px solid #67ce87; }

/*@import "base/lightbox";*/
/* Features */
/*=================================================================================
	RESPONSIVE MENU
=================================================================================*/
#responsive { display: block; position: relative; z-index: 1000; }
@media only screen and (min-width: 768px) { #responsive { display: none; } }
#responsive span { padding: 0.625rem; position: absolute; width: 100%; text-align: left; color: #333333; cursor: pointer; }
#responsive span i { font-size: 1.5625rem; }
#responsive ul { background: #5bbec8; padding: 0; margin-bottom: 0; display: none; list-style: none; }
#responsive ul li { border-bottom: 1px solid #3ca9b4; margin: 0; line-height: 2.1875rem; min-height: 2.1875rem; padding: 0; text-transform: uppercase; }
#responsive ul li a { color: #ffffff; text-decoration: none; display: block; padding: 0 0.625rem; }
#responsive ul li:last-child { border: none; }
#responsive ul li:hover { background: #48b6c2; color: #ffffff; }
#responsive ul li:hover > ul { opacity: 1; position: relative; top: auto; left: auto; display: block; height: auto; width: auto; white-space: normal; margin: 0; text-align: left; overflow: visible; border-top: 1px solid #3ca9b4; position: relative; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
#responsive ul li ul { display: none; opacity: 0; top: -9999px; left: 0; z-index: 1; }
#responsive ul li ul li { font-size: 0.75rem; }
#responsive ul li ul li a { color: #ffffff; }
#responsive ul li ul li a:before { content: "- "; }
#responsive ul li ul li ul { display: none !important; }
#responsive ul li.menu-item-has-children { position: relative; }
#responsive ul li.menu-item-has-children:before { position: absolute; top: 0; right: 0.625rem; content: "\f107"; color: #ffffff; }

/*@import "features/slideshow";
@import "features/gallery";
@import "features/mailchimp";
@import "features/testimonials";*/
/* Site specifc */
/*=================================================================================
	TABLE OF CONTENTS
=================================================================================*/
/* 
	- Basics
		- Utility classes
		- Typography
		- Links
		- Buttons
		- Messages
	- Header 
		- Details (Phone number etc)
	- Content
		- Homepage specific styles
		- Widget globals
		- Article
			- Lists
			- Blockquotes
			- Tables
			- Extras
		- Posts & Children
	- Sidebar
	- Footer
	- GOOP credit
	- Media Queries
*/
/*=================================================================================
	BASICS
=================================================================================*/
html, body { height: 100%; margin: 0; padding: 0; line-height: 1.4; font-size: 1rem; color: #8b9999; font-family: "Raleway", "Verdana", "Tahoma", sans-serif; font-weight: 400; }

*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

a, img, span { -webkit-transition: all all 0.3s ease-in-out; transition: all all 0.3s ease-in-out; }

/*=================================================================================
	CUSTOM LAYOUT
=================================================================================*/
@media only screen and (min-width: 960px) { #header { width: 50%; height: 100%; padding-top: 4.375rem; position: fixed; left: 0; top: 0; } }

@media only screen and (min-width: 960px) { #wrapper { width: 50%; height: 100%; padding-top: 4.375rem; position: absolute; right: 0; top: 0; } }

#nav { background: #FFF; position: fixed; top: 0; left: 0; z-index: 9999; -webkit-box-shadow: 0 0 3px 0 #8b9999; box-shadow: 0 0 3px 0 #8b9999; }

/*==============================================
	TYPOGRAPHY
==============================================*/
body, input, select, textarea, label, button { font-family: "Raleway", "Verdana", "Tahoma", sans-serif; }

ul li.menu-item-has-children:before, article blockquote:before { font-family: 'FontAwesome'; }

h1, h2, h3, h4, h5, h6 { font-family: "Raleway", "Verdana", "Tahoma", sans-serif; font-weight: 400; }

h1, h2, h3, h4, h5, h6, p, ul { margin-bottom: 0.625rem; }

h1.page-title { color: #FFF; padding-top: 2.5rem; padding-bottom: 2.5rem; font-weight: 300; line-height: 1.2; font-size: 2.625rem; }
@media only screen and (min-width: 768px) { h1.page-title { font-size: 2.875rem; } }
@media only screen and (min-width: 1200px) { h1.page-title { font-size: 3.5rem; } }
@media only screen and (min-width: 1200px) and (min-height: 960px) { h1.page-title { font-size: 4.5rem; } }

li, p { font-size: 1rem; }

small { font-size: 0.75rem; }

br + a.btn-primary { margin-top: 0.625rem; }

/*==============================================
	LINKS
==============================================*/
a { -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; color: #5bbec8; }
a:hover, a:focus { color: #2f858e; }

main a, article a, aside a { color: #718080; text-decoration: none; position: relative; border-bottom: 1px dotted #c2c9c9; }
main a:hover, main a:focus, article a:hover, article a:focus, aside a:hover, aside a:focus { color: #5bbec8; border-bottom: 1px solid #5bbec8; }
main a.readmore, article a.readmore, aside a.readmore { white-space: nowrap; }

/*=================================================================================
	HEADER
=================================================================================*/
header { background: #5bbec8 url(img/backgrounds/header-bg.jpg) no-repeat top left; -webkit-background-size: cover; background-size: cover; padding: 2.5rem; }
header #logo { margin-top: 1.25rem; }
@media only screen and (min-width: 768px) { header #logo { margin-top: 5rem; } }
header #logo a.logo { width: 100%; display: block; }
@media only screen and (min-width: 768px) { header #logo a.logo { margin: 0; max-width: 300px; } }
header #logo a.logo img { display: block; margin: 0 auto; }
@media only screen and (min-width: 768px) { header #logo a.logo img { margin: 0; } }

/*End of header section*/
/*=================================================================================
	CONTENT
=================================================================================*/
#details { text-align: center; display: block; padding-bottom: 1.875rem; border-bottom: 1px solid #c2c9c9; margin-bottom: 2.5rem; }
@media only screen and (min-width: 768px) { #details { text-align: right; } }
#details p { font-size: 1.875rem; color: #5bbec8; font-weight: 300; margin: 0; }
#details a { border: none; text-decoration: none; }
#details strong { font-size: 2.25rem; font-weight: 600; }

/*End of details subsection*/
section { padding: 1.25rem; }

/*==============================================
	HOMEPAGE SPECIFIC STYLES
==============================================*/
/*=================================================================================
	WIDGET GLOBALS
=================================================================================*/
.widget .widget-title { text-transform: uppercase; font-weight: 700; font-size: 0.875rem; padding: 0.3125rem 0; }

/*=================================================================================
	ARTICLES & MAIN CONTENT
=================================================================================*/
article, main { position: relative; /*==============================================
	LISTS
==============================================*/ /*==============================================
	SMALL
==============================================*/ /*==============================================
	BLOCKQUOTES
==============================================*/ /*==============================================
	TABLES
==============================================*/ /*==============================================
	EXTRAS
==============================================*/ }
article h1, main h1 { font-size: 2.625rem; margin-bottom: 0.625rem; color: black; }
article h2, main h2 { font-size: 2rem; margin-bottom: 0.625rem; color: #5bbec8; }
article h3, main h3 { font-size: 1.75rem; margin-bottom: 0.3125rem; color: #596565; }
article h4, article h5, article h6, main h4, main h5, main h6 { font-size: 1.25rem; color: #718080; margin-bottom: 0.3125rem; }
article p, main p { line-height: 1.4; margin-bottom: 0.625rem; }
article strong, main strong { font-weight: 600; }
article ul, article ol, main ul, main ol { margin: 0 1.5625rem 1.25rem; }
article ul li, article ol li, main ul li, main ol li { margin-bottom: 0.3125rem; }
article ul, main ul { list-style: disc; }
article ol, main ol { list-style: decimal; }
article small, main small { font-size: 0.75rem; margin: 0 0 0.625rem; opacity: 0.7; text-transform: uppercase; }
article .date, main .date { display: block; }
article blockquote, main blockquote { position: relative; padding: 1.25rem 0 0 1.25rem; }
article blockquote:before, main blockquote:before { content: "\f10d"; opacity: 0.3; position: absolute; top: 1.25rem; left: 0; clear: both; visibility: visible; overflow: visible; }
article table, main table { margin: 0 0 1.25rem 0; border-collapse: collapse; width: 100%; border: 1px solid white; }
article table th, article table td, main table th, main table td { border: 1px solid white; padding: 0.1875rem 0.625rem 0.1875rem; }
article hr, main hr { border-color: white; height: 0.0625rem; }
article .columns.eight, main .columns.eight { padding-bottom: 1.25rem; }
@media only screen and (min-width: 768px) { article .columns.eight:last-child, main .columns.eight:last-child { padding-left: 1.25rem; } }

/*=================================================================================
	POSTS & CHILDREN
=================================================================================*/
main .page, main .post, article .page, article .post { clear: both; padding: 1.25rem 0 0; margin: 1.25rem 0 0; border-top: 0.0625rem solid white; }
main .page h2.title, main .post h2.title, article .page h2.title, article .post h2.title { background: none; padding: 0; margin: 0 0 0.3125rem; }
main .page h2.title a, main .post h2.title a, article .page h2.title a, article .post h2.title a { text-decoration: none; padding: 0; margin: 0; border-color: transparent; color: inherit; }
main .page h2.title a:hover, main .page h2.title a:focus, main .post h2.title a:hover, main .post h2.title a:focus, article .page h2.title a:hover, article .page h2.title a:focus, article .post h2.title a:hover, article .post h2.title a:focus { background: none; color: #5bbec8; border: none; }
main .page .thumbnail, main .post .thumbnail, article .page .thumbnail, article .post .thumbnail { margin-bottom: 1.25rem; }
@media only screen and (min-width: 768px) { main .page .thumbnail, main .post .thumbnail, article .page .thumbnail, article .post .thumbnail { padding-right: 1.25rem; } }
main .page .thumbnail img, main .post .thumbnail img, article .page .thumbnail img, article .post .thumbnail img { display: block; margin: 0.3125rem 0 0.625rem; width: 100%; height: auto; }
main .page .thumbnail a, main .page .thumbnail a:hover, main .page .thumbnail a:focus, main .post .thumbnail a, main .post .thumbnail a:hover, main .post .thumbnail a:focus, article .page .thumbnail a, article .page .thumbnail a:hover, article .page .thumbnail a:focus, article .post .thumbnail a, article .post .thumbnail a:hover, article .post .thumbnail a:focus { border: none; padding: 0; margin: 0; }
main .post:first-of-type, article .post:first-of-type { padding-top: 0; margin-top: 0; border-top: none; }
main .type-page.hentry p, article .type-page.hentry p { display: inline; }

/*=================================================================================
	SIDEBAR
=================================================================================*/
aside { margin: 0; padding: 0; }
aside ul.sidebar { list-style: none; margin: 1.25rem 0 0; padding: 1.25rem; background: #ceebee; }
@media only screen and (min-width: 768px) { aside ul.sidebar { margin-top: 0; margin-left: 1.25rem; } }
aside ul.sidebar li { font-size: 0.9375rem; color: #ffffff; display: inline-block; margin-right: 0.625rem; }
aside ul.sidebar li:first-child { display: block; }
@media only screen and (min-width: 768px) { aside ul.sidebar li { display: block; margin: 0; } }
aside ul.sidebar li h3 { font-size: 1.25rem; font-weight: 600; margin: 0; padding: 0 0 0.3125rem; color: #5bbec8; }
aside ul.sidebar li a { border: none; color: #8b9999; padding: 0.3125rem 0; display: block; }
aside ul.sidebar li a:hover { color: #2f858e; }

/*=================================================================================
	FOOTER
=================================================================================*/
footer { padding: 1.25rem; /*End footer ul*/ /* #supplementary */ }
footer a { color: #8b9999; text-decoration: none; border-bottom: 1px solid transparent; }
footer a:hover, footer a:focus { color: #596565; border-color: #596565; }
footer ul { /*Center all footer lists on mobile*/ }
@media only screen and (max-width: 767px) { footer ul { float: none; display: block; margin-left: auto; margin-right: auto; text-align: center; width: 100%; max-width: 100%; } }
footer #primary { margin-top: 1.25rem; border-top: 1px solid #c2c9c9; padding-top: 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid #c2c9c9; text-align: center; }
footer #primary img { margin: 0 1.25rem; max-width: 160px; }
@media only screen and (min-width: 1200px) { footer #primary img { max-width: none; } }
footer #supplementary { padding-top: 1.25rem; padding-bottom: 1.25rem; /* #supplementary ul */ }
footer #supplementary .container { padding: 0; margin: 0; width: 100%; }
footer #supplementary ul { text-align: right; /* #supplementary ul li */ }
@media only screen and (min-width: 768px) { footer #supplementary ul { padding-bottom: 0; } }
footer #supplementary ul li { display: inline-block; list-style: none; padding-left: 0.625rem; padding-bottom: 0.625rem; font-size: 0.75rem; /* #supplementary ul li a */ }
@media only screen and (min-width: 768px) { footer #supplementary ul li { padding-bottom: 0; } }
footer #supplementary ul li a { border-color: transparent; display: inline; color: #8b9999; }
footer #supplementary ul li a:hover, footer #supplementary ul li a:focus { color: #5bbec8; }

/* footer */
/*Overrides*/
/*=================================================================================
	IE
=================================================================================*/
.lt-ie9 html, .lt-ie9 body { font-size: 100%; }

/*=================================================================================
	BROWSER WARNING
=================================================================================*/
#browser { text-align: center; padding: 0; background: #ffffcc; margin: 0; font-size: 70%; width: 100%; border-bottom: 1px solid #cccccc; font-family: "Raleway", "Verdana", "Tahoma", sans-serif; z-index: 10000; position: relative; }

#browser span { display: block; width: 960px; margin: 0 auto; padding: 3px; color: #666666; }

#browser span a { color: #000; text-decoration: none; }

#browser span a:hover, #browser span a:focus { background: none; color: #000; text-decoration: underline; }
