@media (min-width: 1500px){
  .container{ max-width: 1440px; }
}

.imgSquare,
.imgContainer{
  position: relative;
  display: block;
  width: 100%;
  height: 0;
}

.imgSquare img,
.sportelloPreview img,
.imgContainer img{
  position: absolute;
  display: block;
  object-fit: cover;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.image-3x1{ padding-top: 33%; }
.image-2x1{ padding-top: 50%; }
.image-16x9{ padding-top: 56%; }
.sportelloPreview,
.image-3x2{ padding-top: 66%; }  
.image-4x3{ padding-top: 75%; }
.imgSquare,
.image-1x1{ padding-top: 100%; }  
.image-3x4{ padding-top: 133%; }  
.image-2x3{ padding-top: 150%; }
.image-1x2{ padding-top: 200%; }
.image-4x10{ padding-top: 250%; }
.image-fullHeight{ height: 100%; }

@media (min-width: 768px){
  .image-sm-3x1{ padding-top: 33%; }
  .image-sm-2x1{ padding-top: 50%; }
  .image-sm-16x9{ padding-top: 56%; }
  .image-sm-3x2{ padding-top: 66%; }
  .image-sm-4x3{ padding-top: 75%; }
  .image-sm-1x1{ padding-top: 100%; }
  .image-sm-3x4{ padding-top: 133%; }
  .image-sm-2x3{ padding-top: 150%; }
  .image-sm-1x2{ padding-top: 200%; }
  .image-sm-4x10{ padding-top: 250%; }
}

@media (min-width: 992px){
  .image-md-3x1{ padding-top: 33%; }
  .image-md-2x1{ padding-top: 50%; }
  .image-md-16x9{ padding-top: 56%; }
  .image-md-3x2{ padding-top: 66%; }
  .image-md-4x3{ padding-top: 75%; }
  .image-md-1x1{ padding-top: 100%; }
  .image-md-3x4{ padding-top: 133%; }
  .image-md-2x3{ padding-top: 150%; }
  .image-md-1x2{ padding-top: 200%; }
  .image-md-4x10{ padding-top: 250%; }
}

@media (min-width: 1200px){
  .image-lg-3x1{ padding-top: 33%; }
  .image-lg-2x1{ padding-top: 50%; }
  .image-lg-16x9{ padding-top: 56%; }
  .image-lg-3x2{ padding-top: 66%; }
  .image-lg-4x3{ padding-top: 75%; }
  .image-lg-1x1{ padding-top: 100%; }
  .image-lg-3x4{ padding-top: 133%; }
  .image-lg-2x3{ padding-top: 150%; }
  .image-lg-1x2{ padding-top: 200%; }
  .image-lg-4x10{ padding-top: 250%; }
}

.maxWidth, .maxWidth img{ width: 100% !important; display: block !important; }
.h100{ height: 100%; }
.w100, .w100 img{ width: 100%; }
.mw100, .mw100 img{ max-width: 100%; }
.w100 .elementor-button{
  width: 100%;
  justify-content: center;
}
.strong{ font-weight: 700 !important; }
p:last-child{ margin-bottom: 0; }
a{ text-underline-offset: 6px; }
.cursor-pointer{ cursor: pointer; }
.mirror-x img{ transform: rotateY(180deg); }
.overflow-hidden{ overflow: hidden; }

.mymask img{
  /*mask-image: url('../images/mask-star.png');
  mask-size: 0%;
  mask-repeat: no-repeat;
  mask-position: center;*/
  /*transition: 0.3s all linear;*/
  animation: viewstar linear both;
  animation-duration: 1s;
  animation-timeline: view();
  animation-range: 10vh 90vh; /* parte a 10vh e termina a 90vh */
}

@keyframes viewstar{
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(2);
  }
  
  /*0% {
    mask-size: 0%;
  }

  50% {
    mask-size: 100%;
  }

  100% {
    mask-size: 0%;
  }*/
}

.borderFullRounded{ border-radius: 100px }
.borderRounded-1{ border-radius: 0.5rem !important; overflow: hidden; }
.borderRounded-2{ border-radius: 1.0rem !important; overflow: hidden; }
.borderRounded-3{ border-radius: 1.5rem !important; overflow: hidden; }
.borderRounded-4{ border-radius: 2.0rem !important; overflow: hidden; }

