/*
Theme Name: Plan
Theme URI: http://getgorgeo.us
Author: GORGEOUS
Author URI: http://www.getgorgeo.us
Description: WordPress theme for PLAN - Reset for use with Hidden Treasure sub-brand.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: plan
Tags:

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Normalize
2.0 Typography
3.0 Elements
4.0 Forms
5.0 Navigation
	5.1 Links
	5.2 Menus
        5.3 Posts/Comments Navigation
6.0 Accessibility
7.0 Alignments
8.0 Clearings
9.0 Header
10.0 Widgets
11.0 Content
	11.1 Posts and pages
	11.2 Asides
	11.3 Comments
        11.4 Index and Archive
12.0 Infinite scroll
13.0 Media
	13.1 Captions
	13.2 Galleries
14.0 Footer
15.0 WooCommerce Reset
--------------------------------------------------------------*/

/*--------------------------------------------------------------
1.1. Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: separate;;
	border-spacing: 0;
  padding: 0.75em;
}

th {
		font-weight: bold;
    padding: 0.75em;
    text-transform: uppercase;
}

td {
		border-top: 1px solid #eee;
    padding: 0.75em;
}

/*--------------------------------------------------------------
2.0 Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #404040;
  color: hsl(0, 0%, 25%);
  font-family: 'PT Sans', sans-serif;;
	font-size: 16px;
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	clear: right;
  font-weight: 700;
  font-family: 'Comfortaa', cursive;
	text-transform: lowercase;
  color: #4A77BB;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
#page {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
}

html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #4A77BB; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
4.0 Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	background-color:#76C04F;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	border-radius:3px;
	border:1px solid #76C04F;
	display:inline-block;
	cursor:pointer;
	color:#ffffff;
	font-family: 'Lato', sans-serif;
	font-size:13px;
	padding:6px 24px;
	text-decoration:none;
	text-transform: uppercase;
	margin-top: 7px;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background-color:#4A77BB;
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	position:relative;
	top:1px;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
        padding-bottom: 20px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	color: #111;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
	padding: 3px;
}

textarea {
	padding-left: 3px;
	width: 100%;
}

/* Search Toggle

.search-toggle {
    float: right;
    width: 54px;
    height: 54px;
    padding: 14px;
    margin-right: 20px;
    color: #fff;
    text-align: center;
    cursor: pointer;
}

.search-toggle:hover,
.search-toggle.active {
    background: #4d4d4d;
    background: hsl(0, 0%, 30%);
}

@media screen and (max-width: 1000px) {
    .search-toggle {
        position: absolute;
        top: 0;
        right: 0;
        margin-right: 0;
    }
}*/

/* Search Boxes */

input[type="search"] {
    box-sizing: border-box;
    width: 100%;
}

.search-box-wrapper {
    z-index: 2;
    width: 100%;
    display: none;
}

.search-box {
    padding: 1em;
    background: #4d4d4d;
    background: hsl(0, 0%, 30%);
}

.search-box .search-field {
    max-width: 362px;
    float: right;
    padding: 1rem 2rem 1rem 4rem;
    font-size: 20px;
    font-size: 1rem;
    background-color: #fff;
    border: 0;
}

.error404 .search-submit,
.search .search-submit,
.search-box .search-submit {
    display: none;
}

/* Header Search */

.header-search {
	width: 250px;
	position: relative;
	float: right;
	clear: both;
	margin-right: 40px;
	margin-top: -85px;
}

input.search-submit {
	display: none;
}

/*input[type="submit"] {
	display: none;
}*/

/* Header Search on Mobile Devices */

@media screen and (max-width: 715px) {
        .header-search {
					width: 100%;
					margin: auto;
					padding-left: 30px;
					padding-right: 30px;
					padding-bottom: 30px;
        }
}

/* Search widget */
.widget_search .search-submit {
	display: none;
}

/*--------------------------------------------------------------
5.0 Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
5.1 Links
--------------------------------------------------------------*/
a {
	color: #4A77BB;
}

a:visited {
	color: #4A77BB;
}

