/* Asegurar que html y body ocupen el 100% de la altura de la ventana */
html, body {
  height: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  scroll-behavior: smooth;
}

/* Footer siempre al final */
footer {
  flex-shrink: 0; /* Evita que el footer se comprima */
  width: 100%;
  background-color: transparent; /* Ajusta el color si lo necesitas */
  padding: 20px 0;
}

.alias {cursor: alias;}
.all-scroll {cursor: all-scroll;}
.auto {cursor: auto;}
.cell {cursor: cell;}
.col-resize {cursor: col-resize;}
.context-menu {cursor: context-menu;}
.copy {cursor: copy;}
.crosshair {cursor: crosshair;}
.default {cursor: default;}
.e-resize {cursor: e-resize;}
.ew-resize {cursor: ew-resize;}
.grab {cursor: grab;}
.grabbing {cursor: grabbing;}
.help {cursor: help;}
.move {cursor: move;}
.n-resize {cursor: n-resize;}
.ne-resize {cursor: ne-resize;}
.nesw-resize {cursor: nesw-resize;}
.ns-resize {cursor: ns-resize;}
.nw-resize {cursor: nw-resize;}
.nwse-resize {cursor: nwse-resize;}
.no-drop {cursor: no-drop;}
.none {cursor: none;}
.not-allowed {cursor: not-allowed;}
.pointer {cursor: pointer;}
.progress {cursor: progress;}
.row-resize {cursor: row-resize;}
.s-resize {cursor: s-resize;}
.se-resize {cursor: se-resize;}
.sw-resize {cursor: sw-resize;}
.text {cursor: text;}
.url {cursor: url(myBall.cur),auto;}
.w-resize {cursor: w-resize;}
.wait {cursor: wait;}
.zoom-in {cursor: zoom-in;}
.zoom-out {cursor: zoom-out;}

.logo-nav {
   width: 56px;
   margin-left: 8px;
   margin-top: 1px;
}

@media (max-width: 768px) {
    .logo-nav {
        margin-right: auto; 
        float: right;
        width: 50px;
    }
}

.logo-head {
    width: 250px;
    margin: 0px 0px;
}

.logo-foot {
    width: 180px;
    margin: 20px 0px;
}

.navbar-light {
	background: #fff !important;
}

.navbar-darkblue {
    background: #001231 !important;
}

.float-end {
	margin-left: auto;
	margin-right: 10px;
}

.fixed-top, .sb-nav-fixed #layoutSidenav #layoutSidenav_nav, .sb-nav-fixed .sb-topnav {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.footer-text {

	font-size: 10px;
	margin-bottom: -10px;
}

.sidenav-color {
	background-color: #000000 !important;
}

.container-head {
  width: 98%;
  margin: 0 auto;
  display: block;
}

.wrap {
  background: #000000 !important;
  position: fixed;
  top: 0px;
  left: 0;
  right: 0;
  z-index: 3;
  width: 100%;
  height: 44px; 
}

.wrap .location {
	z-index: 1;
	color: #fff;
	font-weight: 400; 
	font-size: 14px;
}

.wrap .location span {
    color: #fff; 
}

.wrap .location a {
    color: #fff;
    font-size: 12px; 
    transition: 0.3s;
	text-decoration: none;
}
    
.wrap .location a:hover {
    color: #0f73ad;
    font-size: 12px;
    color: #e9e9e9 !important;
}

.text-blue-green {
	color: #0f73ad !important;
}

.text-dark-blue {
    color: #001231 !important;
}

.text-gray {
	color: #f4f4f4 !important;
}

.a-text-gray {
	color: #f4f4f4 !important;
	background-color: #000000;
}

.a-text-gray:hover {
	color: #f4f4f4 !important;
	background-color: #60a7d1;
    ad5f0f
	width: -webkit-fill-available;
}

.a-text-subnav {
	color: #fff !important;
	background-color: #0f73ad;	
}

.a-text-subnav:hover {
	color: #000000  !important;
	background-color: #fff;
	width: -webkit-fill-available;
}

.a-text-darkblue {
	color: #000000 !important;
	background-color: #ffffff;
}

.a-text-darkblue:hover {
	color: #fff !important;
	background-color: #0f73ad;
	width: -webkit-fill-available;
}

.a-text-white-2 {
	color: #fff !important;
}

.a-text-white-2:hover {
	color: #cecece !important;
}

.text-red {
    color: #d00505 !important;
}

.show-hide {
  visibility: visible;
}

  @media (max-width: 1024px) {
      .show-hide {
  visibility: hidden;
  display: none;
  margin-bottom: -130px;
  }
}

  @media (max-width: 992px) {
      .show-hide {
  visibility: hidden;
  display: none;
  margin-bottom: -130px;
  }
}

 @media (max-width: 768px) {
    .show-hide {
  visibility: hidden;
  display: none;
  margin-bottom: -130px;
  } 
}

 @media screen and (max-width: 576px) {
    .show-hide {
  visibility: hidden;
  display: none;
  margin-bottom: -130px;
  } 
}

.hide-show {
  visibility: hidden;
  display: none;
}

  @media (max-width: 1024px) {
     .hide-show {
  visibility: visible;
  display: block;
  }
}

  @media (max-width: 992px) {
    .hide-show {
  visibility: visible;
  display: block;
  }
}

 @media (max-width: 768px) {
  .hide-show {
  visibility: visible;
  display: block;
  } 
}

@media screen and (max-width: 576px) {
  .hide-show {
  visibility: visible;
  display: block;
  } 
}

.fa-right {
  margin-right: 8px;
}

.fa-right-15 {
    margin-right: 15px;
}

.fa-right-25 {
    margin-right: 25px;
}

.fa-left {
  margin-left: 8px;
}

.fa-left-15 {
	margin-left: 15px;
}

.fa-left-25 {
	margin-left: 25px;
}

.bold {
  font-weight: 800;
}

.semi-bold {
  font-weight: 500;
}

.social-media {
  display: inline-block; 
}

.social-media p a {
    width: 44px;
    height: 44px;
    border-left: 1px solid rgba(255, 255, 255, 0.1);     
    transition: 0.3s;
}

.social-media p a span {
    color: #fff; 
}

.social-media p a:hover {
    background: #0f73ad;
    border-color: #0f73ad; 
}
.social-media p a:hover span {
    color: #f9f9f9; 
}

.text-8 {
    font-size: 8px !important;
}

.text-10 {
	font-size: 10px !important;
}

.text-12 {
	font-size: 12px !important;
}

.text-14 {
	font-size: 14px !important;
}

.text-16 {
    font-size: 16px !important;
}

.text-18 {
    font-size: 18px !important;
}

.text-25 {
    font-size: 25px !important;
}

.text-30 {
    font-size: 30px !important;
}

.footer-text-final {
	color: #0f73ad;
	transition: 0.3s;	
	text-decoration: none;
}

.footer-text-final:hover {
	color: #000000;
}

.footer-text-login {
	color: #fff;
	transition: 0.3s;	
	text-decoration: none;
    cursor: pointer;
}

.footer-text-login:hover {
	color: #cecece;
}


.icon-large {
    font-size: 18px;
    color: #000000;
    transition: transform 0.3s ease; /* Smooth rotation */
}

.icon-rotate {
    transform: rotateY(180deg); /* Starts inverted */
    transition: transform 0.3s ease; /* Smooth transition */
}

.rotate {
    transition: transform 0.3s ease; /* Transición suave */
    transform: rotateY(180deg); /* Rotación en el eje Y */
}