.standardLink .elementor-button{
  border-width: 0 !important;
  padding: 0 !important;
  display: inline;
}

.standardLink:not(.elementor-element){
  font-size: 1.12rem;
}

.standardLink .elementor-button-content-wrapper:hover .elementor-button-text,
.standardLink:not(.elementor-element):hover{
  text-decoration: underline;
}

.standardLink .elementor-button-content-wrapper .elementor-button-icon,
.standardLink:not(.elementor-element) img{
  transition: 0.3s all ease-in-out;
}

.standardLink .elementor-button-content-wrapper:hover .elementor-button-icon,
.standardLink:not(.elementor-element):hover img{
  transform: translateX(0.7rem);
}

.standardLink .elementor-button-icon svg,
.standardLink:not(.elementor-element) img{
  height: 1.5rem;
}

.text-gradient-blue-green,
.text-gradient-blue-green-counterNumber .elementor-counter-number-wrapper{
  background: var(--blue600);
  background: linear-gradient(to bottom right, var(--blue600), var(--green500));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.footerPolicyLinkContainer{
  display: flex;
  justify-content: flex-end;
}

.footerPolicyLinkContainer .footerPolicyLink{
  margin-right: 1rem;
}

.footerPolicyLinkContainer .footerPolicyLink:last-child{
  margin-right: 0;
}

/*.elementor-widget-n-accordion .e-n-accordion-item>.e-n-accordion-item-title{
  justify-content: space-between;
}

.elementor-widget-n-accordion .e-n-accordion-item{
  border-radius: 0.5rem;
  transition: 0.3s all ease-in-out;
  border-width: 0 !important;
}

.elementor-widget-n-accordion .e-n-accordion-item>.e-n-accordion-item-title .e-n-accordion-item-title-text{
  font-weight: 600;
}

.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title,
.elementor-widget-n-accordion .e-n-accordion-item .elementor-element{
  border-width: 0 !important;
  transition: 0.3s all ease-in-out;  
  padding-left: 0;
}

.elementor-widget-n-accordion .e-n-accordion-item {
  background-color: transparent;
  margin-bottom: 0 !important;
  border-bottom: 1px solid var(--tertiary200) !important;
  border-radius: 0;
  margin: 1rem 0;
}

.elementor-widget-n-accordion .e-n-accordion-item:last-child {
  margin-block-end: 0rem !important;
}

.elementor-widget-n-accordion:not(.arrowAccordion) .e-n-accordion-item>.e-n-accordion-item-title .e-n-accordion-item-title-icon{
  border-radius: 100px;
  border: 1px solid var(--blue600);
  width: 1rem;
  height: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.elementor-widget-n-accordion:not(.arrowAccordion) .e-n-accordion-item>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>svg {
  width: 1.5rem;
  height: 1.5rem;
}*/


.elementor-widget-n-accordion .e-n-accordion-item[open] summary{
  border-radius: 16px 16px 0 0;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon span,
.elementor-widget-n-accordion .e-n-accordion-item-title-icon span>svg,
.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon .e-closed{
  height: 24px !important;
  width: 24px !important;
}

.titleBay{
  display: flex;
  flex-direction: column;
}

.swiper-arrows span{
  display: inline-block;
  margin: 0 0.5rem;
  opacity: 0.6;
  cursor: pointer;
}

.swiper-arrows span:hover{
  opacity: 1;
}

.textColorGradient{
  background: linear-gradient(90deg, #005780 17.64%, #62B22F 106.2%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media (max-width: 1024px) {
  .container, .container-md, .container-sm {
    max-width: 100%;
  }
}

/* TABS */
/*.elementor-widget-n-tabs .e-n-tabs-heading{
  align-self: center;
  border-radius: 100px;
  padding: 0.3rem;
  margin-bottom: 2.5rem;
}
.elementor-widget-n-tabs .e-n-tab-title{
  background-color: transparent !important;
  color: var(--tertiary600) !important;
  border-radius: 10rem;
  padding: 0.5rem 0.9rem !important;
  border: 2px solid var(--tertiary600) !important;
  margin: 0 0.25rem;
}

.elementor-widget-n-tabs .e-n-tab-title[aria-selected=true]{
  background-color: var(--tertiary600) !important;
  color: var(--neutral100) !important;
}

.blackAccordionNav.elementor-widget-n-tabs .e-n-tabs-heading{
  background: transparent;
}
.blackAccordionNav.elementor-widget-n-tabs .e-n-tab-title{
  color: var(--black) !important;
}

.blackAccordionNav.elementor-widget-n-tabs .e-n-tab-title[aria-selected=true]{
  background-color: var(--black) !important;
  color: var(--white) !important;
}*/
/* END TABS */

/* COMPARATOR TABLE */
.comparatorTable td:not(:first-child),
.comparatorTable th:not(:first-child){
  text-align: center;
}
.comparatorTable td,
.comparatorTable th{
  padding: 0.8rem;
  border-width: 0 !important;
}

.comparatorTable td:first-child{
  font-weight: 500;
}
.comparatorTable caption{
  display: none;
}

table.comparatorTable tbody>tr:nth-child(odd)>td,
table.comparatorTable tbody>tr:nth-child(odd)>th,
table.comparatorTable tbody>tr:nth-child(odd):hover>td,
table.comparatorTable tbody>tr:nth-child(odd):hover>th{
  background-color: var(--gray50);
}

table.comparatorTable tbody>tr:nth-child(even)>td,
table.comparatorTable tbody>tr:nth-child(even)>th,
table.comparatorTable tbody>tr:nth-child(even):hover>td,
table.comparatorTable tbody>tr:nth-child(even):hover>th{
  background-color: transparent;
}

.tablepress>:where(thead,tfoot)>*>th{
  background-color: transparent;
  border-block-start: 0 !important;
}
/* END COMPARATOR TABLE */

/* MENU */
#mainMenu, footer.footer{
  z-index: 10;
}

footer.footer{
  position: relative;
}

.subMenuBlockContainer{
  background-color: #00000090;
  position: fixed;
  top: var(--menu-height);
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 11;
  display: none;
  cursor: pointer;
}

.subMenuBlock{
  border-radius: 0 0 1.0rem 1.0rem;
  overflow: hidden;
  padding: 0.7rem;
  background-color: var(--white);
}

.subMenuBlockContainer .close{
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 1.8rem;
  right: 1.8rem;
  background-image: url("assets/images/icons/close.svg");
  display: block;
  background-color: var(--gray400);
  background-repeat: no-repeat;
  background-size: 40%;
  border-radius: 100rem;
  background-position: center;
  cursor: pointer;
  z-index: 3;
}

.subMenuBlockContainer a{
  text-decoration: none;
}

.elementor-counter .elementor-counter-number-wrapper{
  align-items: center;
}

.accordion.withLeftBorder .accordion-item {
  margin-bottom: 2rem;
  border-width: 0 0 0 0.2rem !important;
  border-color: var(--blue600);
  border-radius: 0 !important;
}

.accordion.withLeftBorder .accordion-item .accordion-header .accordion-button{
  box-shadow: none !important;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  background-color: transparent;
  color: var(--black);
  padding-top: 0;
  padding-bottom: 0;
  white-space: normal;
}

.accordion.withLeftBorder .accordion-item .accordion-header .accordion-button:not(.collapsed){
  background-color: transparent;
  color: var(--blue500);
}

.accordion.withLeftBorder .accordion-item .accordion-body{
  padding-bottom: 0;
}

#wpadminbar{
  bottom: 0;
  top: initial;
  position: fixed;
}

#mainMenu.navbar-expand-lg .navbar-collapse {
  justify-content: center;
}

