/**
 * WordPress / Elementor — layout + tipografía con clases propias.
 * Cada h1–h5, p, a y botón lleva clase membresias-* para no heredar estilos globales.
 */

/* --- Layout ancho completo --- */
body.membresias-landing .site-content,
body.membresias-landing .ast-container,
body.membresias-landing .site-content .ast-container,
body.membresias-landing #primary,
body.membresias-landing #content,
body.membresias-landing .content-area {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	float: none !important;
}

body.membresias-landing.ast-plain-container #primary {
	margin: 0 !important;
	padding: 0 !important;
}

#membresias-tejedores,
body.membresias-landing .membresias-page {
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

/* Layout: fondos a pantalla completa; el ancho lo limitan los hijos .mx-auto */
#membresias-tejedores .membresias-layout {
	width: 100%;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

#membresias-tejedores .membresias-layout > section {
	width: 100%;
}

#membresias-tejedores .max-w-7xl {
	max-width: 80rem !important;
}

#membresias-tejedores .max-w-6xl {
	max-width: 72rem !important;
}

#membresias-tejedores .max-w-4xl {
	max-width: 56rem !important;
}

#membresias-tejedores .max-w-3xl {
	max-width: 48rem !important;
}

#membresias-tejedores .membresias-card-hidden {
	display: none !important;
}

/* Tarjetas Involúcrate — flex compacto (sin grid ni gap-8 de Tailwind/Elementor) */
#membresias-tejedores .membresias-memberships-wrap {
	display: flex !important;
	justify-content: center !important;
	width: 100% !important;
}

#membresias-tejedores .membresias-memberships-grid,
#membresias-tejedores #membresias .membresias-memberships-grid {
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: stretch !important;
	width: auto !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 1.25rem !important;
	column-gap: 1.25rem !important;
	row-gap: 1.25rem !important;
	grid-template-columns: none !important;
}

#membresias-tejedores .membresias-memberships-grid > *,
#membresias-tejedores .membresias-membership-card {
	flex: 0 0 auto !important;
	width: 18rem !important;
	max-width: 18rem !important;
	min-width: 0 !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-self: stretch !important;
	min-height: 100% !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-memberships-grid > *,
	#membresias-tejedores .membresias-membership-card {
		width: 18.25rem !important;
		max-width: 18.25rem !important;
	}

	#membresias-tejedores .membresias-memberships-grid,
	#membresias-tejedores #membresias .membresias-memberships-grid {
		gap: 1.125rem !important;
		column-gap: 1.125rem !important;
		row-gap: 1.25rem !important;
	}
}

@media (max-width: 1023px) {
	#membresias-tejedores .membresias-memberships-grid > *,
	#membresias-tejedores .membresias-membership-card {
		width: 100% !important;
		max-width: 22rem !important;
		min-height: 0 !important;
	}

	#membresias-tejedores .membresias-card-body {
		height: auto !important;
	}

	#membresias-tejedores .membresias-card-actions {
		margin-top: 1.5rem !important;
	}
}

@media (min-width: 1024px) {
	#membresias-tejedores .membresias-memberships-grid,
	#membresias-tejedores #membresias .membresias-memberships-grid {
		flex-wrap: nowrap !important;
		gap: 1.5rem !important;
		column-gap: 1.5rem !important;
		row-gap: 1.5rem !important;
	}

	#membresias-tejedores .membresias-memberships-grid > *,
	#membresias-tejedores .membresias-membership-card {
		width: 17.25rem !important;
		max-width: 17.25rem !important;
	}
}

#membresias-tejedores .mx-auto {
	margin-left: auto !important;
	margin-right: auto !important;
}

#membresias-tejedores .text-center {
	text-align: center !important;
}

#membresias-tejedores .flex.flex-wrap.justify-center {
	justify-content: center !important;
}

/* --- Reset Elementor en tipografía con clase --- */
#membresias-tejedores .membresias-h1,
#membresias-tejedores .membresias-h2,
#membresias-tejedores .membresias-h3:not(.membresias-card-title),
#membresias-tejedores .membresias-h4,
#membresias-tejedores .membresias-h5,
#membresias-tejedores .membresias-p:not(.membresias-card-tagline):not(.membresias-card-desc),
#membresias-tejedores .membresias-a,
#membresias-tejedores .membresias-btn,
#membresias-tejedores .membresias-btn-cta {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	font-style: normal !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	text-shadow: none !important;
	box-shadow: none !important;
}

#membresias-tejedores .membresias-card-title,
#membresias-tejedores .membresias-card-tagline {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	text-decoration: none !important;
	text-shadow: none !important;
	box-shadow: none !important;
}

/* Solo resetear lo que Elementor suele forzar; NO tocar margin/line-height (los define Tailwind). */
#membresias-tejedores .membresias-h1 .membresias-h1-line {
	display: block !important;
	font-family: inherit !important;
}

#membresias-tejedores a.membresias-a:not(.membresias-btn-cta) {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
}

#membresias-tejedores a.membresias-a.membresias-link-contact {
	color: #54595f !important;
}

#membresias-tejedores a.membresias-a.membresias-link-contact:hover,
#membresias-tejedores a.membresias-a.membresias-link-inline:hover {
	color: #ff9433 !important;
}

#membresias-tejedores a.membresias-a.membresias-link-inline {
	color: #ff9433 !important;
	text-decoration: underline !important;
}

/* --- Etiquetas redondas (p con clase badge) --- */
#membresias-tejedores p.membresias-badge,
#membresias-tejedores .membresias-badge {
	display: inline-block !important;
	box-sizing: border-box !important;
	border-radius: 9999px !important;
	border-width: 1px !important;
	border-style: solid !important;
	background-color: transparent !important;
	background-image: none !important;
	padding: 0.5rem 1.25rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.2em !important;
	line-height: 1.4 !important;
	margin: 0 !important;
}

#membresias-tejedores .membresias-badge-cyan {
	border-color: #64bcd5 !important;
	color: #64bcd5 !important;
}

#membresias-tejedores .membresias-badge-orange {
	border-color: #ff9433 !important;
	color: #ff9433 !important;
}

