.menu_item.xmas:before {
	content: '';
	width: 284px;
	height: 85px;
	position: absolute;
	left: 50%;
	bottom: 0;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background: url(/img/xmas/balls.png) center top;
}

.menu_item.xmas:hover {
	overflow: hidden;
}

.mainCntnr>.section {
	min-height: 100px;
}

.game {
	width: 100%;
	height: 100%;
	text-align: center;
	display: none;
}

.game>.wrapper{
	max-width: 1200px;
	height: 100%;
	margin: 0 auto;
}

.game.desktop {
	background-color: #fff;
	background: url(/img/xmas/fon.jpg) center top;
}

.game.mobile {
	background-color: #fff;
	background: url(/img/xmas/fon-mobile.jpg) center top;
}

.wrapper {
	position: relative;
	width: 100%;
	text-align: center;
}

/* ------ SPRITE-TANDEM ------ */ 
					
.sprite-tandem:not(.present-1):not(.present-2):not(.present-3) { 
	background-image: url(/img/xmas/sprite-tandem.png);
	background-repeat: no-repeat; 
	position: relative;
	text-indent: -10000px;
}

.gifts .sprite-tandem:after { 
	content: '';
	background-image: url(/img/xmas/sprite-tandem.png);
	background-repeat: no-repeat; 
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.gifts:not(.disabled) .sprite-tandem:hover:after { 
	bottom: -20%;
}



.sprite-tandem.present-1 { 
	width: 217px;
	height: 219px;
	position: relative;
}

.sprite-tandem.present-1:after { 
	width: 217px;
	height: 219px;
	background-position: -1px -2px; 
}

.gifts:not(.disabled) .sprite-tandem.present-1:hover:after { 
	width: 278px;
	height: 281px;
	background-position: -1px -1351px; 
}
.sprite-tandem.present-2 { 
	width: 230px;
	height: 116px;
	position: relative;
}

.sprite-tandem.present-2:after { 
	width: 230px;
	height: 116px;
	background-position: -1px -1633px; 
}

.gifts:not(.disabled) .sprite-tandem.present-2:hover:after { 
	width: 294px;
	height: 155px;
	background-position: -1px -894px; 
}
.sprite-tandem.present-3 { 
	width: 179px;
	height: 148px;
	position: relative;
}

.sprite-tandem.present-3:after { 
	width: 179px;
	height: 148px;
	background-position: -1px -222px; 
}

.gifts:not(.disabled) .sprite-tandem.present-3:hover:after { 
	width: 231px;
	height: 193px;
	background-position: -1px -1157px; 
}
.sprite-tandem.logo-popup { 
	width: 168px;
	height: 115px;
	background-position: -1px -371px; 
}
.sprite-tandem.chestito { 
	width: 1215px;
	height: 74px;
	background-position: -1px -487px; 
}
.sprite-tandem.ukrasa { 
	width: 446px;
	height: 74px;
	background-position: -1px -562px; 
	margin: 5px auto 10px;
}
.sprite-tandem.thick { 
	width: 43px;
	height: 40px;
	background-position: -1px -637px; 
}
.sprite-tandem.snejinki { 
	width: 248px;
	height: 66px;
	background-position: -1px -678px; 
	margin: 20px 0;
	display: inline-block;
}
.sprite-tandem.wkliuchi-se { 
	width: 579px;
	height: 101px;
	background-position: -382px -899px; 
	margin: 0 auto;
}
.sprite-tandem.fb-icon { 
	width: 73px;
	height: 73px;
	background-position: -1px -820px; 
	position: relative;
	text-indent: -10000px;
}

.sprite-tandem.tandem-logo { 
	width: 155px;
	height: 0;
	background-position: -1px -1050px; 
	margin: 0 auto 100px;
}



.sprite-tandem.podaryci-popup { 
	width: 190px;
	height: 336px;
	background-position: -1px -1750px; 
}
.sprite-tandem.close-popup { 
	width: 25px;
	height: 25px;
	background-position: -1px -2091px; 
}

/* ------ END OF SPRITE-TANDEM ------ */ 


.game .title, 
.game .start 
{
    position: relative;
    width: 100%;
	padding: 15px 0;
    line-height: 30px;
    color: #215732;
	text-align: center;
}

.game .title strong, 
.game .start strong 
{
    position: relative;
    line-height: 26px;
    color: #215732;
    font-size: 30px;
	text-align: center;
}



.game * {
    font-family: 'Times New Roman',serif;
    font-style: italic;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}


.facebook_wrapper {
	position: absolute;
	width: 75px;
	height: 75px;
	top: -40px;
	right: -200px;
}


.left_column,
.right_column {
	width: 50%;
	height: 100%;
	display: inline-block;
	position: static;
}


.left_column {
	float: left;
}

.left_column {
	padding: 0 20px;
}

.left_column .title {
	font-size: 34px;
}

.left_column ul {
	position: relative;
}

.left_column ul li {
	padding-left: 60px;
	min-height: 40px;
	position: relative;
	margin-top: 60px;
	vertical-align: middle;
}

.left_column ul li span{
	width: 100%;
	color: #215732;
	text-align: left;
	font-family: Calibri-regular;
	font-size: 20px;
	font-style: normal;
	font-weight: bold;
	display: block;
	vertical-align: middle;
}



.left_column ul li:before {
	content: '';
	width: 43px;
	height: 40px;
	background-position: -1px -637px; 
	background-image: url(/img/xmas/sprite-tandem.png);
	background-repeat: no-repeat; 
	position: absolute;
	top: 0;
	left: 0;
}


.gifts {
	width: 100%;
	position: relative;
	margin: 70px 0;
}

.gifts.disabled {
	opacity:0.5;
}


.gifts>.wrapper {
	margin-top: 10px;
	text-align: center;
}

.present_holder {
	display: inline-block;
	vertical-align: bottom;
	margin: 0 30px;
}

.gifts:not(.disabled) .present_holder>div {
	cursor: pointer;
}

.bottom_message {
	position: relative;
    line-height: 26px;
    font-size: 24px;
	text-align: center;
	font-weight: bold;
}

.bottom_message.green, 
.links 
{
    color: #215732;
}


.bottom_message.red {
    color: #ff0000;
}

.bottom_message.big {
   font-size: 30px;
}



.links 
{
   position: relative;
    line-height: 26px;
	text-align: center;
	font-weight: bold;
	margin: 40px 0;
}


.links p
{
   width: 100%;
   display: inline-block;
    line-height: 26px;
	text-align: center;
	font-weight: bold;
	font-family: Calibri-regular!important;
	font-size: 20px!important;
	font-style: normal!important;
}



.links a
{
   color: #ff0000;
   font-weight: bold;
	font-family: Calibri-regular;
	font-size: 20px;
	font-style: normal;
	display: inline-block;
	text-decoration: underline;
}

#koshnica,
#kalendar,
#game_form {
	display: none;
}

