/*
Theme Name: Index
Theme URI: http://indextheme.com/
Author: Vadim Ilyin
Author URI: https://twitter.com/Ilyin_vadim
Description: Index is multipurpose theme, that allows you create and update your portfolio, shop or blog with ease. Built on fast and mobile optimised framework theme is really easy to use and cusomize.
Version: 1.0
License: GPLv3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: portfolio, mobile-optimized, slideshow, masonry, woocommerce, seo-optimized, retina-ready, left-sidebar, custom-background, custom-colors, translation-ready, blog, photography
Text Domain: index

Version 1.0

Table of Contents:
1.0 Reset
2.0 Global
	2.1 Animation
	2.2 Headings
	2.3 Align Classes
	2.4 Text elements
	2.5 Inputs
3.0 Media
4.0 Structure
5.0 Header
6.0 Primary
7.0 Content
8.0 Comments
9.0 Featured Image
10.0 Footer
11.0 Mobile
*/

/* 1.0 Reset */

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, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: top;
}

html {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-y: scroll;
	letter-spacing: 0.005rem;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
#headgroup,
nav,
section,
time {
	display: block;
}

ol, ul {
	list-style: none;
}

li {
	list-style-position: inside;
}

table {
	border-collapse: separate;
	border-spacing: 0;
	padding: 0.5em 0 1em 0;
}

caption, th, td {
	font-weight: normal;
	text-align: left;
	padding: 0.5em 1em 0.5em 0;
	border-bottom: solid 1px #e3e3e3;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}

blockquote, q {
	quotes: "" "";
}

video {
	width: 100% !important;
	height: auto !important;
}

.hide {
	display: none;
}

/* Contact Form 7 plugin response message style reset */

p + div.wpcf7 {
	margin-top: 0.75rem;
}

.wpcf7-form p {
	line-height: 0.75em;
	margin-bottom: 0.75em;
}

.wpcf7-response-output {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wpcf7-not-valid-tip {
	line-height: normal;
	margin-top: 0.25em;
}

label .wpcf7-form-control {
	display: block;
	margin-top: 0.5em;
	margin-bottom: 1.25em;
}

/* Links */

a {
	text-decoration: none;
}

a:hover,
a:active {
	outline: 0;
}

a img {
	border: none;
}

/* Calendar Widget */

#wp-calendar th, 
#wp-calendar td,
#wp-calendar caption {
	border: none;
}

#wp-calendar td {
	padding: 0.3em 0.3em;
}

#wp-calendar caption {
	padding: 0;
}

.sticky,
.screen-reader-text,
.bypostauthor {
	display: block;
}

/* 2.0 Global */

body,
button,
input,
select,
textarea {
	font-weight: normal;
	font-style: normal;
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}

/* 2.1 Animation */

a,
button,
input,
textarea {
	-o-transition: .25s ease-out;
	-ms-transition: .25s ease-out;
	-moz-transition: .25s ease-out;
	-webkit-transition: .25s ease-out;
	transition: .25s ease-out;
}

.feature-title,
.thumbnail-hover,
.flex-control-thumbs img,
.rsDefault .rsBullet span,
img.lazy {
	-o-transition: opacity .35s ease-out;
	-ms-transition: opacity .35s ease-out;
	-moz-transition: opacity .35s ease-out;
	-webkit-transition: opacity .35s ease-out;
	transition: opacity .35s ease-out;
}

#menu-toggle,
#menu-toggle span {
	-o-transition: .15s ease-out;
	-ms-transition: .15s ease-out;
	-moz-transition: .15s ease-out;
	-webkit-transition: .15s ease-out;
	transition: .15s ease-out;
}

/* 2.2 Headings */

h1, h2, h3, h4, h5, h6 {
	clear: both;
	margin: 0;
}

#primary h2 {
	margin-top: 0;
}

#site-identity,
#site-logo {
	font-weight: normal;
	margin: 0;
	position: relative;
	float: left;
	z-index: 1;
	width: 100%;
}

/* 2.3 Align Classes */

.alignright,
img.alignright { 
	float: right;
	text-align: right;
}

.alignleft,
img.alignleft { 
	float: left; 
	margin-left: 0 !important;
}

