.cbp-p4-contacto { color: var(--texto); }
.cbp-p4-contacto h1,
.cbp-p4-contacto h2 {
	margin: 0 !important;
	text-align: left !important;
	font-family: var(--font-inst) !important;
}

.cbp-p4-con-seccion { background: var(--blanco-calido); padding: clamp(36px, 4vw, 68px) 20px clamp(48px, 5vw, 80px); }
.cbp-p4-con-ancho { max-width: 1100px; margin: 0 auto; }
.cbp-p4-con-columna { display: flex; flex-direction: column; gap: 28px; }
.cbp-p4-con-encabezado { display: flex; flex-direction: column; gap: 12px; }
.cbp-p4-contacto .cbp-p4-con-encabezado h1 {
	font-size: clamp(32px, 3.4vw, 48px) !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	letter-spacing: -.01em !important;
	color: var(--texto) !important;
}
.cbp-p4-con-parrafo-grande { margin: 0; max-width: 60ch; font-size: 17px; line-height: 1.65; color: rgba(21, 34, 56, .84); }
.cbp-p4-con-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; align-items: start; }

.cbp-p4-con-tarjeta-info { min-width: 0; display: flex; flex-direction: column; gap: 16px; padding: 26px; background: var(--azul-marino); color: var(--blanco-calido); border-radius: var(--r-l); }
.cbp-p4-con-eyebrow-dorado { margin: 0; font-size: 13px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--dorado-claro); }
.cbp-p4-contacto .cbp-p4-con-tarjeta-info h2 { font-size: 24px !important; font-weight: 700 !important; line-height: 1.25 !important; color: var(--blanco-calido) !important; }
.cbp-p4-con-texto-claro { margin: 0; font-size: 16px; line-height: 1.65; color: rgba(248, 250, 252, .9); }
.cbp-p4-con-boton-whatsapp {
	display: inline-flex; align-self: flex-start; align-items: center; gap: 10px;
	min-height: 52px; padding: 0 24px; border-radius: var(--r-pill);
	background: #0E6F62; color: #FFFFFF !important; font-size: 17px; font-weight: 700;
}
.cbp-p4-con-info-adicional { padding-top: 12px; border-top: 1px solid rgba(248, 250, 252, .2); display: flex; flex-direction: column; gap: 8px; font-size: 15px; line-height: 1.6; color: rgba(248, 250, 252, .88); }
.cbp-p4-con-info-adicional p { margin: 0; }

