

footer a{font-size: 14px}
a, h2 {color: #0e0f0c !important}

li a, .sidebar a {
    text-decoration: none;
}
li a:hover, .sidebar a:hover {
    text-decoration: none;
}

/* Para navegadores baseados em WebKit (Chrome, Edge, Safari) */
::-webkit-scrollbar {
  width: 6px;   /* largura da barra vertical */
  height: 6px important;  /* altura da barra horizontal */
}

::-webkit-scrollbar-thumb {
  background-color: #888;   /* cor do "polegar" */
  border-radius: 10px;      /* cantos arredondados */
}

::-webkit-scrollbar-thumb:hover {
  background-color: #555;   /* cor ao passar o mouse */
}

::-webkit-scrollbar-track {
  background: transparent;  /* fundo do trilho */
}

/* Para Firefox */
* {
  scrollbar-width: thin;        /* opções: auto | thin | none */
  scrollbar-color: #888 transparent; /* cor do polegar e do trilho */
}

/* Padrão (desktop) */
.litepicker {
  max-width: 720px;
  height: auto;
}

.bg-primary{background: #0a6044 !important}
.bg-secondary{color: #a7e04c !important}

.custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    border-color: #0a6044 !important;
    background-color: #0a6044 !important;
}

/* cor global de todos os radios */
input[type=radio], .plan-radio {
  accent-color: #0a6044 !important; /* verde escuro da sua paleta */
   width: 18px;
  height: 18px;
    margin-right: 2px;

}

input[type=checkbox] {
  accent-color: #0a6044; /* mantém a cor verde */
  transform: scale(1.3); /* aumenta 30% o tamanho */
  margin-right: 6px;     /* espaço pro texto não colar */
}

.sticky-card{
  position: sticky;       /* gruda dentro do seu container scrollável */
  top: 10px;              /* distância do topo quando “grudar” */
  border-radius: 16px;
  z-index: 1;             /* opcional, pra ficar acima de conteúdos vizinhos */
}


.card-header, .card-footer{background: transparent !important}

.boder-green{border:1px solid #ccd2d0;}

/* Mobile fullscreen */
@media (max-width: 1207px) {
  .litepicker {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    z-index: 9999 !important;
    background: #fff !important;

    display: flex;
    flex-direction: column;
  }

  /* Área dos meses ocupando todo espaço */
  .litepicker .container__months {
    flex: 1 1 auto;
    overflow-y: auto;
    display: flex;
    flex-direction: column; /* 1 mês abaixo do outro */
  }

  /* Rodapé fixo no fundo (botão aplicar/reset) */
  .litepicker .container__footer {
    position: sticky;
    bottom: 0;
    background: #fff;
    border-top: 1px solid #eee;
    padding: 12px;
  }

  /* Texto mais confortável no touch */
  .litepicker,
  .litepicker * {
    font-size: 16px;
  }

  .litepicker .day-item {
    min-width: 40px;
    min-height: 40px;
    line-height: 40px;
  }

   .litepicker .container__months .month-item {
    width: 95% !important;
    margin: 0 auto !important;
  }

  .litepicker .container__days {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(7, 1fr); /* 7 colunas, sempre 100% */
  }

  .litepicker .day-item {
    width: 100% !important;
  }
}

.badge-primary {
    color: #a7e04c !important;
    background-color: #063928 !important;
}

.badge-secondary {
    color: #073929 !important;
    background-color: #a7e04c !important;
   
}
.badge-danger {
    background: #fde8ea !important;
    color: #9b0014 !important;
}

.badge ion-icon {
  font-size: 20px !important;   /* tamanho do ícone */
  vertical-align: -2px; /* centraliza melhor no texto */
  margin-right: 4px;
}
.badge {
  display: inline-flex!important;
  text-transform: capitalize;
  align-items: center!important;
  vertical-align: center!important;
  justify-content: center!important;
  border: 1px solid #ddd!important;
  margin: 0 6px 6px 0!important; /* espaçamento tipo "gap" */
  width: auto !important; border-radius: 16px !important; padding: 10px 10px !important; margin: 2px !important;
}


.host-box {
  background: #fff;
}
.host-photo img {
  border: 2px solid #eee;
}
.host-info h5 {
  font-weight: 600;
}



.badge-outline-primary {
    color: #063928 !important;
    background-color: transparent !important;
    border:1px solid #063928 !important;
}


.badge-success {
    color: #0a6044 !important;
    background-color: #a7e04c !important;
}
.text-primary {
    color: #0a6044 !important;
}
.alert-info {
    color: #0a6044 !important;
    background-color: #a7e04c !important;
    border-color: #a7e04c !important;
}
.alert-success {
    color: #0a6044 !important;
    background-color: #a7e04c !important;
    border-color: #a7e04c !important;
}

label{font-weight: 500}
.title-large{font-size:56px !important; font-weight: 700; color: #084934}
.title-medium{font-size:40px !important; font-weight: 700; color: #084934}

.category-blog{   background-color: rgba(0, 0, 0, 0);
    color: #063928;
    position: relative;
    margin-top: 10px;
    display: inline-block;
    font-size: 10px !important;
    line-height: 1.2 !important;
    text-transform: uppercase;
    font-weight: 500 !important;
    letter-spacing: 0.8px !important;">
  }

  .owl-nav button.disabled {
  display: none !important;
}

/* Contêiner com razão 16:9 e recorte elegante */
.img-cover{
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;   /* ajuste p/ 4/3, 3/2, etc. */
  overflow: hidden;
}

/* Imagem preenche o contêiner sem deformar */
.img-cover > img{
  width: 100%;
  height: 100%;
  object-fit: contain;     /* preenche cortando as sobras */
  object-position: top center;
  display: block;
  z-index: 1;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}



main{padding: 15px 0}
section{padding-bottom: 80px !important}
h1{font-size: 1.6rem !important}
h2{font-size: 1.3rem !important}
h3{font-size: 1.2rem !important}
p{font-size: 16px}
ul{line-height: 1.8rem}

a, .btn-link {
    text-decoration: none !important;
}

a:hover, a:focus, .btn-link :hover, .btn-link :focus {
    text-decoration: none !important;
}

.card-menu:hover{background: #eaf1de; cursor: pointer;}  

#nprogress .bar {
    background: #a7e04c !important; /* Cor principal */

}
.modal-header, .modal-footer{border: none !important}

/* Hover */
.menu-item:hover {
    background-color: #f0f0f0;
}

/* Item ativo */
.menu-item.active {
    background-color: #f0f0f0; /* Cor de fundo ativa */
         border-radius: 24px;


}

.menu-item.active a {
    color: #fff; /* Texto e ícones brancos quando ativo */
}





#nprogress .peg {
    box-shadow: 0 0 10px #0a6044, 0 0 5px #a7e04c !important;
}

#nprogress .spinner-icon {
    display: none; /* Remove o spinner circular opcional */
}

.logo-footer{max-width: 50px}

.navbar-dark .navbar-nav .nav-link{font-weight: 500}

.btn-login{
  font-weight: 700;
   display: flex;
   align-items: center;
   justify-content: center;
    letter-spacing: 0.1px;
    line-height: 24px;
    text-transform: none;
    border-radius: 8px;
    box-sizing: border-box;
    cursor: pointer;
    margin: 0px;
    gap:20px;
    max-width: 100%;
    outline: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: transform 0.15s ease-out, border 0.15s ease-out, background-color 0.15s ease-out, color 0.15s ease-out;
    transform: scale3d(1, 1, 1);
    padding: 11px 15px;
    min-height: 48px;
    background-color: rgb(255, 255, 255);
    border: 1px solid rgb(208, 208, 208);
    color: rgb(65, 65, 67);
    width: 100%;
}
.btn-login:hover{background: #f1f1f1}

.modal-header .close {
  font-size: 2.2rem; /* aumenta o tamanho da cruz */
  width: 3rem;   /* aumenta área clicável (opcional) */
  height: 3rem;  /* aumenta área clicável (opcional) */
  font-weight: normal;
  line-height: 2.5rem; /* centraliza verticalmente o "×" */
  padding: 1rem 2rem !important;
}
button:focus {
  outline: none;
  box-shadow: none;
}
button:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.5); /* sombra azul clara */
}

button:focus,
button:active,
.btn:focus,
.btn:active {
  outline: none !important;
  box-shadow: none !important;
}
.modal-backdrop.show {
    background-color: #000;  /* preto */
    opacity: 0.2 !important; /* padrão é 0.5, diminua para clarear */
}

.list-group{border-radius: 16px !important}

/* Aumenta largura do dropdown e deixa cantos arredondados */
.dropdown-menu {
    min-width: 320px !important;       /* Largura mínima */
    max-width: 320px !important;       /* Opcional: largura máxima */
    border-radius: 20px !important;    /* Cantos arredondados */
    overflow: hidden;       /* Faz o arredondamento valer */
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); /* Sombra opcional */
}

.dropdown .rounded{border-radius: 12px !important}

/* Cada item arredondado e com espaçamento */
.dropdown-item {
    border-radius: 6px;
    margin: 0 4px;        /* Espaço entre os itens */
    padding: 8px 0.5em !important;      /* Aumenta área de clique */
    width: auto !important;
}

.dropdown-item:hover {
    background-color: #f1f1f1;
}

.dropdown-menu .dropdown-item:focus,
.dropdown-menu .dropdown-item:active {
  background-color: white !important;
  color: #000 !important;
}

/* Links e dropdowns centralizados verticalmente */
.navbar .nav-link,
.navbar .dropdown-toggle,
.navbar .btn {
  display: flex;
  align-items: center;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  height: 60px; /* mesma altura da navbar */
}
.btn-close{color: #555}

.profile-photo-wrapper {
        position: relative;
        width: 110px;
        height: 110px;
        margin-bottom: 1rem;
        text-align: center;
    }

    .profile-photo-wrapper img {
        width: 110px;
        height: 110px;
        object-fit: cover;
        text-align: center;
        border-radius: 50%;
        cursor: pointer;
    }

    /* Esconde input file */
    #profile_photo {
        display: none;
    }

    .btn-upload-photo {
        display: inline-block;
        margin-top: 0.5rem;
        cursor: pointer;
        color: #007bff;
        font-weight: 600;
    }




      .accordion-item {
    border-bottom: 1px solid #ddd;
    border-radius: 5px;
    margin-bottom: 10px;
    overflow: hidden;
  }
  .accordion-header {
    background: #fff;
    cursor: pointer;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
    font-weight: 600;
  }
  .accordion-header:hover {
    background: #fff;
  }
  .accordion-icon {
    transition: transform 0.3s ease;
    font-size: 20px;
  }
  .accordion-item.active .accordion-icon {
    transform: rotate(180deg);
  }
  .accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: white;
    padding: 0 20px;
  }
  .accordion-item.active .accordion-content {
    padding: 15px 20px;
    max-height: 500px; /* ajuste conforme o conteúdo */
  }

