/*
Theme Name: Basic
Author: Caden Grant
Author URI:
Theme URI:
Description: Minimal responsive personal and agency portfolio theme.
Version: 2.0
License: ThemeForest Split License
License URI: --
Tags: one-column, two-columns, right-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, featured-images, flexible-header, post-formats, sticky-post, threaded-comments, translation-ready, blog
Text Domain: Basic
*/


/**
 * Table of Contents
 *
 * 1.0 - Reset
 * 2.0 - Typography
 * 3.0 - Header
 *   3.1 - Logo
 *   3.2 - Menu
 *	   A - Menu Toggle Button
 *     B - Menu Overlay
 *     C - Menu List
 * 4.0 - Page Layout/Structure
 * 5.0 - Pages
 *   5.1 - 404 Error Page
 *   5.2 - Contact Form
 * 6.0 - Sidebar
 *   6.1 - Widgets
 * 7.0 - Blog
 *   7.1 - Post Formats
 * 	 7.2 - Single Post
 *   7.3 - Comments
 *     A - Comment Styling
 *     B - Comment Form
 * 8.0 - Hero
 * 9.0 - Portfolio
 *   9.1 - Filter
 *   9.2 - Layout/Structure
 *   9.3 - Portfolio Items/Posts
 * 10.0 - Gallery
 *   10.1 - Lightbox
 * 11.0 - WooCommerce
 *   11.1 - Widgets
 *   11.2 - Single Product
 *   11.3 - Comments
 *   11.4 - Checkout
 * 12.0 - Pagination
 * 13.0 - Footer
 * 14.0 - Shortcode Styling
 * 15.0 - WordPress Classes
 * 16.0 - Responsive Grid
 */

/**
 * 1.0 - CSS Reset
 */

/**
 * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
 * http://cssreset.com
 */
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: 62.5%;
	font: inherit;
	vertical-align: baseline;
	line-height: 1.7;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html, body {
	overflow-x: hidden;
}

html {
	overflow-y: scroll;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {
	text-decoration: none;
	outline: 0;
}

strong {
	font-weight: 600;
}

b {
	font-weight: 700;
}

i, em {
	font-style: italic;
}

/**
 * 2.0 - Typography
 */
html,
body {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #000;
	font-size: 15px;
	font-weight: 300;
	line-height: 200%;
	background: #fefefe;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

body.side-header {
	padding-left: 270px;
}

a {
	color: #000000;
	padding-bottom: 0.05em;
	-webkit-transition: all 250ms ease-out;
    -moz-transition: all 250ms ease-out;
    -o-transition: all 250ms ease-out;
    transition: all 250ms ease-out;
}

a:hover {
	color: #777777;
}

p a {
	color: #999999;
}

p a:hover {
	color: #000000;
}

p, blockquote, table, pre, code, dl {
	margin: 0 0 1.5em;
}

blockquote {
	border-left: 3px solid #eaeaea;
	padding: 5px 20px;
}

blockquote p {
	font-size: 135%;
	margin: 0;
}

ul, ol {
	margin: 0 20px 26px 20px;
}

ul.styled-list {
	list-style: none;
}

ul.styled-list li i {
	margin-right: 4px;
}

li {
	padding: 3px 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	padding-top: 30px;
	margin-bottom: 25px;
	font-weight: 100;
	line-height: 1.5;
	letter-spacing: 0px;
}

h1 {
	font-size: 40px;
}

h2 {
	font-size: 32px;
}

h3 {
	font-size: 26px;
}

h4 {
	font-size: 22px;
}

h5 {
	font-size: 18px;
}

h6 {
	font-size: 16px;
}

p {
	margin-bottom: 30px;
	color: #000;
}

p.lead {
	font-size: 180%;
	font-weight: 300;
	line-height: 1.5;
	color: #aeaeae;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

figure {
	max-width: 100%;
}

pre, code {
	font-family: monospace;
}

pre {
	font-size: 13px;
	clear: both;
	display: block;
	margin: 2em 0;
	padding: 5px 10px;
	background: #f9f9f9;
	border: 1px solid #f1f1f1;
	margin-bottom: 18px;
}

code {
	padding: 3px 5px;
	background: #f9f9f9;
	border: 1px solid #eaeaea;
	font-size: 13px;
}

table {
	width: 100%;
	margin: 0 0 2em;
}

table caption {
	text-align: center;
	margin: 0 0 .5em;
}

table thead {
	background: #f1f1f1;
}

table thead th,
table thead td {
	font-weight: 600;
}

table td, table th {
	border-bottom: 1px solid #eaeaea;
	padding: .5em 1em;
}

table tr:nth-child(even) {
	background: #f9f9f9;
}

/**
 * 3.0 - Header
 */
#header {
	height: 150px;
	width: 100%;
	display: table;
	overflow: hidden;
	transition: all .33s ease-in-out;
	-o-transition: all .33s ease-in-out;
	-moz-transition: all .33s ease-in-out;
	-webkit-transition: all .33s ease-in-out;
	overflow: visible;
}

#header.scrolling {
	height: 100px;
}

#header.scrolling,
.transparent-header #header.scrolling {
	background: #fff;
}