a:hover,
a:focus,
a:active {
	color: #76C04F;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

.entry-title a {
    text-decoration: none;
}

.entry-title a:hover {
    color: #76C04F;
}

.entry-footer a:hover {
    color: #76C04F;
}

/*--------------------------------------------------------------
5.2 Menus
--------------------------------------------------------------*/
.main-navigation {
    position: relative;
    float: left;
    width: 100%;
    display: block;
    clear: both;
    font-family: 'Lato', sans-serif;
    text-transform: uppercase;
    background: #76C04F;
    border-bottom-style: solid;
    border-bottom-color: #4A77BB;
    padding: 0 3.1rem;
}

.main-navigation ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.main-navigation li {
    float: left;
    position: relative;
}

.main-navigation a {
    display: block;
    padding: 1.3em 1em;
    font-size: 14px;
    text-decoration: none;
    line-height: 1.3em;
    color: white;
    color: hsl(0, 0%, 100%);
}

.main-navigation ul ul {
    position: absolute;
    left: 0;
    z-index: 99999;
    display: none;
    float: left;
    padding: 0;
    background: #707274;
		border-bottom: 3px solid #76C04F;
}

.main-navigation ul ul ul {
    left: 100%;
    top: 0;
}

.main-navigation ul ul a {
    width: 200px;
}

.main-navigation ul ul li {
}

.main-navigation li:hover > a {
    color: #fff;
    background: #4A77BB;
}

.main-navigation li a:after {
    content: ' ▾';
}

.main-navigation li a:only-child:after {
    content: '';
}

.main-navigation ul ul :hover > a {
}

.main-navigation ul ul a:hover {
    background: #4A77BB;
}

.main-navigation ul li:hover > ul {
    display: block;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a {
    background: #4A77BB;
    color: #fff;
}

.main-navigation .current_page_item > a:hover {
    background: #fff;
    color: #76C04F;
}

.main-navigation .current-menu-item > a:hover {
	background: #4A77BB;
	color: #fff;
}

.main-navigation .current_page_ancestor {
    background: #4A77BB;
}

.main-navigation .current_page_ancestor > a:hover {
    background: #fff;
    color: #4A77BB;
}

.main-navigation ul ul .current_page_parent,
.main-navigation .current_page_parent .current_page_item > a {
    color: #fff;
    background: #4A77BB;
}

/* Mobile menu. */
.menu-toggle {
  cursor: pointer;
	display: none;
}

button.menu-toggle {
  text-transform: uppercase;
  font-family: 'Lato', sans-serif;
  background-color: none;
  margin-left: 10px;
  background: none;
  box-shadow: none;
  border: none;
}

button.menu-toggle:before {
  display: inline-block;
  padding: 0 5px;
  vertical-align: top;
  font-family: 'Fontawesome';
  font-size: 20px;
  color: #4A77BB;
  -webkit-font-smoothing: antialiased;
  content: '\f0c9';
}

button.menu-toggle:hover {
  color: #4A77BB;
}

@media screen and (max-width: 1000px) {
        .main-navigation {
            padding: 0;
        }
        .menu-toggle {
            display: block;
            height: 3.75em;
            padding: 0 1em;
            font-weight: normal;
            font-size: 14px;
            text-decoration: none;
            line-height: 3.75em;
            color: white;
	}

	.main-navigation.toggled .nav-menu {
		display: block;
		border-top: 1px solid;
		border-top-color: #fff;
		border-top-color: hsla(0, 0%, 100%, .5);
	}

	.main-navigation ul {
            display: none;
            padding-left: 0;
	}
        .main-navigation li {
		float: none;
	}

	.main-navigation li a {
		padding: 1.3em 2em;
	}

	.main-navigation li li a {
		padding-left: 4em;
	}

	.main-navigation li li li a {
		padding-left: 6em;
	}

	.main-navigation li:hover > a {
		background: #4A77BB;
	}

	.main-navigation ul ul,
	.main-navigation ul ul ul {
		position: relative;
		top: inherit;
		left: 0;
		display: block;
		float: none;
		background: #4A77BB;
	}

	.main-navigation ul ul a { width: 100%; }

	.main-navigation ul a:hover,
	.main-navigation ul ul a:hover {
		background: #4A77BB;
	}

	.main-navigation .current_page_ancestor { background: inherit; }

	.main-navigation ul ul .current_page_parent {
		color: inherit;
		background: inherit;
	}

	.main-navigation .current_page_item > a,
	.main-navigation .current_page_item > a:hover,
	.main-navigation .current_page_item li:hover,
	.main-navigation .current_page_parent .current_page_item > a  {
		color: #fff;
		color: hsl(0, 0%, 100%);
		background: #4A77BB;
	}

}

@media screen and (max-width: 500px) {
        .main-navigation {
            padding: 0;
        }
}
/* Social Menu */

.menu-social ul {
    float: right;
    text-align: center;
    list-style: none;
}

.menu-social ul li {
    position: relative;
    display:  inline-block;
}

.menu-social li a:before {
    display: inline-block;
    padding: 0 5px;
    vertical-align: top;
    font-family: 'Fontawesome';
    font-size: 20px;
    color: #fff;
    -webkit-font-smoothing: antialiased;
    content: '\f0c0';
}

.menu-social li a[href*="facebook.com"]::before { content: '\f09a'; }

.menu-social li a[href*="twitter.com"]::before { content: '\f099'; }

.menu-social li a[href*="dribbble.com"]::before { content: '\f17d'; }

.menu-social li a[href*="plus.google.com"]::before { content: '\f0d5'; }

.menu-social li a[href*="pinterest.com"]::before { content: '\f0d2'; }

.menu-social li a[href*="github.com"]::before { content: '\f09b'; }

.menu-social li a[href*="tumblr.com"]::before { content: '\f173'; }

.menu-social li a[href*="youtube.com"]::before { content: '\f16a'; }

.menu-social li a[href*="flickr.com"]::before { content: '\f16e'; }

.menu-social li a[href*="vimeo.com"]::before { content: '\f194'; }

.menu-social li a[href*="instagram.com"]::before { content: '\f16d'; }

.menu-social li a[href*="linkedin.com"]::before { content: '\f0e1'; }

@media screen and (max-width: 500px) {
    .menu-social ul {
        padding: 0;
        width: auto;
        text-align: center;
        margin: 0 0 1.5em 0;
    }
    .menu-social ul li {
        display: inline-block;
        text-align: center;
        margin: 0;
    }

    .menu-social li a {
        display: block;
        text-align: center;
        margin: 0;
    }

    .menu-social li a:before {
        font-size: 20px;
    }
}

/* Top Account Menu */

.menu-top ul {
    font-family: 'Lato', sans-serif;
    font-size: 13px;
    float: right;;
    color: #4A77BB;
    margin: 0;
    padding-right: 40px;
    padding-top: 10px;
    list-style-type: none;
    list-style-image: none;
    position: relative;
}

.menu-top li {
    display: inline;
}

.menu-top a {
    text-decoration: none;
    color: #4A77BB;
    padding-left: 10px;
}

.menu-top a:hover {
    color: #76C04F;
}

/* Shopping Cart Menu */
#top-cart {
    color: #76C04F;
    font-size: 18px;
    text-align: right;
    text-transform: uppercase;
    padding-right: 40px;
    margin: 0;
    clear: right;
}
#top-cart a {
    text-decoration: none;
    font-family: 'Lato', sans-serif;
    color: #4A77BB;
}

