/* VERDE VECCHIO: #C5D24B 190,208,49 */

/* VERDE KM: #BED031 190,208,49 */
/* GRIGIO SCURO: #343A40  52,58,64*/

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
  border-color: rgba(190,208,49, 0.8);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(190,208,49, 0.6);
  outline: 0 none;
  }

body {
  font-family: 'Montserrat', sans-serif;
  color: #343a40;
}


a {
  color: #343a40;
  text-decoration:none;
  cursor: pointer;
}

a:hover {
  color: #BED031;
  text-decoration:none;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}


.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{
  border:1px solid #BED031!important;
  background:#BED031!important;
  font-weight:600!important;
  color:#343a40!important;
}

.alert-success {
  background-color: rgba(190,208,49,0.2) !important;
  border-color: #BED031;
}

.btn-outline-success {
  color: #BED031;
  border-color: #BED031;
}

.btn-outline-success:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open>.dropdown-toggle.btn-primary {
    color: #343a40;
    background-color: #BED031;
    border-color: #BED031; /*set the color you want here*/
}

.btn-km-dark-outline {
  color: #343a40 !important;
  background-color: #FFF !important;
  border-color: #343a40;
}

.btn-km-dark {
  color: #BED031 !important;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-km-dark a{
  color: #BED031;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-km-green {
  color: #FFFFFF;
  background-color: #BED031;
  border-color: #BED031;
  font-weight: 700;
  text-transform: uppercase;
}

.btn-km-green:hover, .btn-km-green:focus, .btn-km-green:active, .btn-km-green.active, .open>.dropdown-toggle.btn-km-green {
  color: #FFFFFF!important;
  background-color: #343a40!important;
  border-color: #343a40!important;
}


.btn-km-light-green {
  color: #343a40;
  background-color: rgba(190,208,49,0.3);
  border: 1px solid #BED031;
}

.btn-km-outline-green {
  color: #343a40;
  background-color: #FFFFFF;
  border: 1px solid #BED031;
}

.btn-km-light {
  background-color: #FFFFFF;
  border-color: #f0f0f0;
}

.btn-km-light-grey {
  background-color: #f0f0f0;
  border-color: #f0f0f0;
}

.btn-km-light-grey-outline {
  background-color: #ffffff;
  border: 1px solid #f0f0f0;
}

.badge-km {
  background-color: #BED031;
  color: #343a40;
  padding: .3rem .6rem;
}

.badge-light {
  background-color: #FFFFFF;
  border: 1px solid  #f0f0f0;
  padding: .3rem .6rem;
}

.cookie_banner_km{
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0,0,0,0.85);
  color: #FFF;
  width: 100%;
  padding: 15px 20px;
  z-index: 9999;
  font-weight: 600;
  text-align: center;
}

.divisorio_riga {
width: 100%; margin: 2rem 0rem 2rem 0rem; height: .9rem;
border-bottom: 1px solid #BED031; text-align: center;
}

.divisorio_testo {
font-size: 1rem;  font-weight: 600; margin-top: 4px; background-color: #fff;
padding: 0px 10px; font-size:1rem;
}

.autocomplete_txt {
-webkit-box-shadow: none!important;
box-shadow: none!important;
padding:0px 0px 0px 5px!important;
border-radius:0rem;
border: 0px;
margin: 0rem 3rem;
border-bottom: 2px solid #cfcfcf;
max-width: 85vw;
/* background-image: url('../img/icon/search.png'); */
background-repeat: no-repeat;
background-position: center left;
}

.nuova_stagione{
  background-color: #dc3545;
  font-size: 0.7rem;
  font-weight: bold;
  border-radius: .25rem;
  color: #FFF;
  padding: 2px 4px;
  margin: .2rem;
}

.area_pre_nome {
  display: flex;
  flex-direction: column;
  max-width: 80px;
  align-items: center;
  margin: .4rem;
  justify-content: flex-start;
}