.aligncenter,
img.aligncenter { 
	display: block; 
	margin-left: auto !important; 
	margin-right: auto !important;
}

/* 2.4 Text elements */

#secondary ul {
	list-style: disc;
}

#secondary ol {
	list-style: decimal;
}

ul ul, ol ol, ul ol, ol ul, 
#primary .sub-menu {
	margin: 0 0 0 1.5rem;
}

b, strong {
	font-weight: bold;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 2em;
}

pre {
	font-family: Courier, monospace;
	font-size: 0.9rem;
	line-height: 1.4;
	padding: 1.5rem;
	overflow: auto;
	max-width: 100%;
}

code, kbd, tt, var {
	font: 0.8rem Monaco, Consolas, monospace;
	line-height: 1.5;
	display: block;
	margin: 1.5rem 0;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark, ins {
	background-color: #fff9c0;
	text-decoration: none;
}

sup, sub {
	font-size: 75%;
	height: 0;
	position: relative;
	vertical-align: baseline;
}

ol li {
	list-style-position: outside;
	margin-left: 1.45em;
}

sup {
	top: -1ex;
}

sub {
	top: 0.5ex;
}

small,
small a {
	font-size: 0.85rem;
	vertical-align: bottom;
}

big {
	font-size: 125%;
}

figure {
	margin: 0;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1em;
}

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

/* 2.5 Inputs */

button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size not being inherited in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers */
	*vertical-align: middle; /* Improves appearance and consistency in all browsers */
}

button,
input {
	line-height: normal; /* Addresses FF3/4 setting line-height using !important in the UA stylesheet */
	*overflow: visible; /* Corrects inner spacing displayed oddly in IE6/7 */
}

#content button,
#content input[type=button],
#content input[type=reset],
#content input[type=submit] {
	border: solid 1px;
	border-radius: 3px;
	cursor: pointer; /* Improves usability and consistency of cursor style between image-type 'input' and others */
	-webkit-appearance: button; /* Corrects inability to style clickable 'input' types in iOS */
	line-height: 1;
	padding: 0.45em 0.55em;
	font-weight: normal;
}

input[type=checkbox],
input[type=radio] {
	box-sizing: border-box; /* Addresses box sizing set to content-box in IE8/9 */
	padding: 0; /* Addresses excess padding in IE8/9 */
}

input[type=search] {
	-webkit-appearance: textfield; /* Addresses appearance set to searchfield in S5, Chrome */
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box; /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */
	box-sizing: content-box;
	outline: none;
}

input[type=search]::-webkit-search-decoration { /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
	-webkit-appearance: none;
}

#searchsubmit {
	display: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner { /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}

input[type=text],
input[type=email],
input[type=password],
input[type=tel],
input[type=number],
textarea {
	display: block;
	padding: 0.45em;
	border: 1px solid #ccc;
	border-radius: 3px;
	background-color: transparent;
	outline: none;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=tel]:focus,
input[type=number]:focus,
textarea:focus {
	border-color: #999;
}

input[type=number]::-webkit-outer-spin-button, 
input[type=number]::-webkit-inner-spin-button {
    background: #FFF url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAKUlEQVQYlWNgwAT/sYhhKPiPT+F/LJgEsHv37v+EMGkmkuImoh2NoQAANlcun/q4OoYAAAAASUVORK5CYII=) no-repeat center center;
    width: 1em;
    border-left: 1px solid #999;
    opacity: .5;
}

textarea {
	overflow: auto; /* Removes default vertical scrollbar in IE6/7/8/9 */
	vertical-align: top; /* Improves readability and alignment in all browsers */
	width: 100%;
	box-sizing: border-box;
}

#searchform input {
	border: none;
	padding: 0;
}

/* 3.0 Media */

img {
	max-width: 100%;
}

img.lazy {
    width: 100%;
	opacity: 0;
}

img.loaded {
	opacity: 1;
}

img.loaded.resized {
	height: auto !important;
}

.royalSlider > img {
	visibility: hidden;
}

.entry-content .rsSlide a {
	border: none;
}

.featured-image-block.default {
	opacity: 1;
}

.gallery-item a,
.gallery-item a:hover,
.gallery-item img {
	border: none !important;
}

.masonry-gallery {
	min-width: 100%;
}

