@media screen and (max-width: 400px) {
	
	@-viewport {
		width: 320px;
	}
	
	@-ms-viewport {
		width: 320px;
	}
	
	html {
		font-size: 14px;
	}
	
	body {
		margin-bottom: 470px; /* bottom = footer height */
	}

	fieldset { 
		padding: 10px;
	}
	
	legend {
		top: -15px; 
	}
	
	button {
		font-size: 11px;
		height: 23px;
		line-height: 20px;
	}
	
	button.form-action {
		font-size: 13px;
		height: 28px;
		line-height: 25px;
	}
	
	.empty-space {
		margin-top: 30px;
	}

	.empty-space-small {
		margin-top: 15px;
	}

	.centered-high-margin-top {
		margin: 10px auto;
		margin-top: 30px;
		margin-bottom: 30px;
	}
	
	.centered-low-margin-top {
		margin: 10px auto;
		margin-top: 15px;
		margin-bottom: 30px;
	}
	
	legend, .legend {
		padding: 4px 8px; 
		font-size: 10px;
	}
	
	.content-panel, .content-wrapper, .main-panel, .pagination, .message-panel  {
		width: 90%;
	}

	.content-panel {
		font-size: 13px;
	}
	
	.content-panel strong {
		font-size: 14px;
	}
		
	.main-panel-content, .box-wrap {
		padding-top: 15px;
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 15px;
	}
	
	.main-panel strong, .main-panel-header.data-header strong {
		font-size: 16px;
	}
	
	.main-panel select {
		font-size: 12px;
	}
	
	.main-panel-footer-element {
		margin-bottom: 12px;
	}

	.field {
		font-size: 13px;
	}

	.field-label {
		font-size: 13px;
		margin-bottom: 0px;
	}
		
	.moderation, .moderation strong {
		font-size: 12px;
	}

	.rating img {
		height: 18px;
	}

	.date-info {
		font-size: 11px;
	}

	.category-header, .list-menu { 
		font-size: 14px;
	}

	#status-public-container {
		font-size: 11px;
	}

	.winebox-header {
		font-size: 14px;
		line-height: 14px;
		height: 30px;
	}

	.winebox-header .minor-info {
		font-size: 10px;
	}

	.winebox-header .name {
		width: -moz-calc(100% - 50px);
		width: -webkit-calc(100% - 50px); 
		width: calc(100% - 50px);
	}
	
	.winebox-header .name.instock {
		width: -moz-calc(100% - 100px);
		width: -webkit-calc(100% - 100px); 
		width: calc(100% - 100px);
	}

	.winebox-header .vintage {
		font-size: 15px;
	}

	.winebox-header .box-avatar {
		margin-top: -12px;
		max-width: 36px;
		margin-right: 0px;
	}

	.winebox-content {
		font-size: 11px;
	}

	.winebox-footer {
		font-size: 12px;
		line-height: 13px;
		padding-top: 3px;
		padding-bottom: 3px;
		min-height: 28px;
	}
	
	.winebox-footer  img {
		height: 20px;
	}
		
	.winebox-footer .rating  img {
		height: 18px;
	}

	.wine-menu button {
		height: 26px;
		font-size: 11px;
		line-height: 22px;
		min-width: 70px;
		margin-left: 4px;
		margin-right: 4px;
		margin-bottom: 7px;
	}

	.pagination {
		width: 90%;
	}
	
	.pagination span {
		font-size: 14px;
		margin: 5px;
	}
		 
	.pagination .pagination-item {
		padding: 2px 7px;
	}

	.list-menu {
		padding: 4px;
		padding-top: 2px;
		padding-left: 8px;
	}

	.list-menu button {
		min-height: 12px;
	}

	.stock-details-container .stock-details-title {
		font-size: 14px;
	}

	.stock-details-container .stock-details-info {
		font-size: 12px;
	}

	.stock-details-container .stock-details-info-number {
		font-size: 15px;
	}
	
	.main-fieldset {
		margin-top: 15px;
		margin-bottom: 15px;
	}
	
	.chosen-container {
		min-width: 0;
		max-width: 100%;
	}
	
	.status-container span {
		font-size: 11px;
	}

	.alone {
		width: 100%;
	}

	.validationMessage {
		font-size: 12px;
	}
	
}

@media screen and (max-width : 650px) {
	
	.content-wrapper, .main-panel, .pagination  {
		width: 85%;
	}
	
	.content-panel, .message-panel {
		width: 85%;
		margin-bottom: 10px;
	}
		
	.content-panel, .main-panel-content, .message-panel {
		-moz-box-shadow: 0px 0px 70px 5px #000;
		-webkit-box-shadow: 0px 0px 70px 5px #000;
		-o-box-shadow: 0px 0px 70px 5px #000;
		box-shadow: 0px 0px 70px 5px #000;
	}

	.field-container select {
		width: 100%;
	}
		
	.box-wrap {
		width: 93%;
		padding-bottom: 0px;
		padding-right: 0px;
		padding-left: 0px;
	}

    .box {
		width: 95%;
		padding-right: 0px;
		padding-left: 0px;
    }
	
	.winebox {
		height: auto;
	}
	
}

@media screen and (max-width : 650px) and (min-width: 401px) {

	body {
		margin-bottom: 305px; /* bottom = footer height */
	}

	.field {
		font-size: 15px;
	}

	.field-label {
		font-size: 15px;
	}

	.centered-low-margin-top {
		margin: 10px auto;
		margin-top: 25px;
		margin-bottom: 30px;
	}
	
}

@media screen and (min-width : 651px) {

	.centered-low-margin-top {
		margin: 10px auto;
		margin-top: 30px;
		margin-bottom: 40px;
	}
	
}