#top-cart a:hover {
    color: #76C04F;
}

@media screen and (max-width: 500px) {
    #top-cart {
        display: block;
        text-align: center;
        font-size: 20px;
        padding-right: 0;
    }

    .menu-top ul {
        display: block;
        text-align: center;
    }

    .menu-top li:first-child {
    padding-left: 0;
}

}

/* Footer Menu */

.menu-footer ul {
    font-family: 'Lato', sans-serif;
    font-size: 14px;
    float: right;
    color: #4A77BB;
    margin: 0;
    padding-top: 10px;
    list-style-type: none;
    list-style-image: none;
    position: relative;
}

.menu-footer li {
    display: inline;
}

.menu-footer a {
    text-decoration: none;
    color: #76C04F;
    padding-left: 10px;
}

.menu-footer a:hover {
    color: #FFF;
}

@media screen and (max-width: 1100px) {
    .menu-footer ul {
        display: block;
        text-align: center;
        float: none;
        padding-top: 0;
        padding-left: 0;
        margin-bottom: 20px;
    }

    .menu-footer li:first-child {
    padding-left: 0;
    }
}

/*--------------------------------------------------------------
5.3. Posts/Comments Navigation
--------------------------------------------------------------*/
.site-main .comment-navigation,
.site-main .paging-navigation,
.site-main .post-navigation,
.nav-links {
        font-size: 14px;
        font-family: 'Lato', sans-serif;
        text-transform: uppercase;
        color: #000;
}
.comment-navigation .nav-previous,
.paging-navigation .nav-previous,
.post-navigation .nav-previous {
	width: 50%;
        float: left;
        padding-right: 15%;
}
.comment-navigation .nav-next,
.paging-navigation .nav-next,
.post-navigation .nav-next {
        width: 50%;
        float: right;
        padding-left: 15%;
	text-align: right;
}

