.auto-width {
	max-width: 1330px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 1023px) and (max-width:1024px)
{
	.auto-width { max-width: calc(100% - 75px); }
}

@media only screen and (min-width: 1024px) and (max-width:1441px)
{
	.auto-width { max-width: calc(100% - 10vw); }
}




/* =Apply Clearings
-------------------------------------------------------------- */

.widget:before, .widget:after,/* vertical > .block ? */
.comment:before, .comment:after
{
	display: table;
	content: '';
}

.widget:after,
.comment:after
{
	clear: both;
}

/* =Re-style @ non #/. specific
-------------------------------------------------------------- */

body {
	font: 400 16px/1.6 "Arimo", Arial;
	color: #333;

	background: #F3F8FF;
	background: #f3f6f6;
	background: #EFF2F5;
	background: #EFEFEF;
}

body:not(.page-template-template-home) {
	background-image: linear-gradient(rgba(233, 239, 239, 0.976471) 0px, rgba(230, 234, 234, 0.976471) 100%), url('../images/bookshelf.jpg');
	background-attachment: fixed;
	background-repeat: no-repeat;
}

@media (min-width: 767px) and (max-width: 1024px)
{
	body {
		font-size: 14px;
	}
}

.dark,
.dark .ys-form-field { color: #838D96; }


h1, h2, h3, h4, h5, h6 {
	color: #555;
	line-height: 1.2;
}

h1, h2, h3 { margin-bottom: 4vh; }
h4, h5, h6 { margin-bottom: 3vh; }

.entry h1,
.entry h2,
.entry h3 { margin-top: 4vh; }

.entry h4,
.entry h5,
.entry h6 { margin-top: 3vh; }

.entry h1 { font-size: 4.2vh; }
.entry h2 { font-size: 3.6vh; }
.entry h3 { font-size: 2.7vh; }
.entry h4 { font-size: 2.2vh; }
.entry h5 {}
.entry h6 {}

@media only screen and (max-width: 1024px) and (max-height: 435px)
{
	h1, h2, h3 { margin-bottom: calc(4vh * 1.75); }
	h4, h5, h6 { margin-bottom: calc(3vh * 1.75); }

	.entry h1,
	.entry h2,
	.entry h3 { margin-top: calc(4vh * 1.75); }

	.entry h4,
	.entry h5,
	.entry h6 { margin-top: calc(3vh * 1.75); }

	.entry h1 { font-size: calc(4.2vh * 1.75); }
	.entry h2 { font-size: calc(3.6vh * 1.75); }
	.entry h3 { font-size: calc(2.7vh * 1.75); }
	.entry h4 { font-size: calc(2.2vh * 1.75); }
}

@media only screen and (max-width: 1024px) and (min-height: 639px)
{
	.entry h1 { font-size: 3.8vh; }
	.entry h2 { font-size: 3.2vh; }
	.entry h4 { font-size: 2.6vh; }
}

@media only screen and (max-width: 1024px)
{
	.entry h1, .entry h2, .entry h3, .entry h4, .entry h5, .entry h6 { font-weight: 700; }
}

a, a:link, a:visited, a:active { color: #008DE2; }
a:hover { color: #008DE2; }

pre {
	margin: 15px 0;
	margin-bottom: 4%;


	border-top: 1px solid #EFEFEF;
	border-right: 1px solid #D6D6D6;
	border-bottom: 1px solid #D6D6D6;
	border-left: 4px solid #26be9c;
	box-shadow: 1px 1px 1px 0 #eee;


	padding: 26px;
	font: 16px/26px "Courier 10 Pitch", Courier, monospace;
	background-color: #FFF;
	background-size: 100% 52px;
	background-image: linear-gradient(#FFF 26px, #FBFBFB 26px);
}

code {
	padding: 3px 10px;
	font-size: 12px;

	background: #F8F8F8;
	border: 1px solid #efefef;
}

blockquote:not(.format-wrapper) {
	margin: 15px 0;
	font-style: italic;
	border-style: solid;
	border-color: #26be9c;
	position: relative;
	margin-bottom: 4%;
}

.ltr blockquote:not(.format-wrapper) { padding: 0 45px 0 25px; }
.rtl blockquote:not(.format-wrapper) { padding: 0 25px 0 45px; }

.ltr blockquote { border-left-width: 4px; }
.rtl blockquote { border-right-width: 4px; }

.format-standard blockquote:after {
	position: absolute;
	top: 25px;
	font: bold 48px/0 Georgia;
	color: #E0E0E0;
	content: "\201d";
}

.ltr .format-standard blockquote:after { right: 0; }
.rtl .format-standard blockquote:after { left: 0; }


dl { margin: 15px 0; }
dt { font-weight: bold; }
dt, dd { margin-bottom: 5px; }


/* integrate into reset */
hr {
	border: 0;
	height: 1px;


	background-color: #eaeaea;
	margin-bottom: 2.6em;
	margin-top: 2.6em;
}


/*

input[type="button"]
input[type="submit"]
input[type="reset"]
input[type="image"]
input[type="text"]
input[type="password"]
input[type="color"]
input[type="checkbox"]
input[type="radio"]
input[type="file"]
input[type="hidden"]

/* =Form Fields
-------------------------------------------------------------- */

textarea,
input[type="text"],
input[type="email"],
input[type="password"] {
	border-radius: 5px;
	background-color: #F4F7FA;
	background-color: #FFF;
	color: #B7C4D1;
	border: 1px solid #EEF2F1;
	border-bottom-width: 3px;
	font-size: 16px;
}

.ys-form-field { color: #B7C4D1; }

textarea:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus {
	border-color: #C6D5E0;
}

textarea {
	width: 100%; height: 100px; /*max-width: 435px;*/
	padding: 10px 15px;
}

.dark textarea,
.dark input[type="text"],
.dark input[type="email"],
.dark input[type="password"] {
	background-color: #1E2831;
	box-shadow: none;
	border: 1px solid #48596A;
}

.dark input[type="text"],
.dark input[type="email"],
.dark input[type="password"] {
	height: 34px;
	line-height: 34px;
}

.ys-custom-footer textarea { height: 90px; }

input[type="text"],
input[type="email"],
input[type="password"] {
	width: 203px; /*max-width: 263px;*/
	height: 42px;
	padding: 0 15px;
	line-height: 34px;
}

.ltr .searchform input[type="text"],
.ltr .ys-newsletter input[type="email"] { padding: 0 40px 0 15px; }

.rtl .searchform input[type="text"],
.rtl .ys-newsletter input[type="email"] { padding: 0 15px 0 40px; }

button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.mega_block_table_column .row.foot span a.btn,
a.button {
	height: 44px;
	padding: 0 26px;
	border-radius: 4px;
	color: #FFF;
	font-weight: 700;
	font-size: 13px;
	line-height: 44px;
	background-color: #26be9c;
}

a.button { display: table; }

a.text-button {
	color: #26be9c;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-bottom: 1px solid #26be9c;
	padding-bottom: 1px;
	font-size: 12px;
	margin-top: 25px;
	display: inline-block;
}




.ys-custom-enteries input[type="text"],
.ys-custom-enteries input[type="email"],
.ys-custom-enteries input[type="password"] {
	width: 100%; max-width: 100%;
}

form.wide input[type="text"],
form.wide input[type="email"],
form.wide input[type="password"] { width: 100%; }






.mega_block_form_field_wrapper { margin-bottom: 22px; }

.mega_block_form_field_wrapper:last-of-type { margin-bottom: 0; }

.mega_block_form_field_wrapper label {
	margin-bottom: 8px;
	display: block;
	font-weight: 700;
}

.mega_block_form_field_wrapper label:after {
	clear: both;
	display: table;
	content: '';
}


::-webkit-input-placeholder { color: #CFD5DB; }
::-moz-placeholder { color: #CFD5DB; }
.dark ::-webkit-input-placeholder { color: #8794A1; }
.dark ::-moz-placeholder { color: #8794A1; }



i { font-family: FontAwesome; }


@media only screen and (min-width: 1142px)
{
	div[id^="contact_page_"] .mega_block_form_field_wrapper:nth-child(1) {
		display: inline-block;
		width: calc((100% + 20px) * 0.5 - 20px);
	}

	div[id^="contact_page_"] .mega_block_form_field_wrapper:nth-child(2) {
		display: inline-block;
		width: calc((100% + 20px) * 0.5 - 20px);
	}

	.ltr div[id^="contact_page_"] .mega_block_form_field_wrapper:nth-child(2) { margin-left: 20px; }
	.rtl div[id^="contact_page_"] .mega_block_form_field_wrapper:nth-child(2) { margin-right: 20px; }
}

/* =WP Gallery
-------------------------------------------------------------- */

.gallery-item { margin: 0 0 15px 0; }

.gallery-icon,
.gallery-caption,
.wp-caption-text { font-size: 11px; }

.gallery-caption { margin-top: 5px; }

.gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption { font-size: 8px; }


/* =WP Alignments
-------------------------------------------------------------- */

.aligncenter {
	margin-top: 25px;
	margin-bottom: 25px;
}

.alignleft { margin-right: 20px; }
.alignright { margin-left: 20px; }





/* Table */

.widget_text table,
.entry table,
.comment table {
	margin-top: 4%;
	margin-bottom: 4%;
}

.widget_text th,
.widget_text td,
.entry th,
.entry td,
.comment th,
.comment td {
	padding: 14px;
	border: 1px solid #E9EDF1;
}

.widget_text th,
.entry th,
.comment th { background-color: #FAFCFD; }

.widget_text td,
.entry td,
.comment td { font-size: small; }


.widget_calendar th {
	padding: 5px 0;
	color: #898989;
}

.widget_calendar th:not(:first-child):not(:last-child) { border: 1px solid #E9EDF1; border-top: 0; }

.widget_calendar td {
	padding: 6px 0;
	border: 1px solid #E9EDF1;
	font-size: 12px;
}

.widget_calendar td:first-child,
.widget_calendar td:last-child {
	border-left: 0;
	border-right: 0;
}

.widget_calendar tfoot td { border-bottom: 0; }







/* =Re-style Globals @ #/. specific
-------------------------------------------------------------- */

.hentry .entry ol,
.comment .text ol,
.textwidget ol,

.hentry .entry ul:not(.jp-controls),
.comment .text ul,
.textwidget ul,
.famous_block_parent_content form.ajax ul,

.hentry .entry p,
.ys-custom-content .widgets p,
.comment .text p
{
	margin-top: 4%;
	margin-top: 0;
	margin-bottom: 4%;
}

.hentry .entry ol ol,
.comment .text ol ol,
.textwidget ol ol,

.hentry .entry ul:not(.jp-controls) ul,
.comment .text ul ul,
.textwidget ul ul
{
	margin-top: 3%;
	margin-bottom: 3%;
}

.column.widgets .widget p { margin-bottom: 20px; }

.ys-custom-footer .widget p { line-height: 21px; }





.hentry .entry ul:not(.jp-controls) li,
.hentry .entry ol li,
.comment .text li,
.textwidget li { margin-bottom: 1%; }



/* Images */

.ys-recent-posts img.thumb,
.entry img:not([id*="jp_poster"]),
img.avatar,
.comment .text img {
	display: block;
	border: 1px solid #F5F8FA;
	padding: 6px;
	-webkit-transition: all .3s cubic-bezier(.02, .01, .47, 1);
	transition: all .3s cubic-bezier(.02, .01, .47, 1);
}

.ys-recent-posts img.thumb:hover,
.entry img:hover,
img.avatar:hover,
.comment .text img:hover {
	background: #e5eced;
	border-color: #CBDBDD;
}




.entry img:not([id*="jp_poster"]),
.comment .text img {
	max-width: 100%;
	box-sizing: border-box;
}





/* Misc */

.ajaxloading {
	width: auto;
	padding: 4px 0 0 35px;
	line-height: 24px;
}

.ajaxresponse {
	margin-top: 22px;
}

.ajaxresponse li {
	margin-bottom: 0.5vmax;
}

.ajaxresponse li:last-child { margin-bottom: 0; }