html, body{
  height: 100%;
}
body{
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: normal;
	line-height: 18px;
	margin: 0;
	padding: 0;
	color: #333;
	background-color: #f0f1f3;
}
a.anchor{
	text-decoration: none;
}
a{
	color: #3540ca;
}
a:hover{
	color: #3540ca;
}
ul{
	padding-left: 25px;
	text-align: left;
}
.container{
	max-width: 952px !important;
	margin: 0 auto;
	/*outline: 1px solid red;*/
	position: relative;
}
button, a.button{
	display: inline-block;
	background-color: #ff8e01;
	box-shadow: 0 2px 3px rgba(0,0,0,.34);
	border-radius: 50px;
	font-size: 90%;
	color: #fff;
	padding: 5px 15px;
	margin: 0 0 5px 0;
	cursor: pointer;
	border: none;
}
a.button:hover, button:hover{
	text-decoration: none;
	background-color: #ff7000;
}
#header{
	/*position: fixed;
	z-index: 100;
	top: 0px;
	width: 100%;*/
}
#logo{
	margin-top: 10px;
	height: 56px;
	width: 120px;
	background-image: url("./img/logo-top.png");
	background-repeat: no-repeat;
	background-position: 0px 0px;
}
#top-menu{
	list-style: none;
	padding: 8px 0 0 0;
}
#top-menu > li{
	display: inline-block;
}

#top-menu > li+li{
	margin-left: 20px;
}
#top-menu > li > a{
	color: #00667e;
}
#header h3{
	font-size: 18px;
	font-weight: bold;
	color: #465558;
	margin: 10px 0 0 0;
	position: relative;
}
#header h3:after{
	content: "";
	display: block;
	position: absolute;
	left: 0px;
	bottom: -35px;
	width: 31px;
	height: 31px;
	background-image: url("./img/corner-down.png");
	background-repeat: no-repeat;
	background-position: 0px 0px;
}
#top-phones{
	margin-top: 24px;
	margin-left: 0px;
	padding: 0;
}
#top-phones li{
	display: inline-block;
	color: #565f5c;
	background-repeat: no-repeat;
	background-position: left center;
	padding-top: 6px;
	padding-bottom: 5px;
}
#top-phones li:nth-of-type(1){
	background-image: url("./img/email-icon.png");
	padding-left: 30px;
}
#top-phones li:nth-of-type(2){
	background-image: url("./img/skype-icon.png");
	padding-left: 25px;
}
#top-phones li:nth-of-type(3){
	background-image: url("./img/telegram-viber-mts-icon.png");
	padding-left: 70px;
}
#top-phones li:nth-of-type(4){
	background-image: url("./img/phone-icon.png");
	padding-left: 20px;
}
#top-phones li+li{
	margin-left: 10px;
}
#after-header{
	display: none;
}
#footer{
	background-color: #110933;
	padding-top: 34px;
}
/* Bottom footer start */
#page{
  min-height: 100%;
  /* equal to footer height */
  margin-bottom: -355px; 
}
#footer, #page:after {
  height: 355px;
}
#before-footer{
	height: 355px;
}
.page:after {
  content: "";
  display: block;
}