.transparent-header #header {
	background: transparent;
}

#header .container {
	overflow: visible;
}

/**
 * 3.0.1 - Logo
 */
#logo {
	height: 150px;
	float: left;
	display: table;
	position: relative;
	z-index: 99999;
	transition: height .3s ease-in-out;
}

#header.scrolling #logo {
	height: 100px;
}

#logo .inner {
	display: table-cell;
	vertical-align: middle;
}

#logo a {
	font-size: 22px;
	text-transform: uppercase;
	letter-spacing: 0.2em;
}

.logo-alt {
	display: none;
}

/**
 * 3.1 - Side Header
 */
.side-header #header {
	position: fixed;
	left: 0;
	top: 0;
	height: 100%;
	width: 270px;
	padding: 6em 0 2em;
	z-index: 99999;
}

.side-header.admin-bar #header {
	top: 32px;
}

/**
 * 3.1.1 - Logo Side Header
 */
.side-header #logo {
	width: 100%;
	display: block;
	clear: both;
}

/**
 * 3.1.2 - Menu Side Header
 */
.side-header .menu-wrapper {
	clear: both;
	float: none;
	display: block;
	width: 100%;
	height: auto;
}

.side-header .menu {
	display: block;
	margin: 0;
}

.side-header .menu li {
	display: block;
	float: none;
	clear: both;
	margin: 0;
}

.side-header .menu li ul {
	width: 18.4em;
	top: 0;
	left: 100%;
}

/**
 * 3.1.3 - Social Media Side Header
 */
.side-header #header ul.social-sharing {
	max-width: 270px;
	position: fixed;
	bottom: 30px;
	left: 0;
	margin: 0;
	padding: 0 35px;

}

.side-header .social-sharing li {
	margin-right: 6px;
}

.side-header .social-sharing li:last-child {
	margin-right: 0;
}

/**
 * 3.2 - Menu
 */

/**
 *  A - Menu Toggle Button 
 */
.menu-toggle {
	height: 150px;
	float: right;
	display: table;
	transition: height .3s ease-in-out;
}

#header.scrolling .menu-toggle {
	height: 100px;
}

.standard-menu .menu-toggle { 
	display: none; 
}

.side-header .menu-toggle {
	display: none;
}

.menu-toggle .inner {
	display: table-cell;
	vertical-align: middle;
}

.toggle-button {
	width: 22px;
	height: 18px;
	transition: .25s;
	position: relative;
	display: block;
	z-index: 99999;
}

.toggle-button:hover {
	cursor: pointer;
}

.toggle-button .menu-bar {
	position: absolute;
	border-radius: 2px;
	width: 100%;
	transition: .5s;
}

.toggle-button .menu-bar-top {
	border-top: 3px solid #333;
	top: 0;
	width: 80%;
}

