html {
  overflow-x: hidden !important;
}

body {
  padding: 0;
  margin: 0;
  font-family: "Cairo", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  overflow-x: hidden !important;
  font-variation-settings:
    "slnt" 0;
}

.wt-10 {
  width: 10% !important;
}

.wt-20 {
  width: 20% !important;
}

.wt-30 {
  width: 30% !important;
}

.wt-40 {
  width: 40% !important;
}

.wt-50 {
  width: 50% !important;
}

.wt-60 {
  width: 60% !important;
}

.wt-65 {
  width: 65% !important;
}

.wt-70 {
  width: 70% !important;
}

.wt-75 {
  width: 75% !important;
}

.wt-80 {
  width: 80% !important;
}

.wt-90 {
  width: 90% !important;
}

.w-md-50 {
  width: 50% !important;
}

nav {
  text-align: center;
  margin-bottom: 10px;
}

.banner-frase {
  width: 100%;
  height: auto;
  display: block;
}

.frase-recortada {
  width: 100%;
  min-height: 70px;
  max-height: 110px;
  object-fit: cover;
  object-position: center center;
  display: block;
}

.frase-welcome {
  min-height: 70px;
}

header #button-menu {
  font-size: 30px;
  color: #fff;
  cursor: pointer;
}

.navegacion {
  position: absolute;
  top: 100%;
  left: 0;
  width: 0%;
  height: 100vh;
  background: rgb(140, 193, 235);
  background: linear-gradient(90deg, rgba(22, 54, 105, 1) 0%, rgba(140, 193, 235, 1) 100%);
}

.navegacion ul {
  width: 220px;
  height: 100%;
  /* de la barra del costado del menu que se despliega */
  list-style: none;
  position: absolute;
  top: 0;
  padding-left: 0px;
  left: -320px;
  transition: left .3s;
}