.icon-setting {
	font-size: 18px;
	transition: transform 0.3s ease; /* Smooth rotation */
}

.dropdown-menu {
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    visibility: hidden;
    background-color: #000000;
    border-color: #e9e9e9;
}

.dropdown-menu.show {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

.dropdown-menu-end {
    right: 5px !important;
    left: auto !important;
    margin-top: -2px;
}

.li-logout {
	margin-top: 0px;
    margin-bottom: -8px;
    background-color: #fff;
}

.dropdown-item-logout {
	color: f4f4f4;
	background-color: #0f73ad;
}

.dropdown-item-logout:hover, .dropdown-item-logout:focus {
  color: #0f73ad;
  background-color: #fff;  
}

.dropdown-item-user {
	margin-top: -8px;
}

.active {
	color: #0f73ad !important;
}    

/* Estilo para navegadores WebKit (Chrome, Safari) */
.sb-sidenav-menu::-webkit-scrollbar {
    width: 8px; /* Ancho de la barra de desplazamiento */
}

.sb-sidenav-menu::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.5); /* Color del pulgar de la barra de desplazamiento */
    border-radius: 10px; /* Bordes redondeados */
}

.sb-sidenav-menu::-webkit-scrollbar-track {
    background: transparent; /* Fondo de la pista de la barra de desplazamiento */
}

/* Estilo para Firefox */
.sb-sidenav-menu {
    scrollbar-width: thin; /* Hace la barra de desplazamiento más fina */
    scrollbar-color: rgba(0, 0, 0, 0.5) transparent; /* Color del pulgar y fondo */
    overflow-y: hidden !important; 
    height: calc(100vh - 50px);
}

.nav-borders .nav-link {
    color: #000000;
    border-bottom-width: 0.125rem;
    border-bottom-style: solid;
    border-bottom-color: transparent;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0;
    padding-right: 0;
    margin-left: 1rem;
    margin-right: 1rem;
    padding: 10px;
}

.nav-borders .nav-link:hover {    
    border-bottom-color: #bebebe;
}

.nav-link {
    cursor: pointer;
    padding: 10px;
    text-decoration: none;
    color: #000000;
    border-bottom: 2px solid transparent; /* Sin color de borde por defecto */
}

.nav-link.active {
    color: #000000 !important;
    font-weight: 800;
    border-bottom-color: #000000; /* Color del borde cuando está activo */
}

.nav-borders .nav-link.active {
    color: #000000 !important;
    font-weight: 600;
    border-bottom-color: #000000; /* Color del borde cuando está activo */
}
.nav-content {
    display: none; /* Inicialmente oculto */
}

.hr {
	color: #c8c8c8;
}

.nav-container {
    display: flex; /* Utiliza flexbox para el contenedor */
    justify-content: center; /* Centra los elementos horizontalmente */
    align-items: center; /* Centra los elementos verticalmente (opcional, si se necesita) */
    flex-wrap: wrap; /* Permite que los elementos se envuelvan en caso de que haya muchos */
    gap: 20px; /* Espacio entre los enlaces, ajusta según sea necesario */
    padding: 0px 10px; /* Relleno alrededor del contenedor */
}

.ml-1 {
	margin-left: 5px;
}

.ml-2 {
	margin-left: 10px;
}

.ml-3 {
	margin-left: 15px;
}

.mr-1 {
	margin-right: 5px;
}

.mr-2 {
	margin-right: 10px;
}

.mr-3 {
	margin-right: 15px;
}

.no-underline {
	text-decoration: none;
}

.yes-underline {
    text-decoration: underline;
}

 .footer-social {
    margin-top: 8px; /* Push footer to the bottom */
    margin-bottom: -8px;
    background-color: #959595; /* Footer background color */
    padding: 10px 0; /* Padding for top and bottom */
    display: flex; /* Use flexbox for horizontal alignment */
    justify-content: center; /* Center items horizontally */
}

@media screen and (max-width: 576px) {
    .footer-social {
    margin-top: 0px;
    
	}
}

 @media (max-width: 768px) {
    .footer-social {
    margin-top: 0px;
    
	}
}

  @media (max-width: 992px) {
    .footer-social {
    margin-top: 0px;
    
	}
}

  @media (max-width: 1024px) {
    .footer-social {
    margin-top: 0px;
    
    }
}

.social-icons {
    display: flex; /* Use flexbox for horizontal alignment */
    list-style: none; /* Remove list style */
    padding: 0; /* Remove default padding */
    margin: 0; /* Remove default margin */
}

.social-icons li {
    margin-right: 15px; /* Space between icons */
}

.social-icons li:last-child {
    margin-right: 0; /* No margin for last item */
}

.text-white-social {
    color: #ffffff; /* White text color */
    text-decoration: none; /* Remove underline */
    margin-left: 12px;
    transition: 0.3s;	
}

.text-white-social:hover {
    color: #0f73ad; /* Change color on hover */
    cursor: pointer;

}

.text-blue-social {
    color: #000000; /* White text color */
    text-decoration: none; /* Remove underline */
    margin-left: 12px;
    transition: 0.3s;	
}

.text-blue-social:hover {
    color: #0f73ad; /* Change color on hover */

}

.support {
	color: #000;
	text-decoration: none; 
	transition: 0.3s;
	font-weight: bolder;
}

.support:hover {
	color: #0f73ad;
}

.breadcrumb-background {
background-color: #0f73ad;
}

.slash {
	color: #fff;
	margin-left: 5px;
	margin: 0 5px;
}

.today-date {
  font-size: 12px;
  margin: 15px 0px;
  float: right;
  display: block;
  margin: 20px auto;
}

@media (max-width: 576px) {
    .today-date {
        text-align: center; /* Center date on very small screens */
        float: none; /* Remove float to make it centered */
    }
}

.mt-lg-6 {
	margin-top: 30px;
}

.mt-lg-50 {
    margin-top: 50px;
}

@media (max-width: 768px) {
.mt-lg-50 {
    margin-top: 100px;
    }
}


.mt-lg-80 {
    margin-top: 80px;
}

@media (max-width: 768px) {
.mt-lg-80 {
    margin-top: 130px;
    }
}

.mt-lg-120 {
    margin-top: 120px;
}

.mb-lg-6 {
    margin-bottom: 30px;
}

.mb-lg-50 {
    margin-bottom: 50px;
}

.mb-lg-80 {
    margin-bottom: 80px;
}

.mb-lg-120 {
    margin-bottom: 120px;
}

.text-head {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	display: block;
}

@media (max-width: 576px) {
.text-head {
	text-align: justify;
	width: 90%;
	margin: 0 auto;
	display: block;
	}
}

.no-cursor {
	cursor: auto;
}

.profile { 
    position: relative;
    display: flex;
    align-items: flex-start; /* Alinea los elementos en la parte superior */
    gap: 12px; /* Espacio entre los elementos */
    cursor: pointer;
    text-align: left;
    margin: 0; /* Elimina el margen para ocupar todo el ancho */
    padding: 10px; /* Espacio interno */
    background-color: #ffffff; /* Color de fondo (puedes cambiarlo) */
    width: 100%; /* Asegura que ocupe todo el ancho */
    cursor: auto;
    height: 130px;     
    background-size: cover; 
    background-position: center;
}


.profile h6 {
    text-align: left;
    font-size: 20px;
    margin-top: 30px;
    line-height: 1;
    margin-bottom: 4px;
    font-weight: 600;
    overflow-wrap: break-word;
    white-space: normal;
    cursor: auto;
}