.nav-indicator {
    margin-bottom: 1em;
}

.nav-previous h1,
.nav-next h1 {
    font-weight: 700;
    font-size: 15px;
}

.nav-links {
    border-top: hsl(0, 0%, 80%) solid 1px;
    max-width: 780px;
    max-width: 78rem;
    padding: 2em 4rem;
    margin: 0 auto;
    margin-bottom: 4em;
}

.nav-links .nav-previous {
    width: 50%;
    float: left;
}

.nav-links .nav-next {
    width: 50%;
    float: right;
    text-align: right;
}

.post-nav-box {
    padding: 2em 0;
    margin-bottom: 4em;
    border-top: hsl(0, 0%, 80%) solid 1px;
    border-bottom: hsl(0, 0%, 80%) solid 1px;
}

.comment-navigation {
    padding: 1em 0;
    margin: 3em 0;
    border-top: hsl(0, 0%, 80%) solid 1px;
    border-bottom: hsl(0, 0%, 80%) solid 1px;
}

.comment-navigation i {
    margin: 0 1em;
}

/*--------------------------------------------------------------
6.0 Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
        right: 0;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/*--------------------------------------------------------------
7.0 Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
8.0 Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
9.0 Header
--------------------------------------------------------------*/
.site-header {
    background-color: #fff;
}

.header-image img {
    display: block;
    margin: 0 auto;
}

.header-background-image {
    background: no-repeat center;
    background-size: cover!important;
    -moz-background-size: cover!important;
    -webkit-background-size: cover!important;
}

.header-background-image .title-box {
    background: #333;
    background: hsla(0, 0%, 0%, .7);
}

.site-title {
    font-weight: 700;
    font-size: 40px;
    font-size: 2rem;
    text-transform: uppercase;
    line-height: normal;
    padding-bottom: 1rem;
}

.site-description {
    font-weight: 100;
    font-size: 20px;
    font-size: 2rem;
}

.title-box {
    width: 600px;
    max-width: 75%;
    padding: 1rem;
    margin: 0 auto;
    border: solid 1px #fff;
    border: solid 1px hsla(0, 0%, 100%, .3);
}

.site-branding {
    margin: 0px 0px -40px 40px;
}

.site-branding a {
    text-decoration: none;
}

.site-title a,
.site-description {
    color: #fff;
    color: hsl(0, 0%, 100%);
}

#logo {
		max-width: 362px;
		float: left;
		padding-top: 35px;
		padding-bottom: 35px;
}

/* Header responsive */
@media screen and (max-width: 500px) {
    .site-branding {
        display: block;
        margin: 0;
 }

    .title-box {
        max-width: 100%;
        margin: 0;
        padding: 4rem;
        border: none;
    }

    #logo {
			float: none!important;
			max-height: 85px!important;
			display: block;
			margin-left: auto;
			margin-right: auto;
			margin-bottom: 40px;
    }
}