/* Smartphone & Tablet */
@media screen and (min-width: 0px) and (max-width: 992px) {

  #ModalCartComplete .modal-footer {
    padding-bottom: 2rem !important;
    background-color: #f8f9fa !important;
  }

h1 {
  font-size: 1.25rem;
}

.mobile-view {
  display: block;
}

.contenitore {
  padding: 1rem 1rem;
}

.desktop-view {
  display: none;
}

.search-top {
  width: 100%;
  padding: .7rem .7rem .7rem 3.5rem;
  font-size: 1rem;
  font-weight: 500;
  background-color: rgba(190,208,49,0.1);
  border-bottom: 2px solid #BED031;
  text-align: left;

}

.search-top a, a:visited, a:focus {
  text-decoration: none;
  color: #343a40;
}

.navbar-toggler {
  margin-right: 0rem;
  font-size: 1.5rem;
  border: 0px;
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(190,208,49, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E")!important;
}

.nav-link {
  padding: .8rem 1rem!important;
  background-color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  /* text-align: center; */
  border: 0px!important;
  color: #343a40!important;
  margin: -1px;
}

.nav-link-search {
text-align: left;
display: flex;
align-items: center;
justify-content: flex-start;
border-bottom: 3px solid #F0F0F0!important;
}

.navbar {
  padding: .5rem 0rem!important;
  justify-content: flex-start!important;
  z-index: 99;
}

.dropdown-menu {
  border: 0px!important;
  border-radius: 0px!important;
  margin: 0px!important;
  padding: 0px!important;
}



.navbar-brand {
  margin-left: 0rem!important;
  margin-right: 0rem!important;
  width: 25%;
  text-align: right;
  padding-right: 14px;
}

.navbar-collapse {
  margin-top: .5rem!important;
}

/* Sovrascrivi per mobile view */
@media screen and (max-width: 992px) {
  .mobile-view .navbar-collapse {
    margin-top: 0 !important;
  }
}

.dropdown-item {
  padding: 1rem 1.5rem!important;
  background-color: #FFF;
  font-size: 1.2rem!important;
  text-align: center;
}

.dropdown-item-sub {
  padding: 1rem 2rem!important;
  background-color: #F0F0F0;
  font-size: 1.2rem;
  text-align: center;
}

.dropdown-menu-block-sub {
  border-top: 1px solid rgba(0,0,0,.15)!important;
  border-bottom: 1px solid rgba(0,0,0,.15)!important;
}


.dropdown-toggle:active, .dropdown-toggle:visited, .dropdown-toggle::selection, .dropdown-toggle:focus, .dropdown-toggle::after  {
  background-color: #FFFFFF!important;
  color: #343a40!important;
  border: none!important;
}

.dropdown-item.dropdown-item-sub:active, .dropdown-item.dropdown-item-sub:visited, .dropdown-item.dropdown-item-sub::selection, .dropdown-item.dropdown-item-sub:focus, .dropdown-item.dropdown-item-sub::after  {
  background-color: #F0F0F0!important;
  color: #343a40!important;
  border: none!important;
}


.dropdown-toggle{
  border: 0px!important;
}

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu>a:after {
  float: right;
  border: none;
}

.dropdown-submenu>.dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: 0px;
  margin-left: 0px;
}

.carousel-control-next-icon {
  background-image: url(../img/icon/carousel-right.png)!important;
  width: 28px;
  height: 28px;
}

.carousel-control-prev-icon {
  background-image: url(../img/icon/carousel-left.png)!important;
  width: 28px;
  height: 28px;
}

.carousel-caption {
  color: #343a40;
  width: 100%;
  right: 0px!important;
  left: 0px!important;
  bottom: 0px!important;
  padding: 5px 10px!important;
  position: relative;
  border-top: 1px dotted #ccc;
}


.btn-outline-success {
  color: #BED031;
  border-color: #BED031;
}