@media (max-width: 576px) {
.profile h6 {
    text-align: left;
    font-size: 16px;
    margin-top: 30px;
    line-height: 1;
    margin-bottom: 4px;
    font-weight: 600;
    overflow-wrap: break-word;
    white-space: normal;
    cursor: auto;
    }
}

.profile p {
    text-align: left; 
    line-height: 1; /* Altura de línea para el correo */
    font-size: 12px;
    opacity: .6; /* Opacidad para el texto del correo */
    cursor: auto;
}

.profile .img-box {
    position: relative;
    width: 80px; /* Ancho de la imagen */
    height: 80px; /* Alto de la imagen */
    border-radius: 50%; /* Bordes redondeados */
    overflow: hidden; /* Oculta el desbordamiento */
    margin: 15px 18px;
    display: block;
}

@media (max-width: 576px) {
    .profile .img-box {
        width: 80px;
        height: 80px;
        margin: 15px 18px;
    }
}

.profile .img-box img {
    position: absolute;
    top: 0; /* Alinea la imagen en la parte superior */
    left: 0; /* Alinea la imagen a la izquierda */
    width: 100%; /* Ancho completo */
    height: 100%; /* Alto completo */
    object-fit: cover; /* Mantiene la proporción de la imagen */
}

.profile .user {
    display: flex;
    flex-direction: column; /* Coloca el texto en una columna */
    flex-grow: 1; /* Permite que el texto crezca y ocupe espacio */
    margin-left: -10px; /* Espacio a la izquierda del texto */
}

@media (max-width: 576px) {
    .profile .user {
        margin-left: -10px; /* Ajusta margen en pantallas pequeñas */
    }
}

.edit-icon {
    position: absolute;    
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border-radius: 50%;
    padding: 30px 0px 0px 30px;
    cursor: pointer;
    opacity: 0; /* Initially invisible */
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s ease; /* Smooth transition effect */
}

.img-box:hover .edit-icon {
    opacity: 1; /* Fully visible on hover */
}

.edit-icon i {
    font-size: 16px;
}

input[type="file"] {
    display: none;
}

.bg-color {
	background-color: #0f73ad;
}

.logo-login {
	width: 120px;
    display: block;
    margin: 10px auto;
}

.logo-login-new {
    width: 125px;
    display: block;
    margin: 0px 120px;
}


@media (max-width: 576px) {
.logo-login-new {
    width: 125px;
     margin: 0px auto;
    }
}

.btn-login {
	color: #ffffff;
    background-color: transparent;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 8px 8px;
    line-height: 1.5;
    border: 1px solid #0f73ad;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-right: 20px;
}

.btn-login:hover , .btn-login:focus, .btn-login:active {
	color: #ffffff;
    background-color: #0f73ad;
    border: 1px solid #0f73ad;
}

@media (max-width: 576px) {
.btn-login {
    font-size: 14px;
    }
}

.btn-su {
    color: #ffffff;
    background-color: #0f73ad;
    border-radius: 0px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 10px 10px;
    line-height: 1.5;
    float: right;
}

.btn-su:hover , .btn-su:focus, .btn-su:active {
    color: #ffffff;
    background-color: #000000;
}

@media (max-width: 576px) {
.btn-su {
    font-size: 14px;
    }
}

.btn-create {
    color: #ffffff;
    background-color: #0f73ad;
    border-radius: 0px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 10px 10px;
    line-height: 1.5;
}

.btn-create:hover , .btn-create:focus, .btn-create:active {
    color: #ffffff;
    background-color: #000000;
    border-color: #ffffff;
}

@media (max-width: 576px) {
.btn-create {
    font-size: 14px;
    }
}

.btn-cancel {
    color: #ffffff;
    background-color: #d00505;
    border-radius: 0px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 10px 10px;
    line-height: 1.5;
    float: right;
}

.btn-cancel:hover , .btn-cancel:focus, .btn-cancel:active {
    color: #ffffff;
    background-color: #000000;    
    border-color: #ffffff;
}

@media (max-width: 576px) {
.btn-cancel {
    font-size: 14px;
    }
}

.btn-paypal {
    color: #ffffff;
    background-color: #00457C;
    border-radius: 0px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 10px 10px;
    line-height: 1.5;
}

.btn-paypal:hover , .btn-paypal:focus, .btn-paypal:active {
    color: #ffffff;
    background-color: #0079C1;
}

@media (max-width: 576px) {
.btn-paypal {
    font-size: 14px;
    }
}

.btn-information {
    color: #ffffff;
    background-color: #0f73ad;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 12px 12px;
    line-height: 1.5;
    border: 1px solid #0f73ad;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.btn-information:hover , .btn-information:focus, .btn-information:active {
    color: #fff;
    background-color: #085c8d;
    border: 1px solid #085c8d;
}

@media (max-width: 576px) {
.btn-information {
    font-size: 12px;    
    }
}

.btn-information2 {
    color: #ffffff;
    background-color: #0f73ad;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 12px 12px;
    line-height: 1.5;
    border: 1px solid #0f73ad;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: max-content;
    margin: 0 auto;
}

.btn-information2:hover , .btn-information2:focus, .btn-information2:active {
    color: #fff;
    background-color: #085c8d;
    border: 1px solid #085c8d;
}

@media (max-width: 576px) {
.btn-information2 {
    font-size: 14px;
    }
}

.btn-information3 {
    color: #ffffff;
    background-color: #001231;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 12px 12px;
    line-height: 1.5;
    border: 1px solid #001231;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: max-content;
    margin: 0 auto;
}

.btn-information3:hover , .btn-information3:focus, .btn-information3:active {
    color: #fff;
    background-color:#162b4f;
    border: 1px solid #162b4f;
}

@media (max-width: 576px) {
.btn-information3 {
    font-size: 14px;
    }
}

.btn-selected {
    color: #ffffff;
    background-color: #0f73ad;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 8px 8px;
    line-height: 1.5;
    border: 1px solid #0f73ad;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: max-content;
    margin: 0 auto;
    margin-top: 5px;
}

.btn-selected:hover , .btn-selected:focus, .btn-selected:active {
    color: #0f73ad;
    background-color:transparent;
    border: 1px solid #0f73ad;
}

@media (max-width: 576px) {
.btn-selected {
    font-size: 12px;
    }
}

.btn-select {
    color: #ffffff;
    background-color: #001231;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 8px 8px;
    line-height: 1.5;
    border: 1px solid #001231;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: max-content;
    margin: 0 auto;
    margin-top: 5px;
}

.btn-select:hover , .btn-select:focus, .btn-select:active {
    color: #001231;
    background-color:transparent;
    border: 1px solid #001231;
}

@media (max-width: 576px) {
.btn-select {
    font-size: 12px;
    }
}

.btn-signup {
    color: #ffffff;
    background-color: #001231;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 400;
    transition: 0.3s ease;
    display: block;
    padding: 12px 12px;
    line-height: 1.5;
    border: 1px solid #001231;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.btn-signup:hover , .btn-signup:focus, .btn-signup:active {
    color: #fff;
    background-color: transparent;
    border: 1px solid #fff;
}

@media (max-width: 576px) {
.btn-signup {
    font-size: 12px;
    }
}

.btn-signup-2 {
    background-color: #001231;
    color: #fff;
    font-size: 16px !important;
}

.btn-signup-2:hover, .btn-signup-2:focus, .btn-signup-2:active {
    color: #001231 !important;
    background-color: transparent;
    border: 1px solid #001231 !important;
}

@media (max-width: 576px) {
.btn-signup-2 {
    font-size: 14px;
    }
}