/* Bottom footer end */
#footer .container{
	height: 100%;
	background-image: url('./img/town-footer2.png');
	background-repeat: no-repeat;
	background-position: center calc(100% - 25px);
}
#footer a{
	color: #9675ce;
	text-decoration: none;
}
#footer a:hover{
	/*color: #1689A4;*/
	text-decoration: underline;
}
#footer p{
	font-size: 14px;
	line-height: 16px;
	color: #d0c4e8;
}
#logo-footer{
	width: 120px;
	height: 56px;
	background-image: url('./img/logo-footer.png');
	background-repeat: no-repeat;
	margin-top: -13px;
	margin-left: 5px;
	margin-bottom: 28px;
}
#footer a.button{
	background-color: #673BB7;
	color: #fefefe;
	margin-left: 30px;
}
#footer a.button:hover{
	text-decoration: none;
	background-color: #ff7000;
}
#footer a.email{
	background-image: url('./img/email-icon2.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	min-height: 22px;
	line-height: 22px;
	display: inline-block;
}
#footer a.skype{
	background-image: url('./img/skype-icon.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	min-height: 22px;
	line-height: 22px;
	display: inline-block;
}
#footer a.viber{
	background-image: url('./img/viber-icon.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	min-height: 22px;
	line-height: 22px;
	display: inline-block;
}
#footer a.telegram{
	background-image: url('./img/telegram-icon.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	min-height: 22px;
	line-height: 22px;
	display: inline-block;
	margin-bottom: 20px;
}
#footer a.velcom{
	background-image: url('./img/velcom-icon2.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	min-height: 22px;
	line-height: 22px;
	display: inline-block;
}
#footer a.mts{
	background-image: url('./img/mts-icon.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	min-height: 22px;
	line-height: 22px;
	display: inline-block;
}
#footer a.map{
	display: inline-block;
	margin-bottom: 20px;
}
#footer p.phones{
	background-image: url('./img/phone-icon.png');
	background-repeat: no-repeat;
	padding-left: 30px;
	display: inline-block;
}
#footer a.vk{
	background-image: url('./img/vk-icon.png');
	background-repeat: no-repeat;
	width: 35px;
	height: 34px;
	display: inline-block;
	margin: 0 5px 15px 0;
}
#footer a.fb{
	background-image: url('./img/fb-icon.png');
	background-repeat: no-repeat;
	width: 35px;
	height: 34px;
	display: inline-block;
	margin: 0 5px 15px 0;
}
#footer a.instagram{
	background-image: url('./img/instagram-icon.png');
	background-repeat: no-repeat;
	width: 35px;
	height: 34px;
	display: inline-block;
	margin: 0 5px 15px 0;
}
h1{
	font-family: 'Vollkorn SC', serif;
	font-size: 257%;
	font-weight: normal;
	color: #ff7000;
	margin: 80px 0 22px;
	text-align: center;
}
h1.sub{
	font-family: 'Vollkorn SC', serif;
	font-size: 257%;
	font-weight: normal;
	color: #ff7000;
	margin: 0 0 7px;
	text-align: center;
}
h2{
	font-family: 'Vollkorn SC', serif;
	font-size: 186%;
	font-weight: normal;
	color: #565f5c;
	margin: 45px 0 20px;
	text-align: center;
}
h3{
	font-size: 143%;
	color: #333;
	font-weight: bold;
	text-align: left;
}
p.h1-subheader{
	font-size: 16px;
	color: #565f5c;
	margin: 0px 0 40px 0;
	text-align: center;
}
ul.no-style{
	list-style: none;
}
.center{
	text-align: center;
}
img{
	max-width: 100%;
	height: auto !important;
}
#call-back-dialog{
	width: 100%;
}
#call-back-dialog h3{
	font-size: 20px;
	margin: 0 0 10px 0;
	width: 230px;
}
#call-back-dialog h4{
	font-size: 14px;
	margin: 0 0 15px 0;
	max-width: 230px;
}
#call-back-dialog div.button-container{
	padding: 20px 0 0 0;
	text-align: center;
}
#call-back-dialog label{
	font-weight: normal;
	position: relative;
	display: block;
	width: 230px;
	margin: 0 0 10px 0;
	line-height: 1.2;
}
#call-back-dialog input, #call-back-dialog select{
	border: 1px solid #999;
	margin: 5px 0 9px 0;
	border-radius: 2px;
	width: 230px;
	height: 27px;
	padding: 0 2px;
	margin: 0;
	display: block;
}
#call-back-dialog .warning{
	display: none;
	width: 16px;
	height: 23px;
	background-color: #FF6600;
	position: absolute;
	right: 2px;
	bottom: 2px;
	background-image: url('img/warning2.png');
	background-repeat: no-repeat;
	background-position: 6px 5px;
}
#call-back-dialog #form-note{
	color: #1b2530;
	font-size: 14px;
	line-height: 1.2;
	padding: 5px 0 5px;
	display: none;
	width: 223px;
}
#call-back-dialog #form-note.error{
	color: #FF0000;
}
#call-back-dialog #form-note.success{
	color: #1b2530;
}
#modal-bg{
	position: fixed;
	width: 100%;
	height: 100%;
	opacity: 0.75;
	-moz-opacity: 0.75;
	background: #000005;
	left: 0px;
	top: 0px;
	z-index: 90;
}
#modal-panel{
	position: fixed;
	background: #ccc;
	left: 0px;
	top: 0px;
	z-index: 100;
	border-radius: 0px;
	border: 10px solid #fff;
	box-shadow: 0 25px 30px -25px rgba(0, 0, 0, 0.75);
	padding: 20px 30px 15px;
	margin: 10px;
}
.close-button{
	width: 33px;
	height: 33px;
	background-image: url("./img/close-button.png");
	background-repeat: no-repeat;
	cursor: pointer;
}
#modal-panel .close-button{
	position: absolute;
	top: -20px;
	right: -20px;
}
p.success{
	min-height: 35px;
	background-image: url("./img/success.png");
	background-repeat: no-repeat;
	background-position: left 9px;
	padding: 12px 10px 10px 50px;
	color: green;
}
p.warning{
	min-height: 35px;
	background-image: url("./img/warning.png");
	background-repeat: no-repeat;
	background-position: left 9px;
	padding: 12px 10px 10px 50px;
	color: #c00;
}

