    body{
      font-family:'Montserrat',sans-serif;
      display: flex;
      flex-direction: column;
      min-height: 100%;
    }
    
    .main {
      flex: 1;
      margin-top: 80px;
    }
    td, th {
      white-space: nowrap;
    }
    .navbar-brand{
      font-weight:700;
      letter-spacing:1px;
    }
    .carousel-item{
      height:100vh;
      min-height:600px;
      background-size:cover;
      background-position:center center;
      position:relative;
      color:#fff;
    }
    .carousel-item::before{
      content:'';
      position:absolute;
      top:0;left:0;
      width:100%;height:100%;
      background:rgba(0,0,0,.45);
      z-index:0;
    }
    .hero-content{
      position:absolute;
      top:50%;left:50%;
      transform:translate(-50%,-50%);
      z-index:2;
      text-align:center;
    }
    .hero-content h1{
      font-size:clamp(2rem,5vw,3.5rem);
      font-weight:700;
    }
    .hero-content p{
      font-size:clamp(1rem,2vw,1.25rem);
      margin-bottom:1.5rem;
    }
    .section-padding{
      padding:4rem 0;
    }
    
    


    .carousel-control-prev,
    .carousel-control-next {
      display: flex !important;  /* Forza la visibilità */
      align-items: center;
      justify-content: center;
      width: 5%;
      opacity: 1; /* opzionale: rendi sempre visibile */
    }
    @media (min-width: 992px) {
      .carousel-item {
        background-position: center 20%;
        background-size: 100%;
        background-repeat: no-repeat;
      }
    }

    @media (max-width: 768px) {
      .carousel-control-prev,
      .carousel-control-next {
        display: none !important; /* Nascondi da mobile, se vuoi */
      }
    }

    .form-container {
      max-width: 600px;
      margin: auto;
      background: #fff;
      padding: 2rem;
      border-radius: 1rem;
      box-shadow: 0 0 30px rgba(0, 0, 0, 0.08);
      margin-top: 80px;
      margin-bottom: 60px;
    }
    .form-title {
      font-weight: 700;
      margin-bottom: 1.5rem;
    }
    /* wrapper: evita che “sfondi” il container */
.breadcrumb-wrap { overflow: hidden; }

/* su mobile: breadcrumb orizzontale scrollabile */
@media (max-width: 576px) {
  .breadcrumb-scroll {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    scrollbar-width: none;        /* Firefox */
  }
  .breadcrumb-scroll::-webkit-scrollbar { display: none; } /* Chrome/Safari */
}

/* ellipsis: taglia le voci lunghe */
.breadcrumb-ellipsis a,
.breadcrumb-ellipsis {
  display: inline-block;
  max-width: 45vw;               /* mobile: limite ragionevole */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
}

/* desktop: puoi permetterti più spazio */
@media (min-width: 577px) {
  .breadcrumb-ellipsis a,
  .breadcrumb-ellipsis { max-width: 360px; }
}