.toggle-button .menu-bar-middle {
 	height: 3px;
	background-color: #333;
	margin-top: 3px;
	margin-bottom: 3px;
	top: 4px;
}

.toggle-button .menu-bar-bottom {
	border-bottom: 3px solid #333;
	top: 14px;
	width: 90%;
}

.button-open .menu-bar-top {
	transform: rotate(45deg) translate(6px, 6px);
	transition: .4s;
	width: 100%;
}

.button-open .menu-bar-middle {
	transform: translate(230px);
	transition: .1s ease-in;
	opacity: 0;
}

.button-open .menu-bar-bottom {
	transform: rotate(-45deg) translate(4px, -4px);
	transition: .4s;
	width: 100%;
}

.toggle-button:hover .menu-bar-top,
.toggle-button:hover .menu-bar-middle,
.toggle-button:hover .menu-bar-bottom {
	border-color: #999;
	background-color: #999;
}

.toggle-button.toggle-light .menu-bar-top,
.toggle-button.toggle-light .menu-bar-middle,
.toggle-button.toggle-light .menu-bar-bottom {
	border-color: #fff;
	background-color: #fff;
}

.toggle-button.toggle-light:hover .menu-bar-top,
.toggle-button.toggle-light:hover .menu-bar-middle,
.toggle-button.toggle-light:hover .menu-bar-bottom {
	border-color: #aeaeae;
	background-color: #aeaeae;
}

/**
 * B - Menu Overlay
 */
#navigation {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: -17px;
	background: #fff;
	z-index: -1;
	opacity: 0;
	overflow-y: scroll;
	-webkit-transition: .4s ease-in-out;
	-moz-transition: .4s ease-in-out;
	-o-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}

.ios-device #navigation {
	right: 0;
}

#navigation.show-menu {
	opacity: 1;
	z-index: 99999;
}

#navigation .inner {
	width: 100%;
	height: 100%;
	display: table;
}

/* Menu Overlay Social Icons */
#navigation footer {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0;
	background: #fff;
	padding: 30px 0;
}

#navigation .social-sharing {
	display: block;
	width: 100%;
	margin: 0;
	opacity: 0;
	text-align: center;
	transform: translateY(15px);
	-webkit-transition: all .3s ease .8s;
	-moz-transition: all .3s ease .8s;
	-o-transition: all .3s ease .8s;
	transition: all .3s ease .8s;
}

#navigation .social-sharing.visible {
	opacity: 1;
	transform: translateY(0);
}

#navigation .social-sharing li {
	display: inline-block;
	float: inherit;
	margin: 0 5px;
}

#navigation .social-sharing li a {
	font-size: inherit;
}

/**
 * C - Menu List
 */

/**
 * Standard Menu
 */
.menu-wrapper {
	height: 150px;
	float: right;
	display: table;
	transition: height .3s ease-in-out;
}

#header.scrolling .menu-wrapper {
	height: 100px;
}

.menu {
	display: table-cell;
	vertical-align: middle;
}

.menu li {
	float: left;
	margin-left: 30px;
	list-style: none;
	font-family: Lato;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 2px;
	position: relative;
}

.menu li a {
	color: #000;
}

.dark-header .menu li a {
	color: #fff;
}

.dark-header #header.scrolling .menu li a {
	color: #333;
}

.menu li ul {
	display: none;
	position: absolute;
	top: 30px;
	width: 15em;
	margin: 0;
	padding: 1em 2em 1em;
	background: #333;
	z-index: 99999;
}

.menu li ul li {
	float: none;
	margin-left: 0;
}

.menu li ul li a {
	color: #fff;
}

.menu li ul li ul {
	display: none;
	top: 0;
	left: 11.9em;
	z-index: 99999;
}

/**
 * Popup Menu
 */
.main-menu {
	display: table-cell;
	vertical-align: middle;
	padding: 100px 0;
}

.main-menu li {
	font-size: 28px;
	text-align: center;
	list-style: none;
	opacity: 0;
	transform: translateY(