/*
Theme Name: Bestcity Main
Author: Dmytro Filipov (mrdias11@gmail.com)
*/
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&family=PT+Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap');

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,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{
	margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent
}
body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}
:focus{outline:0}
ins{text-decoration:none}
del{text-decoration:line-through}
table{border-collapse:collapse;border-spacing:0}
/* simplest */
p,dl,hr,h1,h2,h3,h4,h5,h6,ol,ul,pre,table,address,fieldset {margin-bottom:1em;}
li {list-style:square; margin:0.5em 0 0 2em;}
dt {margin:1em 0; font-weight:bold;}
dd {margin:0 1em; padding-left:1em; border-left:1px solid #ddd;}
th, td {padding:0.5em; border:1px solid #ddd;}
blockquote {margin:0 1em; padding-left:1em; border-left:1px solid #ddd;}
pre {font-family:monospace; background:#f8f8ff; padding:0.5em; overflow:auto;}
sup, sub {height:0; line-height:1; vertical-align:baseline; position:relative; font-size:10px;}
sup {bottom:1ex;}
sub {top:0.5ex;}
.left {float:left;}
.right {float:right;}
.clear {clear:both;}

div{box-sizing: border-box;}
a {color:#111;}
p {line-height:1.3em;}
h1 {font-size:1.7em;}
h2 {font-size:1.3em;}
h3 {font-size:1.1em;}
h1 a {text-decoration:none;}
h1 a:hover {text-decoration:underline;}
h1,h2,h3,h4,h5,h6 {
	clear:both;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
}

#container {width:768px; margin:2em auto;}
#header #description {margin-top:-1.5em;}
#header li {display:inline; margin:0 0.5em 0 0;}
#content {margin-top:4em;}
.hentry, .meta, #respond {margin-bottom:2em; padding-bottom:1em; }
.hentry h2, .hentry h3, .hentry h4 {margin-top:2em;}

.widgets {margin-bottom:2em; border-bottom:1px solid #ddd;}
.widget {margin-bottom:2em;}
.pagination {text-align:center; margin:2em auto 1em auto;}
.pagination a {padding:3px 8px; border: 1px solid #ddd;}
 
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0;
    padding: 0;
    background-color: #f4f7fd;
    font-family: "PT Serif", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 22px;
    color: #2B2B2B;
    overflow-x: hidden;
}
.inter-regular {
    font-weight: 400;
    font-style: normal;
}
.wrapper {
	margin-top: 0;
	background-color: #f4f7fd;
	position: relative;
}
h1 {
    font-style: normal;
    font-weight: 400;
    font-size: 52px;
    line-height: 71px;
    color: #2B2B2B;
    margin: 40px 0 60px 0;
}
h2 {
    font-style: normal;
    font-weight: 400;
    font-size: 40px;
    line-height: 60px;
    color: #2B2B2B;
    margin: 0;
}
h3 {
    font-style: normal;
    font-weight: 400;
    font-size: 32px;
    line-height: 46px;
    color: #2B2B2B;
    margin: 0;
}
.header {
    position: relative;
    width: 100%;
    z-index: 3;
    background: #071d38;
    padding: 0;
}
section.page {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	margin-bottom: 60px;
}
.container {
	width: 100%;
	margin: 0 auto 30px auto;
	max-width: 1420px;
	padding: 0 25px;
}
.fullcontainer {
	width: 100%;
	margin: 0 auto 30px auto;
	max-width: 2560px;
}
.wrap_mobile_menu { display: none; }
.mobile_menu { display: none; }
.header .container {
    padding: 15px 20px;
}
.footer {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
	background: #071d38;
	margin: 0;
}
.footer .logoblock {
	width: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	flex-direction: row;
	padding: 60px 0 0 0;
}
.footer .logo {
	max-width: 200px;
}
.footer .logo img { width: 100%; }
.footer .contacts a {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    color: #ffffff;
    margin: 10px 0 0 0;
    text-decoration: none;
}
.footer .copyright-social {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
	padding-top: 20px;
	margin: 30px 0 40px 0;
	border-top: 1px #999 solid;
	color: #fff;
}
.social {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
	width: 200px;
}
.social a {
	text-decoration: none;
}
.menu-line-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
	margin-top: 0;
	margin-bottom: 0;
}
.menu-line-wrapper .logo img {
	max-width: 280px;
}
.top-langsel {
	position: relative;
	display: flex;
	align-items: center;
	letter-spacing: 0.1em;
	cursor: pointer;
	margin: 0;
}
.currentlang {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;	
	font-family: "Oswald", sans-serif;
	color: #FFF;
	font-size: 14px;
	font-weight: 800;
	line-height: 20px;
	margin: 0 10px;
	text-transform: uppercase;
}
.currentlang:after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	background-image: url(/wp-content/themes/bestcity/images/arrow-down-blue.svg);
	background-position: 50% 50%;
	background-size: contain;
	background-repeat: no-repeat;
	margin-left: 2px;
}
.currentlang.opened:after {
	background-image: url(/wp-content/themes/bestcity/images/arrow-left-blue.svg);
}
.top-langsel .language-chooser {
	display: none;
}
.top-langsel .language-chooser.opened {
	position: absolute;
	top: 30px;
	left: 0;
	padding: 8px;
	border: 1px #000 solid;
	border-radius: 2px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;	
	background: #fff;
	z-index: 991;
	margin: 0;
}
.top-langsel .language-chooser.opened li {
	list-style-type: none;
	font-family: "Oswald", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 26px;
	text-transform: capitalize;
	color: #000000;
	padding: 0;
	margin: 0 5px;
}
.top-langsel .language-chooser.opened li a {
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: row;
}
img.qtranxs-flag {
	margin-right: 5px;
}
ul.menu {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;	
	margin: 0 15px;
}
ul.menu li {
	margin: 0 15px;
	list-style-type: none;
}
ul.menu li a {
	font-family: "Oswald", sans-serif;
	color: #FFF;
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 1px;
}
rs-mask-wrap h2 { white-space: wrap!important; }

.splitter11 {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-direction: row;	
	padding: 80px 0;
}
.page.welcome .splitleft,
.page.books .splitright {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;	
	width: 40%;
}
.page.welcome .splitleft {
	margin: 0 5% 0 0;	
}
.page.books .splitright {
	margin: 0 0 0 5%;	
}
.splitleft .subtitle,
.splitright .subtitle,
.whatreaders .subtitle {
	font-family: "Oswald", sans-serif;
	color: #ffca08; 
	font-size: 20px;
	font-weight: 700;
	line-height: 20px;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin: 0;
}
.splitleft .subtitle:after,
.splitright .subtitle:after,
.whatreaders .subtitle:after {
	content: "";
	display: block;
	width: 200px;
	height: 2px;
	background-color: #ffca08;
	margin-top: 12px;
}
.splitleft .maintitle,
.splitright .maintitle,
.whatreaders .maintitle {
	font-family: "Oswald", sans-serif;
	color: #000000; 
	font-size: 40px;
	font-weight: 700;
	line-height: 60px;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 16px 0 30px 0;
}
.splitleft .maintext,
.splitright .maintext {
	color: #444444; 
	font-size: 18px;
	font-weight: 300;
	line-height: 28px;
	text-decoration: none;
}
.page.welcome .splitright, .page.books .splitleft {
	width: 55%;
	aspect-ratio: 10 / 7;
	background-position: 50% 50%;
	background-size: cover;
	background-repeat: no-repeat;
}
.splitleft > a,
.splitright > a,
.wpcf7-submit {
	display: block;
	text-decoration: none;
	font-family: "Oswald", sans-serif;
	color: #000000; 
	font-size: 18px;
	font-weight: 400;
	line-height: 40px;
	text-decoration: none;
	text-transform: uppercase;
	margin-top: 25px;
	padding: 0 35px;
	height: 40px;
	border: 1px #000 solid;
	border-radius: 20px;
}
.splitleft > a:hover,
.splitright > a:hover,
.wpcf7-submit:hover {
	background-color: #000;
	color: #fff;
}
section.whatreaders {
	background: #fff;
	padding: 100px 0;
}

.reviews_wrapper .slide {
	display: flex!important;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;	
	padding: 0 0 20px 0;
}
.reviews_wrapper .slide .revimage {
	width: 65%;
	aspect-ratio: 10 / 5;
	background-position: 50% 50%;
	background-size: contain;
	background-repeat: no-repeat;
}
.reviews_wrapper .slide div:last-child {
	width: 100%;
}
.reviews_wrapper .slide div:last-child h3 {
	font-size: 22px;
	line-height: 28px;
}
.reviews_wrapper .slide div:last-child p {
	font-size: 22px;
	line-height: 30px;
	padding: 20px 40px 20px 0;
}
.contact-wrapper {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-direction: row;	
	margin: 100px 0;
}
.contact-left {
	width: 55%;
	margin-right: 5%;
}
.contact-left h1 {
	margin-top: 0;
}
.contact-right {
	width: 45%;
}
.wpcf7-form label,
.wpcf7-form label span { 
	width: 100%; 
	display: block;
}
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"] {
	display: block;
	padding: 0 20px;
	height: 40px;
	line-height: 40px;
	width: 100%;
	box-sizing: border-box;
}
.wpcf7-form textarea {
	padding: 20px;
	width: 100%;
	box-sizing: border-box;
}
.container.blog_wrapper {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-direction: row;
	margin: 80px auto 35px auto;
}
.blog-archive .container.blog_wrapper {
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 1%;
	margin-top: 10px;
}
.blog_post {
	width: 31%;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
	padding: 20px 20px 30px 20px;
	background: #fff;
	border-radius: 6px;
	position: relative;
}
.blog-archive .container.blog_wrapper .blog_post {
	margin-bottom: 25px;
}
.blogpost_image {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	background-size: cover;
	background-position: 50% 0;
	background-repeat: no-repeat;
	border-radius: 6px;
	flex-shrink: 0;
	margin: 0 0 20px 0;
}
.blogpost h3 {
	margin: 0 0 15px 0;	
	font-size: 24px;
	line-height: 29px;
}
.blogpost h3 a {
	font-weight: 700;
	font-size: 24px;
	line-height: 29px;
	color: #151515;
	text-decoration: none;
}
.blogpost_text {
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	color: #151515;
	margin: 0 0 45px 0;
}
.blogpost-meta {
	width: 90%;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row;
	position: absolute;
	z-index: 3;
	bottom: 20px;
	left: 20px;
}
.blogpost-date {
	width: 40%;
	font-weight: 400;
	font-size: 14px;
	line-height: 130%;
	text-align: left;
	letter-spacing: -0.32px;
	color: #676767;
}
.blogpost-readmore a {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-direction: row;
	font-weight: 600;
	font-size: 16px;
	height: 40px;
	line-height: 40px;
	padding: 0 20px;
	border: 1px #3F2872 solid;
	border-radius: 20px;
	text-align: center;
	letter-spacing: -0.32px;
	color: #3F2872;
	white-space: nowrap;
	text-decoration: none;
}
.blogpost-readmore a:hover {
	color: #fff;
	background: #3F2872;
}
.entry-content {
	margin: 50px 0 80px 0;
	display: block;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {
	clear: none !important;
}
.post-thumbnail {
	width: 44%;
	float: right;
	display: inline-block;
	margin: 0 0 40px 40px;
}
.post-thumbnail img { 
	max-width: 700px; 
	width: 100%;
	height: auto;
}
.post-content {
	width: 52%;
	text-align: justify;
}
.breadcrumbs_wrapper {
	margin: 25px 0;
	padding-bottom: 20px;
	border-bottom: 1px #ddd solid;
}
.breadcrumbs_wrapper .container { margin-top: 0;margin-bottom: 0; }
.breadcrumbs_wrapper a { text-decoration: none; }

.wp-caption.alignnone {
	width: 80%!important; 
	margin: 60px 10%!important;
}
.wp-caption .wp-caption-text {
	font-size: 13px;
	font-style: italic;
	line-height: 18px;
	margin-top: 10px;
}
div.where-to-buy-wrapper {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
	width: 100%;
	margin: 60px 0;
	padding: 30px;
	border-top: 2px #ccc double;
	border-bottom: 2px #ccc double;
	background: #fff;
}
div.where-to-buy-wrapper h3 {
	margin: 0 0 25px 0;
}
div.where-to-buy-container {
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap: wrap;
}
div.where-to-buy-container .trader-block {
	width: 19%;
	margin: 0 0 25px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
}
div.where-to-buy-container .trader-block a {
	text-decoration: none;
	display: block;
	width: 100%;
}
div.where-to-buy-container .trader-block .trader-logo-wrapper {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 1;
	background-size: contain;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}
.trader-name {
	display: block;
	width: 100%;
	text-decoration: none;
	font-size: 14px;
	line-height: 20px;
	text-align: center;
}
.wrap_mobile_menu {
    display: block;
    width: 256px;
    height: 100vh;
    position: fixed;
    top: 0px;
    left: -256px;
    background-color: #ffffff;
    padding-top: 126px;
    border-bottom: 1px solid #c8d200;
    border-left: 1px solid #c8d200;
    z-index: 5;
    transition: all 0.5s;
}
.wrap_mobile_menu.active {
    left: 0;
}
.wrap_mobile_menu ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;
    gap: 30px;
    padding-left: 40px;
    padding-bottom: 40px;
}
.wrap_mobile_menu .wrap {
     text-align: center;
     padding: 20px 0;
 }
.wrap_mobile_menu .wrap a {
    text-decoration: none;
    padding: 0 4px;
}
.wrap_mobile_menu ul.menu li a {
    color: #000;
    font-size: 18px;
    line-height: 24px;
    text-decoration: none;
}
.wrap_mobile_menu a.close_menu {
    display: block;
    position: absolute;
    right: 70px;
    top: 45px;
}
.wrap_mobile_menu .copyright-social {
	margin: 25px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
}
.slick-prev {
	position: absolute;
	top: 50%;
	left: -50px;
	width: 28px;
	height: 50px;
	background: transparent url('/wp-content/themes/bestsity/images/slider-arrow-left-gray.svg') 50% 50%/contain no-repeat;
	cursor: pointer;
	border: none;
	box-shadow: none;
}
.slick-next {
	position: absolute;
	top: 50%;
	right: -50px;
	width: 28px;
	height: 50px;
	background: transparent url('/wp-content/themes/bestsity/images/slider-arrow-right-gray.svg') 50% 50%/contain no-repeat;
	cursor: pointer;
	border: none;
	box-shadow: none;
}

@media (max-width: 1440px) {

}
@media (max-width: 1366px) {

}
@media (max-width: 1024px) {
	.main-menu {
		width: 100%;
	}

	.main-menu .logo img {
		max-width: 270px;
		margin: 0 15px;
	}
	.menu-main-menu-container { display: none; }
	.wrap_mobile_menu.active .menu-main-menu-container { display: block; }
	.mobile_menu { display: block; margin: 0 0 0 15px; }
	.footer .logoblock {
	    align-items: center;
	    justify-content: center;
	    flex-direction: column;
	    padding: 60px 0 0 0;
	}
	.footer .logo {
	    width: 100%;
	    align-items: flex-start;
	    justify-content: flex-start;
	    flex-direction: column;
	    padding: 20px;
	    box-sizing: border-box;
	}
	.footer .contacts {
	    padding: 20px;
	}
	.footer .copyright-social {
		    align-items: center;
		    justify-content: center;
		    flex-direction: column;
		    padding: 20px;
		    box-sizing: border-box;
	}
	.footer .copyright { margin: 0 0 20px 0; }
	.reviews_wrapper .slide div:last-child p {
	    font-size: 22px;
	    line-height: 30px;
	}
}
@media (max-width: 768px) {
	.wp-caption.alignnone {
		width: 100%!important; 
		margin: 30px 0!important;
	}
	.splitter11 {
	    display: flex;
	    align-items: flex-start;
	    justify-content: flex-start;
	    flex-direction: column;
	    padding: 60px 0;
	}
	.page.books .splitter11 {
	    flex-direction: column-reverse;
	}
	.page .splitleft, .page .splitright {
	    display: flex;
	    align-items: flex-start;
	    justify-content: flex-start;
	    flex-direction: column;
	    width: 100%!important;
	    padding: 30px 0!important;
	    margin: 0!important;
	}
	.blog_post {
	    width: 100%;
	    padding: 20px 20px 30px 20px;
	}
}
@media (max-width: 767px) {
	.menu-line-wrapper .logo img {
	    max-width: 180px;
	}
	.open_menu.active svg { max-width: 35px; }
	.splitleft .maintitle, .splitright .maintitle, .whatreaders .maintitle {
	    font-size: 22px;
	    line-height: 40px;
	    margin: 16px 0 30px 0;
	}
	.splitleft .maintext, .splitright .maintext {
	    font-size: 16px;
	    line-height: 28px;
	}
	.splitleft .subtitle, .splitright .subtitle, .whatreaders .subtitle {
	    font-size: 16px;
	    line-height: 20px;
	}
	h1 {
	    font-size: 32px;
	    line-height: 51px;
	    margin: 10px 0 10px 0;
	}
	.breadcrumbs_wrapper {
	    margin: 10px 0;
	    padding-bottom: 10px;
	}
	.post-content {
	    width: 100%;
	    text-align: left;
	}
	.post-content p {
	    font-size: 16px;
	    line-height: 22px;
	    margin: 10px 0 10px 0;
	}
	.reviews_wrapper .slide div:last-child p {
	    font-size: 16px;
	    line-height: 24px;
	    padding: 20px 20px 20px 0;
	}
	.post-thumbnail {
	    width: 100%;
	    float: none;
	    display: block;
	    margin: 30px 0;
	}
	.contact-wrapper {
	    display: flex;
	    align-items: flex-start;
	    justify-content: space-between;
	    flex-direction: row;
	    margin: 100px 0;
	}
	.contact-wrapper {
	    display: flex;
	    align-items: flex-start;
	    justify-content: flex-start;
	    flex-direction: column;
	    margin: 30px 0;
	}
	.contact-left {
	    width: 100%;
	    margin-right: 0;
	}
	.contact-left h1 {
	        font-size: 24px;
	        line-height: 31px;
	}
	.contact-right {
	    width: 100%;
	}
	div.where-to-buy-wrapper h3 {
	    font-size: 20px;
	    line-height: 28px;
	}
	div.where-to-buy-container .trader-block {
	    width: 31%;
	    margin: 0 0 20px 0;
	}
}