/* --- Títulos h2 (tamaño oficial unificado) --- */
#membresias-tejedores .membresias-h2 {
	font-size: 2.25rem !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: #54595f !important;
	letter-spacing: normal !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-h2 {
		font-size: 3rem !important;
		line-height: 1 !important;
	}
}

#membresias-tejedores .membresias-h2-involucrate {
	color: #66487f !important;
}

#membresias-tejedores .membresias-h2-involucrate-mobile {
	display: block !important;
}

#membresias-tejedores .membresias-h2-involucrate-mobile .block {
	display: block !important;
	line-height: 1.1 !important;
}

#membresias-tejedores .membresias-h2-involucrate-mobile .block + .block {
	margin-top: 0.15rem !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-h2-involucrate-mobile {
		display: none !important;
	}
}

#membresias-tejedores .membresias-h2-contact {
	color: #54595f !important;
}

#membresias-tejedores .membresias-involucrate-subtitle-mobile {
	display: block !important;
}

#membresias-tejedores .membresias-involucrate-subtitle-mobile .block {
	display: block !important;
	line-height: 1.4 !important;
}

#membresias-tejedores .membresias-involucrate-subtitle-emphasis {
	font-weight: 600 !important;
}

#membresias-tejedores .membresias-text-semibold {
	font-weight: 600 !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-involucrate-subtitle-mobile {
		display: none !important;
	}
}

#membresias-tejedores .membresias-h2-tax .text-tax {
	color: #5aaa78 !important;
}

/* Beneficio tributario — ítems, márgenes y correo (móvil + iPad) */
#membresias-tejedores .membresias-tax-benefit-item {
	align-items: flex-start !important;
}

#membresias-tejedores .membresias-tax-benefit-body {
	min-width: 0 !important;
	flex: 1 1 0% !important;
}

#membresias-tejedores .membresias-tax-benefit-text,
#membresias-tejedores .membresias-tax-benefit-body .membresias-p {
	overflow-wrap: break-word !important;
	word-wrap: break-word !important;
}

#membresias-tejedores .membresias-tax-benefit-body a.membresias-tax-benefit-email {
	overflow-wrap: normal !important;
	word-break: normal !important;
	hyphens: none !important;
}

/* Móvil e iPad: correo legible y márgenes en párrafos */
@media (max-width: 1023px) {
	#membresias-tejedores .membresias-tax-card {
		padding-left: 1.5rem !important;
		padding-right: 1.5rem !important;
	}

	#membresias-tejedores .membresias-tax-benefit-body {
		padding-right: 0.5rem !important;
	}

	#membresias-tejedores .membresias-tax-benefit-text,
	#membresias-tejedores .membresias-tax-benefit-body .membresias-p {
		padding-right: 0.4rem !important;
		max-width: 100% !important;
	}

	#membresias-tejedores .membresias-tax-benefit-body a.membresias-tax-benefit-email {
		display: block !important;
		width: fit-content !important;
		max-width: 100% !important;
		margin: 0.2rem 0 !important;
		line-height: 1.45 !important;
		font-size: 0.875rem !important;
		letter-spacing: 0.01em !important;
		white-space: normal !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
	}
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-tax-card {
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
	}

	#membresias-tejedores .membresias-tax-benefits-grid {
		gap: 1.75rem !important;
	}

	#membresias-tejedores .membresias-tax-benefit-item {
		gap: 0.875rem !important;
	}

	#membresias-tejedores .membresias-tax-benefit-body a.membresias-tax-benefit-email {
		font-size: 12px !important;
	}
	}
}

#membresias-tejedores .membresias-h3-item,
#membresias-tejedores .membresias-h3-card {
	font-size: 1rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	color: #54595f !important;
}

/* Impacto + tributario: 1rem en todos los tamaños (Elementor pisa h3 en escritorio) */
body.membresias-landing #membresias-tejedores h3.membresias-h3-card,
body.membresias-landing #membresias-tejedores h3.membresias-h3-item {
	font-size: 1rem !important;
	line-height: 1.35 !important;
	font-weight: 700 !important;
	color: #54595f !important;
}

#membresias-tejedores a.membresias-btn-cta.membresias-btn-hazte-parte,
#membresias-tejedores .membresias-btn-hazte-parte {
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	letter-spacing: 0.04em !important;
}

@media (max-width: 639px) {
	#membresias-tejedores img.membresias-hazte-parte-logo {
		width: 18rem !important;
		max-width: 94vw !important;
		height: auto !important;
	}

	#membresias-tejedores .membresias-hazte-parte-text {
		font-size: 1.25rem !important;
		line-height: 1.375 !important;
	}
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-hero-inner {
		padding-top: 1.25rem !important;
	}

	#membresias-tejedores .membresias-hero-badge {
		margin-top: 0.75rem !important;
	}

	#membresias-tejedores .membresias-hero-inner .membresias-h1 {
		margin-top: 1rem !important;
	}
}

/* Hero — tagline en 2 líneas solo móvil */
#membresias-tejedores .membresias-hero-tagline-stacked {
	display: none !important;
}

#membresias-tejedores .membresias-hero-tagline-single {
	display: inline !important;
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-hero-tagline-stacked {
		display: block !important;
	}

	#membresias-tejedores .membresias-hero-tagline-stacked .block {
		display: block !important;
		line-height: 1.625 !important;
	}

	#membresias-tejedores .membresias-hero-tagline-stacked .block + .block {
		margin-top: 0.15rem !important;
	}

	#membresias-tejedores .membresias-hero-tagline-single {
		display: none !important;
	}
}

/* Impacto — iconos SVG (tamaño fijo; los SVG traen width/height 100%) */
#membresias-tejedores .membresias-impact-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 3.5rem !important;
	height: 3.5rem !important;
	min-width: 3.5rem !important;
	min-height: 3.5rem !important;
	max-width: 3.5rem !important;
	max-height: 3.5rem !important;
	margin: 0 0 1rem !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
	border-radius: 0.75rem !important;
}