.signup-margin {
    width: max-content;
    margin: 0 auto;
    display: block;
    margin-top: 20px;
}

.text-primary {
    color: #0f73ad !important;
}

.btn-more {
    color: #ffffff;
    background-color: #001231;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 400;
    transition: 0.3s ease;
    line-height: 1.5;
    border: 1px solid #001231;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-top: 10px;
}

.btn-more:hover , .btn-more:focus, .btn-more:active {
    color: #0f73ad;
    background-color: transparent;
    border: 1px solid #0f73ad;
}

@media (max-width: 576px) {
.btn-more {
    font-size: 14px;
    }
}

.text-primary {
    color: #0f73ad !important;
}

/* Remove border-radius only from input fields */
.form-control {
    border-radius:  0.375rem; /* No rounded corners */
    border: 1px solid #fff;
    background-color: #f8f8f8;
}

/* Remove border-radius only from input fields */
.form-control-su {
    border-radius:  0.375rem; /* No rounded corners */
    border-color: transparent;
    background-color: #f1f1f1 !important;
}

.text-light-gray {
	color: #c9c9c9;
	transition: 0.3s ease;
}

.text-light-gray:hover , .text-light-gray:focus, .text-light-gray:active {
	color: #0f73ad;
}

.container-login {
    width: 100%;
    margin: 15px auto;
    display: block;
}

@keyframes ringBell {
  0% { transform: rotate(0); }
  10% { transform: rotate(15deg); }
  20% { transform: rotate(-15deg); }
  30% { transform: rotate(10deg); }
  40% { transform: rotate(-10deg); }
  50% { transform: rotate(5deg); }
  60% { transform: rotate(-5deg); }
  70% { transform: rotate(3deg); }
  80% { transform: rotate(-3deg); }
  90% { transform: rotate(1deg); }
  100% { transform: rotate(0); }
}

.bell-animation:hover {
  animation: ringBell 0.7s ease-in-out;
  animation-iteration-count: infinite; /* Keeps the bell ringing while hovered */
  transform-origin: 50% 0%; /* Ensures the bell rotates around the top center */
}

.btn-outline-secondary {
  background: none;
  border: none;
  cursor: pointer;
  color: #bdbdbd !important;
  font-size: 18px; 
  transition: 0.3s ease;
}

.btn-outline-secondary:hover , .btn-outline-secondary:focus, .btn-outline-secondary:active {
   color: #000 !important;
   background-color: transparent;
   border-color: transparent;
   border-radius: 0px;
  
}

/* Estilo para pantallas grandes (desktop) */
.nav-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr); /* 6 columnas para pantallas grandes */
  gap: 10px;
}

/* Estilo para pantallas pequeñas (movil) */
@media (max-width: 768px) {
  .nav-grid {
    grid-template-columns: repeat(3, 1fr); /* 3 columnas para pantallas móviles */
  }
}

.footer-text a:not(:last-child)::after {
    content: "·"; /* Use the middle dot symbol */
    color: #0f73ad; /* Set your desired color here */
    padding: 0px 5px 0px 10px; /* Optional spacing around the dot */
}

.modal-header {
    display: flex;
    align-items: center; /* Alinea verticalmente el logo y el texto */
    background-color: #001231;
    border-top-left-radius: 0px !important; 
    border-top-right-radius: 0px !important; 
}

.logo-modal {
    margin-right: 8px; /* Ajusta este valor para controlar la separación entre el logo y el texto */
    width: 50px;
}

.modal-title {
    margin-bottom: 0; /* Elimina el margen inferior para alinear el texto al centro vertical */
}

.modal {
   border-top-left-radius: 0px !important; 
   border-top-right-radius: 0px !important; 
   border-bottom-left-radius: 0px !important; 
   border-bottom-right-radius: 0px !important; 
}

.modal-footer {
    background-color: #001231;
    border-bottom-left-radius: 0px !important; 
    border-bottom-right-radius: 0px !important; 

}

.modal-content {
    border-radius: 0px;
}

.btn-close-modal {
    color: #fff;
    background-color: #d00505;
    border-color: #d00505;
    border-radius: 0.375rem;
    font-size: 14px;
    font-weight: 400;
    transition: 0.3s ease;

}

.btn-close-modal:hover , .btn-close-modal:focus, .btn-close-modal:active {
    color: #ffffff !important;
    background-color: #d00505 !important;
    border-color: #d00505 !important;
}

/* Basic styling for the modal */
#installModal {
  display: none; /* Hidden by default */
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 400px;
  background-color: #ffffff;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
  border-radius: 0px;
  padding: 20px;
  z-index: 1000; /* Ensures it's on top of other elements */
  text-align: center;
}
.modal-content-app {
  background-color: white;
  padding: 20px;
  border-radius: 8px;
  max-width: 400px;
  text-align: center;
}

.logo-app {
    width: 40px;
}

/* Estilos para el modal */
#loginModal {
    display: none; /* Inicialmente oculto */
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 300px;
    padding: 20px;
    background-color: white;
    border: 1px solid #ccc;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    text-align: center;
}
#modalOverlay {
    display: none; /* Overlay inicial oculto */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
}

.modal-button-app {
  padding: 10px 10px;
  margin-top: 10px;
  border: none;
  border-radius: 0.375rem; 
  background-color: #0f73ad;
  color: #ffffff;
  cursor: pointer;
  font-size: 15px;
}

.modal-button-su {
    padding: 10px 10px;
    margin-top: 10px;
    border: none;
    border-radius: 0.375rem; 
    background-color: #0f73ad;
    color: #ffffff;
    cursor: pointer;
    font-size: 15px;
}

.modal-button-close {
  padding: 10px 10px;
  margin-top: 10px;
  border: none;
  border-radius: 0.375rem; 
  background-color: #d00505;
  color: #ffffff;
  cursor: pointer;
  font-size: 15px;

}

.hide-object {
  display:none !important; 
  visibility: hidden !important;
}

input:read-only {
  font-weight: 600;
  color: #d00505;
}
  
.input-text {
    font-size: 14px;
    font-weight: 800;
}

.nav-section-background {
    background-color: #fff;
    padding: 30px;
    border-radius: 0px;
    margin-top: 20px;
}

@media (max-width: 768px) {
    .nav-section-background {
        padding: 20px;
    }
    .col-sm-4 {
        width: 100%;
    }
}

