@charset "UTF-8";
/* ========================================================
   SISTEMA DE DISEÑO: TOKENS DE COLOR Y TEMAS
   Preparado para Modo Claro y Modo Oscuro
   ======================================================== */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('montserrat-v15-latin-300.1fb23400394501d6.eot');
  src: local(""), url('montserrat-v15-latin-300.1fb23400394501d6.eot?#iefix') format("embedded-opentype"), url('montserrat-v15-latin-300.169464b41fd5a6ed.woff2') format("woff2"), url('montserrat-v15-latin-300.4659e9ab4054a227.woff') format("woff"), url('montserrat-v15-latin-300.b23af6dea1cad0f1.ttf') format("truetype"), url('montserrat-v15-latin-300.58510adb11f1ae24.svg#Montserrat') format("svg");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('montserrat-v15-latin-regular.2a176a1c6698749e.eot');
  src: local(""), url('montserrat-v15-latin-regular.2a176a1c6698749e.eot?#iefix') format("embedded-opentype"), url('montserrat-v15-latin-regular.016fddc825bb37e6.woff2') format("woff2"), url('montserrat-v15-latin-regular.b9de6aa2f4bccfc5.woff') format("woff"), url('montserrat-v15-latin-regular.0e27f1ee187b0c2c.ttf') format("truetype"), url('montserrat-v15-latin-regular.8e4e187154ffbec3.svg#Montserrat') format("svg");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('montserrat-v15-latin-500.e59a7bafdeef81e9.eot');
  src: local(""), url('montserrat-v15-latin-500.e59a7bafdeef81e9.eot?#iefix') format("embedded-opentype"), url('montserrat-v15-latin-500.f4f8a034a65bf0eb.woff2') format("woff2"), url('montserrat-v15-latin-500.c03d339883f66523.woff') format("woff"), url('montserrat-v15-latin-500.bff6786035d3bb82.ttf') format("truetype"), url('montserrat-v15-latin-500.dd6fe4c6b17239f9.svg#Montserrat') format("svg");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('montserrat-v15-latin-600.d7b2d7057f8bad99.eot');
  src: local(""), url('montserrat-v15-latin-600.d7b2d7057f8bad99.eot?#iefix') format("embedded-opentype"), url('montserrat-v15-latin-600.8f722b0683c9c276.woff2') format("woff2"), url('montserrat-v15-latin-600.be907d76f198fcee.woff') format("woff"), url('montserrat-v15-latin-600.30b0479ed510b468.ttf') format("truetype"), url('montserrat-v15-latin-600.3eb59b4b3feca218.svg#Montserrat') format("svg");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('montserrat-v15-latin-800.af464b6d7f471901.eot');
  src: local(""), url('montserrat-v15-latin-800.af464b6d7f471901.eot?#iefix') format("embedded-opentype"), url('montserrat-v15-latin-800.44ec2001773338b8.woff2') format("woff2"), url('montserrat-v15-latin-800.45a0ba19c0cdced0.woff') format("woff"), url('montserrat-v15-latin-800.43cea1510a9d6178.ttf') format("truetype"), url('montserrat-v15-latin-800.6816cea3005859f8.svg#Montserrat') format("svg");
}
@font-face {
  font-family: "Maven Pro";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('maven-pro-v21-latin-regular.6c5b306d5eca2c31.eot');
  src: local(""), url('maven-pro-v21-latin-regular.6c5b306d5eca2c31.eot?#iefix') format("embedded-opentype"), url('maven-pro-v21-latin-regular.89721e067d94d25c.woff2') format("woff2"), url('maven-pro-v21-latin-regular.918e7c3e308eeae7.woff') format("woff"), url('maven-pro-v21-latin-regular.d493ede5c9129911.ttf') format("truetype"), url('maven-pro-v21-latin-regular.3285216dea83f551.svg#MavenPro') format("svg");
}
@font-face {
  font-family: "Maven Pro";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('maven-pro-v21-latin-600.e32f71cdf37813c4.eot');
  src: local(""), url('maven-pro-v21-latin-600.e32f71cdf37813c4.eot?#iefix') format("embedded-opentype"), url('maven-pro-v21-latin-600.af44b29fd18f1c1b.woff2') format("woff2"), url('maven-pro-v21-latin-600.431ab6681332b077.woff') format("woff"), url('maven-pro-v21-latin-600.bb77c161e8581fa8.ttf') format("truetype"), url('maven-pro-v21-latin-600.389e188121b8db4a.svg#MavenPro') format("svg");
}
:root {
  /* Identidad de marca */
  --primary: #16a34a;
  --primary-hover: #15803d;
  --primary-rgb: 22, 163, 74;
  /* Superficies y Fondos */
  --surface: #ffffff;
  --surface-rgb: 255, 255, 255;
  --surface-subtle: #f8fafc;
  --surface-subtle-rgb: 248, 250, 252;
  /* Bordes y Divisores */
  --border: #e2e8f0;
  --border-rgb: 226, 232, 240;
  --border-hover: #cbd5e1;
  --border-hover-rgb: 203, 213, 225;
  /* Textos */
  --text-main: #0f172a;
  --text-main-rgb: 15, 23, 42;
  --text-muted: #64748b;
  --text-muted-rgb: 100, 116, 139;
  /* Estados Semánticos */
  --danger: #ef4444;
  --danger-rgb: 239, 68, 68;
  --warning: #f59e0b;
  --warning-rgb: 245, 158, 11;
  --warning-light: #fbbf24;
  --warning-light-rgb: 251, 191, 36;
  --success: #16a34a;
  --success-rgb: 22, 163, 74;
  /* Sombras y Overlays */
  --shadow: 0 1px 4px rgba(15, 23, 42, 0.04);
  --shadow-hover: 0 4px 12px rgba(15, 23, 42, 0.08);
  --overlay: rgba(0, 0, 0, 0.6);
}