#membresias-tejedores .membresias-impact-icon--purple {
	background-color: rgb(139 99 170 / 15%) !important;
}

#membresias-tejedores .membresias-impact-icon--cyan {
	background-color: rgb(100 188 213 / 15%) !important;
}

#membresias-tejedores .membresias-impact-icon--orange {
	background-color: rgb(255 148 51 / 15%) !important;
}

#membresias-tejedores .membresias-impact-icon--yellow {
	background-color: rgb(250 185 50 / 20%) !important;
}

#membresias-tejedores .membresias-impact-icon__img {
	display: block !important;
	width: 2.5rem !important;
	height: 2.5rem !important;
	max-width: 2.5rem !important;
	max-height: 2.5rem !important;
	object-fit: contain !important;
	object-position: center center !important;
}

/* Impacto — cierre en 2 líneas solo móvil */
#membresias-tejedores .membresias-impact-closing-stacked {
	display: none !important;
}

#membresias-tejedores .membresias-impact-closing-single {
	display: inline !important;
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-impact-closing-stacked {
		display: block !important;
	}

	#membresias-tejedores .membresias-impact-closing-stacked .block {
		display: block !important;
		line-height: 1.375 !important;
	}

	#membresias-tejedores .membresias-impact-closing-stacked .block + .block {
		margin-top: 0.15rem !important;
	}

	#membresias-tejedores .membresias-impact-closing-single {
		display: none !important;
	}
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-hazte-parte-text-stacked {
		display: block !important;
	}

	#membresias-tejedores .membresias-hazte-parte-text-stacked .block {
		display: block !important;
		line-height: 1.375 !important;
	}

	#membresias-tejedores .membresias-hazte-parte-text-stacked .block + .block {
		margin-top: 0.15rem !important;
	}

	#membresias-tejedores .membresias-hazte-parte-text-single {
		display: none !important;
	}
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-hazte-parte-text-stacked {
		display: none !important;
	}

	#membresias-tejedores .membresias-hazte-parte-text-single {
		display: inline !important;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	#membresias-tejedores a.membresias-btn-cta.membresias-btn-hazte-parte,
	#membresias-tejedores .membresias-btn-hazte-parte {
		font-size: 1.375rem !important;
	}
}

@media (min-width: 1024px) {
	#membresias-tejedores a.membresias-btn-cta.membresias-btn-hazte-parte,
	#membresias-tejedores .membresias-btn-hazte-parte {
		font-size: 1.5rem !important;
	}
}

#membresias-tejedores .membresias-btn-fecu {
	font-size: 0.9375rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	gap: 0.625rem !important;
}

/* iPad: botón Fecu Social — texto más grande */
@media (min-width: 640px) and (max-width: 1023px) {
	#membresias-tejedores a.membresias-btn-cta.membresias-btn-fecu,
	#membresias-tejedores .membresias-btn-fecu {
		font-size: 1.125rem !important;
	}
}

#membresias-tejedores .membresias-btn-fecu .membresias-btn-fecu-icon,
#membresias-tejedores .membresias-btn-fecu .membresias-btn-fecu-icon svg,
#membresias-tejedores .membresias-btn-fecu svg {
	width: 1.5rem !important;
	height: 1.5rem !important;
	min-width: 1.5rem !important;
	min-height: 1.5rem !important;
	flex-shrink: 0 !important;
	stroke-width: 2.35 !important;
}

/* Escritorio: más espacio entre icono y texto del botón Fecu */
@media (min-width: 1024px) {
	#membresias-tejedores a.membresias-btn-cta.membresias-btn-fecu,
	#membresias-tejedores .membresias-btn-fecu {
		gap: 0.875rem !important;
		column-gap: 0.875rem !important;
	}

	#membresias-tejedores .membresias-btn-fecu .membresias-btn-fecu-icon,
	#membresias-tejedores .membresias-btn-fecu .membresias-btn-fecu-icon svg {
		margin-right: 0.25rem !important;
	}
}

#membresias-tejedores .membresias-btn-submit {
	font-size: 0.75rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
}

/* Escritorio: columna de contacto (Dirección, Email…) un poco más abajo */
@media (min-width: 1024px) {
	#membresias-tejedores .membresias-contact-col {
		margin-top: 1.75rem !important;
	}
}

#membresias-tejedores .membresias-contact-list {
	margin: 0 !important;
	padding: 0 !important;
}

#membresias-tejedores .membresias-contact-list > dt,
#membresias-tejedores .membresias-contact-list > dd {
	float: none !important;
	clear: none !important;
	margin-left: 0 !important;
}

#membresias-tejedores .membresias-contact-term {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 0.5rem !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

#membresias-tejedores .membresias-contact-term .membresias-contact-label {
	display: inline !important;
}

#membresias-tejedores .membresias-contact-icon {
	display: inline-flex !important;
	flex-shrink: 0 !important;
	color: #fa702a !important;
	background: none !important;
}

#membresias-tejedores .membresias-contact-icon svg {
	width: 1rem !important;
	height: 1rem !important;
	stroke: #fa702a !important;
	color: #fa702a !important;
}

#membresias-tejedores .membresias-contact-list > dd.membresias-contact-value {
	margin-top: 0.25rem !important;
	margin-right: 0 !important;
	margin-bottom: 2rem !important;
	margin-left: 0 !important;
	padding: 0 !important;
}

#membresias-tejedores .membresias-contact-value-inner {
	display: block !important;
	margin: 0 !important;
	padding-left: 1.5rem !important;
}

#membresias-tejedores .membresias-contact-list > dd.membresias-contact-value:last-of-type {
	margin-bottom: 0 !important;
}

#membresias-tejedores .membresias-contact-label {
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	line-height: 1.3 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fa702a !important;
}

/* --- Filtros Condiciones Generales --- */
#membresias-tejedores button.membresias-filter-btn,
#membresias-tejedores .membresias-filter-btn {
	cursor: pointer !important;
	border-style: solid !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
}

#membresias-tejedores .membresias-filter-btn--todas {
	background-color: #54595f !important;
	border-color: #54595f !important;
	color: #ffffff !important;
	box-shadow: none !important;
}