/*--------------------------------------------------------------
10.0 Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 4em;
        font-family: "Lato", sans-serif;
        font-size: 14px;
}

.widget-title {
    margin-bottom: 1em;
    font-size: 24px;
    border-bottom: 2px solid #76C04F;
    font-weight: 900;
    font-family: 'Comfortaa', cursive;
}

.widget a {
    font-weight: 700;
    color: #4A77BB;
}

.widget ul,
.widget ol {
    padding: 0;
    margin: -1em 0 0;
    list-style-type: none;
}

.widget li { padding: 1em 0 0; }

.widget li ul,
.widget li ol { margin-top: 0; }

.widget li li { margin-left: 1.5em; }

.widget_recent_entries li:before,
.widget_recent_comments li:before,
.widget_archive li:before {
    display: block;
    float: left;
    padding-top: 2px;
    margin-left: -2.5em;
    font-family: 'fontawesome';
    font-size: 14px;
    color: #76C04F;
}

.widget_recent_entries li,
.widget_recent_comments li { margin: 0 0 .5em 2.5em; }

.widget_recent_entries li:before { content: "\f036"; }

.widget_recent_comments li:before { content: "\f075"; }

.widget_archive li { margin: 0 0 0 2.5em; }

.widget_archive li:before { content: "\f187"; }

.widget_nav_menu a,
.widget_pages a {
    display: block;
    padding: 1em 0;
    border-bottom: solid 1px hsl(0, 0%, 90%);
}

.widget_nav_menu li,
.widget_pages li { padding-top: 0; }

.widget_rss li { margin-bottom: .5em; }

.widget_rss .rss-date,
.widget_rss cite {
    display: block;
    font-size: 85%;
}

.post-date {
	font-style: oblique;
	padding-left: 5px;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
11.0 Content
--------------------------------------------------------------*/

.site-content {
    background: #fff;
}

/*--------------------------------------------------------------
11.1 Posts and pages
--------------------------------------------------------------*/
/* Typography */
.entry-title {
    font-weight: 900;
    font-size: 30px;
    line-height: 1.3em;
    color: #4A77BB;
}

.page .entry-title {
    margin-top: .7em;
}

