@media (max-width: 767px) {
	.h1 {
	    font-size: 22px;
	}
	#screen {
		display: none;
	}
	#first-towns, #about-town {
	    padding: 30px 10px;
	}
		#first-towns .column-town {
			width: 33.2%;
			display: inline-block;
			float: none;
			vertical-align: top;
		}

	#first-firms {
	    padding: 20px 10px;
	}
	.firms-floor {
		position: relative;
		padding-left: 0; 
		margin: 20px 0;
	}
		.firms-floor>.firms-title {
			position: static;
			width: auto;
			margin: 0 0 30px;
		}
		.firms-floor>.firms-block {
			width: 102%;
		}
			.firms-floor>.firms-block>.firm-item {
				width: 48%;
				margin-right: 2%;
			}
				.firms-floor>.firms-block>.firm-item:last-child {
					display: none;
				}

	.two-col {
	    float: none;
	    margin-right: 0;
	    width: auto;
	}
	.three-col {
	    float: none;
	    width: auto;
	}

	#one-day>.one-day-tod {
		width: 50%;
		margin: 10px 0;
	}
		#one-day>.one-day-tod>.day-title {
		    margin-bottom: 10px;
		    margin-top: 10px;
		}

	#cats-town {
	    padding: 30px 10px;
	}
		#cats-town-list .column-town {
			float: none;
			width: 50%;
			line-height: 18px;
			padding: 0 30px 0 0;
			display: inline-block;
			vertical-align: top;
		}

	#weather-section {
	    padding: 10px;
	}
	#weather-block {
	    padding: 10px;
	}
		#weather-tabs {
			text-align: left;
			margin: 20px 0;
		}
			#weather-tabs>li {
				display: block;
				float: none;
				width: auto;
			}
				#weather-tabs>li>a {
				    padding: 5px 10px;
				}
					#weather-tabs>li>a>span {
					    display: inline;
					}


	#login, #top-share {
		display: none;
	}
	#top-float {
	    position: fixed;
	    left: 0;
	    right: 0;
	    top: 0;
	    min-width: auto;
	}
	.floor {
	    width: auto;
	}
	#left-column {
	    width: auto;
	    float: none;
	}
	#right-column {
	    width: auto;
	    float: none;
	}
	#left-slide {
		display: none;
	}
	#main-cats>.floor>div {
	    display: block;
	    padding: 10px 0;
	}
		#main-cats>.floor>div>ul {
			display: block;
			text-align: center;
		}
			#main-cats>.floor>div>ul>li {
				display: inline-block;
				width: 50%;
				height: auto;
				vertical-align: middle;
				padding: 5px 0;
			}
	#footer {
		padding: 10px 0;
	}
		#footer .mini-desc>p {
			float: left;
			width: auto;
			margin: 5px 10px;
		}
	.bottom-map>li {
		width: auto !important;
		float: none;
		margin: 0 10px;
	}
	#firm-card>.add-to-mybook {
		display: none;
	}
	#firm-conts p {
		margin: 10px 0;
	}
	#other-addresses>li {
	    margin: 10px 0;
	}
	#main-conts, #phones-conts {
		float: none;
		width: auto;
		margin: 20px 0;
	}
	#firms-controls {
		display: none;
	}

	#firms-list>.firm-item>a>.item-desc {
		float: none; 
		width: auto; 
		margin: -8px 0 0 80px;
	}
}