#koshnica,
#kalendar, 
#game_form
{
	margin-top: 20px;
}

#form
{
	width: 100%;
	max-width: 462px;
	margin: 30px auto;
}

#form input[type="text"]
{
	width: 100%;
	max-width: 462px;
	height: 46px;
	line-height: 46px;
	margin-bottom: 30px;
	border: 2px solid #ff0000;
	outline: 0;
	background: none;
	-webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	padding: 4px;
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input ::-webkit-input-placeholder {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input ::-webkit-textarea-placeholder {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input :-moz-placeholder {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input ::-moz-placeholder {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input :-ms-input-placeholder {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

.input :-ms-textarea-placeholder {
	color: #215732!important;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}


#form input[type="checkbox"]
{
	display: none;
}



#form input[type="checkbox"] + label {
	display: inline-block;
	position: relative;
	padding-left: 40px;
	color: #215732;
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
}

#form input[type="checkbox"] + label:before
{
	content: '';
	width: 22px;
	height: 22px;
	border: 2px solid #ff0000;
	outline: 0;
	background: none;
	-webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	position: absolute;
	top: 0;
	left: 0;
}

#form input[type="checkbox"]:checked + label:after
{
	content: '';
	width: 18px;
	height: 18px;
	border: 0;
	outline: 0;
	background: #215732;
	-webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	position: absolute;
	top: 4px;
	left: 4px;
}

#send_button {
	width: auto;
	max-width: 276px;
	color: #fff;
	padding: 10px 60px;
	font-size: 30px;
	background: #ff0000;
	-webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	cursor: pointer;
	margin: 0 auto;
	font-weight: bold;
}

.error_text {
	width: 100%;
	color: #ff0000;
	font-size: 16px;
	position: absolute;
	bottom: 5px;
	 left: 50%;
	 font-weight: bold;
	font-family: Calibri-regular;
	font-style: normal!important;
	-webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.parent_uslovia .error_text {
	bottom: -13px;
}



.overlay {
  width: 100%;
  height: 100%;
  display: block;
  position: fixed;
  float: left;
  top: 0;
  left: 0;
  background: rgba(0,0,0,0.7);
  z-index: 10000;
  overflow: auto;
}

.overlay_inner {
    position: relative;
    height: 100%;
}

#message {
    min-height: 50px;
    position: relative;
    top: 10px;
    float: left;
    z-index: 1001;
    display: table;
	background: #215732;
	padding: 35px 15px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#message .wrapper_ {
    width: 100%;
	background: #215732;
    display: table-cell;
    z-index: 3;
    font-size: 25px;
    color: #fff;
    font-weight: bold;
}

#close_message {
	width: 25px;
	height: 25px;
	background-position: -1px -2091px; 
	background-image: url(/img/xmas/sprite-tandem.png);
	background-repeat: no-repeat; 
	position: absolute;
	display: block;
	float: right;
	top: -15px;
	right: 0;
	cursor: pointer;
}

#message h2 {
    width: 100%;
    position: absolute;
	top: 0;
	left: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 1;
}



#message h3 {
    width: 100%;
    font-size: 24px;
	color: #fff;
    font-weight: bold;
	margin-top: 63px;
	padding: 20px 0;
    text-align: center;
    position: relative;
}

#message hr {
    width: 100%;
    height: 5px;
    border: 0;
    background: #fff;
    margin: 25px 0;
    display: block;
    position: relative;
    float: left;
}

#message p {
    width: 100%;
    font-size: 24px;
	line-height: 1.4;
    color: #000;
    font-weight: bold;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
    float: left;
	-moz-hyphens:auto;
	  -webkit-hyphens:auto;
	  -ms-hyphens:auto;
	  hyphens:auto;
}

