/*Body starts hidden and fades in after config is applied*/
body {
	display: none;
}

.do-action {
	cursor: pointer;
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////// */
/* Estilos Democoop */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type=number] {
	-moz-appearance: textfield;
}

/* Color para el botón de aceptación en el Pop-up */
.bg-brand-blue {
	background-color: #3f4b6a !important;
}

/* 1. Contenedor para alinear a la derecha */
.contenedor-final {
	display: flex;
	justify-content: flex-end;
	/* Alinea todo a la derecha */
	align-items: center;
	gap: 15px;
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #eee;
}

/* 2. Botón Cancelar */
.btn-simple {
	background: transparent;
	border: none;
	color: #666;
	cursor: pointer;
	font-size: 1rem;
}

/* 3. EL BOTÓN AZUL*/
.boton-nuevo-azul {
	/* Color de fondo: Azul oscuro empresa */
	background-color: #2c3e50;

	/* Color del texto */
	color: white;

	/* Tamaño y forma */
	padding: 12px 24px;
	border-radius: 8px;
	border: none;
	/* Quita bordes grises predeterminados */

	/* Comportamiento */
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;

	/* Fuente */
	font-size: 1rem;
	font-weight: bold;

	/* Sombra suave */
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);

	/* Transición suave */
	transition: background-color 0.3s ease;
}

/* Efecto al pasar el mouse */
.boton-nuevo-azul:hover {
	background-color: #34495e;
	/* Azul un poco más claro */
}

.plazo-activo {
	background-color: #3B4D71 !important;
	color: #ffffff !important;
	border-color: #3B4D71 !important;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

:root {
	--brand-blue: #3B4D71;
	--brand-sky-blue: #467cbf;
	--text-dark: #1f2937;
}

body {
	font-family: 'Inter', sans-serif;
	color: var(--text-dark);
	background-color: #ffffff;
}

.bg-grid-pattern {
	background-color: #ffffff;
}

/* Barra Sólida (Blanco Puro) */
.navbar-custom {
	background-color: #ffffff;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	border-top: 4px solid var(--brand-blue);
	z-index: 9999 !important;
}

.nav-link {
	position: relative;
	font-weight: 500;
	color: #3B4D71;
	transition: color 0.3s ease;
}

.nav-link:hover {
	color: var(--brand-sky-blue);
}

/* Línea naranja al hover */
.nav-link::after {
	content: '';
	position: absolute;
	width: 0;
	height: 2px;
	bottom: -4px;
	left: 0;
	background-color: var(--brand-sky-blue);
	transition: width 0.3s ease;
}

.nav-link:hover::after {
	width: 100%;
}

/* Clases útiles */
.text-brand {
	color: var(--brand-blue);
}

.text-accent {
	color: var(--brand-sky-blue);
}

.bg-brand {
	background-color: var(--brand-blue);
}

/* FAQ Animación */
.expanded-answer {
	max-height: 0;
	overflow: hidden;
	transition: all 0.4s ease;
	opacity: 0;
}

.faq-active .expanded-answer {
	max-height: 500px;
	opacity: 1;
	margin-top: 1rem;
}

.arrow-icon {
	transition: transform 0.3s ease;
}

.faq-active .arrow-icon {
	transform: rotate(180deg);
}

#monto-slider {
	-webkit-appearance: none;
	/* Quita el estilo nativo */
	appearance: none;
	width: 100%;
	height: 8px;
	background: #e5e7eb;
	/* Color gris de fondo base */
	border-radius: 5px;
	outline: none;
	transition: background 0.1s;
	/* Suavidad al cambiar color */
}

/* Estilo del botón (circulo) para Chrome/Safari/Edge */
#monto-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #467cbf;
	cursor: pointer;
	border: 3px solid #ffffff;
	/* Borde blanco para resaltar */
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
	/* Sombra elegante */
	margin-top: 0px;
	/* Alineación */
}

/* Estilo del botón para Firefox */
#monto-slider::-moz-range-thumb {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #467cbf;
	cursor: pointer;
	border: 3px solid #ffffff;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

/* ==========================================================================
   ESTILOS DE SECCIÓN (CASOS DE USO)
   ========================================================================== */

.card-use-case {
	background-color: white;
	padding: 2rem;
	border-radius: 1rem;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
	border-left-width: 8px;
	transition: all 0.3s ease;
	height: 100%;
	cursor: default;
}

.card-icon-container {
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 9999px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 1.25rem;
	font-size: 1.5rem;
	transition: all 0.3s ease;
}

.theme-blue {
	border-left-color: var(--brand-blue);
}

.theme-blue .card-icon-container {
	background-color: rgba(63, 75, 106, 0.1);
	color: var(--brand-blue);
}

.theme-blue h3 {
	color: var(--brand-blue);
}

.theme-blue:hover {
	background-color: var(--brand-blue);
	transform: translateY(-5px);
}

.theme-blue:hover .card-icon-container {
	background-color: white;
	color: var(--brand-blue);
}

.theme-blue:hover h3,
.theme-blue:hover p {
	color: white;
}

.theme-sky-blue {
	border-left-color: var(--brand-sky-blue);
}

.theme-sky-blue .card-icon-container {
	background-color: rgba(70, 124, 191, 0.1);
	color: var(--brand-sky-blue);
}

.theme-sky-blue h3 {
	color: var(--brand-sky-blue);
}

.theme-sky-blue:hover {
	background-color: var(--brand-sky-blue);
	transform: translateY(-5px);
}

.theme-sky-blue:hover .card-icon-container {
	background-color: white;
	color: var(--brand-sky-blue);
}

.theme-sky-blue:hover h3,
.theme-sky-blue:hover p {
	color: white;
}