#confidence{
	width: 600px;
	height: 400px;
	overflow: auto;
	background-color: #fff;
	color: #333 !important;
}
#credits{
	/*font-family: Arial, Sans Serif;*/
	position: relative;
	height: 0px;
	top: -17px;
}
#credits > div{
	height: 16px;
	margin: 0 auto;
	text-align: left;
}
#credits a{
	color: #fff;
	text-decoration: none;
	transition: 0.2s linear;
	opacity: 0.3;
	font-size: 13px;
	line-height: 1;
	position: relative;
	left: calc(100% - 190px);
	top: -10px;
}
#credits a:hover{
	opacity: 0.7;
}
#credits a > img{
	position: relative;
	top: -1px;
}

:focus::-webkit-input-placeholder{
	color: transparent !important;
}
:focus::-moz-placeholder{
	color: transparent !important;
}
:focus:-moz-placeholder{
	color: transparent !important;
}
:focus:-ms-input-placeholder{
	color: transparent !important;
}
::-webkit-input-placeholder{
	color: #919191 !important;
	font-weight: 400 !important;
}
::-moz-placeholder{
	color: #919191 !important;
	font-weight: 400 !important;
}
:-moz-placeholder{
	color: #919191 !important;
	font-weight: 400 !important;
}
:-ms-input-placeholder{
	color: #919191 !important;
	font-weight: 400 !important;
}
a.button.violet {
    background-color: #673BB7;
    color: #fefefe;
}
a.button.violet:hover{
	text-decoration: none;
	background-color: #ff7000;
}
/* Адаптивные стили для шапки и футера */
@media (max-width: 767px){
	body{
		font-size: 16px;
	}
	.no-mobile{
		display: none;
	}
	/* Отключаем прилипание футера */
	#footer{
		height: auto;
		padding-bottom: 10px;
		text-align: center;
	}
	#before-footer, #page:after {
		display: none;
	}
	#page{
		margin-bottom: 30px;
		min-height: 0;
	}
	#logo{
		width: 100%;
		background-position: center;
	}
	#logo-footer{
		width: 100%;
		background-position: center;
	}
	#footer .container{
		padding-bottom: 120px;
		background-image: url('./img/town-footer.png');
	}
	#top-phones{
		text-align: center;
	}
	div.row > div{
		text-align: center;
	}
	h1, h2, h3{
		text-align: center !important;
		background-position: center top !important;
	}
	p{
		text-align: left;
	}
	#footer p{
		text-align: center;
	}
	#real-books h3.cost > span{
		margin-left: auto;
		margin-right: auto;
	}
}