#membresias-tejedores .membresias-filter-btn--todas.membresias-filter-btn--active {
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08), 0 0 0 2px #ffffff, 0 0 0 4px #c5c5c5 !important;
}

#membresias-tejedores .membresias-filter-btn--colored:not(.membresias-filter-btn--active) {
	opacity: 0.92 !important;
}

#membresias-tejedores .membresias-filter-btn--colored.membresias-filter-btn--active {
	opacity: 1 !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08), 0 0 0 2px #ffffff, 0 0 0 4px #c5c5c5 !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-yellow {
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-yellow.membresias-filter-btn--active {
	background-color: #fab932 !important;
	border-color: #d9a32a !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-cyan.membresias-filter-btn--active {
	background-color: #64bcd5 !important;
	border-color: #4a9ab0 !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-purple.membresias-filter-btn--active {
	background-color: #8b63aa !important;
	border-color: #6d4f88 !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-orange.membresias-filter-btn--active {
	background-color: #ff9433 !important;
	border-color: #d9781f !important;
	color: #ffffff !important;
}

/* Hover/focus: mismo color que en reposo (Elementor no debe pintar amarillo) */
#membresias-tejedores .membresias-filter-btn--todas:hover,
#membresias-tejedores .membresias-filter-btn--todas:focus {
	background-color: #54595f !important;
	border-color: #54595f !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-yellow:hover,
#membresias-tejedores .membresias-filter-btn--colored.bg-yellow:focus {
	background-color: #fab932 !important;
	border-color: #d9a32a !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-cyan:hover,
#membresias-tejedores .membresias-filter-btn--colored.bg-cyan:focus {
	background-color: #64bcd5 !important;
	border-color: #4a9ab0 !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-purple:hover,
#membresias-tejedores .membresias-filter-btn--colored.bg-purple:focus {
	background-color: #8b63aa !important;
	border-color: #6d4f88 !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-filter-btn--colored.bg-orange:hover,
#membresias-tejedores .membresias-filter-btn--colored.bg-orange:focus {
	background-color: #ff9433 !important;
	border-color: #d9781f !important;
	color: #ffffff !important;
}

/* --- Select (sin altura fija: el padding define el tamaño, evita recorte en Safari) --- */
#membresias-tejedores select.membresias-select,
#membresias-tejedores select.membresias-select-field {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0.625rem 2.25rem 0.625rem 0.875rem !important;
	font-size: 0.9375rem !important;
	line-height: 1.2 !important;
	box-sizing: border-box !important;
	overflow: visible !important;
	appearance: auto !important;
	-webkit-appearance: menulist !important;
}

@media (min-width: 768px) {
	#membresias-tejedores select.membresias-select,
	#membresias-tejedores select.membresias-select-field {
		padding-top: 0.625rem !important;
		padding-bottom: 0.625rem !important;
	}
}

#membresias-tejedores select.membresias-select-empty {
	color: #7a7a7a !important;
	-webkit-text-fill-color: #7a7a7a !important;
}

#membresias-tejedores select.membresias-select:not(.membresias-select-empty) {
	color: #54595f !important;
	-webkit-text-fill-color: #54595f !important;
}

#membresias-tejedores select.membresias-select option {
	color: #54595f !important;
	background: #ffffff !important;
	font-size: 1rem !important;
	padding: 0.5rem !important;
}

/* Títulos de sección: heredan tamaño de .membresias-h2; acentos en spans */
#membresias-tejedores .membresias-title-section .text-orange {
	color: #ff9433 !important;
}

#membresias-tejedores .membresias-title-section .font-light,
#membresias-tejedores .membresias-h2-tax .font-light {
	font-weight: 300 !important;
}

/* --- Tarjetas membresía: óvalo oscuro + texto blanco --- */
#membresias-tejedores .membresias-card-header-overlay {
	z-index: 10 !important;
	pointer-events: none !important;
}

#membresias-tejedores .membresias-membership-card .relative img {
	z-index: 1 !important;
}

#membresias-tejedores .membresias-card-pill,
#membresias-tejedores .membresias-card-pill.bg-involucrate-ink {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 98% !important;
	max-width: 100% !important;
	min-height: 4.5rem !important;
	padding: 0.75rem 0.65rem !important;
	border-radius: 9999px !important;
	background-color: #332d3b !important;
	background-image: none !important;
	text-align: center !important;
	box-sizing: border-box !important;
	overflow: visible !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: relative !important;
	z-index: 11 !important;
	pointer-events: auto !important;
	border: none !important;
	box-shadow: none !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-card-pill {
		min-height: 4.75rem !important;
		padding: 0.875rem 0.75rem !important;
	}
}

#membresias-tejedores .membresias-card-pill .membresias-card-title,
#membresias-tejedores h3.membresias-card-title {
	color: #ffffff !important;
	font-weight: 700 !important;
	font-style: normal !important;
	text-transform: uppercase !important;
	font-size: 1.375rem !important;
	line-height: 1.1 !important;
	letter-spacing: 0.03em !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	max-width: 100% !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-card-pill .membresias-card-title,
	#membresias-tejedores h3.membresias-card-title {
		font-size: 1.0625rem !important;
	}
}

#membresias-tejedores .membresias-card-pill .membresias-card-tagline,
#membresias-tejedores p.membresias-card-tagline {
	color: #ffffff !important;
	font-style: italic !important;
	font-size: 1.0625rem !important;
	line-height: 1.15 !important;
	margin: 0.25rem 0 0 !important;
	padding: 0 !important;
	background: transparent !important;
	max-width: 100% !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-card-pill .membresias-card-tagline,
	#membresias-tejedores p.membresias-card-tagline {
		font-size: 0.875rem !important;
	}
}

@media (min-width: 1024px) {
	#membresias-tejedores .membresias-card-pill .membresias-card-title,
	#membresias-tejedores h3.membresias-card-title {
		font-size: 1.125rem !important;
	}

	#membresias-tejedores .membresias-card-pill .membresias-card-tagline,
	#membresias-tejedores p.membresias-card-tagline {
		font-size: 0.875rem !important;
	}
}

