@media only screen and (min-width: 380px) {
    .plist_img, .clist_img {
	height: 250px;
	overflow: hidden;
    }
    .plist_img img, .clist_img img {
	height:100%;
	width: auto;
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index:15;
	max-width: none;
    }
    .plist_title, .clist_title {
	text-align: left;
	overflow: hidden;
	font-size:1rem;
	line-height: 1.4;
    }
    .plist_title {
	height: 3.4rem;
    }
    .clist_title {
	height: 1.5rem;
    }
    .plist_categ {
	height: 1.2rem;
	overflow: hidden;
	text-align: left;
    }
    .album li {
	height: 200px;
    }
    .album li a {
	height: 100%;
	overflow: hidden;
	text-align: center;
    }
    .album li a img {
	height: 100%;
	width: auto;
	display: block;
	max-width: none;
	position: absolute;
	left:50%;
	top:50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
    }
}
@media only screen and (min-width: 410px) and (max-width: 600px) {
    .plist_img, .clist_img {
	height: 220px;
    }
}
@media only screen and (min-width: 670px) {
    .plist_img, .clist_img {
	height: 200px;
    }
}
@media only screen and (min-width: 767px) {
    .wrapper {
	max-width:1100px;
    }
    .info {
	text-align: left;
    }
    .error {
	text-align: left;
    }
    .main {
	margin-top:0;
	margin-bottom:5rem;
    }
    label {
	display: inline-block;
	width: auto;
    }
    input[type='text'], input[type='email'], input[type='tel'], input[type='password'], select, textarea {
	width: auto;
	display: inline-block;
    }
    .menu-item {
	width: auto;
	text-align: left;
    }
    .menu-item>li {
	display: inline-block;
	width: auto;
	text-align: left;
	margin-left:0;
    }
    .menu-item>li:first-child {
	margin-left:0;
    }
    .menu-item>li>a {
	width: auto;
    }
    .maintitle {
	text-align: left;
    }
    .buton1 {
	display: inline-block;
	padding-left:1rem;
	padding-right:1rem;
	width: auto;
    }
    .buton1:hover {
	background: #eaa77a;
    }
    .buton2:hover {
	color:#eaa77a;
    }
    .form1 {
	max-width: 500px;
	margin-left:auto;
	margin-right:auto;
    }
    .form1 input[type='email'], .form1 input[type='password'], .form1 input[type='text'], .form1 input[type='tel'] {
	display:block;
	width:100%;
    }
    .form1 .error, .form1 .info {
	text-align: center;
    }
    
    /* BREADCRUMBS START ----------------------------------------------------------------------------------- */
    .breadcrumbs {
	display: block;
	margin-bottom:2rem;
    }
    .breadcrumbs li {
	float:left;
	margin-left:1rem;
    }
    .breadcrumbs li:first-child {
	margin-left:0;
    }
    
    /* HEADER ----------------------------------------------------------------------------------- */
    .topbar {
	padding:1.5rem 0;
    }
    .logo {
	float:left;
	max-width: none;
	text-align: left;
	font-size:2.1rem;
	line-height: 1;
    }
    .logo img {
	max-width: 200px;
	max-height: 100px;
    }
    .header-tel {
	float:right;
	margin-top:0;
    }
    .header-tel:hover {
	color: #99B11B;
    }
    .lang_url {
	float:right;
	margin-left:3rem;
    }
    .lang_url:hover ul {
	display:block;
    }
    .topmenu {
	float:right;
	margin-left:3rem;
    }
    .short-cart-wrapper {
	float:right;
	width: auto;
	text-align: left;
    }
    .mainmenu-wrapper {
	position: static;
    }
    .mainmenu-wrapper.fixed {
	position:fixed;
	top:0;
	left:0;
	bottom: auto;
    }
    .mainmenu li a {
	text-align: left;
    }
    .mainmenu>li ul li {
	float:none;
	display: block;
	margin:0;
    }
    .mainmenu>li>a:hover, .mainmenu>li:hover>a {
	color:#fff;
	background:#99B11B;
    }
    .mainmenu>li>ul>li>a:hover, .mainmenu>li>ul>li:hover>a {
	background: #ff6a61;
    }
    .mainmenu>li>ul>li>ul>li>a:hover, .mainmenu>li>ul>li>ul>li:hover>a {
	background: orange;
    }
    .mainmenu>li:hover>ul {
	display:block;
    }
    .mainmenu>li>ul>li:hover>ul {
	display:block;
	left: 100%;
    }
    .mobile-menu {
	display:none;
    }
    .mobile-menu-button {
	display: none;
    }
    
    /* FOOTER ----------------------------------------------------------------------------------- */
    .footermenu {
	float:right;
    }
    .footermenu li a:hover {
	background:#99B11B;
	color:#fff;
    }
    .cookies-disclaimer {
	margin-top:0;
	float:left;
	width: auto;
    }
    .coperta {
	float:right;
    }
    .partyfactory p {
	text-align: left;
	float:left;
	margin-top:1.5rem;
    }
    .partyfactory img {
	float:left;
	margin-right:2.5rem;
    }
    
    /* STATIC PAGE ------------------------------------------------------------------------------------------ */
    .cnt ul, .cnt ol {
	margin-left:3rem;
    }
    .static {
	padding-top:3rem;
    }
    .cnt a:hover {
	color: #90558D;
    }
    
    /* CONTACT ------------------------------------------------------------------------------------------ */
    .contact {
	padding-top:3rem;
    }
    .contact-item {
	float:left;
	width: 65%;
	margin-left:5%;
	text-align: left;
	margin-top:0;
	padding-top:0;
	border-top:0;
    }
    .contact-item:first-child {
	margin-left: 0;
	width:30%;
    }
    .contact-item h2, .contact-item h3, .contact-item h4 {
	text-align: left;
    }
    .contact-item p {
	text-align: left;
    }
    .contact-line {
	margin-bottom:3rem;
    }
    .map {
	height: 600px;
    }
    
    /* PRODUCTS LISTING ------------------------------------------------------------------------------------------ */
    .shop_pl_tree_wrapper {
	float:left;
	width: 20%;
	margin-bottom:0;
    }
    .shop_pl_main h1 {
	text-align: left;
    }
    .shop_pl_main.with_tree {
	float:right;
	width: 80%;
    }
    .plist li, .clist li {
	width:24%;
	margin-left:1.33333333%;
	margin-top:2%;
	float:left;
    }
    .plist li:nth-child(4n+1), .clist li:nth-child(4n+1) {
	margin-left:0;
    }
    .plist li:nth-child(-n+4), .clist li:nth-child(-n+4) {
	margin-top:0;
    }
    .plist li>a, .clist li>a {
	border:1px solid #fff;
	padding:0.5rem 0.5rem 1rem 0.5rem;
	text-align: left;
    }
    .plist_img, .clist_img {
	height: 200px;
    }
    .plist_img img.altthumb {
	z-index:20;
    }
    .plist li a:hover img.altthumb {
	display: block;
    }
    .plist_desc, .clist_desc {
	text-align: left;
	height: 2.8rem;
	overflow: hidden;
    }
    .plist_price {
	margin-top:0;
	font-size:1rem;
	line-height: 1;
    }
    .plist li:hover>a, .clist li:hover>a {
	border-color: #f7df81;
    }
    .plist li .plist_atc {
	display: none;
    }
    .plist li:hover .plist_atc {
	display: block;
    }
    .plist_atc:hover {
	background:#ff6a61;
    }
    .plist_atc:hover span {
	display: block;
    }
    .atc_message_content {
	padding:4.5rem 4rem 2rem 4rem;
	width: auto;
    }
    .atc_message_close:hover {
	text-decoration: underline;
    }
    .atc_message a:hover {
	background:#ff6a61;
    }
    
    /* ALBUME FOTO ------------------------------------------------------------------------------------------ */
    .album li {
	float:left;
	width: 24%;
	margin-left:1.33333333%;
	margin-top:1rem;
    }
    .album li:nth-child(-n+4) {
	margin-top:0;
    }
    .album li:nth-child(4n+1) {
	margin-left:0;
    }
    .gallery-listing, .gallery-album {
	padding-top:3rem;
    }
    .album-title {
	position: absolute;
	z-index: 10;
	left:0;
	bottom:0;
	width:100%;
	padding:1.5rem;
	background: #A5BE24;
	color: #fff;
	font-size: 0.9rem;
	line-height: 1.4;
	text-align: left;
	text-decoration: none;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	text-transform: uppercase;
	-webkit-transform: translate(0%,100%);
	-ms-transform: translate(0%,100%);
	transform: translate(0%,100%);
	-webkit-transition: all 200ms ease-in;
	-moz-transition: all 200ms ease-in;
	-ms-transition: all 200ms ease-in;
	-o-transition: all 200ms ease-in;
	transition: all 200ms ease-in;
	margin:0;
    }
    .album li a:hover .album-title {
	-webkit-transform: translate(0%,0);
	-ms-transform: translate(0%,0);
	transform: translate(0%,0);
    }
    .empty {
	padding:3rem 0;
    }
    .empty a:hover {
	text-decoration: underline;
    }
    
    /* PAGINI ------------------------------------------------------------------------------------------ */
    .pagina-intro {
	height:700px;
    }
    .pagina-intro h1 {
	font-size:3.5rem;
	line-height: 1.3;
    }
    .pagina-intro-title {
	top:30%;
    }
    .pagina-intro img {
	height: auto;
    }
    .footer-tel {
	font-size:2.5rem;
	line-height: 1;
    }
    .footer-tel:hover {
	color: #99B11B;
    }
    .pagina-album {
	text-align: left;
    }
    .pagina-album h3 {
	text-align: left;
	font-size:2rem;
	line-height: 1;
	padding:0.75rem 1rem;
	background: #99B81C;
	color:#fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
    }
    
    .overlay-box {
	max-width:800px;
	height:500px;
    }
    input.search-key {
	background: none;
	padding:0;
	width:200px;
	text-align: left;
	font-size: 1rem;
	height:3.5rem;
	line-height: 3.5rem;
	color:#A5BE24;
	float:left;
	border:0;
	text-transform: uppercase;
    }
    .gallery-search-wrapper {
	padding-left:2rem;
    }
    .gallery-search-wrapper input.search-key {
	width:90%;
    }
    .rezerva {
	float:right;
	margin-left:2rem;
	font-size: 1.3rem;
	line-height: 1.6;
    }
    .footer-tel {
	float:right;
	margin-top:1.6rem;
    }
    
    .hvideo {
	height:500px;
    }
}
@media only screen and (min-width: 1100px) {
    .plist_img, .clist_img {
	height: 237px;
    }
    .mainmenu li a {
	font-size:0.9rem;
	line-height: 1;
	padding:1.3rem 0.9rem;
    }
    .logo {
	font-size:2.2rem;
    }
    .header-tel {
	font-size:2.3rem;
	line-height: 1;
    }
}
@media only screen and (min-width: 380px) and (max-width: 669px) {
    .plist li, .clist li {
	width:49%;
	margin-left:2%;
	margin-top:2rem;
	float:left;
    }
    .plist li:nth-child(2n+1), .clist li:nth-child(2n+1) {
	margin-left:0;
    }
    .plist li:nth-child(-n+2), .clist li:nth-child(-n+2) {
	margin-top:0;
    }
}
@media only screen and (min-width: 670px) and (max-width: 767px) {
    .plist li, .clist li {
	width:32%;
	margin-left:2%;
	margin-top:2rem;
	float:left;
    }
    .plist li:nth-child(3n+1), .clist li:nth-child(3n+1) {
	margin-left:0;
    }
    .plist li:nth-child(-n+3), .clist li:nth-child(-n+3) {
	margin-top:0;
    }
}
@media only screen and (max-width: 767px) {
    .just-desktop {
	display: none;
    }
    .footer-top-line {
	display:none;
    }
    .home .pagina-intro {
	height:300px;
    }
    .home .pagina-intro h1 {
	font-size:1.5rem;
	line-height: 1.5;
    }
    .home .pagina-intro h1 .smaller {
	font-size:1rem;
	line-height: 1.5;
    }
    .home .pagina-intro-title {
	width: 80%;
    }
    .mainmenu-wrapper>.wrapper {
	width: 100%;
    }
    .topbar{
	width: 100%;
    }
}
@media only screen and (min-width: 767px) {
    .just-mobile {
	display: none;
    }
}