/* FAW — ajustes que no pueden ir como estilo inline (Divi sanitiza url()/gradientes). */

/* Fundido del carrusel de reels (la clase duration-700 de Tailwind no quedó compilada). */
.faw-reel-slide { transition: opacity 0.8s ease-in-out; }

/* ===== Hero: efecto "grid curtain" (mosaico) al cambiar de fondo =====
   Réplica del efecto framer-motion del React: cada celda entra con escala/desplazamiento
   y un retraso escalonado (izquierda→derecha, arriba→abajo). */
.faw-hero-slide { position: absolute; inset: 0; }
.faw-hero-grid  { position: absolute; inset: 0; display: flex; flex-wrap: wrap; }
.faw-hero-cell {
	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
	opacity: 0;
	transform: scale(0.8) translateY(-50px);
	transition: opacity 0.5s ease-out, transform 0.5s ease-out;
	will-change: opacity, transform;
}
.faw-hero-slide.is-active .faw-hero-cell { opacity: 1; transform: none; }
/* Oscurecido sutil por celda (como el bg-black/10 original) */
.faw-hero-cell::after { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,0.1); }

/* Carrusel de reels */
.faw-reel { height: min(78vh, 720px); border-radius: 20px; }
.faw-reel-overlay {
	background: linear-gradient(to top, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.15) 55%, transparent 100%);
}

/* Mapa de ubicación */
.faw-map-iframe { border: 0; filter: grayscale(0.3) contrast(1.2); }

/* Galería de Noticias (crossfade) */
.faw-news-img { transition: opacity 1s ease-in-out; }

/* ============================================================
   WPForms — diseño de marca FAW (sobre el tema "modern")
   ============================================================ */
.faw-wpforms .wpforms-container { margin: 0; }
.faw-wpforms .wpforms-container-full {
	--wpforms-field-border-radius: 10px;
	--wpforms-field-border-color: #d1d5db;
	--wpforms-field-background-color: #ffffff;
	--wpforms-field-text-color: #374151;
	--wpforms-label-color: #6b7280;
	--wpforms-label-sublabel-color: #9ca3af;
	--wpforms-label-error-color: #e11d48;
	--wpforms-button-background-color: #1a2b88;
	--wpforms-button-text-color: #ffffff;
	--wpforms-button-border-radius: 9999px;
}

/* Inputs / select / textarea */
.faw-wpforms .wpforms-field input[type="text"],
.faw-wpforms .wpforms-field input[type="email"],
.faw-wpforms .wpforms-field input[type="tel"],
.faw-wpforms .wpforms-field input[type="url"],
.faw-wpforms .wpforms-field input[type="number"],
.faw-wpforms .wpforms-field select,
.faw-wpforms .wpforms-field textarea {
	border: 1px solid #d1d5db !important;
	border-radius: 10px !important;
	padding: 12px 14px !important;
	background: #fff !important;
	color: #374151 !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
	transition: border-color .2s ease, box-shadow .2s ease !important;
}
.faw-wpforms .wpforms-field textarea { min-height: 120px; }
.faw-wpforms .wpforms-field input:focus,
.faw-wpforms .wpforms-field select:focus,
.faw-wpforms .wpforms-field textarea:focus {
	border-color: #1a2b88 !important;
	box-shadow: 0 0 0 3px rgba(26,43,136,.12) !important;
	outline: none !important;
}

/* Etiquetas */
.faw-wpforms .wpforms-field-label {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #6b7280 !important;
	text-transform: uppercase;
	letter-spacing: .04em;
	margin-bottom: 8px !important;
}
.faw-wpforms .wpforms-required-label { color: #e11d48 !important; }

/* Botón pill con sombra */
.faw-wpforms .wpforms-submit {
	background-color: #1a2b88 !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 9999px !important;
	padding: 14px 46px !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	letter-spacing: .03em;
	box-shadow: 0 12px 22px -10px rgba(26,43,136,.6);
	transition: background-color .2s ease, transform .2s ease !important;
}
.faw-wpforms .wpforms-submit:hover { background-color: #0d1645 !important; transform: translateY(-2px); }
.faw-wpforms .wpforms-submit-container { margin-top: 10px; }

/* Layout en 2 columnas para los campos cortos (escritorio) */
@media (min-width: 768px) {
	.faw-wpforms .wpforms-field-container { display: flex; flex-wrap: wrap; column-gap: 18px; }
	.faw-wpforms .wpforms-field { width: 100%; padding: 0; }
	.faw-wpforms .wpforms-field-name,
	.faw-wpforms .wpforms-field-text,
	.faw-wpforms .wpforms-field-email,
	.faw-wpforms .wpforms-field-select { width: calc(50% - 9px); }
}

/* Checkbox de privacidad: texto normal (no mayúsculas) */
.faw-wpforms .wpforms-field-checkbox .wpforms-field-label,
.faw-wpforms .wpforms-field-label-inline {
	text-transform: none !important;
	letter-spacing: normal !important;
	font-weight: 500 !important;
	font-size: 13px !important;
	color: #6b7280 !important;
}

/* Mapa de distribuidores con bordes difuminados (máscara) */
.faw-mapa-distribuidores {
	filter: brightness(1.31);
	-webkit-mask-image: linear-gradient(to right, transparent 0, #000 10%, #000 80%, transparent 100%), linear-gradient(to bottom, transparent 0, #000 10%, #000 80%, transparent 100%);
	-webkit-mask-composite: source-in;
	mask-image: linear-gradient(to right, transparent 0, #000 10%, #000 80%, transparent 100%), linear-gradient(to bottom, transparent 0, #000 10%, #000 80%, transparent 100%);
	mask-composite: intersect;
}