#mainMenu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transition: 0.3s all ease-in-out;
  border-bottom: 0px;
  z-index: 99;
}

.navbar-brand svg{
  height: 2rem;
  width: auto;
}


main>.page-content>.elementor>.elementor-element:first-child,
.blogHeaderSpacer,
.woocommerce-page main,
main.post-948{
  padding-top: var(--menu-height);
}

main.post-948 .page-header{
  padding-top: 56px;
}

.woocommerce-page main{
  padding-bottom: 48px;
}

.woocommerce-page main .entry-title{
  padding-bottom: 24px;
  margin-bottom: 0;
}

html{
  margin-top: 0 !important;
}

.socialShare {
  margin-right: 0.5rem;
  cursor: pointer;
}

.btnContattaci{
  background-color: var(--blue600);
  display: block;
  border-radius: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
}

.navbar-toggler{
  border-width: 0;
  background-color: transparent !important;
}

.navbar-toggler-icon,
.navbar-toggler .navbar-toggler-icon{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
}

/*.menuAlwaysActive .navbar-toggler .navbar-toggler-icon,
.menuActive .navbar-toggler .navbar-toggler-icon{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
}*/

footer a{
  color: #FFFFFF;
}

.navbar-toggler:focus{
  box-shadow: none !important;
}

.alertMessage{
  color: var(--red500);
  padding-left: 0.5rem;
  font-size: 0.9rem;
}

