/********
Style Variables
********/
:root,
[data-bs-theme=light] {
	--bs-gray-100: 243, 244, 247;
	--bs-gray-300: 164, 167, 175;
	--bs-gray-500: 75, 79, 87;
	--bs-gray-700: 21, 31, 56;
	--bs-gray-900: 37, 41, 49;

	--bs-primary-10-rgb: 180, 238, 209;
	--bs-primary-rgb: 61, 198, 129;
	--bs-primary-90-rgb: 50, 174, 112;

	--bs-secondary-10-rgb: 205, 223, 249;
	--bs-secondary-rgb: 53, 105, 206;
	--bs-secondary-90-rgb: 27, 87, 178;

	--bs-success-10-rgb: 237, 248, 242;
	--bs-success-rgb: 104, 194, 135;
	--bs-success-90-rgb: 50, 174, 112;

	--bs-info-10-rgb: 188, 228, 242;
	--bs-info-rgb: 13, 202, 240;
	--bs-info-90-rgb: 38, 159, 201;

	--bs-warning-10-rgb: 254, 249, 238;
	--bs-warning-rgb: 255, 193, 7;
	--bs-warning-90-rgb: 219, 165, 37;

	--bs-danger-10-rgb: 250, 238, 239;
	--bs-danger-rgb: 218, 77, 75;
	--bs-danger-90-rgb: 187, 38, 35;

	--bs-light-10-rgb: 255, 255, 255;
	--bs-light-rgb: 249, 249, 251;
	--bs-light-90-rgb: 236, 236, 241;

	--bs-dark-10-rgb:116, 118, 122;
	--bs-dark-rgb:21, 31, 56;
	--bs-dark-90-rgb: 5, 12, 29;

	--bs-focus-rgb: var(--bs-info-rgb);

	--bs-primary-text: rgba(var(--bs-primary-rgb),1);
	--bs-secondary-text: rgba(var(--bs-secondary-rgb),1);
	--bs-success-text: rgba(var(--bs-success-rgb),1);
	--bs-info-text: rgba(var(--bs-info-rgb),1);
	--bs-warning-text: rgba(var(--bs-warning-rgb),1);
	--bs-danger-text: rgba(var(--bs-danger-rgb),1);
	--bs-light-text: rgba(var(--bs-light-rgb),1);
	--bs-dark-text: rgba(var(--bs-dark-rgb),1);

	--bs-primary-bg-subtle: rgba(var(--bs-primary-10-rgb),1);
	--bs-secondary-bg-subtle: rgba(var(--bs-secondary-10-rgb),1);
	--bs-success-bg-subtle: rgba(var(--bs-psuccessrimary-10-rgb),1);
	--bs-info-bg-subtle: rgba(var(--bs-info-10-rgb),1);
	--bs-warning-bg-subtle: rgba(var(--bs-warning-10-rgb),1);
	--bs-danger-bg-subtle: rgba(var(--bs-danger-10-rgb),1);
	--bs-light-bg-subtle: rgba(var(--bs-light-10-rgb),1);
	---subtle: rgba(var(--bs-dark-10-rgb),1);

	--bs-primary-border-subtle: rgba(var(--bs-primary-rgb),1);
	--bs-secondary-border-subtle: rgba(var(--bs-secondary-rgb),1);
	--bs-success-border-subtle: rgba(var(--bs-success-rgb),1);
	--bs-info-border-subtle: rgba(var(--bs-info-rgb),1);
	--bs-warning-border-subtle: rgba(var(--bs-warning-rgb),1);
	--bs-danger-border-subtle: rgba(var(--bs-danger-rgb),1);
	--bs-light-border-subtle: rgba(var(--bs-light-rgb),1);
	--bs-dark-border-subtle: rgba(var(--bs-dark-rgb),1);

	--bs-white-rgb: 255, 255, 255;
	--bs-black-rgb: var(--bs-dark-90-rgb);
	--bs-body-color-rgb: var(--bs-dark-90-rgb);
	--bs-body-bg-rgb: var(--bs-white-90-rgb);

	--bs-font-sans-serif: "DM Sans", "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
	--bs-body-font-family: var(--bs-font-sans-serif);
	--bs-body-font-size: 1rem;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.5;
	--bs-body-color: rgba(var(--bs-body-color-rgb),1);
	--bs-emphasis-color: rgba(var(--bs-dark-rgb),1);
	--bs-emphasis-color-rgb: var(--bs-body-color-rgb);
	--bs-secondary-color: rgba(var(--bs-secondary-rgb),1);
	--bs-secondary-color-rgb: var(--bs-secondary-rgb);
	--bs-secondary-bg: rgba(var(--bs-secondary-10-rgb),1);
	--bs-secondary-bg-rgb: var(--bs-secondary-10-rgb)39;

	--bs-body-bg: rgba(var(--bs-white-rgb),1);
	--bs-body-bg-rgb: var(--bs-white-rgb);
	--bs-link-color: rgba(var(--bs-primary-rgb),1);
	--bs-link-color-rgb: var(--bs-primary-rgb);
	--bs-link-decoration: underline;
	--bs-link-hover-color: rgba(var(--bs-primary-90-rgb),1);
	--bs-link-hover-color-rgb: var(--bs-primary-90-rgb);
	--bs-code-color: #d63384;
	--bs-highlight-bg: #fff3cd;
	--bs-border-width: 1px;
	--bs-border-style: solid;
	--bs-border-color: rgba(182, 187, 203,1);
	--bs-border-color-translucent: rgba(var(--bs-dark-10-rgb),.175);
	--bs-border-radius: 0.375rem;
	--bs-border-radius-sm: 0.25rem;
	--bs-border-radius-lg: 0.5rem;
	--bs-border-radius-xl: 1rem;
	--bs-border-radius-2xl: 2rem;
	--bs-border-radius-pill: 50rem;
	--bs-box-shadow: 0 0.5rem 1rem rgba(var(--bs-body-color-rgb), 0.15);
	--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(var(--bs-body-color-rgb), 0.075);
	--bs-box-shadow-lg: 0 1rem 3rem rgba(var(--bs-body-color-rgb), 0.175);
	--bs-box-shadow-inset: inset 0 1px 2px rgba(var(--bs-body-color-rgb), 0.075);
	--bs-emphasis-color: rgba(var(--bs-dark-10-rgb),1);
	--bs-form-control-bg: var(--bs-body-bg);
	--bs-form-control-disabled-bg: rgba(var(--bs-secondary-bg),1);
	--bs-highlight-bg: rgba(var(--bs-warning-10-bg),1);
	--bs-breakpoint-xs: 0;
	--bs-breakpoint-sm: 576px;
	--bs-breakpoint-md: 768px;
	--bs-breakpoint-lg: 992px;
	--bs-breakpoint-xl: 1200px;
	--bs-breakpoint-xxl: 1400px;
}