/* iPad — Involúcrate: título de sección, subtítulo y textos de las tarjetas más grandes */
@media (min-width: 768px) and (max-width: 1023px) {
	#membresias-tejedores #membresias .membresias-h2-involucrate {
		font-size: 3.35rem !important;
		line-height: 1.1 !important;
	}

	#membresias-tejedores #membresias .membresias-involucrate-subtitle {
		font-size: 1.375rem !important;
		line-height: 1.45 !important;
	}

	#membresias-tejedores .membresias-card-pill .membresias-card-title,
	#membresias-tejedores h3.membresias-card-title {
		font-size: 1.3125rem !important;
	}

	#membresias-tejedores .membresias-card-pill .membresias-card-tagline,
	#membresias-tejedores p.membresias-card-tagline {
		font-size: 1.0625rem !important;
	}

	#membresias-tejedores .membresias-card-pill {
		min-height: 5.25rem !important;
		padding: 1rem 0.875rem !important;
	}

	#membresias-tejedores #membresias .membresias-card-actions .membresias-card-cta,
	#membresias-tejedores #membresias a.membresias-btn-cta.membresias-card-cta {
		font-size: 1.25rem !important;
		line-height: 1.3 !important;
		padding-top: 0.875rem !important;
		padding-bottom: 0.875rem !important;
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
		min-height: 3rem !important;
	}
}

/* --- Botones CTA y filtros --- */
#membresias-tejedores a.membresias-btn-cta,
#membresias-tejedores button.membresias-btn-cta,
#membresias-tejedores .membresias-btn-cta {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 9999px !important;
	font-weight: 700 !important;
	text-transform: none !important;
	color: #ffffff !important;
	text-decoration: none !important;
	border: none !important;
	outline: none !important;
	cursor: pointer !important;
	padding: 0.75rem 1.5rem !important;
	font-size: 1rem !important;
	line-height: 1.25 !important;
	background-image: none !important;
	background-size: auto !important;
	background-repeat: no-repeat !important;
	box-shadow: none !important;
	filter: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

#membresias-tejedores a.membresias-btn-cta::before,
#membresias-tejedores a.membresias-btn-cta::after,
#membresias-tejedores .membresias-card-cta::before,
#membresias-tejedores .membresias-card-cta::after {
	display: none !important;
	content: none !important;
}

#membresias-tejedores a.membresias-btn-cta.membresias-card-cta,
#membresias-tejedores .membresias-card-cta.membresias-btn-cta {
	text-transform: none !important;
}

#membresias-tejedores a.membresias-btn-cta.membresias-btn-hero,
#membresias-tejedores a.membresias-btn-cta.uppercase.membresias-btn-hero {
	text-transform: uppercase !important;
	letter-spacing: normal !important;
}

#membresias-tejedores a.membresias-btn-cta:hover,
#membresias-tejedores button.membresias-btn-cta:hover {
	color: #ffffff !important;
}

#membresias-tejedores .membresias-btn-cta.bg-orange,
#membresias-tejedores a.membresias-btn-cta.bg-orange {
	background: #ff9433 !important;
	background-color: #ff9433 !important;
}

#membresias-tejedores .membresias-btn-cta.bg-yellow,
#membresias-tejedores a.membresias-btn-cta.bg-yellow {
	background: #fab932 !important;
	background-color: #fab932 !important;
	color: #54595f !important;
}

#membresias-tejedores a.membresias-btn-cta.bg-yellow:hover,
#membresias-tejedores button.membresias-btn-cta.bg-yellow:hover {
	background: #fab932 !important;
	background-color: #fab932 !important;
	color: #54595f !important;
}

#membresias-tejedores .membresias-btn-cta.bg-cyan,
#membresias-tejedores a.membresias-btn-cta.bg-cyan {
	background: #64bcd5 !important;
	background-color: #64bcd5 !important;
}

#membresias-tejedores .membresias-btn-cta.bg-purple,
#membresias-tejedores a.membresias-btn-cta.bg-purple {
	background: #8b63aa !important;
	background-color: #8b63aa !important;
}

#membresias-tejedores a.membresias-btn-cta.bg-orange:hover,
#membresias-tejedores a.membresias-btn-cta.bg-cyan:hover,
#membresias-tejedores a.membresias-btn-cta.bg-purple:hover {
	background-image: none !important;
	filter: none !important;
}

#membresias-tejedores button.membresias-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	background-image: none !important;
	box-shadow: none !important;
}

#membresias-tejedores button.membresias-filter-btn {
	font-weight: 700 !important;
}

/* --- Formulario --- */
#membresias-tejedores select.membresias-select,
#membresias-tejedores .membresias-select {
	color: #54595f !important;
	background-color: #ffffff !important;
	-webkit-text-fill-color: #54595f !important;
}

#membresias-tejedores select.membresias-select option {
	color: #54595f !important;
	background-color: #ffffff !important;
}

/* --- Tarjetas condiciones --- */
#membresias-tejedores .membresias-condition-head {
	display: flex !important;
	align-items: flex-start !important;
	gap: 0.75rem !important;
}

#membresias-tejedores .membresias-condition-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 3.5rem !important;
	height: 3.5rem !important;
	flex-shrink: 0 !important;
	border-radius: 0.75rem !important;
}

#membresias-tejedores .membresias-condition-meta .membresias-h3 {
	font-size: 0.875rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #54595f !important;
}

#membresias-tejedores .membresias-condition-tag {
	display: inline-block !important;
	margin-top: 0.125rem !important;
	padding: 0.125rem 0.5rem !important;
	font-size: 0.625rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	border-radius: 9999px !important;
}

#membresias-tejedores .membresias-condition-tags {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.375rem !important;
	margin-top: 0.125rem !important;
}

#membresias-tejedores .membresias-condition-tag--yellow {
	background-color: #fab932 !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-condition-tag--cyan {
	background-color: #64bcd5 !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-condition-tag--purple {
	background-color: #8b63aa !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-condition-tag--orange {
	background-color: #ff9433 !important;
	color: #ffffff !important;
}