.caption-discount {
  position: absolute;
  z-index: 111;
  top: 1rem;
  left: 1rem;
  font-weight: 700;
  font-size: 1.2rem;
  color: #343a40;
  padding: .4rem .8rem;
  background-color: #BED031;
  border-radius: .25rem;
}

.caption-discount-solo-omline-label {
  position: absolute;
  z-index: 111;
  top: 1rem;
  left: 1rem;
  font-weight: 700;
  font-size: 1.2rem;
  color: #FFF;
  padding: .4rem .8rem;
  background-color: #7B2CBF;
  border-radius: .25rem;
  width: auto;
}

.caption-discount-solo-online {
  position: absolute;
  z-index: 111;
  top: 3.6rem;
  left: 1rem;
  color: #7B2CBF; 
  font-size: .7rem;
  font-weight: 600;
}


.caption-price {
  display: inline-block;
  width: 29%;
  vertical-align: text-top;
  text-align: center;
}

.caption-price-label {
  font-size: 1.4rem;
  font-weight: 700;
}

.caption-title {
  display: inline-block;
  width: 69%;
  text-align: left;
  padding: 0px 5px;
  font-size: 1.2rem;
  font-weight: 700;
  vertical-align: text-top;
}

.alert-grey {
    background: url("../img/icon/spedizione.png");
    background-position: left center;
    background-repeat: no-repeat;
    display: inline-block;
    color: #1b1e21;
    background-color: #BED031;
    border-color: #c6c8ca;
    position: relative;
    padding: .75rem 1.25rem .75rem 80px;;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
    margin-left: 25px;
    margin-right: 25px;
    overflow: auto;
    font-size: 1.2rem;
    box-shadow: 1px 1px 1px #999;
    -webkit-box-shadow: 1px 1px 1px #999;
    -moz-box-shadow: 1px 1px 1px #999;
    -o-box-shadow: 1px 1px 1px #999;

}

.footer {
  width: 100%;
  padding: 2rem;
  font-weight: 400;
  background-color: #343A40;
  color: #FFFFFF;
}

.footer a {
  color: #FFFFFF;
}

.logo_social_footer {
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-origin: content-box;
  padding: .5rem;
  border: 1px solid #737373;
  border-radius: .2rem;
  width: 45px;
  min-width: 45px;
  height: 45px;
  min-height: 45px;
  display: inline-block;
  margin-right: .5rem;
}

.paragraph {
  padding: 1rem;
}

.stripe-collapse {
  width: 100%;
  padding: 1rem;
  font-size: 1.2rem;
  font-weight: 400;
  background-color: #fafafa;
  border-top: 1px solid #f0f0f0;
  border-bottom: 1px solid #f0f0f0;
}

.modal-content {
  border-radius: 0;
  /* height: 83vh; */
}

.modal-footer {
  padding: .6rem;
}

.modal-body {
  padding-bottom: 1rem !important;
  padding-top: 1rem !important;
}

.modal-dialog {
    margin-top: 2rem;
}

.btn-km-green {
font-size: 1rem;
}



/* GOOGLE REVIEWS INIZIO */

.google-reviews-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.rating-summary {
    margin-bottom: 20px;
    text-align: left;
}

.rating-summary h3 {
    margin: 0 0 10px;
}

.rating {
    display: flex;
    align-items: center;
}

.rating-value {
    font-size: 24px;
    margin-right: 10px;
}

.rating-stars {
    color: #f1c40f;
}

.rating-word {
    font-size: 16px;
    color: #343A40;
    margin-left: 10px;
    font-weight: bold;
}

.rating-count {
    font-size: 16px;
    color: #FFF;
    margin-left: 10px;
}

.google-reviews {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 columns with equal width */
    gap: 20px; /* Space between items */
}

.review {
    border: 1px solid #ccc;
    padding: 15px;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: #343A40;
    text-align: left;
}

.review h4 {
    margin: 0 0 5px;
    font-size: 18px;
    color: #343A40;
    text-align: left;
}

.review .rating {
    color: #f1c40f;
}

.review p {
    margin: 10px 0;
}