.navegacion .menu li.title-menu {
  /*padding: 5px;*/
  background: #ffcb00;
  /*  #3476C6;*/
  color: black;
  text-align: center;
  font-size: 22px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.navegacion li {
  float: none;
}

.navegacion .menu a {
  display: block;
  /*padding: 13px;*/
  border: 1px solid #0000000e;
  /*font-size: 13px;*/
  /*font-weight: 200;*/
  text-decoration: none;
  color: black;
  background-color: white;
}

.navegacion .menu a:hover {
  background: linear-gradient(62deg, rgba(255, 203, 0, 1) 90%, rgba(231, 65, 51, 1) 100%);
  color: black;
}

.navegacion .menu li span.icon-menu {
  margin-right: 12px;
}

/* Submenu ============*/

.navegacion .submenu li.title-menu {
  background: #ffcb00;
  color: black;
}

.navegacion .submenu li.go-back {
  padding: 10px 20px;
  color: black;
  font-size: 18px;
  cursor: pointer;
  background: #ffcb00;
}

.navegacion .submenu li.go-back::before {
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: '\f0d9';
  margin-right: 10px;
}

.icono-usuario {
  border-radius: 10px;
  background-color: rgb(255, 203, 0);
  transition: all 0.5s;
  height: 100%;
  width: 100%;
}

.icono-usuario:hover {
  background-color: rgb(212, 170, 0)
}

.hide-menu {
  display: none !important;
}

.cartel {
  background: #ffcb00;
  border: none;
  color: white;
  padding: 2px 2px;
  font-size: 12px;
}

.title-menu,
.go-back {
  background: #ffcb00;
}

.boton-busqueda {
  background-color: #fff;
  border: 1px solid #00000069;
}

.btn-ingresa {
  padding: 5px;
  border: 1px solid rgb(255, 255, 255);
  border-radius: 5px;
  background: #ffcb00;
  color: rgb(255, 255, 255);

  a {
    font-size: 13px;
    color: black;
    text-align: center;
  }
}

.calle {
  border-radius: 10px;
  border: 1px solid #9DC482;

  &:focus-visible {
    border-color: #9DC482;
  }

  &:focus {
    outline: none;
  }
}

.boton1 {
  padding: 5px;
  border: 1px solid rgba(255, 203, 0, 0.5);
  border-radius: 5px;
  background: #ffcb00;
  color: black;

  &:hover {
    color: black;
  }

  a {
    font-size: 13px;
    color: black;
  }
}

.boton2 {
  background: #92c7eb;
  background-image: url('http://res.freestockphotos.biz/pictures/15/15107-illustration-of-a-red-close-button-pv.png');
  background-size: cover;
  background-position: center;
  display: inline-block;
  border: none;
  padding: 20px;
  width: 40px;
  border-radius: 900px;
  height: 40px;
  transition: all 0.5s;
  cursor: pointer;
}

.boton2:hover {
  width: 75px;
  height: 75px;
}

.boton3 {
  min-width: 130px;
  height: 40px;
  color: #fff;
  padding: 5px 10px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
  outline: none;
  border-radius: 5px;
  border: none;
  background-size: 120% auto;
  background-image: linear-gradient(315deg, #000428 0%, #004e92 75%);
}

.boton3:hover {
  background-position: right center;
}

.boton3:active {
  top: 2px;
}

.boton4 {
  min-width: 130px;
  height: 40px;
  color: #fff;
  padding: 5px 10px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
  outline: none;
  border-radius: 5px;
  border: none;
  background: #3a86ff;
  box-shadow: 0 5px #4433ff;
}

.boton4:hover {
  box-shadow: 0 3px #4433ff;
  top: 1px;
}

.boton4:active {
  box-shadow: 0 0 #4433ff;
  top: 5px;
}

.boton5 {
  min-width: 130px;
  height: 40px;
  color: #fff;
  padding: 5px 10px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
  outline: none;
  overflow: hidden;
  border-radius: 5px;
  border: none;
  background-color: #3a86ff
}

.boton5:hover {
  border-radius: 5px;
  padding-right: 24px;
  padding-left: 8px;
}

.boton5:hover:after {
  opacity: 1;
  right: 10px;
}

.boton5:after {
  content: "\00BB";
  position: absolute;
  opacity: 0;
  font-size: 20px;
  line-height: 40px;
  top: 0;
  right: -20px;
  transition: 0.4s;
}

.boton6 {
  min-width: 130px;
  height: 40px;
  color: #fff;
  padding: 5px 10px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
  outline: none;
  border-radius: 5px;
  z-index: 0;
  background: #fff;
  overflow: hidden;
  border: 2px solid #57cc99;
  color: #57cc99;
}

.boton6:hover {
  color: #fff;
}

.boton6:hover:after {
  height: 100%;
}

.boton6:after {
  content: "";
  position: absolute;
  z-index: -1;
  transition: all 0.3s ease;
  left: 0;
  bottom: 0;
  height: 0;
  width: 100%;
  background: #57cc99;
}

.divisor-titulo-card,
.divisor-card {
  width: 100%;
  height: 2px;
  background-color: rgb(255, 237, 166);
}

.card-postulante {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 15px;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  margin-bottom: 20px;
  padding: 15px 25px;
}

.divisor-titulo-card {
  margin-bottom: 15px;
}

.swal2-confirm {
  background-color: #ffcb00 !important;
  transition: all 0.3s ease;
  color: black !important;

  &:hover {
    background-color: #b18d00 !important;
  }
}

.swal2-cancel {
  background-color: rgb(255, 232, 138) !important;
  transition: all 0.3s ease;
  color: black !important;

  &:hover {
    background-color: rgb(211, 191, 113) !important;
  }
}

.subtitulo-card {
  padding: 5px;
  background-color: rgb(255, 237, 166);
}

.boton-panel-administrador {
  background-color: rgb(255, 204, 0);
  transition: all 0.3s ease;
  color: black;
  border-radius: 15px;
  padding: 10px 0px;

  &:hover {
    background-color: rgb(211, 169, 0);
  }
}

.boton-buscar-administrador {
  background-color: rgb(255, 204, 0);
  transition: all 0.3s ease;
  color: black;
  border-radius: 5px;
  padding: 10px 20px;

  &:hover {
    background-color: rgb(211, 169, 0);
  }
}

.numero-postulantes {
  border: 2px solid rgb(255, 204, 0);
  color: grey;
  border-radius: 15px;
  padding: 0px 15px;
}

.swiper-button-prev,
.swiper-button-next {
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  color: #000;
  /* Cambiá si querés otro color */
}

.swiper-button-prev {
  left: -20px;
  /* Ajustá según el diseño */
}

.swiper-button-next {
  right: -20px;
}

.object-fit-cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.label-titulo {
  font-size: 25px;
  color: white;
  text-align: center;
}

.table-hover thead tr:hover th,
.table-hover tbody tr:hover td {
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.table-hover thead tr:hover th,
.table-hover tbody tr:hover td {
  background-color: #ffde7a;
}

.container-nav {
  width: 95%;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-items: stretch;
}

.navbar-brand-container {
  display: grid;
  justify-items: end;
}

.navbar-brand {
  text-align: end;
}

.pagination {
  justify-content: center;
}

.spam-radio {
  font-size: 12px;
}

.input-radio-padronmanual {
  accent-color: #E74133;
}

.btn-danger {
  color: #fff;
  background-color: #E74133;
  border-color: #E74133;
}

.btn-warning {
  color: black;
  background-color: #ffcb00;
  border-color: #ffcb00;
}

.btn-success {
  background-color: #9DC482;
  border-color: #9DC482;
}

.botones-vista-asigna {
  font-size: 14px;
  padding: 10px;
  border-radius: 10px;
}

.tablita {
  text-align: center;

  nav {
    width: 60%;
    margin: auto;
    margin-bottom: 20px;
  }
}

.vecimanual {
  padding: 5px;
  border: 1px solid rgb(255, 255, 255);
  border-radius: 5px;
  background: #ffcb00;
  color: black;
  font-size: 13px;

  a {
    color: black;
  }
}

.btn-continua::before {
  content: "Continua";
  font-size: 13px;
}

.btn-seleciona::before {
  content: "Selecciona";
  font-size: 13px;
}

.th-nro-inmueble::before {
  content: "Nro. Inmueble";
  font-size: 13px;
}

.div-prioridad {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
}

.div-prioridad h6 {
  text-align: center;
  grid-column: 1/4;
}

.label-prioridades {
  text-align: center;
  width: 70%;
}

.label-mail {
  grid-column: 1/4;
}

.container-botones-acciones {
  display: flex;
  width: 30%;
  margin: auto;
  justify-content: space-evenly;

  .botones-acciones {
    padding: 12px;
    font-size: 17px;
  }
}

.boton-imprime {
  color: black;
  width: 100px;
  height: 30px;
  line-height: 30px;
  font-size: 15px;
  border-radius: 10px;
}

.imprime-green {
  background-color: #9DC482;
}

.imprime-yellow {
  background-color: #ffcb00;
}

.imprime-red {
  background-color: #E74133;
}

.wrapper {
  display: flex;
  flex-direction: column;
  min-height: calc(var(--vh, 1vh) * 100);
}

.contenido {
  flex: 1;
  /* El contenido se expande para ocupar el espacio disponible */
}

.footer-principal {
  width: auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
  margin-top: auto;
  /* Empuja el footer al final */
  background: rgb(0, 169, 201);
  background: rgb(111, 111, 111);
  padding: 5px 0;
}


.footer_decorator {
  text-align: center;
  background: linear-gradient(62deg, rgba(0, 169, 201, 1) 0%, rgba(157, 196, 130, 1) 25%, rgba(255, 203, 0, 1) 50%, rgba(231, 65, 51, 1) 100%);
}

.copyright {
  font-size: 12px;
  margin-bottom: 0px !important;
}

/* LINKS DE BUSQUEDA / PAGINATION */
.page-link {
  color: black !important;

  &:hover {
    color: #627c4f;
  }
}

.page-item.active .page-link {
  z-index: 0;
  color: black;
  background-color: rgb(159, 197, 130);
  border-color: #75965e;
}

.page-link:focus {
  box-shadow: 0 0 0 0.2rem rgba(157, 196, 130, 30%);
}

.pagination {
  margin: auto;
}

/* FIN LINKS DE BUSQUEDA / PAGINATION */

/* DETALLE*/
.tablita1 {
  text-align: center !important;
}

/* Vista preresu.blade*/
.titulo-preresu {
  background-color: #ffcb00;
}

.btn-verde {
  background-color: #9DC482;
  transition: all 0.3s;
}

.btn-verde:hover {
  background-color: #7a9964;
}

.btn-rojo {
  background-color: #E74133;
  color: white;
  transition: all 0.3s;
}

.btn-rojo:hover {
  background-color: #bd3427;
  color: white;
}

/*Fin preresu.blade*/

.profile_data {
  border-radius: 5px;
}

.contenedor_logotipos {
  box-sizing: content-box;
  width: 100%;
  height: 100px;
  padding: 5px 0px;
  background-color: #706f6f;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  /* 💥 Esto centra las imágenes verticalmente */
}

.footer-base {
  margin-top: 20px;
}

.copyright {
  width: 100%;
  display: block;
  text-align: center;
  height: 28px;
  background: linear-gradient(62deg,
      rgba(0, 169, 201, 1) 0%,
      rgba(157, 196, 130, 1) 25%,
      rgba(255, 203, 0, 1) 50%,
      rgba(231, 65, 51, 1) 100%);

  p {
    margin: 0px !important;
  }
}

.footer-img {
  max-height: 90px;
}

.footer-acompania {
  max-height: 50px;
}

.footer-lima {
  max-height: 70px;
}

.custom-container {
  width: 90%;
  margin: 0 auto;
}

.card-area-sector{
  min-height: 50px;
}

@media (max-width: 768px) {
  body {
    padding: 0;
    margin: 0;
  }

  .navMobile {
    padding: 8px 0 0 0;
    /* position: static; */
  }

  .navbar-brand {
    grid-column: 2/3;
  }

  .ul-menu {
    text-align: center;
  }

  .navbar-nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
  }

  .navbar-nav img {
    grid-column: 1/3;
  }

  .nav-link {
    grid-column: 1/2;
  }

  .mainM {
    margin-top: 80px;
    padding: 0;
  }

  .p-4 {
    padding: 0 !important;
  }

  .form-row {
    width: 95%;
    margin: auto;
    padding: 0px 30px;
  }

  .form-group img {
    width: 50%;
  }

  .font-label-alta {
    margin-bottom: 10px;
  }

  .page-link {
    padding: 10px;
  }

  .spam-radio {
    font-size: 15px;
  }

  .imagen-escudo {
    height: 40px;
  }

  .imagen-zarate {
    width: 80px;
  }

  .imagen-te-escucha {
    height: 40px;
  }

  .w-md-50 {
    width: 90% !important;
  }

  .contenedor_logotipos {
    height: 70px;
  }

  .footer-img {
    max-height: 60px;
  }

  .footer-acompania {
    max-height: 30px;
  }

  .footer-lima {
    max-height: 40px;
  }

  .copyright {
    height: 20px;
  }

  .texto-mobile {
    font-size: 0.65rem; /* Más chico en mobile */
  }
}

@media (max-width: 500px) {
  .form-group img {
    width: 80%;
  }

  .form-row {
    padding: 0;
  }

  .page-link {
    padding: 5px;
  }

  .spam-radio {
    font-size: 20px;
  }

  .no-margin {
    padding: 0 !important;
  }

  .btn-continua::before {
    content: "Cont";
  }

  .btn-seleciona::before {
    content: "Selec";
  }

  .boton1 {
    width: 35px;
  }

  .th-nro-inmueble::before {
    content: "Nro. Inm";
  }

  .label-mail {
    grid-column: 1/4;
    grid-row: 3/4;
  }
}


.container-personal-cantidad {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 2px solid #9DC482;
  border-radius: 10px;
  margin-left: 40px;
  border-radius: 20px;
}

.titulo-personal-cantidad {
  border-radius: 15px 15px 0px 0px;
  background-color: #9DC482;
  padding: 10px;
}

.numero-cantidades {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 15px;
}