/* --- Colores de texto (Tailwind / Elementor) --- */
#membresias-tejedores .text-secondary {
	color: #54595f !important;
}

#membresias-tejedores .text-textGray {
	color: #7a7a7a !important;
}

#membresias-tejedores .text-orange {
	color: #ff9433 !important;
}

#membresias-tejedores .text-tax {
	color: #5aaa78 !important;
}

/* --- Interlineado y espaciado (refuerzo si Elementor pisa utilidades) --- */
#membresias-tejedores .leading-none {
	line-height: 1 !important;
}

#membresias-tejedores .leading-tight {
	line-height: 1.25 !important;
}

#membresias-tejedores .leading-snug {
	line-height: 1.375 !important;
}

#membresias-tejedores .leading-relaxed {
	line-height: 1.625 !important;
}

#membresias-tejedores .text-xs {
	font-size: 0.85rem !important;
	line-height: 1.2 !important;
}

#membresias-tejedores .membresias-filter-btn.text-sm,
#membresias-tejedores button.membresias-filter-btn.text-sm {
	font-size: 0.85rem !important;
	line-height: 1.2 !important;
}

#membresias-tejedores .text-sm {
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
}

#membresias-tejedores .text-base {
	font-size: 1rem !important;
	line-height: 1.5 !important;
}

#membresias-tejedores .text-lg {
	font-size: 1.125rem !important;
	line-height: 1.625 !important;
}

#membresias-tejedores .text-xl {
	font-size: 1.25rem !important;
	line-height: 1.5 !important;
}

#membresias-tejedores .text-2xl {
	font-size: 1.5rem !important;
	line-height: 1.4 !important;
}

#membresias-tejedores .text-4xl {
	font-size: 2.25rem !important;
	line-height: 1.2 !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .sm\:text-5xl {
		font-size: 3rem !important;
		line-height: 1.1 !important;
	}

	#membresias-tejedores .sm\:text-xl {
		font-size: 1.25rem !important;
	}
}

@media (min-width: 768px) {
	#membresias-tejedores .md\:text-5xl {
		font-size: 3rem !important;
	}

	#membresias-tejedores .md\:text-6xl {
		font-size: 3.75rem !important;
		line-height: 1.1 !important;
	}

	#membresias-tejedores .md\:text-lg {
		font-size: 1.125rem !important;
		line-height: 1.625 !important;
	}

	#membresias-tejedores .md\:text-2xl {
		font-size: 1.5rem !important;
	}
}

@media (min-width: 1024px) {
	#membresias-tejedores .lg\:text-7xl {
		font-size: 4.5rem !important;
		line-height: 1 !important;
	}
}

#membresias-tejedores .mt-1 {
	margin-top: 0.25rem !important;
}

#membresias-tejedores .mt-4 {
	margin-top: 1rem !important;
}

#membresias-tejedores .mt-6 {
	margin-top: 1.5rem !important;
}

#membresias-tejedores .mt-8 {
	margin-top: 2rem !important;
}

#membresias-tejedores .mt-10 {
	margin-top: 2.5rem !important;
}

#membresias-tejedores .mt-12 {
	margin-top: 3rem !important;
}

#membresias-tejedores .mb-2 {
	margin-bottom: 0.5rem !important;
}

#membresias-tejedores .mb-3 {
	margin-bottom: 0.75rem !important;
}

#membresias-tejedores .mb-4 {
	margin-bottom: 1rem !important;
}

#membresias-tejedores .mb-6 {
	margin-bottom: 1.5rem !important;
}

#membresias-tejedores .mb-16 {
	margin-bottom: 4rem !important;
}

#membresias-tejedores .mb-1\.5 {
	margin-bottom: 0.375rem !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .sm\:text-lg {
		font-size: 1.125rem !important;
		line-height: 1.625 !important;
	}
}

@media (min-width: 768px) {
	#membresias-tejedores .md\:mt-5 {
		margin-top: 1.25rem !important;
	}

	#membresias-tejedores .md\:mt-8 {
		margin-top: 2rem !important;
	}

	#membresias-tejedores .md\:mt-10 {
		margin-top: 2.5rem !important;
	}

	#membresias-tejedores .md\:text-xl {
		font-size: 1.25rem !important;
	}
}

#membresias-tejedores .space-y-2 > :not([hidden]) ~ :not([hidden]) {
	margin-top: 0.5rem !important;
}

#membresias-tejedores .space-y-8 > :not([hidden]) ~ :not([hidden]) {
	margin-top: 2rem !important;
}

@media (min-width: 768px) {
	#membresias-tejedores .md\:space-y-9 > :not([hidden]) ~ :not([hidden]) {
		margin-top: 2.25rem !important;
	}
}

@media (min-width: 1024px) {
	#membresias-tejedores .lg\:space-y-10 > :not([hidden]) ~ :not([hidden]) {
		margin-top: 2.5rem !important;
	}
}

#membresias-tejedores .membresias-card-body .membresias-p + .membresias-p {
	margin-top: 0 !important;
}

#membresias-tejedores .membresias-p + .membresias-p {
	margin-top: 1.5rem !important;
}

/* --- Cuerpo tarjeta membresía --- */
#membresias-tejedores .membresias-membership-card > .membresias-card-body {
	flex: 1 1 auto !important;
}

#membresias-tejedores .membresias-card-body {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	min-height: 0 !important;
	height: 100% !important;
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
}

#membresias-tejedores .membresias-card-intro {
	flex: 0 0 auto !important;
	display: block !important;
}

#membresias-tejedores .membresias-card-includes-section {
	flex-shrink: 0 !important;
	margin-top: 1.5rem !important;
}

#membresias-tejedores .membresias-card-actions {
	margin-top: auto !important;
	padding-top: 1.5rem !important;
	width: 100% !important;
	flex-shrink: 0 !important;
}

#membresias-tejedores .membresias-card-actions .membresias-card-cta {
	display: flex !important;
	width: 100% !important;
	margin-top: 0 !important;
	padding-top: 0.75rem !important;
	padding-bottom: 0.75rem !important;
	box-sizing: border-box !important;
}