[data-theme=dark],
body.dark-theme {
  /* Identidad de marca */
  --primary: #22c55e;
  --primary-hover: #16a34a;
  --primary-rgb: 34, 197, 94;
  /* Superficies y Fondos */
  --surface: #0f172a;
  --surface-rgb: 15, 23, 42;
  --surface-subtle: #1e293b;
  --surface-subtle-rgb: 30, 41, 59;
  /* Bordes y Divisores */
  --border: #334155;
  --border-rgb: 51, 65, 85;
  --border-hover: #475569;
  --border-hover-rgb: 71, 85, 105;
  /* Textos */
  --text-main: #f8fafc;
  --text-main-rgb: 248, 250, 252;
  --text-muted: #94a3b8;
  --text-muted-rgb: 148, 163, 184;
  /* Estados Semánticos */
  --danger: #f87171;
  --danger-rgb: 248, 113, 113;
  --warning: #fbbf24;
  --warning-rgb: 251, 191, 36;
  --warning-light: #fde047;
  --warning-light-rgb: 253, 224, 71;
  --success: #22c55e;
  --success-rgb: 34, 197, 94;
  /* Sombras y Overlays */
  --shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
  --shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.5);
  --overlay: rgba(0, 0, 0, 0.8);
}

html {
  min-height: 100%;
}

html,
body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100%;
  font-size: 62.5%;
  font-family: "Montserrat", sans-serif;
  background-color: var(--surface, #FFFFFF);
  color: var(--text-main, #0F172A);
}

select,
option {
  font-family: "Montserrat", sans-serif;
}

a {
  text-decoration: none;
  outline: 0;
  color: blue;
  font-weight: 500;
}
a:hover {
  text-decoration: underline;
}

b {
  font-weight: 600 !important;
}

mark {
  background-color: black !important;
  padding: 0 0.25rem !important;
}

strong {
  font-weight: 600;
}

h1 {
  font-size: 3rem;
  font-weight: 800;
}

h2 {
  font-size: 1.2rem;
  font-weight: 300;
}

h3 {
  font-size: 2rem;
}

h4 {
  font-size: 2rem;
}

h5 {
  font-size: 1.4rem;
}

@media screen and (min-width: 991px) {
  h1 {
    font-size: 5rem;
  }
  h2 {
    font-size: 1.8rem;
  }
}
p {
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Maven Pro", sans-serif;
  margin: 0 0 2rem 0;
}

::-webkit-scrollbar {
  width: 4px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background-color: gray;
  border-radius: 4px;
  border: 0;
}