.review .date {
    font-size: 12px;
    color: #888;
}

.google-reviews-container .buttons-container {
    display: flex;
    justify-content: space-between;
    margin-top: 20px; /* Space above the buttons */
}

.review-button {
    font-size: 16px;
    border: 1px solid #FFF;
    border-radius: .25rem;
    padding: .25rem .5rem;
    color: #fff;
    font-weight: bold;
}

/* Mobile Responsive Styles */
@media screen and (max-width: 768px) {
    .google-reviews {
        grid-template-columns: 1fr; /* One column layout for mobile */
    }

    .google-reviews-container .buttons-container {
        flex-direction: column; /* Stack buttons vertically */
        align-items: stretch; /* Ensure buttons take full width */
    }

    .review-button {
        width: 100%; /* Make buttons full width */
        margin-bottom: 10px; /* Add space between buttons */
    }
}

/* GOOGLE REVIEWS FINE */

.top_promo_attiva {
  display: flex;
  align-items:center; /* Center align content */
  padding: .5rem;
  justify-content: space-between; /* Center content vertically */
  height: auto; /* Allow auto height */
  text-align: center; /* Center text for mobile */
  background: linear-gradient(135deg, #7B2CBF, #663399); /* Gradient background */
}

.promo-text {
  font-size: 1.1rem;
  color: #fff;
}

.promo-link {
  font-size: 1rem;
  padding: 0.5rem 1rem;
  background-color: #000;
  border-radius: 25px;
  display: inline-block; /* Ensures button doesn't stretch full width */
  color: #FFF !important;
}

.promo-link:hover {
  background-color: #BED031;
  color: #000;
  color: #FFF;
}
}




/* Laptop & PCs */
@media screen and (min-width: 993px) {

  
#ModalCartComplete .modal-footer {
  background-color: #f8f9fa !important;
}

  h1 {
    font-size: 2rem;
  }

  .mobile-view {
    display: none;
  }
  .desktop-view {
    display: block;
  }

  .contenitore {
    padding: 2rem 3rem;
  }

  .top_navbar{
    background-color: #BED031;
    height: 3rem;
    position: relative;
    top:0;
    left: 0;
    width: 100%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .75rem 1rem;
    font-size: .85rem;
    font-weight: 500;
  }

  /* Navbar Search Form Styles */
  .navbar-search-form {
    position: relative;
    width: auto;
    min-width: 270px;
  }

  .navbar-search-form form {
    display: flex;
    align-items: center;
    position: relative;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 25px;
    padding: 0.25rem;
    transition: all 0.3s ease;
    height: 2rem;
  }

  .navbar-search-form form:focus-within {
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  }

  .navbar-search-input {
    background: transparent;
    border: none;
    outline: none;
    padding: 0.35rem 0.85rem 0.35rem 0.65rem;
    font-size: 1rem;
    color: #343a40;
    width: 220px;
    height: 100%;
    transition: all 0.3s ease;
  }

  .navbar-search-input::placeholder {
    color: #343a40;
    opacity: 0.65;
    font-weight: 500;
  }

  .navbar-search-form form:focus-within .navbar-search-input {
    color: #343a40;
    font-weight: 600;
  }

  .navbar-search-form form:focus-within .navbar-search-input::placeholder {
    color: #666;
    opacity: 0.5;
  }

  .navbar-search-btn {
    background: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 0.35rem 0.6rem 0.35rem 0.35rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s ease;
    height: 100%;
  }

  .navbar-search-btn:hover {
    transform: scale(1.1);
  }

  .navbar-search-btn:active {
    transform: scale(0.95);
  }

  .navbar-search-btn img {
    filter: brightness(0) saturate(100%) invert(19%) sepia(5%) saturate(704%) hue-rotate(169deg) brightness(92%) contrast(91%);
    transition: filter 0.3s ease;
    opacity: 0.75;
  }

  .navbar-search-btn:hover img {
    opacity: 1;
    filter: brightness(0) saturate(100%) invert(19%) sepia(5%) saturate(704%) hue-rotate(169deg) brightness(92%) contrast(91%);
  }

  .navbar-search-form form:focus-within .navbar-search-btn img {
    filter: brightness(0) saturate(100%) invert(19%) sepia(5%) saturate(704%) hue-rotate(169deg) brightness(92%) contrast(91%);
    opacity: 1;
  }

  /* Responsive: Expand search on larger screens */
  @media screen and (min-width: 1200px) {
    .navbar-search-input {
      width: 300px;
    }
    
    .navbar-search-form {
      min-width: 350px;
    }
  }

  /* Hide navbar search on mobile (already handled by mobile view) */
  @media screen and (max-width: 768px) {
    .navbar-search-form {
      display: none !important;
    }
  }

  .top_promo_attiva {
    background-color: #7B2CBF; /* Bold and vibrant background */
    color: #fff; /* White text for contrast */
    height: 3rem;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999; /* High z-index to ensure it stays on top */
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15); /* Subtle shadow for depth */
    transition: all 0.3s ease;
}