/* Botones CTA de tarjetas Involúcrate — más grandes solo en móvil */
@media (max-width: 639px) {
	#membresias-tejedores .membresias-card-actions .membresias-card-cta,
	#membresias-tejedores a.membresias-btn-cta.membresias-card-cta {
		font-size: 1.25rem !important;
		line-height: 1.3 !important;
		padding-top: 0.875rem !important;
		padding-bottom: 0.875rem !important;
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
		min-height: 3rem !important;
	}
}

#membresias-tejedores .membresias-card-price {
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	color: #54595f !important;
	white-space: nowrap !important;
	margin-bottom: 1rem !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-card-price {
		font-size: 1.125rem !important;
	}
}

#membresias-tejedores .membresias-card-desc,
#membresias-tejedores #membresias .membresias-card-desc.membresias-p {
	font-size: 0.8125rem !important;
	font-style: italic !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #7a7a7a !important;
	margin: 0 !important;
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-card-desc,
	#membresias-tejedores #membresias .membresias-card-desc.membresias-p {
		font-size: 0.9375rem !important;
		line-height: 1.5 !important;
	}
}

#membresias-tejedores .membresias-card-includes {
	font-size: 0.8125rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #54595f !important;
	margin: 0 0 0.75rem !important;
	padding: 0 !important;
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-card-includes {
		font-size: 0.9375rem !important;
	}
}

#membresias-tejedores .membresias-card-benefits {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

#membresias-tejedores .membresias-card-benefits .membresias-li {
	display: flex !important;
	align-items: flex-start !important;
	gap: 0.5rem !important;
	font-size: 0.6875rem !important;
	font-weight: 400 !important;
	line-height: 1.25 !important;
	color: #7a7a7a !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 639px) {
	#membresias-tejedores .membresias-card-benefits .membresias-li {
		font-size: 0.8125rem !important;
		line-height: 1.4 !important;
	}
}

#membresias-tejedores .membresias-card-benefits .membresias-li + .membresias-li {
	margin-top: 0.5rem !important;
}

#membresias-tejedores .membresias-card-benefits .membresias-card-benefit-text {
	line-height: 1.25 !important;
}

#membresias-tejedores .membresias-card-benefits .membresias-card-benefit-text,
#membresias-tejedores .membresias-card-benefits .membresias-card-bullet {
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	margin: 0 !important;
	padding: 0 !important;
}

#membresias-tejedores .membresias-card-benefits .membresias-card-bullet {
	color: #ff9433 !important;
	font-weight: 700 !important;
	flex-shrink: 0 !important;
}

#membresias-tejedores .membresias-card-benefits .membresias-li .text-orange {
	color: #ff9433 !important;
	font-weight: 700 !important;
}

#membresias-tejedores .membresias-h2 + .membresias-p {
	margin-top: 1rem !important;
}

#membresias-tejedores #membresias .membresias-p {
	line-height: 1.625 !important;
}

#membresias-tejedores #membresias ul:not(.membresias-card-benefits) li {
	line-height: 1.5 !important;
}

/* --- Gravity Forms (ID en membresias-data.php) --- */
#membresias-tejedores .membresias-gf-wrap .gform_wrapper {
	margin: 0 !important;
	padding: 0 !important;
}

#membresias-tejedores .membresias-gf-wrap .gform_heading {
	display: none !important;
}

#membresias-tejedores .membresias-gf-wrap .gform_fields {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.75rem !important;
}

@media (min-width: 768px) {
	#membresias-tejedores .membresias-gf-wrap .gform_fields {
		gap: 1rem !important;
	}
}

#membresias-tejedores .membresias-gf-wrap .gfield {
	margin: 0 !important;
	padding: 0 !important;
}

#membresias-tejedores .membresias-gf-wrap .gfield_label,
#membresias-tejedores .membresias-gf-wrap legend.gfield_label {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	color: #54595f !important;
	margin-bottom: 0.375rem !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container input[type='text'],
#membresias-tejedores .membresias-gf-wrap .ginput_container input[type='email'],
#membresias-tejedores .membresias-gf-wrap .ginput_container input[type='tel'],
#membresias-tejedores .membresias-gf-wrap .ginput_container textarea {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	color: #54595f !important;
	-webkit-text-fill-color: #54595f !important;
	opacity: 1 !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 0.5rem !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	padding: 0.75rem 1rem !important;
	width: 100% !important;
	box-shadow: none !important;
}

/* Select GF — nativo, texto visible (igual que project4) */
#membresias-tejedores .membresias-gf-wrap .gfield--type-select .ginput_container,
#membresias-tejedores .membresias-gf-wrap .ginput_container_select {
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
}

#membresias-tejedores .membresias-gf-wrap .gfield--type-select select,
#membresias-tejedores .membresias-gf-wrap .ginput_container_select select,
#membresias-tejedores .membresias-gf-wrap .ginput_container select,
#membresias-tejedores .membresias-gf-wrap .ginput_container select.gfield_select,
#membresias-tejedores .membresias-gf-wrap select.membresias-select,
#membresias-tejedores .membresias-gf-wrap select.membresias-select-field {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	font-size: 0.9375rem !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #54595f !important;
	-webkit-text-fill-color: #54595f !important;
	opacity: 1 !important;
	visibility: visible !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 0.5rem !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	box-sizing: border-box !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0.625rem 2.25rem 0.625rem 0.875rem !important;
	width: 100% !important;
	overflow: visible !important;
	box-shadow: none !important;
	appearance: auto !important;
	-webkit-appearance: menulist !important;
}

@media (min-width: 768px) {
	#membresias-tejedores .membresias-gf-wrap .gfield--type-select select,
	#membresias-tejedores .membresias-gf-wrap .ginput_container_select select,
	#membresias-tejedores .membresias-gf-wrap .ginput_container select,
	#membresias-tejedores .membresias-gf-wrap .ginput_container select.gfield_select,
	#membresias-tejedores .membresias-gf-wrap select.membresias-select,
	#membresias-tejedores .membresias-gf-wrap select.membresias-select-field {
		padding-top: 0.625rem !important;
		padding-bottom: 0.625rem !important;
	}
}