.payment {
  max-width: 100%;
  margin: 0 auto;
}
.payment-tabs {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 2em;
  padding-right: 2em;
  border-bottom: 1px solid #e1e8ee;
  counter-reset: section;
}
.payment-tabs > a {
  padding: 1.35em 0;
  color: #bdc6cf;
  font-size: 0.9em;
  position: relative;
  transition: all 200ms ease-in-out;
}
.payment-tabs > a:before {
  counter-increment: section;
  content: counter(section);
  display: inline-block;
  width: 1.65em;
  height: 1.65em;
  margin-right: 0.5em;
  border: 0.15em solid #e1e8ee;
  color: #bdc6cf;
  font-size: 0.85em;
  text-align: center;
  line-height: 1.45em;
  border-radius: 50%;
  transition: all 300ms ease-in-out;
}
.payment-tabs > a:after {
  content: "";
  display: block;
  border-bottom: 2px solid transparent;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
}
.payment-tabs > a:hover {
  text-decoration: none;
  color: #91a0af;
}
.payment-tabs > a:hover:before {
  border-color: #91a0af;
  color: #91a0af;
}
.payment-tabs > a.active {
  color: #358ed7;
  font-weight: 500;
}
.payment-tabs > a.active:before {
  border-color: #358ed7;
  color: inherit;
}
.payment-tabs > a.active:after {
  border-bottom: 2px solid #358ed7;
}
.payment-customer {
  display: none;
}
.payment-method h2 {
  margin: 0;
  padding: 1.8em 2em;
  font-size: 1.2em;
  line-height: 1.2;
  color: #000;
}
.payment-method .pm-item {
  position: relative;
}
.payment-method .pm-item:last-child:after {
  content: "";
  display: block;
  height: 0.125em;
  background-color: #e1e8ee;
  position: absolute;
  left: 2em;
  right: 2em;
}
.payment-method .pm-label {
  display: flex;
  margin-bottom: 0;
  padding: 1.5rem 2rem;
  cursor: pointer;
  background-color: #f6f7f9;
}
.payment-method .pm-text {
  padding-left: 2.5em;
  position: relative;
}
.payment-method .pm-text:before {
  content: "";
  display: block;
  width: 1.5em;
  height: 1.5em;
  background: #e1e8ee;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 50%;
  box-shadow: 0 0.08rem 0 rgba(20, 28, 35, 0.25) inset;
}
.payment-method .pm-text h5 {
  padding-top: 0.25em;
  font-size: 1em;
}
.payment-method .pm-text p {
  margin-bottom: 0;
  color: #86939e;
}
.payment-method .pm-thumb {
  padding-left: 0.9em;
}
.payment-method input[type=radio] {
  display: none;
}
.payment-method input[type=radio]:checked + .pm-label {
  background: none;
}
.payment-method input[type=radio]:checked + .pm-label .pm-text:before {
  background: radial-gradient(white 0%, white 33%,#0f73ad 38%, #0f73ad 100%);
}
.payment-input {
  display: flex;
  flex-wrap: wrap;
  padding: 2em 0em;
}
.payment-input label {
  margin-bottom: 0.3em;
  color: #697685;
  font-size: 0.9em;
}
.payment-input select {
  height: 2.4rem !important;
  padding-right: 2em;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAGCAYAAAARx7TFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCQTA3RjE4NkQ0NkExMUU3QTM3RkRFQjFEOEY3MDM4RSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCQTA3RjE4N0Q0NkExMUU3QTM3RkRFQjFEOEY3MDM4RSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJBMDdGMTg0RDQ2QTExRTdBMzdGREVCMUQ4RjcwMzhFIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJBMDdGMTg1RDQ2QTExRTdBMzdGREVCMUQ4RjcwMzhFIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+OpMgKgAAAGJJREFUeNpijMssz2VgYDAB4m9AzMiAAP+BmAuIz7AAiWAgtmfADeSYgEQGED/EoQAknglSdAOII4D4C5qCL1DxG0xQgRNA7AHEn6D8T1A+SJyBCUnnUaj7dkPpozAJgAADABogEzO2aGVBAAAAAElFTkSuQmCC");
  background-color: #e1e8ee;
  background-repeat: no-repeat;
  background-position: calc(100% - 1em) center;
  -webkit-appearance: none;
}
.payment-input .form-control {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fcfcfc;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.payment-input .form-control:not(.is-valid):not(.is-invalid) {
  border-color: #e1e8ee;
}
.payment-input .form-control:focus {
  box-shadow: none;
}
.payment-input .form-control.is-valid, .payment-input .form-control.is-invalid {
  background-position: calc(100% - 1.1em) center;
  background-repeat: no-repeat;
}
.payment-input .form-control.is-valid {
  border-color: #7dc855;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAJCAYAAADpeqZqAAAABGdBTUEAALGPC/xhBQAAAQ5JREFUGBmNUDtOw0AQnTcBiS4n4BgxVEh0NDQg2xUdFQoFEkIoks064IaKJhSkoAAJbN+AE9jbcg6OkJ3MGhwZKUJMMfvmze/Ngv5paR2eCJATcMy+p5Rw8FdvasNYiJ5JZJucqzito/1PS19pE92sazQ2PiJHr5prBwM0ZyF5IaGhiJikiSb9xtRGhwuRd92y4Xkm3E13qpwH4AkA1xaL5EkdXXpsbHiggyqVtOljBu6z3TLxGN6ZJj5dkHvSjW2s/gOCPVWx5fPMeMiC8sJjb99FChIbn+mRs5btOTBm06Ac9yiV+WO3QfGoM1fTPA3CPBsV511N9642dUTShGOVea2S3syouNJ79R9+2xLcA1oZPdllOgAAAABJRU5ErkJggg==");
}
.payment-input .form-control.is-invalid {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAIAAAAmzuBxAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDowOUZFMTU2OUQ0NjcxMUU3ODREMjk0RUU3NzEwMEVENCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDowOUZFMTU2QUQ0NjcxMUU3ODREMjk0RUU3NzEwMEVENCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjA5RkUxNTY3RDQ2NzExRTc4NEQyOTRFRTc3MTAwRUQ0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjA5RkUxNTY4RDQ2NzExRTc4NEQyOTRFRTc3MTAwRUQ0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+eFdNEwAAASBJREFUeNpi+HH91vOi2g+rN/1HBUARoDhQluXj8nVfD5/4evQkExcHr5crAxh83rr7Tc8Uhn//mXi4mXj9PFhEhYGc1819Xw8eA0oDydctfUARoDhQlhFo4M9rN58X1/99+w6ogy/Q+9P6rf++fGUWFpLsbWTXUgepAOr7fv7ym85Jv+49hNjCpiQvUp7HaagLZDNBhIAcXm83BhgAsiHSCBVAMz5v3QVXAWQDRRAqfl69+bKqFWgF0B0CsWFAEsgGigDFQUq+nb143zP8jqnrXQuPLweOAp0FJIFsoAhQHCjLnCep+OPiVQYmRrHaYh5XB5AzFWRZJMW/Hj7+/+t3hn//WPgjAv9+/Mxlbcbr7YrkUtd/3398O3oKKAsQYABi9qDVgBM2nAAAAABJRU5ErkJggg==");
}
.payment-input .form-group {
  flex: 1 1 100%;
}
.payment-input .form-group.half {
  flex: 1 1 50%;
}
.payment-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 1px solid #e1e8ee;
}
.payment-actions > a {
  flex: 1 1 50%;
  padding: 1em;
  color: #86939e;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
}
.payment-actions > a + a {
  border-left: 1px solid #e1e8ee;
}
.payment-actions > a.finish {
  color: #7dc855;
}
@media (max-width: 479px) {
  .payment {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .payment-tabs {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .payment-tabs > a {
    font-size: 0.725rem;
  }
  .payment-tabs > a:before {
    display: block;
    margin: 0 auto;
  }
  .payment-method h2 {
    padding: 0.75rem;
    font-size: 1em;
  }
  .payment-method .pm-label {
    flex-wrap: wrap;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .payment-method .pm-text, .payment-method .pm-thumb {
    padding-left: 2.25em;
  }
  .payment-method .pm-text {
    flex: 1 1 100%;
  }
  .payment-method .pm-thumb {
    flex: 0 0 auto;
    align-self: center;
    margin-top: 0.35em;
  }
  .payment-method .pm-thumb + .pm-thumb {
    padding-left: 1.25em;
  }
  .payment-input {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .payment-input .form-group.half {
    flex: 1 1 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.logo-payment1 {
    width: 120px;
    margin: 0px 25px;
}

.logo-payment2 {
    width: 100px;
    margin: 0px 25px;
}

.hr-margin-payment {
    margin-top: 40px;
    margin-bottom: 40px;
    background-color: black;
    border: 2px solid black;
}

.marg-cvv {
    margin-top: -27px;
}

@media (max-width: 768px) {
    .marg-cvv {
        margin-top: 0px;
    }
}

.mb-neg-5 {
    margin-bottom: -5px;
}

.mb-neg-10 {
    margin-bottom: -10px;
}

.mb-neg-25 {
    margin-bottom: -25px;
}

.custom-select {
    padding: 1rem 0.75rem;
    appearance: none;
}

.custom-select:focus {
    outline: none;
}

.table-scroll {
    max-height: 400px;
    overflow-y: auto;
    white-space: nowrap !important;
}

.custom-table th,
.custom-table td {
    white-space: nowrap;
    text-align: center;
    vertical-align: middle;
}

.custom-table th {
    background-color: #f8f9fa;
    font-weight: bold;
}

.custom-table td {
    padding: 10px;
}

/* Mejorar el scroll para navegadores modernos */
.table-scroll::-webkit-scrollbar {
    width: 8px;
}

.table-scroll::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 4px;
}

.table-scroll::-webkit-scrollbar-track {
    background-color: #f8f9fa;
}

.btn-xrl {
    border-radius: 0px !important;
}

.pricing-table {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
}
.pricing-table th, .pricing-table td {
    padding: 10px;
    border: 1px solid #ddd;
}
.pricing-table th {
    background-color: #f4f4f4;
}

/* Ocultar desplazamiento horizontal */
.nav-section-background {
    overflow-x: hidden; /* Evita scroll horizontal */
    margin: 0 auto; /* Centra el contenido */
}

.table-responsive {
    overflow-x: auto;
    width: 100%;
    margin: 0 auto; /* Opcional para centrar */
}

.centered-header th {
    text-align: center;
    vertical-align: inherit;
    padding: 15px;
}

.th-expand {
    width: 12% !important;
}

.th-expand2 {
    width: 12% !important;
}

.align-left {
    text-align: left;
}

.feature-column {
    font-weight: 800;
    text-align: left;
    margin-top: 10px;
}

.feature-column-th {
    text-align: left;
    vertical-align: inherit;
    padding: 15px;
}

.feature-column-th,
.feature-column {
    width: 250px; /* Ajusta el ancho */
    min-width: 250px; /* Previene que se reduzca más de lo necesario */
    max-width: 250px; /* Fija el máximo ancho */
}

.head-th {
    font-size: 20px;
    text-align: left !important;
    vertical-align: inherit !important;
}

.price {
    font-size: 30px;
    font-weight: 700;
    color: #d00505;
    margin-bottom: -10px;
}

.subprice {
    font-size: 12px;
    font-weight: 400;
    color: #505050;
    margin-left: 5px;
}

.subtax {
    font-size: 12px;
    font-weight: 600;
    color: #000;
    margin-bottom: 0px;
}

.btn-upload-file { 
    color: #000;
    background-color: #fad163;
    border-color: #fad163;
    border-radius: 0px;
    padding-top: 16px;
    padding-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
    transition: 0.3s;
    display: block;
    line-height: 1.5;
}

.btn-upload-file:hover , .btn-upload-file:focus, .btn-upload-file:active {
    color: #000;
    background-color: #e7ba3f;
}

@media (max-width: 576px) {
.btn-upload-file {
    font-size: 12px;
    }
}

.btn-upload-pdf  {
  color: #000;
  background-color: #fad163;
  border-color: #fad163;
  display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
  transition: 0.3s;
  border-radius:0px;
}

.btn-upload-pdf:hover {
    color: #000;
    background-color: #f4b924;
    border-color: #f4b924; 
}
    
.btn-upload-pdf:focus {
    color: #000;
    background-color: #f4b924;
    border-color: #f4b924; 
}

.btn-upload-file-doc {
  color: #fff;
  background-color: #0f73ad;
  border-color: #0f73ad;
  display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
  transition: 0.3s;
  border-radius:0px;
}

.btn-upload-file-doc:hover {
    color: #fff;
    background-color: #000;
    border-color: #000; 
}
    
.btn-upload-file-doc:focus {
    color: #fff;
    background-color: #000;
    border-color: #000; 
}

.btn-upload-img  {
  color: #000;
  background-color: #fad163;
  border-color: #fad163;
  display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
  transition: 0.3s;
  border-radius:0px;
}

.btn-upload-img:hover {
    color: #000;
    background-color: #f4b924;
    border-color: #f4b924; 
}
    
.btn-upload-img:focus {
    color: #000;
    background-color: #f4b924;
    border-color: #f4b924; 
}

.p-input {
  margin-top: 20px;
  margin-bottom: -10px;
  font-weight: 800;
}

.switch-button {
    transform: scale(1.5); /* Aumenta el tamaño de los botones */
    margin-top: 10px;
    cursor: pointer;
}

#uploadButton:disabled {
    background-color: #ccc;
    cursor: not-allowed;
}

.term-p {
  font-size: 10px;
  width: 80%;
  margin: 0 auto;
}

.center-div {
    margin: 0 auto;
    display: block;
    text-align: center;
}

th.sort-asc::after {
    content: " ▲";
    margin-left: 5px;
}

th.sort-desc::after {
    content: " ▼";
    margin-left: 5px;
}

select {
    appearance: none; /* Removes default styles in most browsers */
    -webkit-appearance: none; /* Removes default styles in WebKit browsers */
    -moz-appearance: none; /* Removes default styles in Firefox */
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"%3E%3Cpath fill="%23333" d="M2 0L0 2h4z" /%3E%3C/svg%3E'); /* Custom arrow */
    background-repeat: no-repeat; /* Prevent the arrow from repeating */
    background-position: right 10px center; /* Position the arrow to the right */
    background-size: 10px; /* Adjust the size of the arrow */
    padding-right: 30px; /* Ensure text doesn't overlap with the arrow */
    border: 1px solid #ccc; /* Add a border for styling */
    border-radius: 5px; /* Optional: Rounded corners */
    padding: 10px; /* Internal padding */
    font-size: 16px; /* Text size */
    cursor: pointer; /* Pointer cursor for better usability */
}

/* Optional: Ensure consistent hover and focus styles */
select:focus {
    outline: none; /* Remove default outline */
    border-color: #007BFF; /* Add a focus border color */
}

#file_input {
    width: 150px; height: 150px; object-fit: cover; border-radius: 50%;
}

.principal-nav {
    padding-top: 0.90rem !important;
    padding-bottom: 0.90rem !important;
}

/* Contenedor para el scroll horizontal */
.table-container {
    overflow-x: auto; /* Scroll horizontal */
    width: 100%; /* Ajusta al contenedor padre */
    margin: 20px 0; /* Espacio exterior */
}

/* Tabla */
.custom-table {
    
    margin: auto; /* Centra la tabla */
    border-collapse: collapse;
    font-family: Arial, sans-serif;
}

/* Limitar ancho y permitir que el texto se envuelva */
.custom-table td:nth-child(2),
.custom-table th:nth-child(2) {
    width: 300px;          /* Ancho deseado */
    max-width: 300px;      /* Máximo ancho */
    word-wrap: break-word; /* Fuerza a romper palabras largas */
    white-space: normal;   /* Asegura que el texto fluya hacia abajo */
    vertical-align: top;   /* Alinea el texto al inicio de la celda */
    text-align: left;      /* Alinea el texto a la izquierda */
    padding: 10px;         /* Espacio interno para legibilidad */
}


/* Cabecera */
.custom-table th {
    background-color: #0f73ad; /* Color azul */
    color: white; /* Texto blanco */
    padding: 12px;
    text-align: center;
    border: 1px solid #ddd;
}

/* Filas */
.custom-table td {
    padding: 10px;
    text-align: center;
    border: 1px solid #ddd;
    word-wrap: break-word; /* Ajusta texto largo */
}

/* Estilo alterno para filas */
.custom-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Estilo del caption */
caption {
    font-size: 1.2em;
    font-weight: bold;
    margin: 10px;
}

/* Checkbox estilo */
input[type="checkbox"] {
    transform: scale(1.2);
}

.float-right {
    float: right;
}

.float-left {
    float: left;
}

.border-radius-0 {
    border-radius: 0px;
}

  .switch-button:disabled {
    cursor: not-allowed;
}

/* Base styling for all checkboxes */
input[type="checkbox"] {
    appearance: none; /* Remove default styling */
    width: 15px;
    height: 15px;
    border: 1px solid #60a7d1;
    border-radius: 3px; /* Optional: makes the checkbox corners rounded */
    background-color: transparent;
    cursor: pointer;
    position: relative;
}

/* Styling for the checked state */
input[type="checkbox"]:checked {
    background-color: #d00505;
    border-color: #d00505;
}

/* Custom checkmark */
input[type="checkbox"]:checked::after {
    content: "✔"; /* Checkmark symbol */
    font-size: 8px;
    color: #fff; /* White checkmark */
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 10%);
}

#loadingOverlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
    z-index: 1000;
}
.spinner-border {
    width: 3rem;
    height: 3rem;
}

.nav-fixed {
    position: fixed;
    z-index: 100;
    width: 100%;
}

.download-buttons {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}


.download-item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.btn-playstore {
    background-color: #0f73ad;
    color: #fff;
    font-size: 16px;
    padding: 5px 10px;
    border: 1px solid #0f73ad;
}

.btn-playstore:hover , .btn-playstore:focus, .btn-playstore:active {
    color: #fff;
    background-color: #085c8d;
    border: 1px solid #085c8d;
}

@media (max-width: 576px) {
.btn-playstore {
    font-size: 12px;
    }
}

.btn-appstore {
    background-color: #001231;
    color: #fff;
    font-size: 16px;
    padding: 5px 10px;
    border: 1px solid #001231;
}

.btn-appstore:hover , .btn-appstore:focus, .btn-appstore:active {
    color: #0f73ad;
    background-color: transparent;
    border: 1px solid #0f73ad;
}

@media (max-width: 576px) {
.btn-appstore {
    font-size: 12px;
    }
}












.btn-playstore-login {
    background-color: #0f73ad;
    color: #fff;
    font-size: 16px;
    padding: 5px 10px;
    border: 1px solid #0f73ad;
}

.btn-playstore-login:hover , .btn-playstore-login:focus, .btn-playstore-login:active {
    color: #fff;
    background-color: #085c8d;
    border: 1px solid #085c8d;
}

@media (max-width: 576px) {
.btn-playstore-login {
    font-size: 12px;
    }
}

.btn-appstore-login {
    background-color: #001231;
    color: #fff;
    font-size: 16px;
    padding: 5px 10px;
    border: 1px solid #001231;
}

.btn-appstore-login:hover , .btn-appstore-login:focus, .btn-appstore-login:active {
    color: #fff;
    background-color: #162b4f;
    border: 1px solid #162b4f;
}

@media (max-width: 576px) {
.btn-appstore-login {
    font-size: 12px;
    }
}
















.text-12 {
    font-size: 12px;
    color: #555;
    margin-bottom: 5px;
}

.contact-buttons {
    display: flex;
    gap: 15px;    
    margin-top: 20px;
}

.contact-item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.btn-contact {
    background-color: #0f73ad;
    color: #fff;
    font-size: 16px !important;
}

.btn-contact:hover , .btn-contact:focus, .btn-contact:active {
    color: #fff;
    background-color: #085c8d;
    border: 1px solid #085c8d;
}

.btn-know-more {
    background-color: #001231;
    color: #fff;
    font-size: 16px !important;
}

.btn-know-more:hover , .btn-know-more:focus, .btn-know-more:active {
    color: #0f73ad;
    background-color: transparent;
    border: 1px solid #0f73ad;
}

.border-top-table {
  border-top: 2px solid #0f73ad !important;
}

.border-bottom-table {
  border-bottom: 2px solid #0f73ad !important;
  box-shadow: 4px 0 6px -2px rgba(15, 115, 173, 0.5) !important; /* Ajusta los valores según tu preferencia */
}

.border-right-table {
  border-right: 2px solid #0f73ad !important;
  box-shadow: 4px 0 6px -2px rgba(15, 115, 173, 0.5) !important; /* Ajusta los valores según tu preferencia */
}

.border-left-table {
  border-left: 2px solid #0f73ad !important;
}

/* Estilos base para desktop */
.most-sold-label {
    position: absolute;
    top: 20px; /* Ajusta la posición vertical */
    left: 77%; /* Ajusta la posición horizontal */
    transform: translateX(-50%); /* Centra el texto */
    background: linear-gradient(135deg, #001231, #0f73ad); /* Fondo degradado */
    color: #fff; /* Color del texto (blanco para mayor contraste) */
    font-size: 16px; /* Tamaño del texto más grande */
    font-weight: 900; /* Texto en negrita más gruesa */
    padding: 8px 20px; /* Espaciado interno más generoso */
    border-radius: 25px; /* Bordes redondeados más pronunciados */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3); /* Sombra más pronunciada */
    z-index: 10; /* Asegura que esté por encima de otros elementos */
    text-transform: uppercase; /* Texto en mayúsculas */
    letter-spacing: 1px; /* Espaciado entre letras */
    animation: pulse 1.5s infinite; /* Animación de pulso */
    border: 2px solid #fff; /* Borde blanco para resaltar */
}


.most-sold-label-mov {

        text-transform: uppercase; /* Texto en mayúsculas */
        letter-spacing: 1px; /* Espaciado entre letras */
        color: #fff;
        font-size: 14px; /* Reduce el tamaño de la fuente */
        letter-spacing: 0px;
        text-align: center;
        font-weight: 800;
        padding: 8px 10px; /* Espaciado interno más generoso */
        margin-bottom: 5px;
        border-radius: 5px;
        background: linear-gradient(135deg, #001231, #0f73ad); /* Fondo degradado */
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3); /* Sombra más pronunciada */
        z-index: 10; /* Asegura que esté por encima de otros elementos */
        text-transform: uppercase; /* Texto en mayúsculas */
    }

/* Media query para móvil (pantallas menores a 768px) */
@media (max-width: 768px) {
    .most-sold-label-mov {
        text-transform: uppercase; /* Texto en mayúsculas */
        letter-spacing: 1px; /* Espaciado entre letras */
        color: #fff;
        font-size: 14px; /* Reduce el tamaño de la fuente */
        letter-spacing: 0px;
        text-align: center;
        font-weight: 800;
    }
}

.no-undeline {
    text-decoration: none;
}

.first-div {
    margin-top: 60px;
    position: fixed;
    width: 100%;
    z-index: 100;
}

.btn-xsmall {
    font-size: 12px !important;
    margin-bottom: 30px;
}

[data-ca3_icon]::before {
    font-weight: normal;
    content: attr(data-ca3_icon);
}

.ca3-scroll-down-arrow {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2hldnJvbl90aGluX2Rvd24iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIwIDIwIiBmaWxsPSJ3aGl0ZSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTE3LjQxOCw2LjEwOWMwLjI3Mi0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwYzAuMjcsMC4yNjgsMC4yNzEsMC43MDEsMCwwLjk2OWwtNy45MDgsNy44M2MtMC4yNywwLjI2OC0wLjcwNywwLjI2OC0wLjk3OSwwbC03LjkwOC03LjgzYy0wLjI3LTAuMjY4LTAuMjctMC43MDEsMC0wLjk2OWMwLjI3MS0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwTDEwLDEzLjI1TDE3LjQxOCw2LjEwOXoiLz48L3N2Zz4=);
    background-size: contain;
    background-repeat: no-repeat;
}

.ca3-scroll-down-link {
    cursor: auto;
    height: 30px;
    width: 30px;
    line-height: 30px; /* Ajustado para coincidir con la altura */
    position: absolute;
    left: 49%; /* Centrado horizontalmente */
    transform: translateX(-50%); /* Asegura un centrado perfecto */
    bottom: 100px; /* Posición vertical fija en la parte inferior */
    color: #FFF;
    text-align: center;
    font-size: 30px;
    z-index: 100;
    text-decoration: none;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);
    -webkit-animation: ca3_fade_move_down 2s ease-in-out infinite;
    -moz-animation: ca3_fade_move_down 2s ease-in-out infinite;
    animation: ca3_fade_move_down 2s ease-in-out infinite;
}