/* Hover effect */
.top_promo_attiva:hover {
    background-color: #663399; /* Darken on hover */
    cursor: pointer;
}

/* Promo text style */
.promo-text {
    flex-grow: 1;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.1rem;
    font-weight: bold;
}

/* CTA Link Style */
.promo-link {
    color: #fff;
    background-color: #000;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 500;
    transition: background-color 0.3s ease;
}

.promo-link:hover {
    background-color: #BED031; /* Highlight CTA on hover */
    color: #000;
}


  .nav-link {
    border-bottom: 2px solid rgba(52,58,64,0);
  }

  .nav-link:focus {
    border-bottom: 2px solid #BED031;
  }

  .top_navbar a:hover{
    color: #343a40;
    }

  .navbar-collapse {
    display: flex;
    align-items: center;
    justify-content: space-around;
    color: #FFF!important;
  }

  .navbar-light .navbar-nav .nav-link {
  padding-right: 20px;
  padding-left: 20px;
  color: #343a40;
  font-weight: 500;
  margin-bottom: 0px!important;
  }

.navbar{
  background-color: rgba(248, 250, 251, 0.8);
  color: #FFF!important;
  z-index: 999;
  }

/* Mobile menu bottom items styling */
.mobile-menu-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 0.5rem;
  padding-top: 0.5rem;
}

.mobile-menu-bottom:first-of-type {
  margin-top: 1rem;
  padding-top: 1rem;
}

.mobile-menu-bottom .nav-link {
  color: #FFF !important;
  font-weight: 500;
}

.mobile-menu-bottom .nav-link:hover {
  color: #BED031 !important;
  background-color: rgba(190, 208, 49, 0.1);
}

