/* Metacrilato Gestor — PÁGINA DE CONTACTO (shortcode [mc_contacto], 27-09-2026).
   Lienzo gris a todo el ancho como carrito y Mi cuenta; dos tarjetas blancas:
   contacto directo (izquierda) y formulario de Forminator (derecha).
   Valores estéticos: Apariencia (--mc-*). Iconos: Textos e iconos (--mc-ico-*).
   Botones: la geometría de buttons.css. */

/* Contenedor del tema: fuera la caja blanca y el padding lateral. */
.mc-pagina-contacto .content-container.site-container { padding-left: 0; padding-right: 0; max-width: none; }
.mc-pagina-contacto .entry-content-wrap { background: transparent; box-shadow: none; padding: 0; max-width: none; }
.mc-pagina-contacto article.content-bg, .mc-pagina-contacto .single-entry.content-bg { background: transparent; box-shadow: none; border: 0; }
.mc-pagina-contacto .entry-content, .mc-pagina-contacto .entry-content.single-content { max-width: none; margin: 0; }
.mc-pagina-contacto .content-area { margin-top: 0; margin-bottom: 0; }
/* En el móvil el tema saca el artículo 16 px por cada lado (margen negativo). */
.mc-pagina-contacto article.entry { margin-left: 0 !important; margin-right: 0 !important; }

.mc-contacto { background: var(--mc-fondo-suave); color: var(--mc-texto); padding: 15px 15px 48px; box-sizing: border-box; }
.mc-contacto * { box-sizing: border-box; }
.mc-contacto .mc-contacto-cab { max-width: 1200px; margin: 12px auto 20px; }
.mc-contacto .mc-contacto-ante { margin: 0 0 6px; font-size: var(--mc-fs-mini); font-weight: var(--mc-peso-fuerte); letter-spacing: .06em; text-transform: uppercase; color: var(--mc-texto-2); }
.mc-contacto .mc-contacto-h1 { margin: 0; font-size: 36px; line-height: 1.2; font-weight: var(--mc-peso-fuerte); color: var(--mc-texto); }
.mc-contacto .mc-contacto-intro { margin: 10px 0 0; max-width: 720px; font-size: var(--mc-fs-base); line-height: 1.55; color: var(--mc-texto-2); }

.mc-contacto .mc-contacto-cols { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 15px; align-items: start; }
@media (max-width: 1024px) { .mc-contacto .mc-contacto-cols { grid-template-columns: 1fr; } .mc-contacto .mc-contacto-h1 { font-size: 28px; } }

.mc-contacto .mc-contacto-card { background: var(--mc-fondo); border-radius: var(--mc-radio-tarjeta); box-shadow: var(--mc-sombra-tarjeta); padding: 24px; }
.mc-contacto .mc-contacto-h2 { margin: 0 0 14px; font-size: var(--mc-fs-titulo); line-height: 1.25; font-weight: var(--mc-peso-fuerte); color: var(--mc-texto); }
.mc-contacto .mc-contacto-nota { margin: -8px 0 18px; font-size: var(--mc-fs-compacto); color: var(--mc-texto-2); }

/* Contacto directo: tres filas con icono. */
.mc-contacto ul.mc-contacto-canales { list-style: none; margin: 0 0 15px; padding: 0; display: grid; gap: 8px; }
.mc-contacto ul.mc-contacto-canales li { margin: 0; padding: 0; }
.mc-contacto .mc-contacto-canales a {
	display: flex; align-items: center; gap: 12px; padding: 12px 14px;
	background: var(--mc-fondo-suave); border: 1px solid var(--mc-borde); border-radius: var(--mc-radio-bento);
	color: var(--mc-texto); text-decoration: none; font-size: var(--mc-fs-compacto); font-weight: var(--mc-peso-fuerte);
	transition: border-color .15s ease, box-shadow .15s ease;
}
.mc-contacto .mc-contacto-canales a:hover { border-color: var(--mc-borde-campo); box-shadow: var(--mc-sombra-seleccion); color: var(--mc-texto); }
.mc-contacto .mc-contacto-canales .mc-i { font-size: 20px; }
.mc-contacto .mc-contacto-wa { width: 20px; height: 20px; flex: 0 0 auto; display: block; }
.mc-contacto .mc-contacto-canales span { min-width: 0; overflow-wrap: anywhere; }

/* Horario y direcciones: bentos. */
.mc-contacto .mc-contacto-bento { background: var(--mc-fondo-suave); border: 1px solid var(--mc-borde); border-radius: var(--mc-radio-bento); padding: 14px 16px; margin: 0 0 8px; }
.mc-contacto .mc-contacto-bento:last-child { margin-bottom: 0; }
.mc-contacto .mc-contacto-bento h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; font-size: var(--mc-fs-mini); font-weight: var(--mc-peso-fuerte); letter-spacing: .04em; text-transform: uppercase; color: var(--mc-texto-2); }
.mc-contacto .mc-contacto-bento h3 .mc-i { font-size: 16px; color: var(--mc-texto); }
.mc-contacto .mc-contacto-bento p { margin: 0; font-size: var(--mc-fs-compacto); line-height: 1.5; color: var(--mc-texto); }

/* ---------- Formulario de Forminator con nuestro aspecto ----------
   Forminator pinta su diseño «Default» con selectores largos; se gana con
   el prefijo .mc-contacto y el atributo data-design. */