/* Estilos para mobile até 576px */
@media (max-width: 576px) {

  .only-mobile{
    display: block;
  }
  .only-desktop{
    display: none;
  }

  .nav-link {
    padding: 0.8rem 1rem !important;
  }

  .title-large{font-size:32px !important; }

.title-medium{font-size:32px !important; font-weight: 700; color: #073929}

  /* Barra “grande” por baixo, pegando a base do texto */
  .u-underline::after{
    content: "";
    position: absolute;
    right: 10px;                /* encosta à direita */
    bottom: 0.10em;          /* invade levemente o bottom do texto */
    width: 22%;              /* quanto da largura do texto a barra ocupa */
    height: 0.40em;          /* grossura do sublinhado */
    background: #a7e04c;     /* cor do sublinhado */
    z-index: -1;             /* fica atrás das letras */
  }

}

/* Estilos para tablets entre 577px e 768px */
@media (min-width: 577px){
  .only-mobile{
    display: none;
  }
  .only-desktop{
    display: block;
  }
}















table.dataTable.no-footer {
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
}
/* Estilo para bordas com cor #ddd */
table.dataTable,
table.dataTable th,
table.dataTable td {
    border-color: #ddd !important;
}
button:focus {
    outline: 0 !important;
}
.modal-content {
    border-radius: 16px !important; /* Ajuste o valor para mais ou menos arredondado */
}
/* Estilo para borda do botão de detalhe */
.details-control {
    border-color: #ddd !important;
}
.img-profile {
    width: 50px; /* Ajuste conforme necessário */
    height: 50px;
    border-radius: 50%
}
/* Corrige sobreposição de modal do Bootstrap */
.modal {
  z-index: 1060 !important; /* acima do backdrop */
}
.modal-backdrop {
  z-index: 1050 !important;
}
table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before {
background-color: #03215d
}
.card {
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.0);
    border: 1px solid #1a2e46;
}
.card-login{border-radius: 16px; background: rgba(255, 255, 255, 0.0);
    border: 1px solid #0a6044;}

.primary-color{color: #09523a  !important}
.secondary-color{color: #92c83b  !important}

.btn-link{color: #084934 !important; font-weight: bold !important}

.btn-primary-custom{
    display: inline-block;
    font-weight: bold;
    background: #0a6044;
    color: #a7e04c;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;        
    border: 0;
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.1rem !important;
    line-height: 1.2;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-primary-custom:hover, .btn-primary-custom:focus, .btn-primary-custom:active, .btn-primary-custom:visited{
    background: #a7e04c;
    color: #063928 !important;
    border: 0;
}
.btn-primary-custom[disabled] {
  opacity: 0.65;              /* deixa mais claro */
  cursor: not-allowed;        /* mostra cursor de "bloqueado" */
           /* opcional: cor do texto diferente */
}

.btn-outline-secondary {
  background: #fff !important;;
    color: #0a6044 !important;
    border-color: #0a6044 !important;
    border: 1px solid #0a6044 !important;
    text-align: center!important;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;        
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.1rem !important;
    line-height: 1.2! important;
    border-radius: 30px !important;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out!important;
}
.btn-outline-secondary:hover{background: #0a6044 !important; color: #a7e04c !important;}

.btn-secondary-custom{
    display: inline-block;
    font-weight: bold;
    background: #a7e04c;
    color: #063928 !important;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 0;
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.1rem !important;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-secondary-custom:hover, .btn-secondary-custom:focus, .btn-secondary-custom:active, .btn-secondary-custom:visited{
    background: #0a6044;
    color: #a7e04c !important;
    border: none;
}
.btn-secondary-custom-small{
    display: inline-block;
    font-weight: bold;
    background: #a7e04c;
    color: #0a6044;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 0;
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.0rem !important;
    line-height: 1.5;
    border-radius: 20px;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-secondary-custom-small:hover, .btn-secondary-custom-small:focus, .btn-secondary-custom-small:active, .btn-secondary-custom-small:visited{
    background: #0a6044;
    color: #a7e04c;
    border: none;
}

.btn-primary-custom-outline{
    display: inline-block;
    font-weight: bold;
    background: #fff;
    color: #0a6044;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #0a6044;
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.1rem !important;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-primary-custom-outline:hover, .btn-primary-custom-outline:focus, .btn-primary-custom-outline:active, .btn-primary-custom-outline:visited{
    background: #a7e04c;
    color: #0a6044;
    border: 0;
}

.btn-primary-custom-danger{
    display: inline-block;
    font-weight: bold;
    background: #fff;
    color: #dc4c4c;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #dc4c4c;
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.1rem !important;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-primary-custom-danger:hover, .btn-primary-custom-danger:focus, .btn-primary-custom-danger:active, .btn-primary-custom-danger:visited{
    background: #dc4c4c;
    color: #fff;
    border: 0;
}



.btn-danger-custom-outline{
    display: inline-block;
    font-weight: 500 !important;
    background: #fff;
    color: #dc4c4c;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #dc4c4c;
    letter-spacing: -.011em;
    padding: calc(10px - 1px) 24px !important;
    font-size: 1.1rem !important;
    line-height: 1.5;
    border-radius: 30px !important;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-danger-custom-outline:hover, .btn-danger-custom-outline:focus, .btn-danger-custom-outline:active, .btn-danger-custom-outline:visited{
    background: #dc4c4c;
    color: #fff;
    border: 0;
}



.btn-primary-custom-light{
    display: inline-block;
    font-weight: bold;
    background: #949ea7;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 0;
    letter-spacing: -.011em;
    padding: calc(12px - 1px) 24px !important;
    font-size: 1.1rem !important;
    border-radius: 16rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn-primary-custom-light:hover, .btn-primary-custom-light:focus, .btn-primary-custom-light:active, .btn-primary-custom-light:visited{
    background: #5a6268;
    color: #fff;
    border: 0;
}

.layoutContainer{position: relative; display: flex;}
.header {
    background-color: #fff;
    border-bottom: 1px solid #0a6044;
    padding: 10px 20px;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 0;
}

ion-icon{font-size: 24px; color:#085038;}
h4{font-size: 18px; margin-bottom: 20px}



.sidebar ul {
    padding-left: 0;
    margin-top: 30px; /* Remover espaçamento superior da lista */
    list-style: none;
}
.sidebar li {
    margin-bottom: 0; /* Remover espaçamento entre os links */
}
.sidebar a {
    display: flex; /* Alinhar itens verticalmente */
    align-items: center; /* Alinhar itens verticalmente */
    padding: 10px;
    color: #052d20;
    text-decoration: none;
    transition: background-color 0.3s; /* Transição suave da cor de fundo */
}
.sidebar a:hover {
    background-color: #f1f1f1; /* Cor de fundo ao passar o mouse */
}
.sidebar .icon {
    margin-right: 10px; /* Espaçamento entre o ícone e o texto do link */
    font-size: 22px; /* Tamanho do ícone */
    background-color: #fff; /* Cor de fundo padrão para o ícone */
    border-radius: 50%; /* Borda arredondada para o ícone */
    padding: 6px; /* Espaçamento interno para o ícone */
}
.sidebar .active .icon {
    background-color: #f1f1f1; /* Cor de fundo para o link ativo */
}
.sidebar .active a span {
    font-weight: bold; /* Deixa o texto em negrito */
}
.content {
    margin-left: 250px; /* Largura do sidebar */
    padding-top: 90px; /* Altura do cabeçalho */
    padding-left: 20px;
}

.card-numero{font-size: 46px}
.btn-menu{display: none;}

.card-primary{background: #0a6044; color: #a7e04c; display: inline-block; border: 1px solid #0a6044; border-radius: 12px;padding: 15px;margin-bottom: 30px}
.card-secondary{background: #a7e04c; color: #0a6044;display: inline-block; border: 1px solid #a7e04c; border-radius: 12px;padding: 15px;margin-bottom: 30px}
.card-tertiary{background: #e0e6eb; color: #1a2e46;display: inline-block; border: 1px solid #e0e6eb; border-radius: 12px;padding: 15px;margin-bottom: 30px}
.card-padrao{background: #fff; color: #000;display: inline-block; border: 1px solid #ddd; border-radius: 12px;padding: 15px;margin-bottom: 30px}



.toast-success {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background-color: #a7e04c; /* verde */
  color: #0a6044;
  padding: 10px 15px;
  border-radius: 5px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  font-weight: 600;
  z-index: 9999;
  opacity: 1;
  transition: opacity 0.5s ease-in-out;
}
.toast-success.hide {
  opacity: 0;
}


.session-left{ margin-right: -100px; border-radius: 30px }

.data-retirada-col{width: 60%}
.hora-retirada-col{width: 40%}

.floating-label > label {
    position: absolute;
    /* posição “inicial” (sobre a área do input) */
    top: -8px;
    left: 0.65rem;
    font-size: 0.9rem;
    color: #0a6044;
    pointer-events: none;
    transition: all 0.2s ease;
    background: #fff;
    padding: 0 0.25rem;
    z-index: 2;
    font-weight: 400;
  }

  /* padding extra para os inputs */
  .floating-label input {
    padding: 1.25rem 0.75rem 1.2rem 0.75rem; /* espaço extra pro label */
    background: #fff;
     font-size: 0.9rem;
     height: 46px;
     background: transparent;
  }


@media(max-width:576px){
    .NavigationContainer-links{padding: 0 }

    .PaneContent{padding: 10px;padding-bottom: 80px}
    .sidebar a{font-size: 18px}
    .btn-menu{display: block;}
    .content {
        margin: 15px; /* Largura do sidebar */

        padding: 15px; /* Altura do cabeçalho */
        padding-top: 80px;
    }
    .sidebar{display: none; width: 100%; padding: 15px;font-size: 22px}

    main{padding-top: 0}

    .session-left{ margin-right: 0; margin-top: -120px}

    .data-retirada-col{width: 70%}
     .hora-retirada-col{width: 30%}

    .floating-label > label{
     font-size: 1.0rem;
    }

     .floating-label .d-flex {
      display: block !important;
    }
    .floating-label .d-flex > .form-control + .form-control {
      margin-left: 0 !important;
      margin-top: .5rem;
    }

      /* padding extra para os inputs */
  .floating-label input {
       font-size:1.0rem;
    }



}



















/*Custom code*/
html {
  /*scroll-behavior: smooth;*/
}
p{color: #000}
.search-form-listing{background: #fff; border-radius: 40px}

.serch-show-form{display: none;}
  #btn-seach-empty, #btn-seach-isset, #btn-close-form-search{display: none;}

.col-results-and-filter{
position: relative; display: inline-block;width: 49%; vertical-align: middle;
}
.avatar{position: relative; width: 100%; max-width: 50px; border-radius: 50%}
.listing-icons{position: relative; display: inline-block;width: 20px; height: 20px}
body {
    font-family: 'Poppins', sans-serif;
}
.main-content{padding-top: 40px}
.main-article{width: 100%; max-width: 800px; margin: 0 auto}

.block-text{position: relative;display:block;}
.block-text span{vertical-align: middle; display: inline-block; position: relative;}
.block-text-badge{vertical-align: middle; display: inline-block;border-radius: 20px; font-size: 14px;  position: relative;background: #a7e04c; color: #fff;
  padding: 2px 8px; }

.sticky-top {
      position: -webkit-sticky;
      position: sticky;
      top: 15%;
      z-index: 1020;
      background-color: white; 
}
.font-hero{font-size:46px};

.badge-featured{position: absolute;left: 5%; top:5%; font-size: 12px; padding: 5px; border-radius: 20px; font-weight: bold; width: auto;z-index: 2; background: #a7e04c; color: #fff}

.modal-booking{display: block;}

.bold{font-weight: bold}

.notify-success{
  white-space: normal;
  padding: 10px;
  line-height: 24px;
  border-radius: 4px;
  margin-bottom: 15px;
  color: #a7e04c;
  border: 1px solid #a7e04c;
  font-weight: bold;  
  text-align: center;
  font-size: 14px
}
.notify-danger{
  white-space: normal;
  padding: 10px;
  line-height: 24px;
  border-radius: 4px;
  margin-bottom: 15px;
  color: #c31b1b;
  border: 1px solid  #c31b1b;
   font-weight: bold;  
  text-align: center;
  font-size: 14px
}
.btn-link{outline: none; text-decoration: none;}

.input-qtn {
            width: auto;
            text-align: center;
            
        }
.btn-qtn{padding: 5px; background: #a7e04c; color: #fff; border-radius: 50%;}
.btn-qtn:hover{background: #0a6044; color: #fff; border-radius: 50%;}

/* bg Header Home */
.bg_image_header_home {
  position: relative;
  text-align: center;
 }
.bg_image_header_home::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0.9;
  background: #fff;
  background-image: url(https://7thplaces.com/images/banner.jpg);
  background-size: cover;
  background-position: center;
  border-bottom-left-radius: 120px

}
.content_image_header_home {
  display: grid;
  place-content: center;
  text-align: center;
  min-height: 600px;
}
/* bg Header article */
.bg_image_header {
  position: relative;
  text-align: center;
 }
.bg_image_header::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0.9;
  background: #fff;
  background-image: url(https://7thplaces.com/images/christian-hospitality.jpg);
  background-size: cover;
  background-position: center;
}
.content_image_header {
  display: grid;
  place-content: center;
  text-align: center;
  min-height: 350px;
  
}

.alert-info {
  background-color: #E3F0F6;
  border-color: #E3F0F6;
  color: #4f5962;
  font-weight: 600
}

.facilities_card{position: relative;display: inline-block;width: 18%;padding:0px; margin: 5px;text-align: center;}
.facilities_card img{position: relative; width: 70%;border-radius: 50%;opacity: 0.8}
#precoMin, #precoMax {
            position: relative;
            width: 50%;
            display: inline-block;
        }
.input-icon ion-icon {
    vertical-align: middle;
}

.card-listing{position: relative; width: 100% }
.card-listing img{ border-radius: 16px;height: 300px;}


.page-footer a{color: #122133; font-weight: 500; outline: none; text-decoration: none}
.logo{width: 100%; max-width: 140px;}
.logo-page{width: 100%; max-width: 160px;}
.logo-registration{width: 100%; max-width: 60px;}
footer{background: #fff}
.navbar-light .navbar-nav .active>.nav-link.scrolled {
    color: red;
}
select::after{background: red}
.color-primary{color: #0a6044} 
.color-danger{background: #dc5252}
.btn-primary-custom {
    display: inline-block;
    font-weight: 600;
    background: #0a6044;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 0.9rem 1.75rem;
    font-size: 1.2rem;
    line-height: 1.5;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-danger-custom {
    display: inline-block;
    font-weight: 600;
    background: #dc5252;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px #dc5252;
     padding: 0.9rem 1.75rem;
    font-size: 1.2rem;
    line-height: 1.5;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-danger-custom:hover {
    display: inline-block;
    font-weight: 600;
    background: #c94545;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px #c94545;
     padding: 0.9rem 1.75rem;
    font-size: 1.2rem;
    line-height: 1.5;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-primary-custom-outline {
    display: inline-block;
    font-weight: 600;
    background: #fff;
    color: #0a6044;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #0a6044;
     padding: 0.9rem 1.75rem;
    font-size: 1.2rem;
    line-height: 1.5;
    border-radius: 2rem;
        box-shadow: none;

    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-primary-custom-outline:hover {
    display: inline-block;
    font-weight: 600;
    background: #0a6044;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #0a6044;
     padding: 0.9rem 1.75rem;
    font-size: 1.2rem;
    line-height: 1.5;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.price{width: 100%; display: flex; font-size: 22px; font-weight: bold;}
.color-primary{color: #0a6044}
.color-secondary{color: #a7e04c}

.btn-primary-custom:hover, .btn-primary-custom:active, .btn-primary-custom:visited, .btn-primary-custom:focus, .btn-primary-custom:active:focus {
    background-color: #a7e04c;
    border: #a7e04c;
    color: #0a6044;
}
.btn-outline-custom {
    display: inline-block !important;
    font-weight: 600!important;
    background: #fff!important;
    color: #0a6044!important;
    text-align: center!important;
    vertical-align: middle!important;
    -webkit-user-select: none!important;
    -moz-user-select: none!important;
    -ms-user-select: none!important;
    user-select: none!important;
     border: 1px solid #0a6044!important;
    box-shadow: 0 !important;
     padding: 0.3rem 1.75rem!important;
    font-size: 1.2rem!important;
    line-height: 2!important;
    border-radius: 2rem!important;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out!important;
}
.btn-outline-custom:hover, .btn-outline-custom:active, .btn-outline-custom:visited, .btn-outline-custom:focus, .btn-outline-custom:active:focus {
    background-color: #a7e04c!important;
    border: #a7e04c!important;
    color: #0a6044!important;
    border: 2px solid #a7e04c!important;

}


.btn-outline-filter {
    display: inline-block;
    font-weight: 600;
    margin: 2px;
    background: #fff;
    color: #0a6044;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    cursor: pointer;
    user-select: none;
     border: 1px solid #ddd;
   /* box-shadow: 0 3px 12px 0 rgba(0,0,0,0.1), 0 1px 2px 0 rgba(0,0,0,0.08);*/
    padding: 0.55rem 0.75rem;
    font-size: 0.9rem;
    line-height: 1.5;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-outline-filter:hover{
  border: 1px solid #a7e04c;

}
.highlight {
  background: #a7e04c;
  color: #fff;
  border: 1px solid #a7e04c;
}

.modal-header .close {
    padding: 0.6rem 0.6rem;
    margin: 0.05rem 0.05rem 0.05rem auto;
}

.search-border{border: 1px solid #ddd;
    box-shadow: 0 3px 12px 0 rgba(0,0,0,0.1), 0 1px 2px 0 rgba(0,0,0,0.08);}

.color-secondary{color: #a7e04c}

.btn-secondary-custom {
    display: inline-block;
    font-weight: 600;
    background: #a7e04c;
    color: #0a6044;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px #0a6044;
     padding: 0.9rem 1.75rem;
    font-size: 1.2rem;
    line-height: 1.5;
    font-weight: 600;
    border-radius: 1.8rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-secondary-custom:hover, .btn-secondary-custom:active, .btn-secondary-custom:visited, .btn-secondary-custom:focus, .btn-secondary-custom:active:focus {
    background-color: #0a6044;
    border: #0a6044;
    color: #a7e04c;
}

.favorite-icon{position: relative; width: 100%}

.text-left-mobile{text-align:left; }

/* Input with icon */
 .input-icon {
      display: flex;
      align-items: center;
    font-weight: 600;
    background: #fff;
    color: #0a6044;
    text-align: left;
    vertical-align: middle;
    border: 1px solid #ddd;
    box-shadow: 0 3px 12px 0 rgba(0,0,0,0.1), 0 1px 2px 0 rgba(0,0,0,0.08);
    padding: 0.75rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 2rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }

    .input-icon ion-icon {
      margin-right: 5px;
      margin-left: 5px;
      color: #333;
    }
    .custom-input-icon {
      border: none;
      outline: none;
      width: 200px;
      font-size: 16px;
      padding-left: 8px
    }
/* Input with icon */

.modal-content{border-radius: 16px}
.card{border-radius: 14px}
.card-header{border: 0}
.card-body{padding-top: 0}
.footer-copyright{text-align: left; font-size: 14px}
.terms{text-align: right;}
.card-title {font-weight: 600; }
.mobile-content{position: relative; display: none;}

#modal-menu{
	position: fixed; 
	display: none;
	width: 100%;
	height: 100%;
	left: 0;right: 0;
	top: 0;
	bottom: 0; 
	background: #fff; 
	padding: 15px;
	text-align: center;
	z-index: 9999
}
.link-apps{position: relative; display: inline-block; width: 100%; max-width: 160px}

/*about session*/
.about-session{}
.about-session img{width: 100%;}
.session-text{padding: 120px; margin: 0}
.full-width{width: 100%;}

/*host-banner*/
.host-banner{border-radius: 60px}
.host-banner .container{padding:60px; border-radius: 20px;}
.host-banner-text{padding: 30px; background: #fff; border-radius: 40px;}

.card-border{text-align: center; padding: 5px 40px;}
.text-left-session{text-align: left;}
.text-right-session{text-align: right;}


/* Qnt guest*/

.counter {
    width: auto;
  
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.counter input {
    width: 50px;
    border: 0;
    line-height: 30px;
    font-size: 20px;
    text-align: center;
   
    color: #0a6044;
    appearance: none;
    outline: 0;
}
.counter span {
    display: block;
    font-size: 22px;
    width: 30px;
    text-align: center;
    height: 30px;
    border-radius: 50%;
    padding: 0px;
    cursor: pointer;

    color: #a7e04c;
}
.down:hover, .up:hover{background: #ddd}
/* Qnt guest*/


/*Boostrap changed*/
ul li{list-style: none}
a:link { 
  text-decoration: none; 
} 
a:visited { 
  text-decoration: none; 
} 
a:hover { 
  text-decoration: none; 
} 
a:active { 
  text-decoration: none; 
}


.badge{background: #0a6044; color: #fff; font-weight: bold; padding: 4px; width: 20px; height: 20px; border-radius: 50%}

.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    margin-top: 0.9rem;
}
#accordion{cursor: pointer;}

.navbar-nav > li{
  font-weight: bold;
  margin-left:10px;
  margin-right:10px;
}
.container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1300px;
}
.navbar-toggler {
    padding: 0.25rem 0.75rem;
    font-size: 2rem;
    line-height: 1;
    background-color: transparent;
    border: 0;
}
.full_modal-dialog {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  padding: 0 !important;
}
.full_modal-content {
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
}
.jumbotron {
    padding: 0;
    margin-bottom: 1rem;
    background: transparent;
}
.card-header{background: transparent;}


.custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    border-color: #a7e04c;
    background-color: #a7e04c;
}


.modal-body {
  overflow-y: auto; /* Adiciona barra de rolagem no conteúdo se necessário */
}
.modal-dialog{max-width: 700px}

.footer-booking {
      position: fixed;
      left: 0;
      right: 0;
      bottom: 0;
      display: none;
      width: 100%;
      background-color: #f8f9fa; /* cor de fundo opcional */
      text-align: center;
      z-index: 999
    }
.area-report-listing-mobile, .area-share-listing-mobile{display: none;}
.header-booking-mobile{display: none;}
@media(max-width: 920px){
  .main-content{padding-top: 30px}
  h1{font-size: 1.8rem; font-weight: bold;}
  .jumbotron{text-align: center;}
	.navbar-collapse{background: #fff; border-radius: 12px; padding:15px;}
	.nav-link{color: #000}
	.mobile-content{display: block;}
	.terms{text-align: center;}
	.footer-copyright{text-align: center;}

  /*about-session */
  .about-session{border-top-left-radius: 100px;border-bottom-left-radius: 100px;border-bottom-right-radius: 100px;}
  .about-session img{border-top-left-radius: 80px; border-bottom-right-radius: 0px}
  .session-text{padding: 30px}
  .session-text p{text-align: justify;}

  /*host-banner*/
  .host-banner{border-radius: 60px}
  .host-banner .container{padding:30px; border-radius: 20px;}
  .host-banner-text{padding: 30px; background: #fff; border-radius: 40px;}

  .text-left-session, .text-right-session{text-align: center}

  .search-form-listing{display: none; border-radius:20px; padding: 20px 5px; border:1px solid #ddd;}
  .btn-search{width: 100%}


  #btn-seach-empty, #btn-seach-isset, #btn-close-form-search{display: block;}

  .facilities_card{width: 30%}
.facilities_card img{width: 90%}
.modal-booking{position: fixed;display: none; width: 100%;height: 100%;left: 0;right: 0;bottom: 0;z-index: 9999;top: 0;padding: 5%}
.text-left-mobile{text-align: center;}

.footer-booking {display: flex; }
.area-report-listing, .area-share-listing{display: none;}
.area-report-listing-mobile, .area-share-listing-mobile{display: block;}
.header-booking-mobile{display: block;}




}





/* Sublinhado moderno alinhado à direita */
.u-underline, .u-underline-long-text{
  position: relative;
  display: inline-block;   /* precisa para o ::after medir a largura do texto */
  z-index: 0;              /* cria contexto para ficar atrás do texto */
}

/* Barra “grande” por baixo, pegando a base do texto */
.u-underline::after{
  content: "";
  position: absolute;
  right: -5px;                /* encosta à direita */
  bottom: 0.10em;          /* invade levemente o bottom do texto */
  width: 42%;              /* quanto da largura do texto a barra ocupa */
  height: 0.25em;          /* grossura do sublinhado */
  background: #a7e04c;     /* cor do sublinhado */
  z-index: -1;             /* fica atrás das letras */
}

.u-underline-long-text::after{
    content: "";
    position: absolute;
    right: 30px;                /* encosta à direita */
    bottom: 0.10em;          /* invade levemente o bottom do texto */
    width: 32%;              /* quanto da largura do texto a barra ocupa */
    height: 0.25em;          /* grossura do sublinhado */
    background: #a7e04c;     /* cor do sublinhado */
    z-index: -1;             /* fica atrás das letras */
  }

/* Quer ajustar rápido?
   - Aumente/diminua width para mais/menos alinhado à direita.
   - Ajuste height para a grossura.
   - Ajuste bottom para invadir mais/menos o texto. */


/* ajustes visuais */
.service-img{
  width:35px;
  height:35px;
  object-fit:cover;
  border-radius:.5rem;
}
.service-box{
  transition:box-shadow .2s ease, transform .2s ease;
}
.service-box:hover{
  transform:translateY(-2px);
}
strong{color: #03251a}

.text-muted {
    color: #333 !important;
}



/* Mantém sempre horizontal e dá limite ao ícone */
.service-box { display: flex; }
.service-img {
  width: 35px;   /* ajuste conforme o visual */
  height: 35px;  /* mantém quadrado */
  object-fit: contain;
}

/* Se quiser ícone um pouco maior em telas médias+ */
@media (min-width: 768px) {
  .service-img { width: 46px; height: 46px; }



}


.form-control:focus {
  border-color: #053727 !important;
  box-shadow: none !important;
  outline: none !important;
}





  /* ====== Layout ====== */
  input[type="time"] { max-width: 120px; }
  @media (max-width: 576px) { input[type="time"] { max-width: 100%; } }

  /* =========================
     Litepicker – visual pedido
     ========================= */
  :root { --riddy-green: #a7e04c; }

  /* esconder hover antes de confirmar o range */
  .litepicker:not(.range-confirmed) .day-item.is-in-range {
    background: #a7e04c !important;
    box-shadow: none !important;
  }

  /* início → canto arredondado à esquerda */
  .litepicker .day-item.is-start-date {
    background: var(--riddy-green) !important;
    color: #053727 !important;
    border-bottom-left-radius: 20px !important;
    border-top-left-radius: 20px !important;
    font-weight: bold;
  }

  /* fim → canto arredondado à direita */
  .litepicker .day-item.is-end-date {
    background: var(--riddy-green) !important;
    color: #053727 !important;
    border-bottom-right-radius: 20px !important;
    border-top-right-radius: 20px !important;
    font-weight: bold;
  }

  .litepicker .day-item { padding: 10px; }

  /* intervalo → verde translúcido */
  .litepicker.range-confirmed .day-item.is-in-range {
    background: rgba(167, 224, 76, 1) !important;
  }

  /* =========================
     Floating label (grupo)
     ========================= */
  .floating-label {
    position: relative;
    margin-bottom: 1rem;

  }


  /* Quando qualquer filho recebe foco, o label “sobe” para a borda do conjunto */
  .floating-label:focus-within > label,
  .floating-label.filled > label {
    top: -8px;          /* encosta na borda superior do campo/grupo */
    left: 0.65rem;
    color: #0a6044;
  }

  /* Ajustes de espaçamento no par data+hora */
  .floating-label .d-flex > .form-control + .form-control {
    margin-left: .5rem; /* equivalente ao ml-2 do Bootstrap 4 */
  }



  .litepicker .button-apply {
  background-color: #0a6044 !important; /* cor de fundo */
  color: #a7e04c !important;               /* cor do texto */
   padding: 8px 20px  !important; 
  font-size: 16px !important; 
  border-radius: 30px !important;
}

.litepicker .button-cancel {
  background-color: #ddd !important;
  color: #0a6044 !important;
   font-size: 16px !important; 
  border-radius: 30px !important;
    padding: 8px 20px !important; 
}

.litepicker .button-reset {
  background-color: #a7e04c !important;
  color: #a7e04c !important;
  font-size: 16px !important; 
  border-radius: 30px !important;
    padding: 8px 20px !important; 
}

.litepicker .container__footer{background: #fff}