.errorInput, textarea.form-control.errorInput{
  border-color: var(--red500) !important;
}

.footerMenu{
  color: var(--neutral100);
  column-count: 3;
  padding-left: 0;
}

.footerMenu li{
  color: var(--neutral100);
  list-style: none;
  margin-bottom: 0.5rem;
}

.footerMenu li a{
  color: var(--neutral100);
}

.footerMenu li a:hover{
  color: var(--neutral100);
  text-decoration: underline;
}

.menuMainCta-md, .menuMainCta-lg{
  display: none;
}

.navbar-toggler{
  display: none;
}

@media (max-width: 1199px){
  /* MENU */
  .mainMenu{
    padding: 1rem 1.5rem;
  }
  .mainMenu .leftMenu,
  .mainMenu:not(.upper) .rightMenu{
    display: none;
  }

  .navbar-toggler{
    display: block;
  }

  .mainMenuOffcanvas.offcanvas{
    z-index: 99999;
  }

  .mainMenuOffcanvas .offcanvas-body{
    padding: 1.25rem;
  }

  .mainMenuOffcanvas ul.menuBlock{
    padding-left: 0;
    margin-bottom: 0;
    row-gap: 10px;
    display: flex;
    flex-direction: column;
  }

  .mainMenuOffcanvas ul.menuBlock li{
    list-style: none;
    display: block;
    padding: 12px 8px;
  }

  .mainMenuOffcanvas ul.menuBlock li.contacts{
    margin-top: 3rem;
    border-bottom-width: 0;
    padding: 0;
  }

  .mainMenuOffcanvas ul.menuBlock li.contacts a{
    display: flex;
    justify-content: center;
    color: var(--neutrals00);
    align-items: center;
    background-color: var(--blue);
  }

  .mainMenuOffcanvas ul.menuBlock li a,
  .mainMenuOffcanvas ul.menuBlock li>span{
    text-decoration: none;
    color: inherit;
    display: inline-flex;
    align-items: center;
    text-transform: uppercase;
  }

  .navbar-toggler{
    border-width: 0;
  }

  .navbar-toggler-icon,
  .navbar-toggler .navbar-toggler-icon{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
  }

  body.transparentMenu:not(.menuActive) .navbar-toggler-icon,
  body.transparentMenu:not(.menuActive) .navbar-toggler .navbar-toggler-icon{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
  }

  /* END MENU */
}

@media (max-width: 767px){
  .xs-w100, .xs-w100 img, .xs-w100 .elementor-button{ width: 100%; }
  .xs-mw100, .xs-mw100 img{ max-width: 100%; }
  .xs-w100 .elementor-button{
    justify-content: center;
  }
  .xs-w100 .elementor-button .elementor-button-content-wrapper{
    justify-content: center;
  }

  .comparatorTable td, .comparatorTable th {
    padding: 0.8rem 0.4rem;
    border-width: 0 !important;
  }

  .comparatorTable .row-1 img{
    max-width: 7rem;
  }

  #mainMenu.navbar-expand-lg .navbar-collapse{
    background-color: var(--white);
    padding: 1rem 0;
    border-radius: 0rem 0rem 1rem 1rem;
  }

  #mainMenu .navbar-nav .menu-item, #mainMenu .navbar-nav .menu-item>*{
    color: var(--black)
  }

  .footerMenu{
    text-align: center;
    column-count: 1;
  }

  .row-1 .column-1 img{
    max-width: 5rem;
  }
}