/* Mobile menu improvements */
@media screen and (max-width: 992px) {
  /* SOVRASCRIVI tutti gli stili generali per mobile view */
  .mobile-view .nav-link {
    text-align: left !important;
    justify-content: flex-start !important;
    padding: 0.35rem 1rem !important;
    font-size: 0.9rem !important;
    color: #FFF !important;
    background-color: transparent !important;
    margin: 0 !important;
  }

  /* Menu fisso 100% altezza quando aperto - ALTEZZA FISSA */
  .mobile-view .navbar-collapse,
  .mobile-view .navbar-collapse.show,
  .mobile-view .navbar-collapse.collapsing {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    height: 100dvh !important; /* Per dispositivi mobili moderni */
    max-height: 100vh !important;
    max-height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    background-color: rgba(255, 255, 255, 1) !important;
    z-index: 9999 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1rem 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
  }

  /* Quando il menu è chiuso, assicurati che non sia visibile */
  .mobile-view .navbar-collapse:not(.show):not(.collapsing) {
    display: none !important;
  }

  /* REGOLA FINALE - FORZA altezza quando menu è aperto */
  .mobile-view .navbar-collapse.show {
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100vh !important;
    max-height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
  }

  /* Assicura che il menu copra tutto lo schermo anche durante l'animazione */
  .mobile-view .navbar-collapse.collapsing {
    height: 100vh !important;
    height: 100dvh !important;
  }

  /* Quando il menu è aperto, previeni scroll del body */
  body.menu-open {
    overflow: hidden !important;
    height: 100vh !important;
    height: 100dvh !important;
  }

  /* Mostra pulsante chiusura quando menu è aperto */
  .mobile-view .navbar-collapse.show .close-menu-btn {
    display: block !important;
  }

  .close-menu-btn {
    opacity: 0.8;
    transition: opacity 0.2s ease;
  }

  .close-menu-btn:hover {
    opacity: 1;
    color: #BED031 !important;
  }

  /* Allineamento voci a sinistra - FORZA sovrascrittura */
  .mobile-view .navbar-collapse .navbar-nav,
  .mobile-view .navbar-nav {
    text-align: left !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    max-height: 100% !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
  }

  /* Ridurre altezza righe menu */
  .mobile-view .nav-item {
    margin: 0;
    text-align: left !important;
  }

  /* FORZA stili per nav-link mobile - sovrascrive stili generali */
  .mobile-view .navbar-nav .nav-item .nav-link,
  .mobile-view .nav-link {
    padding: 0.35rem 1rem !important;
    text-align: left !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    color: #FFF !important;
    font-size: 0.9rem !important;
    background-color: transparent !important;
    margin: 0 !important;
  }

  /* Freccia per dropdown - all'estremo destro - FORZA sovrascrittura */
  .mobile-view .navbar-nav .nav-item.dropdown .nav-link.mobile-dropdown-link,
  .mobile-view .mobile-dropdown-link {
    position: relative !important;
    width: 100% !important;
    justify-content: space-between !important;
    padding-right: 2.5rem !important;
    text-align: left !important;
  }

  .mobile-view .mobile-dropdown-link .dropdown-arrow,
  .mobile-dropdown-link .dropdown-arrow {
    position: absolute !important;
    right: 1rem !important;
    font-size: 1.5rem !important;
    color: #BED031 !important;
    font-weight: bold !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
    pointer-events: none !important;
    margin-left: auto !important;
  }

  /* Stili per dropdown items */
  .mobile-view .dropdown-item {
    padding: 0.4rem 1.5rem !important;
    font-size: 0.85rem !important;
    text-align: left !important;
  }

  .mobile-view .dropdown-item-sub {
    padding: 0.4rem 2rem !important;
    font-size: 0.8rem !important;
    text-align: left !important;
  }

  /* Rimuovere centratura da Gift card */
  .mobile-view .nav-link[href="buoni-regalo"] {
    justify-content: flex-start;
  }

  /* Spaziatura uniforme per le icone - FORZA sovrascrittura */
  .mobile-view .navbar-nav .nav-link img,
  .mobile-view .navbar-nav .nav-item .nav-link img,
  .mobile-view .mobile-menu-bottom .nav-link img,
  .mobile-view .nav-link img {
    margin-right: 0.75rem !important;
    margin-left: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
    vertical-align: middle !important;
  }

  /* Assicura che tutte le voci siano allineate a sinistra - FORZA */
  .mobile-view .navbar-nav .nav-item,
  .mobile-view .nav-item {
    text-align: left !important;
    width: 100% !important;
  }

  .mobile-view .navbar-nav .nav-item .nav-link,
  .mobile-view .nav-item .nav-link {
    text-align: left !important;
    width: 100% !important;
    justify-content: flex-start !important;
  }

  /* Stili per voci finali (Chi siamo, Contatti, Blog) - FORZA */
  .mobile-view .mobile-menu-bottom .nav-link,
  .mobile-menu-bottom .nav-link {
    justify-content: flex-start !important;
    padding: 0.35rem 1rem !important;
    text-align: left !important;
  }

  /* Eccezione per dropdown: testo a sinistra, freccia a destra - FORZA */
  .mobile-view .navbar-nav .nav-item.dropdown .nav-link.mobile-dropdown-link {
    justify-content: space-between !important;
    text-align: left !important;
    padding-right: 2.5rem !important;
  }

  /* Assicura che tutte le altre voci siano a sinistra */
  .mobile-view .navbar-nav .nav-item:not(.dropdown) .nav-link {
    justify-content: flex-start !important;
    text-align: left !important;
  }

  /* REGOLA FINALE - FORZA tutti gli stili per mobile view */
  .mobile-view .navbar-collapse .navbar-nav .nav-item .nav-link {
    text-align: left !important;
    justify-content: flex-start !important;
    padding: 0.35rem 1rem !important;
    font-size: 0.9rem !important;
    color: #FFF !important;
    background-color: transparent !important;
  }

  /* FORZA dropdown con freccia a destra */
  .mobile-view .navbar-collapse .navbar-nav .nav-item.dropdown .nav-link.mobile-dropdown-link {
    justify-content: space-between !important;
    padding-right: 2.5rem !important;
  }

  /* FORZA spaziatura icone */
  .mobile-view .navbar-collapse .navbar-nav .nav-link img {
    margin-right: 0.75rem !important;
  }

  /* Centra voci specifiche: Occasioni, Gift Card, Lista Desideri, Area Utente - ALTA SPECIFICITÀ */
  .mobile-view .navbar-collapse .navbar-nav .nav-item .nav-link[href="occasioni"],
  .mobile-view .navbar-collapse .navbar-nav .nav-item .nav-link[href="buoni-regalo"],
  .mobile-view .navbar-collapse .navbar-nav .nav-item .nav-link[href*="whishlist"],
  .mobile-view .navbar-collapse .navbar-nav .nav-item .nav-link[href*="account"],
  .mobile-view .navbar-collapse .navbar-nav .nav-item .nav-link[href="login.php"],
  .mobile-view .navbar-nav .nav-item .nav-link[href="occasioni"],
  .mobile-view .navbar-nav .nav-item .nav-link[href="buoni-regalo"],
  .mobile-view .navbar-nav .nav-item .nav-link[href*="whishlist"],
  .mobile-view .navbar-nav .nav-item .nav-link[href*="account"],
  .mobile-view .navbar-nav .nav-item .nav-link[href="login.php"] {
    /* text-align: center !important; */
    justify-content: center !important;
  }

  /* Centra anche le voci nel mobile-menu-bottom - ALTA SPECIFICITÀ */
  .mobile-view .navbar-collapse .mobile-menu-bottom .nav-link,
  .mobile-view .mobile-menu-bottom .nav-link {
    /* text-align: center !important; */
    justify-content: center !important;
  }

  /* Stili per i separatori del menu - usando bordo superiore */
  .mobile-view .menu-item-with-separator {
    border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
    margin-top: 0.5rem !important;
    padding-top: 0.5rem !important;
  }

  .mobile-view .menu-item-with-separator .nav-link {
    margin-top: 0 !important;
  }
}


  .dropdown:hover>.nav-link {
    color: #FFF!important;
  }

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover{
    color: #343a40;
  }

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link  {
    color: #FFF;
  }

  .dropdown-toggle::after {
    content: none;
  }

  .dropdown-menu.show {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: center;
  }

  .dropdown-menu-block {
    width: 99vw!important;
    left: 0px!important;
    background-color: rgba(52,58,64,0.8);
    padding: 2rem 1rem!important;
  }

  .dropdown-submenu{
    white-space: normal;
    word-wrap: normal;
    display: inline-flex;
    max-width: 100%;
    align-items: center;
  }

  .dropdown-menu-menu {
    left: 0px!important;
    width: 99vw!important;
    margin-left: -1px !important;
    margin-top: -1px !important;
    background-color: rgba(52,58,64,0.8);
    padding: 1rem!important;
    border-radius: 0px!important;
  }

  .dropdown-menu-block-sub {
  width: 25vw;
  align-items: flex-start;
  justify-content: space-around;
  padding-left: 1rem;
  }

  .dropdown {
    position: initial;
    margin: 0px!important;
  }

  .dropdown-item-item {
    font-weight: 600;
    border-bottom: 2px rgba(52,58,64,0) solid;
    background-color: #fff;
    margin: .5rem  0rem;
    padding: .2rem 1rem!important;
    width: 200px;
    margin-right: 1rem;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: 75px;
    background-origin:  content-box;
    display: flex;
    align-items: center;
  }

  .dropdown-item-sub {
    width: 200px;
    background-color: rgba(190,208,49,1);
  }

  .dropdown-item-item:hover, .dropdown-item-item:active, .dropdown-item-item::selection, .dropdown-item-item:focus {
  color: #343a40!important;
  background-color: rgba(190,208,49,1);
  }

  .dropdown-item-sub:hover, .dropdown-item-sub:active, .dropdown-item-sub::selection, .dropdown-item-item:focus {
  color: #343a40!important;
  background-color: rgba(190,208,49,1);
  }

  .dropdown-item-navbar-sport {
    font-weight: 600;
    height: 5vh;
    background-position:center; background-repeat: no-repeat; background-size: cover;
    display: flex;
  }

  .sub-dropdown-item-navbar-sport {
    width:100%; height:1rem; background-color:#FFF;
    position: relative;
  }


  ul{
    margin-bottom: 0px!important;
  }


  .footer {
    width: 100%;
    padding: 2rem;
    font-weight: 400;
    background-color: #343A40;
    color: #FFFFFF;
  }

  .footer a {
    color: #FFFFFF;
  }

  .footer li {
    list-style-type: '- ';
    line-height: 2;
  }

  .footer ul {
    padding-left: 1rem;
  }

  .logo_social_footer {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-origin: content-box;
    padding: .5rem;
    border: 1px solid #737373;
    border-radius: .2rem;
    width: 45px;
    min-width: 45px;
    height: 45px;
    min-height: 45px;
    display: inline-block;
    margin-right: .5rem;
  }

  .search-link{
    background-color: #BED031;
    display:flex;
    align-items:center;
    padding:0rem 1.5rem!important;
    border-radius: .25rem;
    justify-content: space-around;
    color: #343a40!important;
  }
  
  
  /* GOOGLE REVIEWS INIZIO*/