.entry-content a {
    text-decoration: underline;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 { margin-bottom: .4em; }

.entry-content h1 {
    font-size: 30px;
}

.entry-content h2 {
    font-size: 28px;
}

.entry-content h3 {
    font-size: 26px;
}

.entry-content h4 {
    font-size: 24px;
}

.entry-content h4 a {
    text-decoration: none;
}

.entry-content h5 {
    font-size: 22px;
}

.entry-content h6 {
    font-size: 20px;
}

.entry-content p,
.entry-content ul,
.entry-content ol {
    font-size: 20px;
    line-height: 1.6em;
}

.entry-content blockquote p {
    font-size: 28px;
    line-height: 1.5em;
}

/* Smaller fonts for smaller screens */
@media screen and (max-width: 680px) {
    .entry-title {
        font-size: 32px;
        line-height: 1.3em;
    }
    .entry-content h1 {
        font-size: 28px;
    }

    .entry-content h2 {
        font-size: 26px;
    }

    .entry-content h3 {
        font-size: 24px;
    }

    .entry-content h4 {
        font-size: 22px;
    }

    .entry-content h5 {
        font-size: 20px;
    }

    .entry-content h6 {
        font-size: 18px;
    }

    .entry-content p,
    .entry-content ul,
    .entry-content ol  {
        font-size: 18px;
    }

    .entry-content blockquote p {
        font-size: 22px;
    }

		.entry-content ul,
		.entry-content ol {
			font-size: 14px;
		}
}

/* Meta */
.category-list {
    margin: 1.3em 0 1em;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
}

.category-list a {
    color: #333;
    color: hsl(0, 0%, 10%);
    margin-left: .5rem;
}

.category-list a:hover {
    color: #000;
    color: hsl(0, 0%, 0%);
}

.cat-links {
    padding-right: 10px;
}

.entry-meta {
    margin-bottom: 10px;
    padding: 0;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
}

.entry-meta a { font-weight: 600; }

.entry-footer {
    margin-top: 3rem;
    margin-bottom: 5rem;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    line-height: 2em;
}

.entry-footer ul {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.entry-footer li {
    display: inline-block;
    margin-right: 4rem;
}

.posted-on:before {
    content: ' on ';
}
.posted-on:after {
    content: '.';
}

.tag-icon {
    margin-right: .5rem;
}

/* Blockquotes */
blockquote {
    padding: 1em 1.5em 0;
    margin-bottom: 1em;
    font-style: italic;
    border-top: solid 1px hsl(0, 0%, 80%);
    border-bottom: solid 1px hsl(0, 0%, 80%);
}

blockquote em {
    font-style: normal;
}

blockquote cite {
    display: block;
    margin-top: 1em;
    margin-left: 40%;
    font-size: 18px;
    font-family: 'Lato', sans-serif;
    font-style: normal;
    line-height: 1.5em;
    text-align: right;
}

blockquote.alignleft {
    width: 50%;
    float: left;
    padding: 1em 0 0;
    margin-right: 2em;
}

blockquote.alignright {
    width: 50%;
    float: right;
    padding: 1em 0 0;
    margin-left: 2em;
}

.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.byline,
.updated:not(.published) {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Blockquotes responsive */
/* Optional rules that set blockquotes to full width on smaller screens */
@media screen and (max-width: 780px) {
    blockquote.alignleft,
    blockquote.alignright { width: 40%; }
}

@media screen and (max-width:600px) {
    blockquote.alignleft,
    blockquote.alignright {
        width: 100%;
        padding: 1em 1.5em 0;
    }
}

/*--------------------------------------------------------------
11.2 Asides
--------------------------------------------------------------*/
.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
	display: none;
}

.format-aside .entry-content {
    margin-top: 1em;
}

/*--------------------------------------------------------------
11.3 Comments
--------------------------------------------------------------*/
.comments-title {
    font-weight: 900;
    font-size: 20px;
}

.comments-area > ol {
    padding: 0;
    margin: 2em 0;
    list-style-type: none;
}

ol.children { list-style-type: none; }

.comment-list ol { margin-left: 50px; }

.comment-meta { margin-bottom: 1em; }

.comment-author .avatar {
    width: 50px;
    display: block;
    float: left;
    margin-right: 20px;
}

.comment-author .fn {
    font-weight: 900;
    font-family: 'Lato', sans-serif;
    font-size: 17px;
}

.comment-metadata {
    font-size: 13px;
    font-family: 'Lato', sans-serif;
}

.comment-metadata a {
    text-decoration: none;
}
.edit-link, .edit-link a {
    text-decoration: underline;
    color: #76C04F;
    font-weight: bold;
    margin-left: 5px;
}

.comment-content { font-size: 90%; }

.comment-content,
.reply { margin-left: 70px; }

.comment-body {
    padding-bottom: 2em;
    margin-bottom: 2em;
    border-bottom: solid hsl(0, 0%, 80%) 1px;
}

.comment-content a {
	word-wrap: break-word;
}

.comment-content ol { margin-left: 1.5em; }

.reply {
    font-weight: 600;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
		max-width: 622px;
}

/* Comments responsive */
@media screen and (max-width:600px) {
    .comment-list ol { margin-left: 0; }

    .comment-content ol { margin-left: 1.5em; }

    .comment-content,
    .reply { margin-left: 0; }
}

.comment-content a {
	word-wrap: break-word;
}

.bypostauthor > .comment-body {
    position: relative;
    padding: 1em;
    margin-bottom: 2em;
    background: hsl(0, 0%, 93%);
    border: none;
}

/* Comment Form */
.comment-reply-title {
    margin-bottom: .5em;
    font-weight: 900;
    font-size: 25px;
}

.comment-form {
    padding-bottom: 4rem;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
}

.comment-form textarea {
    font-family: 'PT Serif', serif;
    font-size: 18px;
}

.comment-form label { display: block; }

.required { color: red; }

.comment-awaiting-moderation { /* Green background color to make moderation seem less aggressive */
    padding: .5rem 1rem;
    margin: 1rem 0;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    color: #fff;
    color: hsl(0, 0%, 100%);
    background: #84bd68;
    background: hsl(100, 39%, 57%);
}

/*--------------------------------------------------------------
11.4 Index and Archive
--------------------------------------------------------------*/

.continue-reading {
    margin: 0 4rem;
    font-weight: 900;
    font-size: 18px;
}

.continue-reading i { margin-left: .5em; }

.sticky-post {
    position: absolute;
    top: 1rem;
    right: 3rem;
}

.taxonomy-description {
    padding-top: 10px;
    margin: 10px 0;
    font-family: 'Lato', sans-serif;
    font-style: italic;
    border-top: 1px solid hsl(0, 0%, 75%);
    border-bottom: 1px solid hsl(0, 0%, 75%);
}

/*--------------------------------------------------------------
12.0 Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
13.0 Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Featured Images */

.single-post-thumbnail {
    background: #b2b2b2 url(images/pattern.svg) repeat;
}

.single-post-thumbnail img {
    display: block;
    margin: 0 auto;
}

.small-index-thumbnail {
    margin-top: -1em;
    margin-bottom: 1em;
}

/* Optional Image Shifter
@media screen and (min-width: 1820px) {
    .image-shifter {
        width: 1060px;
        float: none;
        margin: 0 auto;
    }
}

@media screen and (min-width: 1540px) and (max-width: 1820px) {
    .image-shifter { margin-right: 380px;}
}

@media screen and (min-width: 1440px) and (max-width: 1819px) {
    .image-shifter {
        width: 1060px;
        float: right;
    }
}
*/

/*--------------------------------------------------------------
13.1 Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0 auto;
}
.wp-caption-text {
	text-align: center;
}

.wp-caption .wp-caption-text ,
.gallery-caption {
    padding: 0.8075em 1em;
    font-size: 14px;
    font-family: 'Lato', sans-serif;
    background: #e5e5e5;
    background: hsl(0, 0%, 90%);
}

/*OLD
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0 auto;
}

.wp-caption-text {
	text-align: center;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}
*/

/*--------------------------------------------------------------
13.2 Galleries
--------------------------------------------------------------*/

.gallery {
	margin-bottom: 1.5em;
}

/* OLD
.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}
*/

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.site-main .gallery {
	margin-bottom: 1.5em;
}
.site-main .gallery-item {
    position: relative;
    max-width:100%;
    float: left;
    margin-right: 3.333333333%;
    margin-bottom: 3rem;
    background: #333;
    overflow: hidden;
}
.gallery-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    max-height: 50%;
    width: 100%;
    padding: 6px 8px;
    margin: 0;
    font-size: 12px;
    line-height: 1.5;
    color: #fff;
    text-align: left;
    background-color: hsla(0, 0%, 0%, .8);
    opacity: 0;
}
.gallery-item:hover .gallery-caption {
    opacity: 1;
}
.site-main .gallery a img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    border: none;
}