.entry-content .rsGCaption {
	margin-top: 0 !important;
}

.attachment .linked-image {
	margin-bottom: 0;
}

.site-header img,
.entry-content img,
.comment-content img,
.widget img {
	display: block;
	max-width: 100%; /* Fluid images for posts, comments, and widgets */
	height: auto;
}

.site-header img,
.entry-content img,
img[class*="align"],
img[class*="wp-image-"] {
	height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}

.site-header img,
.entry-content img,
img.size-full {
	max-width: 100%;
	width: auto; /* Prevent stretching of full-size images with height and width attributes in IE8 */
}

.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
	border: none;
	margin: 0;
	padding: 0;
}

.wp-caption {
	max-width: 100%;
}

.wp-caption img {
	display: block;
}

.wp-caption-text,
.rsGCaption p {
	text-align: left;
}

.rsGCaption p:empty {
	display: none;
}

.gallery-item a {
	display: block;
	border: none !important;
	text-decoration: none;
	width: auto;
	vertical-align: top;
}

.gallery-item {
	max-width: 100%;
	margin-top: 0 !important;
}

.gallery-caption {
	margin-bottom: 0.5em;
	margin-left: 0;
	margin-right: 0;
}

/* Default Media Player */
.mejs-controls .mejs-button button {
	background-color: transparent !important;
}

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object {
	max-width: 100%;
}

/* 4.0 Structure */

html, body {
	height: 100%;
	padding-bottom: 0 !important;
	background-repeat: no-repeat;
}

#page {
	width: 100%;
	padding: 0;
	position: relative;
	min-height: 100%;
}

#wrapper {
	overflow: hidden;
	width: 100%;
	margin: 0;
	padding: 0;
}

#masthead {
	z-index: 1;
	position: absolute;
	width: 100%;
	margin: 0;
	padding: 0;
}

#primary {
	position: absolute;
	float: left;
	margin: 0 -100% 0 0;
	padding: 0;
	overflow: auto;
	clear: both;
	z-index: 1;
}

#secondary,
#container {
	position: relative;
	margin: 0;
	padding: 0;
}

#content,
#introduction-text {
	float: left;
	width: 100%;
	margin: 0;
}

#footer {
	overflow: auto;
	position: absolute;
	width: 100%;
	margin: 0;
	padding: 0;
}

/* 5.0 Header */

.site-title {
	margin-top: -0.25em;
}

#site-logo a {
	display: inline-block;
	margin: 0;
	padding: 0;
	border: none;
	overflow: auto;
}

#site-logo img {
	width: 100%;
}

.site-tagline {
	margin-top: 0;
}

/* 6.0 Primary */

.menu,
#primary .widget {
	margin-bottom: 1.5rem;
	overflow: hidden;
}

aside > *:last-child,
aside .menu {
	margin-bottom: 0;
}

#site-navigation {
	overflow: auto;
	display: block;
}

#site-navigation ul,
#site-navigation aside {
	list-style: none;
	padding-left: 0;
}

@media screen and (min-width: 769px) {

.menu-toggle {
	display: none;
}

#primary {
	display: block !important;
}

}

/* 7.0 Content */

.entry-content > * {
	margin-bottom: 2rem;
}

.entry-content > p + p {
	margin-top: -0.5rem;
}

.wp-caption img,
input {
	margin-bottom: 0.5rem;
}

.featured-image-block.default {
	margin-bottom: 2rem;
}

.entry-header,
.entry-title, 
.entry-link,
.page-header {
	margin-bottom: 1.25rem;
}

.entry-content > h1,
.entry-content > h2,
.entry-content > h3,
.entry-content > h4,
.entry-content > h5,
.entry-content > h6 {
	margin-top: 2.5rem;
	margin-bottom: 1.25rem;
}

.entry-content > *:first-child {
	margin-top: 0;
}

article {
	float: left;
	width: 100%;
	padding: 0 0 1rem 0;
	margin: 0 0 2.5rem 0;
}

.archive-header,
.search-header {
	display: none;
}

.entry-content > div,
.entry-content > iframe {
	max-width: 100%;
}

.featured-image-block,
.portfolio-masonry .featured-image-block img {
	width: 100%;
}