#message .firstP {
    margin-top: 10px;
}

#message p.text {
    width: 100%;
    font-size: 16px;
	line-height: 1.4;
    margin: 20px 0 0;
    position: relative;
    float: left;
	text-align: left;
}

#message .form_line {
	margin: 10px 0;
}

#message .form_line.first {
	margin-top: 40px;
}

#message p.firm {
    font-weight: bold;
}


#message .txt {
    font-weight: bold;
	padding: 5px 10px;
}

#message .logo {
	position: relative;
	float: left;
	width: 100%;
	height: 142px;
	margin: 100px 0 20px;
	
}

.loading_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100px;
	background-color: rgba(255,255,255,0.7);
	z-index: 100000;
}


/* Loading indicator */
.pf-loading {
  border: 6px solid rgba(100, 100, 100, 0.4);
  border-top: 6px solid rgba(255, 255, 255, 0.6);
  border-radius: 100%;
  height: 50px;
  width: 50px;
  -webkit-animation: pfl-rotate .8s infinite linear;
  animation: pfl-rotate .8s infinite linear;
  background: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -30px;
  margin-left: -30px;
  z-index: 99999; }

@-webkit-keyframes pfl-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes pfl-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }
	
.success_box * {
	text-align: center;
}
.success_message {
	text-align: center;
	font-family: 'Times New Roman',serif;
    font-style: italic;
	width: 100%;
	position: relative;
	float: left;
	margin-bottom: 36px;
}

.table_wrapper {
	position: relative;
	float: left;
	display: table;
	width: 100%;
}


.logo-popup {
	 margin-top: 50px;
	 position: relative;
	 float: left;
	 left: 50%;
	-webkit-transform: translateX(-50%);
	  -ms-transform: translateX(-50%);
	  transform: translateX(-50%);
}

@media all and (min-width: 1030px) and (max-width: 1205px) {
	.header ul {
		padding-right: 0;
	}
	
	.socials {
		display: none;
	}
}

@media all and (max-width: 1125px) {
	.header li a {
		padding: 7px 7px;
	}
}



@media all and (min-width: 1031px) {
	.menu_item.xmas {
		width: 284px;
	}
	
	.menu_item.xmas a{
		padding: 7px 30px;
		text-align: center;
	}
	
}

@media all and (max-width: 1030px) {
	.menu_item.xmas:before {
		top: 50%;
		bottom: initial;
		-webkit-transform: translateX(-50%) translateY(-50%);
		-ms-transform: translateX(-50%) translateY(-50%);
		transform: translateX(-50%) translateY(-50%);
	}

}



@media all and (max-width: 914px) {
	.game>.wrapper {
		padding: 0 20px;
	}
	
	.left_column,
	.right_column {
		width: 100%;
	}
	.right_column {
		text-align: center
	}
}

@media all and (max-width: 603px) {
	.wkliuchi-se {
		width: 100%;
	}
	.wkliuchi-se>img {
		width: 100%;
		height: auto;
	}
}


@media all and (min-width: 560px) {
	.table_wrapper>div {
		display: table-cell!important;
		vertical-align: bottom;
	}
}

@media all and (max-width: 559px) {
	.table_wrapper>div {
		width: 100%;
	}
	
	.ppic {
		display: none;
	}
	.success_message {
		padding: 0 40px;
	}
	
	.present_holder {
		margin: 30px;
	}
	
	.facebook_wrapper {
		top: 0;
		right: initial;
		left: 50%;
		-webkit-transform: translateX(-50%);
		  -ms-transform: translateX(-50%);
		  transform: translateX(-50%);
	}
	
	.sp_box > div > div {
		font-size: 2em!important;
	}

}

.error_message {
	width: 100%;
	text-align: center;
}

.sprite-tandem.ukrasa>img {
	display: none;
}

@media all and (max-width: 445px) {
	.sprite-tandem.ukrasa {
		background: none;
		background-image: none!important;
		width: 100%;
	}
	.sprite-tandem.ukrasa>img {
		width: 100%;
		height: auto;
		display: block;
	}
	
	.facebook_wrapper {
		right: -70px;
	}

	#koshnica .pic img,
	#kalendar .pic img
	{
		width: 100%;
		height: auto;
	}
}

.parent_uslovia a {
	color: #ff0000;
    font-weight: bold;
	font-family: Calibri-regular;
	font-size: 20px;
}