    .form-container {
      width: 100%;
      max-width: 1200px;
      margin: -10px auto 50px auto;
      padding: clamp(1rem, 3vw, 3rem);
      background-color: #f9f9f9;
      border-radius: 10px;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    }


    .form-container {
  margin-top: -10px; /* ajuste fino */
}

    .form-container h2 {
      text-align: center;
      margin-bottom: 20px;
    }

    #catalogo-produtos {
      max-width: 1400px;
      margin-left: auto;
      margin-right: auto;
    } 
      
@media (min-width: 1600px) {
  #catalogo-produtos {
    max-width: 1600px;
  }
}
    .form-group {
      margin-bottom: 15px;
    }

    .form-group label {
      display: block;
      font-weight: bold;
      margin-bottom: 5px;
    }

    .form-group input,
    .form-group select,
    .form-group textarea {
      width: 100%;
      padding: 10px;
      border-radius: 5px;
      border: 1px solid #ccc;
      box-sizing: border-box;
    }

    .form-group textarea {
      resize: vertical;
    }

    .btn-submit {
      display: block;
      width: 100%;
      padding: 12px;
      background-color: #006400;
      color: white;
      border: none;
      border-radius: 5px;
      font-size: 16px;
      cursor: pointer;
      text-align: center;
      margin-top: 10px;
    }

    .btn-submit:hover {
      background-color: #004d00;
    }

    .back-link {
      display: block;
      text-align: center;
      margin-top: 20px;
      color: #006400;
      text-decoration: none;
      font-weight: bold;
    }

    .back-link:hover {
      text-decoration: underline;
    }

    
    .checkbox-button{
        position: relative;
        display: inline-block;
        background: #fff
    }
    .checkbox-button .checkbox-wrapper {
        width: 26px;
        height: 26px;
        display: inline-block;
        vertical-align: middle;
        border: 2px solid #555;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        margin-right: 5px;
        margin-left: 10px;
        background: #fff
    }
    .checkbox-button input[type="checkbox"] {
        width: 26px;
        height: 26px;
        margin: auto;
        opacity: 0;
        position: absolute;
        z-index: 2;
        background: #fff
    }
    .checkbox-button label{
        display: inline-block;
        vertical-align: middle;
        font-size: 16px;
        font-family: "latobold";
        color: #2A2A2A;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0px;
        margin-left: 5px;
        padding: 5px;
    }
    .checkbox-button .checkbox-wrapper::after{
        content: '';  
        width: 60%;   /* largura relativa ao quadrado */
        height: 35%;  /* altura relativa ao quadrado */
        position: absolute;
        top: 50%;
        left: 50%;
        border: 2px solid #2980b9;
        border-top: 0;
        border-right: 0;
        background: transparent;
        opacity: 0;
        transform: translate(-50%, -50%) rotate(-45deg);
        z-index: 1;
    }
    .checkbox-button input[type="checkbox"]:checked + .checkbox-wrapper::after{
        opacity: 1;
    }
    .checkbox-button input[type="checkbox"]:checked + .checkbox-wrapper{
        border: 2px solid #2980b9;
    }
    .checkbox-button input[type="checkbox"]:checked + .checkbox-wrapper + label{
        color: #2980b9;
    }
    .checkbox-button input[type="checkbox"]:disabled + .checkbox-wrapper{
        border: 2px solid #D0D2D3;
    }
    .checkbox-button input[type="checkbox"]:disabled + .checkbox-wrapper + label{
        color: #D0D2D3;
    }

    .produto-card {
      height: 100%;               /* mantém os cards com altura igual na row */
    }

    .produto-card .card-img-top {
      margin-bottom: 0.25rem;      /* reduz o espaço embaixo da imagem (era ~1rem padrão do Bootstrap) */
      
    }

    .produto-card .card-body {
      padding: 0.5rem 0.75rem 1rem; /* padding-top menor → título fica mais perto da imagem */
      display: flex;
      flex-direction: column;
    }

    .produto-card .card-title {
      min-height: 2.8rem;         /* ou 3em — ajusta conforme os títulos mais longos */
      margin-top: 0;              /* remove qualquer margem superior indesejada */
      margin-bottom: 0.5rem;
      line-height: 1.3;
    }

    .produto-card .card-text {
      min-height: 3rem;           /* garante que descrições curtas/longas ocupam o mesmo espaço */
      margin-bottom: 0.75rem;     /* espaço entre texto e botão */
      font-size: 0.875rem;
      flex-grow: 1;               /* ← faz o texto ocupar o espaço disponível (opcional mas melhora muito) */
    }

    .produto-card .btn.adicionar {
      margin-top: auto;           /* empurra o botão para o final do card → fica alinhado embaixo */
      align-self: center;         /* centraliza horizontalmente */
      min-width: 120px;           /* todos os botões com largura parecida */
      /* padding: 0.5rem 1rem;    opcional: botão um pouco maior */
    }

#modalQuantidadeSimples .modal-content,
#modalPersonalizado .modal-content {
  border-radius: 1rem;
  overflow: hidden;
}

#modalQuantidadeSimples .modal-header,
#modalPersonalizado .modal-header {
  background-color: #f8f9fa;
}

#modalQuantidadeSimples .btn-primary,
#modalPersonalizado .btn-primary {
  background-color: #045021;
  border-color: #0dfd65;
}

#modalQuantidadeSimples .input-group .form-control,
#modalPersonalizado .input-group .form-control {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}

#modalQuantidadeSimples .btn-outline-secondary,
#modalPersonalizado .btn-outline-secondary {
  font-size: 1.25rem;
  padding: 0.5rem 1rem;
}
/* Corrige modal que fica por trás do backdrop */
.modal {
  z-index: 1060 !important;     /* valor padrão do Bootstrap é 1050 para backdrop + 1055 para modal */
}

.modal-backdrop {
  z-index: 1050 !important;     /* garante que o fundo fica abaixo do modal */
}

.modal-backdrop.show {
  opacity: 0.5 !important;      /* opcional: ajusta transparência se quiseres */
}