.cbp-p4-con-tarjeta-form { min-width: 0; display: flex; flex-direction: column; gap: 16px; padding: 26px; background: #FFFFFF; border: 1px solid rgba(6, 27, 58, .12); border-radius: var(--r-l); }
.cbp-p4-contacto .cbp-p4-con-tarjeta-form h2 { font-size: 22px !important; font-weight: 700 !important; color: var(--texto) !important; }
.cbp-p4-con-nota-envio { margin: 0; font-size: 14px; line-height: 1.6; color: rgba(21, 34, 56, .78); }
.cbp-p4-con-aviso-corto { margin: 0; max-width: 68ch; font-size: 14px; line-height: 1.6; color: rgba(21, 34, 56, .78); }

.cbp-p4-con-cf7-envoltorio .wpcf7-form { display: flex; flex-direction: column; gap: 16px; }

.cbp-p4-con-cf7-envoltorio fieldset.hidden-fields-container { display: none; }
.cbp-p4-con-cf7-envoltorio .row { display: flex; flex-direction: column; gap: 16px; margin: 0; }
.cbp-p4-con-cf7-envoltorio .row > [class*="col-"] { width: 100%; max-width: 100%; flex: none; padding: 0; margin: 0; }

.cbp-p4-con-cf7-envoltorio .wpcf7-form-control-wrap { display: block; }
.cbp-p4-con-cf7-envoltorio .wpcf7-form-control-wrap[data-name]::before {
	display: block; margin-bottom: 6px; font-size: 15px; font-weight: 700; color: var(--texto);
}
.cbp-p4-con-cf7-envoltorio [data-name="your-name"]::before { content: "Nombre y apellidos"; }
.cbp-p4-con-cf7-envoltorio [data-name="tel-893"]::before { content: "WhatsApp"; }
.cbp-p4-con-cf7-envoltorio [data-name="your-email"]::before { content: "Correo electrónico"; }
.cbp-p4-con-cf7-envoltorio [data-name="your-city"]::before { content: "Ciudad / país"; }
.cbp-p4-con-cf7-envoltorio [data-name="your-select"]::before { content: "Producto de interés"; }
.cbp-p4-con-cf7-envoltorio [data-name="your-message"]::before { content: "Mensaje (opcional)"; }

.cbp-p4-con-cf7-envoltorio .wpcf7-form-control {
	width: 100%; min-height: 48px; padding: 0 14px; border-radius: var(--r-m);
	font-family: inherit; font-size: 16px; color: var(--texto);
	border: 1px solid rgba(6, 27, 58, .22) !important; background: #FFFFFF;
}
.cbp-p4-con-cf7-envoltorio textarea.wpcf7-form-control { min-height: 120px; padding: 12px 14px; }
.cbp-p4-con-cf7-envoltorio .wpcf7-acceptance { display: block; }
.cbp-p4-con-cf7-envoltorio .wpcf7-list-item { margin: 0; }
.cbp-p4-con-cf7-envoltorio .wpcf7-list-item label { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.55; }
.cbp-p4-con-cf7-envoltorio .wpcf7-list-item input[type="checkbox"] { width: var(--tactil-min); height: var(--tactil-min); margin-top: 2px; flex: none; accent-color: var(--azul-principal); }
.cbp-p4-con-cf7-envoltorio .wpcf7-submit,
.cbp-p4-con-cf7-envoltorio input[type="submit"] {
	min-height: 52px; padding: 0 26px; border-radius: var(--r-pill);
	font-family: inherit; font-size: 17px; font-weight: 800; border: 0;
	background: var(--grad-dorado-cta); color: var(--texto);
}

.cbp-p4-con-cf7-envoltorio .wpcf7-submit:disabled,
.cbp-p4-con-cf7-envoltorio input[type="submit"]:disabled {
	background: var(--grad-dorado-cta) !important; color: var(--texto) !important; opacity: .5; cursor: not-allowed !important;
}
.cbp-p4-con-cf7-envoltorio .wpcf7-response-output { border-radius: var(--r-m); }

.cbp-p4-con-cf7-envoltorio .primary-btn {
	background: none; padding: 0; margin: 0; width: auto; height: auto; display: inline-block;

	border: 0 !important; box-shadow: none !important; outline: 0 !important;
}
.cbp-p4-con-cf7-envoltorio .primary-btn::before,
.cbp-p4-con-cf7-envoltorio .primary-btn::after { display: none !important; }

.cbp-p4-con-cf7-envoltorio .primary-btn { overflow: visible !important; }
.cbp-p4-con-cf7-envoltorio .primary-btn .wpcf7-submit { margin: 0 !important; position: static !important; left: auto !important; transform: none !important; }
.cbp-p4-con-cf7-envoltorio .primary-btn > span { display: block; margin: 0 !important; padding: 0 !important; }
.cbp-p4-con-cf7-envoltorio .col.mt-5 { padding-left: 0 !important; padding-right: 0 !important; }
.cbp-p4-con-cf7-envoltorio .primary-btn i.la-long-arrow-alt-right { display: none; }

.cbp-p4-con-cf7-envoltorio .wpcf7-not-valid-tip { display: block; margin-top: 6px; font-size: 14px; line-height: 1.4; color: var(--azul-profundo); }
.cbp-p4-con-cf7-envoltorio select.wpcf7-form-control { box-sizing: border-box; }