/* Notifications CSS */
.notifications_btn .notifications-badge {width: 10px;height: 10px;border-radius: 100%;position: absolute;right: 2px;top: 10px;padding: 0;background: rgba(var(--bs-secondary-rgb), 1)}
.avatar {height: 40px;width: 40px;background-size: cover;}
.dropdown_user {min-width: 300px;}
.avatar_big {font-size: 20px;width: 50px !important;height: 50px !important;background-size: cover;}
.notification *:last-child {margin-bottom: 0 !important;}
#notifications.modal.right .modal-dialog,
#menu_panel.modal.right .modal-dialog {max-width: 400px;}


/* Notifications CSS */
.notifications_btn .notifications-badge {width: 10px;height: 10px;border-radius: 100%;position: absolute;right: 2px;top: 10px;padding: 0;background: rgba(var(--bs-secondary-rgb), 1)}
.avatar {height: 40px;width: 40px;background-size: cover;}
.dropdown_user {min-width: 300px;}
.avatar_big {font-size: 20px;width: 50px !important;height: 50px !important;background-size: cover;}
.notification *:last-child {margin-bottom: 0 !important;}
#notifications.modal.right .modal-dialog,
#menu_panel.modal.right .modal-dialog {max-width: 400px;}


.hero-bg {
  --bg-opacity: 1;
  background: radial-gradient(37.61% 46.91% at 50% 50%, rgba(255, 255, 255, 0) 0%, rgba(163, 183, 245, 0.161) 100%);
}

