@media only screen and (max-width: 1279px) {
	section > .content > .results > div,
	.grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
	#home .news {
		width: 100%;
	}
	#home #playlist {
		width: 100%;
		padding: 0;
	}
	#home .news .grid {
		grid-template-columns: repeat(3, 1fr);
	}
	#home .products .grid {
		grid-template-columns: repeat(5, 1fr) !important;
	}
}
@media only screen and (max-width: 1023px) {
	section > .content > .results > div,
	.grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	#home .products .grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
	#home .news .grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
	
	/* .HTML */
	.html .content {
	    width: 100%;
	    float: none;
	}
	.html h1 {
		margin: 0;
	    width: 100%;
	}
	
	/* Playlists */
	#playlists .playlist {
		width: 100%;
		float: none;
	}
	#playlists .playlist:nth-child(odd) {
		padding-right: 0;
	}
	#playlists .playlist:nth-child(even) {
		padding-left: 0;
	}
	
	form input[type=text],
	form input[type=email] {
	    width: 80%;
	}
}
@media only screen and (max-width: 767px) {
	#header {
		height: auto;
		margin-bottom: 20px;
	}
	
	#header #menu_button {
		display: block;
	}
	#menu_wrapper {
		height: 0;
		overflow: hidden;
		transition: 0.3s;
	}
	#menu_wrapper.expanded {
		height: 270px;
		transition: 0.3s;
	}
	#menu li {
	    display: block;
	}
	#header > .basket_link {
		display: block;
		top: 15px;
	}
	#header #menu_wrapper .basket_link {
		position: static;
		text-align: center;
		width: 50%;
		margin: auto;
	} 
	
	#container {
		padding: 0 20px;
	}
	
	#footer nav {
	    text-align: left;
		margin-bottom: 10px;
	}
	#footer .networks {
	    position: static;
		margin-bottom: 10px;
	}
	#footer .newsletter {
	    position: static;
		margin-bottom: 10px;
	}
	
	#home .news .grid,
	#home .products .grid,
	.grid {
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.item {
	}
	.item .ratio {
		padding-top: 0;
	}
	.item .wrapper {
		position: static;
	}
	
	
	/* Default index layout */
	section > .content > .results {
		padding-left: 0;
		margin-left: 0;
	}
	section > .content > .results > div {
		grid-template-columns: repeat(1, 1fr) !important;
	}
	section aside.title,
	section aside.filters {
	   float: none;
	   width: 100%;
	   margin-bottom: 40px;
	}
	
	/* View */
	section.view aside.thumbnail {
	    width: 100%;
	    float: none;
	    padding-right: 0;
	}
	section.view .content {
	    width: 100%;
		float: none;
		padding-right: 0;
	}
	section.view aside.infos {
	    width: 100%;
		float: none;
		padding-left: 0;
		margin-top: 20px;
	}
	
	/* Home */
	#home .news {
		width: auto;
		float: none;
	}
	#home #playlist {
		width: auto;
		float: none;
		padding: 0;
	}
	#home .slideshow_description {
	    bottom: 0px;
	    width: 100%;
	    height: auto;
	    left: 0;
		box-sizing: border-box;
		padding: 20px 0;
	}
	#home .content {
		margin-top: 30px;
	}
	#home nav {
		display: none;
	}
	#home header {
	    border-bottom: 0;
	}
	
	
	
	/* Basket */
	#basket table {
		margin-bottom: 20px;
	}
	#basket table th {
		display: none;
	}
	#basket table td {
		display: block;
		text-align: left !important;
		padding: 4px 0;
	}
	#basket table tr {
		position: relative;
		border-bottom: 1px solid #000;
		padding: 10px 0;
	}
	#basket .ref img {
		float: left;
	}
	#basket table .ref {
		font-family: 'regular-bold';
	}
	#basket table .price,
	#basket table .remove {
		text-align: center;
	}
	#basket table .qty {
		position: absolute;
		right: 0;
		bottom: 0px;
		z-index: 10000;
	}
	
	/* Addresses */
	#address form fieldset {
		width: 100%;
		float: none;
	}
	
	
	/* Payment */
	#payment .order {
		width: 100%;
		float: none;
	}
	#payment .client {
		width: 100%;
		float: none;
	}
	#payment .order {
		margin-top: 20px;
	}
	
	
	
	/* form */
	form textarea,
	form input[type=text],
	form input[type=email] {
	    width: 100%;
	    max-width: 100%;
		box-sizing: border-box;
	}
	
	
	/* Playlist */
	#playlists .playlist .thumbnail,
	#playlists .playlist .details {
		width: 100%;
		float: none;
		padding: 0;
	}

	
	/* Posts */
	#blog .post {
		margin-bottom: 20px;
	}
	#post .content {
		padding-top: 50px;
		padding-left: 0%;
		padding-right: 0%;
	}
	
	
	/* Team */
	#about .team ul li {
		width: 100%;
		float: none;
		margin-bottom: 15px;
	}
	
	/* Contact */
	#contact .text .address {
	    float: none;
	    width: 100%;
	}
	#contact .text .infos div:first-child {
	    float: none;
	    width: 100%;
	}
	
	/* Newsletter */
	#footer .newsletter form {
		width: 100%;
		box-sizing: border-box;
	}
}