/*--------------------------------------------------------------
14.0 Footer
--------------------------------------------------------------*/
.site-footer {
    padding: 2em;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    color: #fff;
    border-top-style: solid;
    border-top-color: #76C04F;
    border-bottom-style: solid;
    border-bottom-color: #76C04F;
}

.site-footer a {
    color: #fff;
    color: hsl(0, 0%, 100%);
}

.site-info {
    float: left;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
		color: #FFF;
    margin-bottom: 30px;
    padding-top: 10px;
}

.site-info a {
	color: #76C04F;
}

.disclaimer {
	color: #fff;
	font-style: oblique;
	text-align: center;
	width: 500px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 70px;
	margin-bottom: 30px;
	font-size: 13px;
}

.disc-image {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
}

@media screen and (max-width: 900px) {
    .disclaimer {
        width: 400px;
				margin-top: 10px;
    }
}

@media screen and (max-width: 1100px) {
    .site-info {
        text-align: center;
        display: block;
        float: none;
    }
}

.widget-title {
    font-size: 18px;
}

/* Footer widgets */
.footer-widgets {
    margin: 0 auto;
}

.footer-widgets .widget-title {
    color: #fff;
}

.footer-widgets .widget a {
    color: #fff;
    border-color: #fff;
}

.footer-widgets .widget a:hover {
    color: #76C04F;
}

.footer-widgets .widget {
    float: left;
    width: 250px;
    margin: 0 10px 3px 20px;
}

/* Footer widgets responsive */
@media screen and (max-width: 879px) {
    #footer-widgets { width: 100%!important; }

    .footer-widgets .widget {
        float: none;
        width: 100%;
        margin: 0 0 8em;
    }
}

