.contactanos-page {
	background: #ffffff;
	color: #4d4c4e;
	font-family: 'VAGRoundedLtNormal', Arial, sans-serif;
	font-size: 18px;
	line-height: 1.45;
}

.contactanos-encabezado {
	background: #e09326;
	color: #ffffff;
	padding: 46px 24px 50px;
	text-align: center;
}

.contactanos-encabezado h1 {
	font-family: 'VAG-Rounded-Bold', Arial, sans-serif;
	font-size: 52px;
	font-weight: normal;
	line-height: 1.05;
	margin: 0;
	text-transform: uppercase;
}

.contactanos-encabezado p {
	font-size: 23px;
	line-height: 1.4;
	margin: 18px auto 0;
	max-width: 820px;
}

.contactanos-contenido {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1160px;
	padding: 64px 24px 80px;
}

.contactanos-selector {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contactanos-opcion {
	align-items: center;
	background: #ffffff;
	border: 3px solid #e3e3e4;
	border-radius: 18px;
	box-shadow: 0 10px 26px rgba(77, 76, 78, 0.1);
	box-sizing: border-box;
	color: #4d4c4e;
	cursor: pointer;
	display: flex;
	font: inherit;
	justify-content: center;
	min-height: 164px;
	padding: 28px 32px;
	text-align: left;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	width: 100%;
}

.contactanos-opcion:hover {
	border-color: #cf5d28;
	box-shadow: 0 14px 32px rgba(77, 76, 78, 0.15);
	transform: translateY(-2px);
}

.contactanos-opcion:focus-visible {
	outline: 4px solid rgba(0, 105, 167, 0.35);
	outline-offset: 4px;
}

.contactanos-opcion.is-active {
	background: #fff8f3;
	border-color: #cf5d28;
	box-shadow: 0 12px 30px rgba(207, 93, 40, 0.18);
}

.contactanos-opcion-icono {
	align-items: center;
	background: rgba(207, 93, 40, 0.12);
	border-radius: 50%;
	color: #cf5d28;
	display: flex;
	flex: 0 0 72px;
	font-size: 34px;
	height: 72px;
	justify-content: center;
	margin-right: 22px;
}

.contactanos-opcion.is-active .contactanos-opcion-icono {
	background: #cf5d28;
	color: #ffffff;
}

.contactanos-opcion-titulo {
	font-family: 'VAG-Rounded-Bold', Arial, sans-serif;
	font-size: 29px;
	line-height: 1.15;
}

.contactanos-panel[hidden] {
	display: none !important;
}

.contactanos-panel {
	margin-top: 38px;
	scroll-margin-top: 110px;
}

.contactanos-formulario {
	background: #f1f1f2;
	border-radius: 18px;
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 980px;
	padding: 36px;
}

.contactanos-formulario > h2,
.contactanos-datos h2 {
	color: #cf5d28;
	font-family: 'VAG-Rounded-Bold', Arial, sans-serif;
	font-size: 30px;
	font-weight: normal;
	line-height: 1.2;
	margin: 0 0 26px;
}

/*
 * El theme original fija cada párrafo de .cont_camp en 178px. Contact Form 7
 * usa párrafos como envoltorios, por lo que neutralizamos esa regla sólo acá.
 */
.contactanos-page .contenedor_form_contacto {
	background: transparent;
	display: block;
	padding: 0;
	width: 100%;
}

.contactanos-page .wpcf7-form {
	display: grid;
	gap: 20px 22px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contactanos-page .wpcf7-form .hidden-fields-container {
	display: none;
}

.contactanos-page .wpcf7-form p,
.contactanos-page .contenedor_input p,
.contactanos-page .cont_botn_enviar p {
	color: #4d4c4e;
	font-family: 'VAGRoundedLtNormal', Arial, sans-serif;
	font-size: 17px;
	height: auto;
	line-height: 1.4;
	margin: 0;
	overflow: visible;
}

.contactanos-page .contenedor_input {
	box-sizing: border-box;
	margin: 0;
	position: relative;
}

.contactanos-page .contenedor_input--full,
.contactanos-page .cont_botn_enviar,
.contactanos-page .wpcf7-response-output {
	grid-column: 1 / -1;
}

.contactanos-page .contenedor_input br {
	display: none;
}

.contactanos-page .contenedor_form_contacto label,
.contactanos-page .contenedor_form_contacto .label_mensaje {
	bottom: auto;
	display: block;
	font-family: 'VAG-Rounded-Bold', Arial, sans-serif;
	font-size: 17px;
	height: auto;
	left: auto;
	line-height: 1.25;
	margin: 0 0 8px;
	padding: 0;
	position: static;
	top: auto;
}

.contactanos-page .contenedor_form_contacto input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.contactanos-page .contenedor_form_contacto select,
.contactanos-page .contenedor_form_contacto textarea {
	background: #ffffff;
	border: 1px solid #c9c9cb;
	border-radius: 8px;
	box-sizing: border-box;
	color: #353435;
	display: block;
	font-family: Arial, sans-serif;
	font-size: 17px;
	height: auto;
	line-height: 1.4;
	margin: 0;
	min-height: 52px;
	padding: 12px 14px;
	width: 100%;
}

.contactanos-page .contenedor_form_contacto textarea {
	min-height: 150px;
	resize: vertical;
}

.contactanos-page .contenedor_form_contacto input[type='file'] {
	padding: 10px;
}

.contactanos-page .contenedor_form_contacto input:focus,
.contactanos-page .contenedor_form_contacto select:focus,
.contactanos-page .contenedor_form_contacto textarea:focus {
	border-color: #0069a7;
	box-shadow: 0 0 0 3px rgba(0, 105, 167, 0.16);
	outline: none;
}

.contactanos-page .cont_botn_enviar {
	text-align: right;
}

.contactanos-page .cont_botn_enviar input,
.contactanos-page input[type='submit'].wpcf7-submit {
	background: #cf5d28;
	border: 0;
	border-radius: 7px;
	color: #ffffff;
	cursor: pointer;
	font-family: 'VAG-Rounded-Bold', Arial, sans-serif;
	font-size: 18px;
	line-height: 1.2;
	min-width: 172px;
	padding: 14px 28px;
}

.contactanos-page .cont_botn_enviar input:hover,
.contactanos-page input[type='submit'].wpcf7-submit:hover {
	background: #ad481c;
}

.contactanos-page .cont_botn_enviar input:focus-visible,
.contactanos-page input[type='submit'].wpcf7-submit:focus-visible {
	outline: 4px solid rgba(0, 105, 167, 0.35);
	outline-offset: 3px;
}

.contactanos-page .wpcf7-spinner {
	vertical-align: middle;
}

.contactanos-page .wpcf7-not-valid-tip {
	display: block;
	font-size: 14px;
	line-height: 1.35;
	margin-top: 6px;
}

.contactanos-page .wpcf7 form .wpcf7-response-output {
	background: #eef5fa;
	border: 0;
	border-left: 5px solid #0069a7;
	border-radius: 8px;
	box-shadow: 0 5px 16px rgba(77, 76, 78, 0.12);
	box-sizing: border-box;
	color: #2f4d5f;
	font-family: Arial, sans-serif;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.45;
	margin: 6px 0 0;
	padding: 15px 18px;
}

.contactanos-page .wpcf7-form.sent .wpcf7-response-output {
	background: #eaf6ed;
	border-left-color: #2f7d3e;
	color: #245c30;
}

.contactanos-page .wpcf7-form.failed .wpcf7-response-output,
.contactanos-page .wpcf7-form.aborted .wpcf7-response-output {
	background: #fcecec;
	border-left-color: #b42318;
	color: #842117;
}

.contactanos-page .wpcf7-form.invalid .wpcf7-response-output,
.contactanos-page .wpcf7-form.unaccepted .wpcf7-response-output,
.contactanos-page .wpcf7-form.payment-required .wpcf7-response-output,
.contactanos-page .wpcf7-form.spam .wpcf7-response-output {
	background: #fff4df;
	border-left-color: #c66a12;
	color: #7a430e;
}

.contactanos-page .wpcf7-response-output:focus {
	outline: 4px solid rgba(0, 105, 167, 0.25);
	outline-offset: 3px;
}

.contactanos-configuracion,
.contactanos-no-disponible {
	background: #ffffff;
	border-left: 5px solid #e09326;
	box-sizing: border-box;
	font-size: 17px;
	line-height: 1.5;
	margin: 0;
	padding: 18px 20px;
}

.contactanos-configuracion p {
	margin-top: 6px !important;
}

.contactanos-configuracion a {
	color: #0069a7;
	text-decoration: underline;
}

.contactanos-datos {
	align-items: center;
	background: #ffffff;
	border: 1px solid #e3e3e4;
	border-radius: 18px;
	box-sizing: border-box;
	display: grid;
	gap: 28px;
	grid-template-columns: 1fr auto;
	margin-top: 42px;
	padding: 30px 34px;
	text-align: left;
	width: 100%;
}

.contactanos-datos h2 {
	font-size: 25px;
	margin-bottom: 16px;
}

.contactanos-datos address {
	font-style: normal;
}

.contactanos-datos address span,
.contactanos-datos address a {
	color: #4d4c4e;
	display: block;
	font-size: 18px;
	line-height: 1.45;
}

.contactanos-datos address a:hover,
.contactanos-datos address a:focus {
	text-decoration: underline;
}

.contactanos-datos address .link_naranja {
	color: #cf5d28;
}

.contactanos-datos img {
	height: auto;
	max-width: 150px;
	width: 150px;
}

.contactanos-solo-lectores {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

@media (max-width: 828px) {
	.contactanos-page {
		padding-top: 50px;
	}

	.contactanos-encabezado {
		padding: 34px 20px 38px;
	}

	.contactanos-encabezado h1 {
		font-size: 40px;
	}

	.contactanos-encabezado p {
		font-size: 19px;
		line-height: 1.4;
	}

	.contactanos-contenido {
		padding: 38px 18px 56px;
	}

	.contactanos-selector {
		gap: 16px;
		grid-template-columns: 1fr;
	}

	.contactanos-opcion {
		justify-content: flex-start;
		min-height: 108px;
		padding: 20px 22px;
	}

	.contactanos-opcion-icono {
		flex-basis: 58px;
		font-size: 27px;
		height: 58px;
		margin-right: 18px;
	}

	.contactanos-opcion-titulo {
		font-size: 24px;
	}

	.contactanos-panel {
		margin-top: 28px;
	}

	.contactanos-formulario {
		border-radius: 14px;
		padding: 26px 20px;
	}

	.contactanos-formulario > h2 {
		font-size: 26px;
		margin-bottom: 22px;
	}

	.contactanos-page .wpcf7-form {
		grid-template-columns: 1fr;
	}

	.contactanos-page .contenedor_input,
	.contactanos-page .contenedor_input--full,
	.contactanos-page .cont_botn_enviar,
	.contactanos-page .wpcf7-response-output {
		grid-column: 1;
	}

	.contactanos-page .cont_botn_enviar,
	.contactanos-page .cont_botn_enviar input,
	.contactanos-page input[type='submit'].wpcf7-submit {
		width: 100%;
	}

	.contactanos-datos {
		grid-template-columns: 1fr auto;
		padding: 24px;
	}

	.contactanos-datos img {
		max-width: 110px;
		width: 110px;
	}
}

@media (max-width: 540px) {
	.contactanos-encabezado h1 {
		font-size: 34px;
	}

	.contactanos-encabezado p {
		font-size: 17px;
	}

	.contactanos-opcion-titulo {
		font-size: 21px;
	}

	.contactanos-datos {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.contactanos-datos address {
		text-align: center;
	}

	.contactanos-datos img {
		justify-self: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.contactanos-opcion {
		transition: none;
	}
}