@media (max-width: 768px) {
.ca3-scroll-down-link {
    bottom: 50px; /* Posición vertical fija en la parte inferior */
     left: 46%; /* Centrado horizontalmente */
    }
}

/*animated scroll arrow animation*/
@-webkit-keyframes ca3_fade_move_down {
  0%   { -webkit-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -webkit-transform:translate(0,20px); opacity: 0; }
}
@-moz-keyframes ca3_fade_move_down {
  0%   { -moz-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -moz-transform:translate(0,20px); opacity: 0; }
}
@keyframes ca3_fade_move_down {
  0%   { transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { transform:translate(0,20px); opacity: 0; }
}

@media (max-width: 768px) {
.m-4 {
    margin: 0rem !important;
    }
}

.footer-name {
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .footer-name {
      margin-bottom: 50px;
    }
}

/* Color personalizado para los íconos de redes sociales */
.social-icon {
  color: #085c8d; /* Color principal */
  font-size: 14px; /* Tamaño de los íconos */
  text-decoration: none; /* Eliminar subrayado */
  transition: color 0.3s ease; /* Efecto suave al pasar el mouse */
}

/* Cambiar color al pasar el mouse */
.social-icon:hover {
  color: #0a4f76; /* Color más oscuro al hacer hover */
}

/* Asegurar que los íconos estén centrados */
.social-icons {
  display: flex;
  justify-content: center;
  align-items: center;
}

.contact-info {
    color: #f4f4f4;
}

.text-body-secondary {
    margin: 0 10px;
}


@media (max-width: 768px) {
    .text-body-secondary {
    margin: 0 auto;
    }
}

.input-compact {
    width: 250px; /* Ancho fijo para el campo de entrada */
  }



/* Estilos para el texto de Registro */
.header-text {
  position: absolute; /* Posicionamiento absoluto */
  top: 50%; /* Centrado vertical */
  left: 50%; /* Centrado horizontal */
  transform: translate(-50%, -50%); /* Ajuste preciso para centrar */
  text-align: center;
  color: #fff; /* Color blanco para contrastar con la imagen */
  font-size: 3rem; /* Tamaño del texto */
  font-weight: bold;
  z-index: 1; /* Asegura que el texto esté por encima de la imagen */
}

@media (max-width: 768px) {
.header-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #fff;
    font-size: 3rem;
    font-weight: bold;
    z-index: 1;
    width: 80%;
    }
}