article.post:last-of-type,
.search-results article.page:last-of-type,
li:last-of-type article.comment {
	border-bottom: 0 !important;
}

article:first-of-type .featured-image-block {
	margin-top: 0;
}

.entry-header,
.entry-title {
	display: block;
}

.archive .page-header,
.search .page-header {
	display: none;
}

.archive #content,
.search #content {
	margin-bottom: 5rem;
}

.entry-meta,
.nav-posts a,
.nav-posts span {
	font-size: 1em;
}

.taxonomy-description p {
	font-size: 1em;
	margin-top: 0;
}

.entry-content .attachment-title {
	font-size: 1em !important;
	font-weight: normal;
	margin-top: 0.5rem;
}

.archive-title {
	font-size: 1em;
}

.page-header h2 {
	width: 100%;
}

.entry-title,
.entry-link {
	border: 0;
	font-weight: normal;
}

.page-title {
	font-weight: normal;
}

.date-permalink,
.cat-links,
.tag-links,
.comments-link {
	margin: 0;
}

#content-nav,
#content-portfolio-nav,
#search-nav {
	margin-bottom: 3em;
	width: 100%;
}

#content-portfolio-nav {
	display: none;
}

article footer {
	float: left;
	margin-bottom: 1em;
	width: 100%;
}

.nav-posts svg,
.comment-navigation svg {
	width: 18px;
	display: inline-block;
	margin-bottom: -4px;
	opacity: 0.8;
}

.nav-next,
.nav-posts .previous,
.nav-posts a[rel="next"] {
	float: right;
}

.nav-previous,
.nav-posts .next,
.nav-posts a[rel="prev"] {
	float: left;
}

.single .nav-posts,
.comment-navigation {
	width: 100%;
	float: left;
}

.single .nav-posts {
	margin-top: 4rem;
}

abbr[title] {
  border-bottom: none !important;
  cursor: inherit !important;
  text-decoration: none !important;
}

input[type=number] {
    height: 30px;
    line-height: 30px;
    font-size: 16px;
    padding: 0 8px;
}

input[type=number]::-webkit-inner-spin-button { 
    background: #eee url('http://i.stack.imgur.com/YYySO.png') no-repeat 50% 50%;  
    width: 14px;
    height: 14px;
    padding: 4px;
    position: relative;
    right: 4px;
    border-radius: 28px;
}

/* 8.0 Comments */

#comments,
#comments .pingback,
.nocomments {
	display: block;
	float: left;
	padding: 0 0 1rem 0;
	margin: 0 0 2.5rem 0;
	width: 100%;
}

#respond,
.comments-title {
	display: block;
	float: left;
	margin-top: 1.5rem;
	width: 100%;
}

.comments-title {
	margin-bottom: 2.5rem;
}

.comment article {
	overflow: auto;
	padding-bottom: 1.55rem;
	margin-bottom: 1.55rem;
}

li:last-of-type article.comment {
	margin-bottom: 1.5em;
}

.comment-content p:last-child {
	margin-bottom: 0;
}

#cancel-comment-reply-link {
	margin-left: 1em;
}

.comment-navigation {
	display: inline-block
}

.comment-navigation .nav-previous,
.comment-navigation .nav-next {
	display: inline-block;
}

#content ol.commentlist {
	max-width: 100%;
	list-style: none;
}

li.comment {
	margin: 0;
	padding: 0;
}

article.post,
.search-results article.page,
.comment article {
	border-bottom: none;
}

article.portfolio-masonry,
.single article {
	border-bottom: none !important;
}

#comments .children {
	list-style: none;
}

.comment-author {
	display: inline-block;
	margin-right: 1em;
}

.comment-meta a {
	margin-right: 1em;
}

.comment-meta > *:last-child {
	margin-right: 0;
}

.comment-author a,
.comment-author cite,
.comments-title,
.comment-reply-title {
	font-style: normal;
	font-size: 1em;
}

.commentmetadata {
	display: inline-block;
}

#content .commentmetadata a,
#content .commentmetadata a:visited {
	font-size: 1em;
}

.comment-content {
	float: left;
	width: 100%;
}

.comment footer {
	margin-bottom: 0.5em;
}

.comment-form-author,
.comment-form-email,
.comment-form-url {
	float: left;
	display: block;
	width: 100%;
}

