/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

.dotstyle_diamond .owl-dot span{border-radius: 30px;}
.wpml-ls-flag {
  display: none !important;
}
.border-15, .border-15 img{border-radius: 15px;}
#menu-item-wpml-ls-2-it,#menu-item-wpml-ls-2-en{min-width: 25px;margin-left: 15px;}
.wpml-ls-item-it > a::before {
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
  background: url('/img/Lingua_ITA.svg') no-repeat center;
  background-size: contain;
  right: 6px;
  position: absolute;
    top: -13px;
}

.wpml-ls-item-en > a::before {
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
  background: url('/img/Lingua_ENG.svg') no-repeat center;
  background-size: contain;
  right: 6px;
    position: absolute;
    top: -13px;
}

.wpml-ls-statics-footer .wpml-ls-item-it > a::before, .wpml-ls-statics-footer .wpml-ls-item-en > a::before {
   background-size: contain;
right: 6px;
position: relative;
top: auto;
text-align: center; 
top: 6px;
}
@media (max-width: 768px) {
  .wpml-ls-item-en > a::before{
background-size: contain;
right: 6px;
position: relative;
top: auto;
text-align: center;

  }
  .w-nav .menu-item{
    text-align: center!important;
  }
}
.rsBullets{
        display: flex;
    justify-content: center;
    margin-top: -40px;
    width: 100%;
    z-index: 100;
    position: relative;
}
.rsBullet.rsNavSelected span {
    background: #E20031!important;
}
.rsBullet span {
    background: rgba(255, 255, 255, 0.6)!important;
}
/*Add your own styles here:*/
.text-indent-50 p, h2.text-indent-50 {
    text-indent: 150px;
}
@media (max-width: 768px) {
  .text-indent-50 p, h2.text-indent-50 {
    text-indent: 50px;
}
}
.owl-nav{
    display: flex;
    gap: 0!important;;
    position: absolute;
    top: var(--gap, 0px)!important;
    left: auto!important;
    right: 70px!important;
    bottom: calc(var(--gap, 0px) + var(--dots-container-height, 0px));
    margin: 0!important;
    pointer-events: none;
}
.owl-nav::after {content:"";
    position:absolute;
    background:rgba(0,0,0,0.63);
    background-size:100%;
    top:calc(50% - 75px);
    left:calc(50% - 75px);
    width:150px;
    height:150px;
    border-radius: 150px;
    z-index: 0;
}
.owl-carousel.navstyle_circle>.owl-nav button {
    height: 50px;
    width: 50px;
    border-radius: 50%;
    position: relative;
        z-index: 1;

}
.owl-carousel.arrows-hor-pos_on_sides_outside .owl-prev,.owl-carousel.arrows-hor-pos_on_sides_outside .owl-next {
    transform: none!important;
}
.owl-next:after,.owl-prev:after{color: #ffffff!important;}


.padding-left-0>.vc_column-inner{
    padding-left: 0!important;
}
.padding-right-0>.vc_column-inner{
    padding-right: 0!important;
}
@media (max-width: 600px) {
  .padding-left-0>.vc_column-inner{
        padding-left: 0.8rem!important;
    }
    .padding-right-0>.vc_column-inner{
        padding-right: 0.8rem!important;
    }

    .g-cols.via_flex.type_default>div>.vc_column-inner {
        padding-left: 0.8rem!important;
        padding-right: 0.8rem!important;
    }
    .g-cols.via_flex.type_default {
        margin: 0 -0.8rem;
    }
    .l-section {
        padding-left: 0.8rem!important;
        padding-right: 0.8rem!important;
    }


}
.space-beetween .wpb_wrapper{
    display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%; /* o una height fissa */
}
#page-footer{
    margin: 0 15px 15px 15px;
    width: calc(100% - 30px);
    border-radius: 15px;
}
.red{
       color: #E20031!important;
}
.tasto_shop{
    border-radius: 100px;
    background: #E20031;
    padding: 12px 24px;
    position: relative;
    right: 48px;
    transition: right 0.5s ease-in-out;
    margin-left: 80px!important;
        z-index: 1;

}

.tasto_shop .w-btn-label{
    position: relative;
}

.tasto_shop .w-btn-label::after {
    content:"";
    position:absolute;
    border-radius: 100px;
    background: #E20031 url(/img/shop.svg) no-repeat center center;
    background-size:20px;
    top:-14px;
    right:-79px;
    width:48px;
    height:48px;
    z-index: -1;
    transform: translateX(0);
    transition:
        transform 0.3s ease-in-out,
        background-color 0.3s ease;
}
.tasto_shop::after {
    content:"";
    position:absolute;
    background: transparent;
    top: 0;
    right: 0;
    width: 100%;
    height: 48px;
}
.tasto_shop:hover::after {
    right: 48px;
}
.tasto_shop:hover{
    right: 0;
}

.tasto_shop:hover .w-btn-label::after {
    background-color: #000000;
    transform: translateX(-150px);
}




.tasto_shop2{
    border-radius: 100px;
    background: #E20031;
    padding: 12px 24px;
    position: relative;
    right: 48px;
    transition: right 0.5s ease-in-out;
    margin-left: 50px!important;
        z-index: 1;

}

.tasto_shop2 .w-btn-label{
    position: relative;
}

.tasto_shop2 .w-btn-label::after {
    content:"";
    position:absolute;
    border-radius: 100px;
    background: #E20031 url(/img/shop.svg) no-repeat center center;
    background-size:20px;
    top:-14px;
    right:-79px;
    width:48px;
    height:48px;
    z-index: -1;
    transform: translateX(0);
    transition:
        transform 0.3s ease-in-out,
        background-color 0.3s ease;
}
.tasto_shop2::after {
    content:"";
    position:absolute;
    background: transparent;
    top: 0;
    right: 0;
    width: 100%;
    height: 48px;
}
.tasto_shop2:hover::after {
    right: 48px;
}
.tasto_shop2:hover{
    right: 0;
}

.tasto_shop2:hover .w-btn-label::after {
    background-color: #000000;
    transform: translateX(-206px);
}
.overflow_visible *{
    overflow: visible !important;
}

.freccia_destra{position: relative;}
.freccia_destra::after {
    content:"";
    position:absolute;
    background:url(/img/freccia.svg) no-repeat center center;
    background-size:100%;
    top:0;
    right:6px;
    width:18px;
    height:20px;
}

.logo_brand img{margin: 0 auto;max-height: 90px;width: auto!important;display: block;max-width: 229px;object-fit: contain;}
@media (max-width: 1199px) {
 .logo_brand img{ max-height: 70px;
    width: auto !important;
    display: block;
    max-width: 159px;
}
}

@media (max-width: 768px) {
 .logo_brand img{ max-height: 60px;
    width: auto !important;
    display: block;
    max-width: 139px;
}
}

.bottone_con_freccia .w-btn-label{border-bottom: 1px solid #000000;position: relative;}

.bottone_con_freccia .w-btn-label::after {
    content:"";
    position:absolute;
    background:url(/img/freccia.svg) no-repeat center center;
    background-size:100%;
    top:0;
    right:-25px;
    width:18px;
    height:20px;
}

.wpcf7 input[type="submit"]{
    margin-top: 15px!important;
        background: #000000!important;
}
.form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.form-col {
    flex: 1;
}

.wpcf7 input[type="submit"] {
    width: 100%;
    background-color: #2d2d2d;
    color: #fff;
    border: none;
    padding: 18px;
    font-size: 18px;
    font-weight: 700;
    border-radius: 50px;
    cursor: pointer;
}

.wpcf7 input[type="submit"]:hover {
    background-color: #1a1a1a;
}