.footer-social a {
    margin-right: 10px;
    font-size: 25px;
}

.footer-social-2x:before {
    margin-right:10px;
}

/*--------------------------------------------------------------
15.0 WooCommerce Reset
--------------------------------------------------------------*/
.entry-woo {
    position: relative;
    max-width: 780px;
    max-width: 78rem;
    padding: 0 4rem;
    margin: 0 auto;
}

.woocommerce img, .woocommerce-page img {
    height: auto;
    max-width: 100%;
    margin-bottom: 1em;
}

.woocommerce div.product {
  padding: 1em 0 2em;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  margin: 0px -40px 1.618em;
}

.woocommerce div.product form.cart .button {
    font-family: 'Lato', sans-serif;
    text-transform: uppercase;
}

.woocommerce div.product form.cart .button:after {
    font-family: 'Fontawesome';
    font-size: 20px;
    color: #fff;
    -webkit-font-smoothing: antialiased;
    content: '\f217';
    margin-left: 5px;
}

.woocommerce .quantity .qty {
    line-height: 2.2;
    margin-right: 10px;
}

.woocommerce span.onsale {
    padding: 0;
    color: #fff !important;
}

.woocommerce .woocommerce-breadcrumb {
    color: #999;
    padding-top: 1em;
}

.woocommerce td.product-name dl.variation {
  margin: .25em 0;
}

.woocommerce td.product-name dl.variation p {
  margin: 0 0;
  font-size: 16px;
}

.woocommerce td.product-name dl.variation dd {
  margin: 0 0;
  font-size: 16px;
}

.woocommerce td.product-name dl.variation dd {
  padding: 0 0 0em;
  margin: 0 4px 0 0;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
  line-height: 1.5;
}

.woocommerce table.cart td.actions .input-text, .woocommerce-page #content table.cart td.actions .input-text, .woocommerce-page table.cart td.actions .input-text {
  width: 120px;
}

.woocommerce ul.cart_list .pbl-options,
.woocommerce table .pbl-options {
    display: none;
}

.woocommerce-cart table.cart img {
    width: 80px;
}

@media screen and (max-width: 500px) {
   .woocommerce ul.products li.product .button {
        font-size: 14px;
   }

   .woocommerce table.shop_table {
    margin: 0 0px 0px -45px;
}

}
/* Icon */
.main-color {
    color: #76C04F;
}

/* Custom VC styling */
.vc_gitem_row .vc_gitem-col {
		padding: 10px!important;
    padding-left: 20px!important;
		padding-right: 20px!important;
}

.vc_btn3.vc_btn3-color-juicy-pink, .vc_btn3.vc_btn3-color-juicy-pink.vc_btn3-style-flat {
    color: #ffffff;
		text-transform: uppercase;
    background-color: #4A77BB!important;
}

.vc_btn3.vc_btn3-color-juicy-pink:hover, .vc_btn3.vc_btn3-color-juicy-pink.vc_btn3-style-flat:hover {
    color: #ffffff;
		text-transform: uppercase;
    background-color: #76C04F!important;
}

.vc_btn3.vc_btn3-style-modern {
	background-image: none!important;
	background-repeat: no-repeat!important;
}

.vc_btn3.vc_btn3-color-green.vc_btn3-style-modern {
	background-color: #4A77BB!important;
	border-color: #4A77BB!important;
}

.vc_btn3.vc_btn3-color-green.vc_btn3-style-modern:hover, .vc_btn3.vc_btn3-color-green.vc_btn3-style-modern:focus {
	background-color: #76C04F!important;
	border-color: #76C04F!important;
}

/* Styling to move 'Subscribe' to right hand side */
.single-forum .subscription-toggle  {
    float:right!important;
}

/* Styling to reduce the size of fonts in Bookings section */
.em-booking-form label {
    font-size: 10px!important;
		max-width: 100px!important;
}

.em-booking-form-details label {
    width: 200px!important;
}

.em-booking-form-details {
    width: 100% !important;
}

.em-booking-form-details {
  width: 460px!important;
}

.em-booking-form label {
  width: 175px!important;
}