.comment-form p {
	margin-bottom: 0.75em;
}

.comment-form-author input,
.comment-form-email input,
.comment-form-url input {
	width: 100%;
	box-sizing: border-box;
}

.comment-form #submit {
	float: left;
}

.odd {
	margin-bottom: 0;
}

/* 9.0 Featured Image */

.placeholder {
	width: 100%;
}

.placeholder:before {
	display: block;
	content: "";
	padding-bottom: 100%;
	width: 100%;
}

.featured-image-block img,
.featured-image img {
	display: block;
	height: auto;
}

.featured-image-block {
	position: relative;
	display: inline-block;
}

.thumbnail-hover {
	width: 100%;
	height: 100%;
	opacity: 0;
}

.feature-title {
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	opacity: 0;
	max-width: 100%;
}

#content .feature-title h2 {
	position: absolute;
	text-align: center !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-decoration: none;
	max-width: 100%;
	z-index: 1;
}

.featured-image,
#content .feature-link {
	display: block;
	border: none !important;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	transform: translateZ(0) scale(1.0, 1.0);
}

#content .feature-link {
	display: inline-block;
}

#content .feature-link.feature-placeholder {
	display: block;
}

.masonry-item {
	border-bottom: none !important;
}

.masonry-item img {
	width: 100%;
}

a[rel~="attachment"],
.entry-content > img {
	position: relative;
	text-decoration: none;
	display: inline-block;
	border: none !important;
	vertical-align: top;
}

.entry-content > a,
.entry-content > a:hover {
	border: none !important;
	text-decoration: none;
}

#content a img {
	display: block;
}

.feature-link,
a[rel~="attachment"] {
	cursor: pointer;
}

.feature-link:hover .feature-title {
	opacity: 1;
}

/* 10.0 Footer */

#footer .site-info {
	box-sizing: border-box;
	width: 100%;
}

.site-info aside:last-child ul {
	margin-bottom: 0;
}

#footer p {
	margin-bottom: 0;
}

/* 11.0 Mobile */

@media screen and (max-width: 768px) {

/* Menu */

#mobile-menu-background {
	height: 100%;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0.35s, opacity 0.35s ease-out;
}

#mobile-menu-background.showing {
	visibility: visible;
	opacity: 1;
}

#primary.showing {
	visibility: visible;
	opacity: 1;
}

#primary,
#mobile-menu-background {
	z-index: 101;
}

#menu-toggle,
#masthead {
	z-index: 102;
}

#menu-toggle {
	width: 24px;
	height: 21px;
	position: absolute;
	top: 1px;
	right: 0;
	margin: 0;
	padding: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	cursor: pointer;
}

#menu-toggle span {
	display: block;
	position: absolute;
	height: 2px;
	width: 100%;
	border-radius: 0px;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);

}

#menu-toggle:hover {
	opacity: 0.5;
}

#menu-toggle.open:hover {
	opacity: 1;
}

#menu-toggle span:nth-child(1) {
	top: 0px;
}

#menu-toggle span:nth-child(2),
#menu-toggle span:nth-child(3) {
	top: 6px;
}

#menu-toggle span:nth-child(4) {
	top: 12px;
}

#menu-toggle.open span:nth-child(1) {
	top: 6px;
	width: 0%;
	left: 50%;
}

#menu-toggle.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

#menu-toggle.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#menu-toggle.open span:nth-child(4) {
	top: 6px;
	width: 0%;
	left: 50%;
}

#site-navigation > *:last-child {
	margin-bottom: 0.5em;
}

#masthead {
	position: absolute !important;
}

#primary {
	visibility: hidden;
	opacity: 0;
	transition: visibility 0.35s, opacity 0.35s ease-out;
	top: 0;
	width: 100%;
	position: absolute !important;
}

/* Header */

#page .site-header,
#page #site-logo {
	margin: 0 !important;
}

/* Gallery */

.rsArrow {
	visibility: visible !important;
	cursor: pointer !important;
}

/* Content */

#secondary,
#container {
	width: 100%;
	margin-left: 0 !important;
}

#content,
#introduction-text {
	max-width: 100% !important;
}

.archive .page-header,
.search .page-header {
	display: none;
}

/* Footer */

#footer, .site-info {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

}