/* Hide scrollbar for Chrome, Safari and Opera */
no-scrollbar::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.no-scrollbar {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}

/* Accessibility Font Size */
body.acc_font-size-xl {
  transform: scale(1.2);
  transform-origin: top center;
}

body.acc_font-size-l {
  transform: scale(1.1);
  transform-origin: top center;
}

body.acc_font-size-s {
  transform: scale(0.9);
  transform-origin: top center;
}

body.acc_font-size-xs {
  transform: scale(0.8);
  transform-origin: top center;
}

/* Accessibility Contrast */
body.acc_contrast {
  filter: grayscale(1) contrast(1.4);
}

.centro-ayuda-text {
  color: #CC0000;
}

.footer {
  --color-bg: #F5F9FF;
  --color-brand-bg: #002464;
  --color-gray: #52677b;
  --color-gray-dark: #374151;
  --color-primary: #295eff;
  --color-error: #e53e3e;
  --color-white: #fff;
  --font-base: 14px;

  width: 100%;
  background: var(--color-brand-bg);
  color: var(--color-white);
}

.footer {
  width: 100%;
  background: var(--color-bg);
  color: var(--color-white);
}

.second-bg {
  background-color: #002464;
  color: white;
}

.footer-row {
  margin: 0 auto;
  padding: 1rem 15px;
  max-width: 1280px;
}

.footer-row--menus {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1.5rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.footer-heading {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 0 0 0.75rem 0;
  color: var(--color-gray-dark);
}

.footer-heading--error {
  color: var(--color-error);
}

.footer-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.footer-list a {
  color: var(--color-gray);
  font-size: var(--font-base);
  text-decoration: none;
}

.footer-list a:hover {
  color: var(--color-primary);
  text-decoration: underline;
}

.footer-list--icons {
  flex-direction: row;
  gap: 1rem;
  align-items: center;
}
.footer-list--icons img {
  display: block;
  height: 30px;
  width: auto;
}

.footer-row--branding {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding-top: 1rem;
}

.footer-logos {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 40px;
}

.footer-logos img {
  display: block;
  object-fit: contain;
}

/* CLS FIX: Define aspect-ratio para que el navegador reserve el espacio */
.footer-logo-main {
  height: 26px;
  width: 161px;
  aspect-ratio: 161 / 26;
}
.footer-logo-award {
  height: 60px; /* Altura máxima deseada */
  width: auto;
}
/* Calculamos aspect-ratio para cada logo para evitar saltos */
img[alt="Premio Global Finance 2023"] {
  aspect-ratio: 58 / 80;
}
img[alt="Premio Merco 2022"] {
  aspect-ratio: 144 / 88;
}
img[alt="Premio Procalidad 2022"] {
  aspect-ratio: 198 / 98;
}

.footer-social {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.footer-social span {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  margin-right: 0.5rem;
}

.footer-social a {
  display: block;
}
.footer-social img {
  display: block;
  border-radius: 4px;
}

.footer-row--legal {
  padding-top: 1rem;
  padding-bottom: 1.5rem;
}

.footer-legal {
  font-size: 10px;
  line-height: 1.4;
  color: var(--color-white);
  margin: 0;
}

.footer-legal a {
  color: var(--color-white);
  text-decoration: underline;
}