/* Estilos para el texto de Registro */
.header-text-2 {
  position: absolute; /* Posicionamiento absoluto */
  margin-top: 22%;
  color: #fff; /* Color blanco para contrastar con la imagen */
  font-weight: bold;
  z-index: 1; /* Asegura que el texto esté por encima de la imagen */
}

.email-padding {
    padding: 20px;
}

.masthead-signup {
  background-image: url("../assets/img/images/bg-signup.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  padding: 20px;
}

.masthead-signup .header-text {
  z-index: 1;
  color: #ffffff;
  max-width: 800px;
  padding: 20px;
}

.masthead-contact {
  background-image: url("../assets/img/images/bg-contact.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  padding: 20px;
}

.masthead-contact .header-text {
  z-index: 1;
  color: #ffffff;
  max-width: 800px;
  padding: 20px;
}

.h-head {
  font-size: 2rem;
}

.h-head-1 {
  font-size: 1.2rem;
}

.h-login {
    width: 70%;
    margin: 0 auto;
    font-size: 25px;
}


@media (max-width: 576px) {
.h-login {
    width: 70%;
    margin: 0 auto;
    font-size: 25px;
    text-align: center;
    }
}

@media (max-width: 768px) {
  .h-head {
    font-size: 1.4rem;
    margin-top: 50px;
  }

  .h-head-1 {
    font-size: 14px;
  }

  .masthead-signup {
    padding: 0px;
    text-align: center;
    height: auto;
  }

    .masthead-contact {
    padding: 0px;
    text-align: center;
    height: auto;
  }
}

@media (max-width: 1024px) {
  .h-head {
    font-size: 1.4rem;
    margin-top: 50px;
  }

  .h-head-1 {
    font-size: 14px;
  }

  .masthead-signup {
    padding: 0px;
    text-align: center;
    height: auto;
  }

    .masthead-contact {
    padding: 0px;
    text-align: center;
    height: auto;
  }
}

/* Estilos para el breadcrumb */
.breadcrumb {
  display: flex;
  padding: 12px 16px;
  list-style: none;
  background-color: #0f73ad;
}

.breadcrumb-item {
  display: inline;
  font-size: 0.9rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  content: "/"; /* Separador entre elementos */
  margin: 0 0.5rem;
  color: #fff; /* Color del separador */
}

.breadcrumb-item a {
  text-decoration: none;
  color: #fff; /* Color del enlace */
  transition: color 0.3s ease;
}

.breadcrumb-item a:hover {
  color: #cdcdcd; /* Cambio de color al pasar el mouse */
}

.breadcrumb-item.active {
  color: #fff !important; /* Color del elemento activo */
  pointer-events: none; /* Desactiva clic en el elemento activo */
}

.recaptcha {
    width: 15px;
    margin-right: 5px;
    margin-left: 5px;
}

.image-side {
  background-image: url("../assets/img/images/bg_login.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 100vh;
}

@media (max-width: 576px) {
  .image-side {
    height: 78vh;
  }
}

@media (max-width: 350px) {
  .image-side {
    height: 65vh;
  }
}


.fa-eye-slash {
    color: #b8b8b8 !important;
}

.fa-eye {
    color: #b8b8b8 !important;
}


.w-75-mov {
    width: 75% !important;
}

@media (max-width: 576px) {
    .w-75-mov {
    width: 100% !important;
    }
}

.logo-login-head {
    margin: 0 auto;
    display: block;
    margin-top: 30%;
    width: 200px;
}

.app-login {
  margin-top: 20px;
  display: block; 
  margin-right: 35%; 
}


@media (max-width: 1024px) {
   .app-login {
        margin-right: 20%;
    }
}

@media (max-width: 576px) {
.app-login {
  margin-top: 20px;
  display: block; 
  margin-right: 0%; 
    }
}