.google-reviews-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.rating-summary {
    margin-bottom: 20px;
    text-align:left;
}

.rating-summary h3 {
    margin: 0 0 10px;
}

.rating {
    display: flex;
    align-items: center;
}

.rating-value {
    font-size: 24px;
    margin-right: 10px;
}

.rating-stars {
    color: #f1c40f;
}

.rating-word {
    font-size: 16px;
    color: #343A40;
    margin-left: 10px;
    font-weight: bold;
}

.rating-count {
    font-size: 16px;
    color: #343A40;
    margin-left: 10px;
    color: #FFF;
}

.google-reviews {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 columns with equal width */
    gap: 20px; /* Space between items */
}

.review {
    border: 1px solid #ccc;
    padding: 15px;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    color: #343A40;
    text-align:left;
}

.review h4 {
    margin: 0 0 5px;
    font-size: 18px;
    color: #343A40;
    text-align:left;

}

.review .rating {
    color: #f1c40f;
}

.review p {
    margin: 10px 0;
}

.review .date {
    font-size: 12px;
    color: #888;
}

.google-reviews-container .buttons-container {
    display: flex;
    justify-content: space-between;
    margin-top: 20px; /* Space above the buttons */
}

.review-button {
    font-size: 16px;
    border: 1px solid #FFF;
    border-radius: .25rem;
    padding: .25rem .5rem;
    color: #fff;
    font-weight: bold;
    }
  
  /* GOOGLE REVIEWS FINE*/
  
}
