/* Tablet (md) */
@media (min-width: 768px) and (max-width: 1024px) {
	.mt-sm-3{ margin-top:30px; }
	.recensioni-owl{ position: relative; }

  .recensioni-owl .owl-nav{
    position: absolute;
    top: 22px;           /* allinea alla tua .virgolette */
    right: 22px;
    left: auto;
    transform: none;
    display: flex;
    gap: 12px;
    pointer-events: auto;
  }

  .recensioni-owl .owl-nav button{
    position: static !important;
    margin: 0 !important;
  }
  .scheda-recensione{
  	min-height: 515px;
  }

}

/* Mobile (<= md-1) */
@media (max-width: 767.98px) {
	.mb-sm-3{ margin-bottom:30px; }
	.header-logo{ max-width: 222.50px; }
	.footer-pill{
		font-size: 11px!important;
		gap:4px;
	}
	.recensioni-owl{ position: relative; }

  .recensioni-owl .owl-nav{
    position: absolute;
    top: 22px;           /* allinea alla tua .virgolette */
    right: 22px;
    left: auto;
    transform: none;
    display: flex;
    gap: 12px;
    pointer-events: auto;
  }

  .recensioni-owl .owl-nav button{
    position: static !important;
    margin: 0 !important;
  }
}

/* Mobile + Tablet (<= lg-1) */
@media (max-width: 991.98px){

	/* hamburger: 3 linee verde, senza box */
	.navbar-dark .navbar-toggler{
		border: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
		padding: .25rem .25rem !important;
	}

	.navbar-toggler-icon{
		background-image: none !important;
		width: 34px;
		height: 22px;
		position: relative;
	}

	.navbar-toggler-icon::before,
	.navbar-toggler-icon::after{
		content:"";
		position:absolute;
		left:0; right:0;
		height:4px;
		border-radius:999px;
		background: #6DBCAD;
	}

	.navbar-toggler-icon::before{ top: 0; }
	.navbar-toggler-icon::after{ bottom: 0; }

	/* linea centrale (richiede <span> dentro .navbar-toggler-icon) */
	.navbar-toggler-icon span{
		display:block;
		position:absolute;
		left:0; right:0;
		top:50%;
		transform: translateY(-50%);
		height:4px;
		border-radius:999px;
		background:#6DBCAD;
	}

	/* drawer full width sotto la navbar */
	.site-header{ position: relative; z-index: 20; }

	#primaryNav{
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		z-index: 999;
		background: #6DBCAD;
		padding: 2.25rem 1.25rem 2.75rem;
		border-top: 2px solid rgba(255,255,255,.45);
	}

	/* lista verticale con divider */
	#primaryNav .navbar-nav{
		width: 100%;
		margin: 0 0 1.5rem 0;
		padding: 0;
	}

	#primaryNav .navbar-nav .menu-item{
		border-top: 2px solid rgba(255,255,255,.55);
	}

	#primaryNav .navbar-nav .menu-item:last-child{
		border-bottom: 2px solid rgba(255,255,255,.55);
	}

	#primaryNav .navbar-nav .menu-item > a{
		display:block;
		padding: 1.35rem 0;
		color:#FBFDF3;
		font-weight:700;
		font-size: 1.05rem;
	}

	/* CTA mobile: pill scura a sinistra (as-is) */
	a.btn-prenota{
		margin-left: 0 !important;
		background-color: #6DBCAD!important;
		padding: 12px 16px !important;
		border-radius: 14px !important;
		display: inline-block;
	}

	a.btn-prenota:hover{
		background-color:#FBFDF3!important;
    	color: #6DBCAD!important;
	}

	/* overlay grigio */
	body.nav-open::after{
		content:"";
		position: fixed;
		inset: 0;
		background: rgba(0,0,0,.35);
		z-index: 10;
	}
	.footer-top .row{ row-gap: 18px; }

   /* menu verticale sotto il logo */
   .footer-nav{
      flex-direction: column !important;
      align-items: flex-start !important;
      justify-content: flex-start !important;
      gap: 22px !important;
      margin: 0 !important;
      padding: 10px 0 0 !important;
   }
   .footer-nav .menu-item > a{
      font-size: 17px;
      font-weight: 700;
   }

   /* CTA sotto al menu, a sinistra */
   .footer-cta{
      margin-top: 10px;
   }

   /* scroll top resta in alto a destra */
   .btn-scroll-top{
      width: 52px;
      height: 52px;
      border-color: #6DBCAD;
      color:#FBFDF3;
   }

   /* bottom: pills centrati e ragione sociale centrata sotto */
   .footer-pills{ margin-top: 8px; margin-bottom: 22px; }
   .footer-bottom .footer-ragione-sociale{ text-align: center !important; }
}

/* Desktop (>= lg) */
@media (min-width: 992px){
	#primaryNav{
		position: static !important;
		background: transparent !important;
		padding: 0 !important;
		border: 0 !important;
	}

	body.nav-open::after{ display:none !important; }
}