.mc-contacto .forminator-ui.forminator-custom-form[data-design] { margin: 0 !important; padding: 0 !important; font-family: inherit !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-row { margin-bottom: 14px !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-label {
	display: block; margin: 0 0 4px !important; padding: 0 !important;
	font-family: inherit !important; font-size: var(--mc-fs-mini) !important; font-weight: var(--mc-peso-fuerte) !important;
	letter-spacing: .04em; text-transform: uppercase; color: var(--mc-texto-2) !important; line-height: 1.4 !important;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-required { color: var(--mc-error) !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-input,
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-textarea {
	width: 100% !important; margin: 0 !important; padding: 9px 12px !important;
	border: 1px solid var(--mc-borde-campo) !important; border-radius: var(--mc-radio-bento) !important;
	background: var(--mc-fondo) !important; color: var(--mc-texto) !important; box-shadow: none !important;
	font-family: inherit !important; font-size: 16px !important; line-height: 1.4 !important;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-input { height: 42px !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-textarea { min-height: 140px !important; resize: vertical; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-input:focus,
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-textarea:focus { border-color: var(--mc-texto) !important; outline: none !important; box-shadow: var(--mc-sombra-seleccion) !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-error-message {
	margin: 4px 0 0 !important; padding: 0 !important; background: none !important; color: var(--mc-error) !important;
	font-size: var(--mc-fs-mini) !important; font-family: inherit !important;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-has_error .forminator-input,
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-has_error .forminator-textarea { border-color: var(--mc-error) !important; }

/* Subir archivo: botón secundario (píldora con borde) y nombre al lado. */
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-file-upload { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-file-upload > span { font-family: inherit !important; font-size: var(--mc-fs-compacto) !important; color: var(--mc-texto-2) !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-button-upload {
	width: auto !important; flex: 0 0 auto;
	height: var(--mc-btn-alto) !important; margin: 0 !important; padding: 0 var(--mc-btn-margen-texto) !important;
	border: 1px solid var(--mc-borde-campo) !important; border-radius: var(--mc-radio-pildora) !important;
	background: var(--mc-fondo) !important; color: var(--mc-texto) !important; box-shadow: none !important;
	font-family: inherit !important; font-size: var(--mc-fs-compacto) !important; font-weight: var(--mc-peso-fuerte) !important; line-height: 1 !important;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-button-upload:hover { background: var(--mc-fondo-hover) !important; }

/* Casilla de privacidad: la etiqueta de campo («Consent») sobra, el texto ya lo explica. */
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-field-consent .forminator-field > .forminator-label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-checkbox__wrapper { display: flex; align-items: flex-start; gap: 10px; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-checkbox-box {
	width: 18px !important; height: 18px !important; border: 1px solid var(--mc-borde-campo) !important; border-radius: 4px !important; background-color: var(--mc-fondo) !important; box-shadow: none !important;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-checkbox input:checked + .forminator-checkbox-box { background-color: var(--mc-boton) !important; border-color: var(--mc-boton) !important; color: var(--mc-boton-texto) !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-checkbox__label { font-family: inherit !important; font-size: var(--mc-fs-compacto) !important; line-height: 1.5 !important; color: var(--mc-texto) !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-checkbox__label a { color: var(--mc-texto) !important; text-decoration: underline !important; font-weight: var(--mc-peso-fuerte); }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-checkbox__label a:hover { color: var(--mc-enlace) !important; }

/* Enviar: píldora principal con icono (Textos e iconos → Página de contacto). */
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-row-last .forminator-field { display: flex; justify-content: flex-end; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-button-submit {
	position: relative; display: inline-flex !important; align-items: center; gap: var(--mc-btn-margen-texto);
	height: var(--mc-btn-alto) !important; width: auto !important; margin: 0 !important;
	padding: 0 var(--mc-btn-margen-texto) 0 var(--mc-btn-margen) !important;
	border: 0 !important; border-radius: var(--mc-radio-pildora) !important;
	background: var(--mc-boton) !important; color: var(--mc-boton-texto) !important; box-shadow: none !important;
	font-family: inherit !important; font-size: var(--mc-fs-compacto) !important; font-weight: var(--mc-peso-fuerte) !important; line-height: 1 !important;
	cursor: pointer;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-button-submit:hover { background: var(--mc-boton-hover) !important; }
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-button-submit::before {
	content: ""; flex: 0 0 auto; box-sizing: border-box; width: var(--mc-icono-boton); height: var(--mc-icono-boton);
	padding: calc((var(--mc-icono-boton) - var(--mc-icono-glifo)) / 2);
	margin-right: calc((var(--mc-icono-glifo) - var(--mc-icono-boton)) / 2);
	background-color: currentColor;
	-webkit-mask: var(--mc-ico-contacto-enviar) no-repeat center / contain; mask: var(--mc-ico-contacto-enviar) no-repeat center / contain;
	-webkit-mask-origin: content-box; mask-origin: content-box; -webkit-mask-clip: content-box; mask-clip: content-box;
}

/* Mensajes de respuesta del formulario (enviado / error): como nuestros avisos. */
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-response-message:not(:empty) {
	margin: 0 0 16px !important; padding: 14px 16px !important; border: 0 !important; border-radius: var(--mc-radio-bento) !important;
	background: var(--mc-aviso) !important; color: var(--mc-boton-texto) !important; box-shadow: none !important;
	font-family: inherit !important; font-size: var(--mc-fs-compacto) !important;
}
.mc-contacto .forminator-ui.forminator-custom-form[data-design] .forminator-response-message p { color: var(--mc-boton-texto) !important; margin: 0 !important; font-size: inherit !important; }