/* Select GF: placeholder gris; valor elegido oscuro (Safari/Astra suelen ocultar el texto) */
#membresias-tejedores .membresias-gf-wrap .ginput_container select.membresias-select-empty {
	color: #7a7a7a !important;
	-webkit-text-fill-color: #7a7a7a !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container select:not(.membresias-select-empty) {
	color: #54595f !important;
	-webkit-text-fill-color: #54595f !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container select {
	appearance: auto !important;
	-webkit-appearance: menulist !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container select option {
	color: #54595f !important;
	background-color: #ffffff !important;
	font-size: 1rem !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container select option.gf_placeholder,
#membresias-tejedores .membresias-gf-wrap .ginput_container select option[value=''] {
	color: #7a7a7a !important;
}

/* Variables del tema Orbital / Framework de Gravity Forms */
#membresias-tejedores .membresias-gf-wrap .gform_wrapper,
#membresias-tejedores .membresias-gf-wrap .gform-theme--framework {
	--gf-ctrl-color: #54595f !important;
	--gf-ctrl-label-color: #54595f !important;
	--gf-ctrl-select-color: #54595f !important;
}

/* Enhanced UI (Chosen) — por si está activado en el campo */
#membresias-tejedores .membresias-gf-wrap .chosen-container-single .chosen-single,
#membresias-tejedores .membresias-gf-wrap .chosen-container-single .chosen-single span,
#membresias-tejedores .membresias-gf-wrap .gform-theme--framework .chosen-container-single .chosen-single {
	color: #54595f !important;
	-webkit-text-fill-color: #54595f !important;
	background: #ffffff !important;
}

#membresias-tejedores .membresias-gf-wrap .chosen-container-single .chosen-single span {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container textarea {
	min-height: 5.5rem !important;
	max-height: 5.5rem !important;
	resize: none !important;
}

#membresias-tejedores .membresias-gf-wrap select.membresias-select.membresias-select-empty,
#membresias-tejedores .membresias-gf-wrap select.membresias-select-field.membresias-select-empty {
	color: #7a7a7a !important;
	-webkit-text-fill-color: #7a7a7a !important;
}

#membresias-tejedores .membresias-gf-wrap select.membresias-select option,
#membresias-tejedores .membresias-gf-wrap select.membresias-select-field option {
	color: #54595f !important;
	background-color: #ffffff !important;
}

#membresias-tejedores .membresias-gf-wrap select.membresias-select option[value=''],
#membresias-tejedores .membresias-gf-wrap select.membresias-select-field option[value=''] {
	color: #7a7a7a !important;
}

#membresias-tejedores .membresias-gf-wrap .ginput_container input:focus,
#membresias-tejedores .membresias-gf-wrap .ginput_container select:focus,
#membresias-tejedores .membresias-gf-wrap .ginput_container textarea:focus {
	border-color: #ff9433 !important;
	outline: none !important;
	box-shadow: 0 0 0 1px #ff9433 !important;
}

#membresias-tejedores .membresias-gf-wrap .gform_footer {
	margin: 0.5rem 0 0 !important;
	padding: 0 !important;
	display: flex !important;
	justify-content: center !important;
}

#membresias-tejedores .membresias-gf-wrap .gform_button,
#membresias-tejedores .membresias-gf-wrap input[type='submit'] {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	text-transform: none !important;
	color: #ffffff !important;
	background: #ff9433 !important;
	background-image: none !important;
	border: none !important;
	border-radius: 9999px !important;
	padding: 0.75rem 1.5rem !important;
	cursor: pointer !important;
	box-shadow: none !important;
	width: 100% !important;
}

@media (min-width: 640px) {
	#membresias-tejedores .membresias-gf-wrap .gform_button,
	#membresias-tejedores .membresias-gf-wrap input[type='submit'] {
		width: auto !important;
	}
}

#membresias-tejedores .membresias-gf-wrap .gform_button:hover,
#membresias-tejedores .membresias-gf-wrap input[type='submit']:hover {
	background: rgba(255, 148, 51, 0.9) !important;
	color: #ffffff !important;
}

#membresias-tejedores .membresias-gf-wrap .gform_confirmation_message {
	font-family: Raleway, Helvetica, Arial, sans-serif !important;
	color: #54595f !important;
	font-size: 0.9375rem !important;
	line-height: 1.5 !important;
}

#membresias-tejedores .membresias-gf-wrap .gform_validation_errors {
	margin-bottom: 1rem !important;
}

/* Botón «volver arriba» de Astra (#ast-scroll-top) — icono centrado (móvil, iPad y escritorio) */
#ast-scroll-top {
	line-height: 0 !important;
	text-align: center !important;
	overflow: hidden !important;
}

#ast-scroll-top .ast-icon,
#ast-scroll-top .ast-icon.icon-arrow {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
	vertical-align: middle !important;
	position: relative !important;
}

#ast-scroll-top .ast-icon.icon-arrow svg {
	display: block !important;
	margin: 0 !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	right: auto !important;
	bottom: auto !important;
	vertical-align: middle !important;
	transform: translate(-50%, -50%) rotate(180deg) !important;
	width: 1.5em !important;
	height: auto !important;
}

/* Hero — ajustes solo móvil (al final para ganar especificidad/cascada) */
@media (max-width: 639px) {
	body.membresias-landing #membresias-tejedores .membresias-hero-inner .membresias-hero-tagline {
		margin-top: 1.5rem !important;
	}

	body.membresias-landing #membresias-tejedores .membresias-hero-inner .membresias-hero-tagline + .membresias-p {
		margin-top: 1.5rem !important;
	}

	body.membresias-landing #membresias-tejedores .membresias-hero-inner a.membresias-btn-hero {
		margin-top: 2rem !important;
	}

	body.membresias-landing #membresias-tejedores p.membresias-hero-tagline.text-lg.leading-relaxed {
		font-size: 1.1rem !important;
		line-height: 1.625 !important;
	}
}
