/* =========================================================================
   css/secciones/contacto_generico2026.css - Formulario de contacto general
   (contacto_embebido_generico.php, en contacto.php) con Bootstrap 5.3.
   Compensa reglas globales de estilos.css: .form-control con border-radius
   0 !important, margin-bottom 10px y placeholder amarillo.
   ========================================================================= */

.cgen26 {
	width: 100%;
	margin: 1rem 0 2rem;
	border: 1px solid #e6e9ee;
	border-top: 4px solid #f4b333;
	overflow: hidden;
	color: #3d4654;
}

/* Cabecera: texto de invitacion con icono */
.cgen26-cabecera {
	padding: 1.1rem 1.5rem;
	background-color: #232d3b;
	color: #fff;
	font-weight: 600;
	line-height: 1.4;
}

.cgen26-cabecera p {
	text-align: left !important; /* principal.css: #internacional_mapa p { text-align: justify } */
}

.cgen26-icono {
	width: 44px;
	height: 44px;
	background-color: rgba(244, 179, 51, .15);
	color: #f4b333;
	font-size: 1.1rem;
}

.cgen26-cuerpo {
	padding: 1.5rem;
}

/* Campos */
.cgen26-label {
	margin-bottom: .35rem;
	color: #232d3b;
	font-size: .875rem;
	font-weight: 600;
}

.cgen26-obligatorio {
	color: #dc3545;
	font-weight: 700;
}

.cgen26 .form-control {
	margin-bottom: 0;
	padding: .6rem .9rem;
	border-color: #d5d9e0;
	border-radius: .5rem !important;
	background-color: #fafbfc;
	font-size: .95rem;
}

.cgen26 .form-control::placeholder {
	color: #8a93a0;
	font-weight: 400;
}

.cgen26 .form-control:focus {
	border-color: #f4b333;
	background-color: #fff;
	box-shadow: 0 0 0 .2rem rgba(244, 179, 51, .25);
}

.cgen26 .form-control.is-invalid {
	border-color: #dc3545;
}

.cgen26-mensaje {
	min-height: 130px;
	resize: vertical;
}

.cgen26-nota {
	color: #5b6573;
	font-size: .8rem;
}

/* Texto legal: caja gris con scroll propio para no alargar la pagina */
.cgen26-lopd {
	max-height: 170px;
	overflow-y: auto;
	padding: .9rem 1rem;
	border: 1px solid #e6e9ee;
	background-color: #f5f6f8;
	color: #5b6573;
	font-size: 0; /* texto_lopd.php empieza con un BOM y un salto: sin esto se ve una linea en blanco */
	scrollbar-width: thin;
}

.cgen26-lopd p {
	font-size: .78rem;
	line-height: 1.55;
	text-align: left !important;
}

.cgen26-lopd p:last-child {
	margin-bottom: 0;
}

.cgen26-lopd a {
	color: #232d3b;
	font-weight: 600;
	text-decoration: underline !important;
}

/* Consentimiento */
.cgen26 .form-check-input {
	width: 1.15em;
	height: 1.15em;
	border-color: #aab2bd;
	cursor: pointer;
}

.cgen26 .form-check-input:checked {
	background-color: #f4b333;
	border-color: #f4b333;
}

.cgen26 .form-check-input:focus {
	border-color: #f4b333;
	box-shadow: 0 0 0 .2rem rgba(244, 179, 51, .25);
}

.cgen26-consentimiento {
	color: #5b6573;
	font-size: .82rem;
	line-height: 1.5;
	cursor: pointer;
}

.cgen26-enlace {
	color: #232d3b;
	font-weight: 600;
	text-decoration: underline !important; /* estilos.css quita el subrayado */
	text-underline-offset: 3px;
}

.cgen26-enlace:hover {
	color: #dd9d1f;
}

.cgen26-enlace .fa-solid {
	font-size: .75em;
}

/* Boton Enviar: igual que .contacto26-boton de contacto2026.css */
.cgen26-enviar,
.cgen26-enviar:focus {
	min-width: 180px;
	padding: .75rem 2rem;
	border: 0;
	border-radius: var(--bs-border-radius);
	background-color: var(--sr-yellow, #ffb800);
	color: #fff;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.cgen26-enviar:hover,
.cgen26-enviar:active {
	background-color: #e5a500 !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.cgen26-enviar:focus-visible {
	box-shadow: 0 0 0 .25rem rgba(255, 184, 0, .4);
}

.cgen26-enviar:disabled {
	opacity: .7;
}

@media (max-width: 575.98px) {
	.cgen26-cabecera,
	.cgen26-cuerpo { padding-left: 1.1rem; padding-right: 1.1rem; }
	.cgen26-enviar { width: 100%; }
}

/* Boton como el ENVIAR de la seccion de contacto 2026 (contacto26-boton):
   amarillo, texto blanco en mayusculas y esquinas poco redondeadas */
.cgen26-boton,
.cgen26-boton:focus {
	padding-top: .75rem;
	padding-bottom: .75rem;
	border: 0;
	border-radius: var(--bs-border-radius);
	background-color: var(--sr-yellow, #ffb800);
	color: #fff;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	transition: background-color .2s ease, transform .2s ease;
}

.cgen26-boton:hover,
.cgen26-boton:active {
	background-color: #e5a500 !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.cgen26-boton:focus-visible {
	box-shadow: 0 0 0 .25rem rgba(244, 179, 51, .4);
}

.cgen26-boton:disabled {
	opacity: .7;
}

@media (max-width: 575.98px) {
	.cgen26-boton { width: 100%; }
}

/* principal.css (.contacto_web_embebido form { width: 96%; padding: 2% }) y otras
   reglas antiguas estrechan el <form>: dentro de la tarjeta ocupa todo el ancho */
.cgen26 form {
	margin: 0;
	padding: 0;
	width: 100%;
}
