/*
Theme Name: CURSEA Theme
Theme URI: https://close.technology
Description: Block theme for CURSEA
Author: Closemarketing
Author URI: https://close.marketing
Version: 1.0.4
License: GNU General Public License v2 or later
Text Domain: cursea-theme
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 7.4
*/

/* Global typography, colors and spacing are defined in theme.json.
 * This file only contains minimal helpers, header styles and footer styles.
 */

/* --------------------------------------------------------------
   Base mínima
-------------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
}

img,
svg,
video {
	max-width: 100%;
	height: auto;
}

a {
	transition:
		color 0.2s ease,
		background-color 0.2s ease,
		border-color 0.2s ease,
		opacity 0.2s ease;
}

.wp-site-blocks strong,
.wp-site-blocks b,
.editor-styles-wrapper strong,
.editor-styles-wrapper b {
	font-weight: 700;
}

.alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	box-sizing: border-box;
}

.wp-block-buttons .wp-block-button.logged {
	display: none;
}

body.logged-in .wp-block-buttons .wp-block-button.logged {
	display: inline-block;
}

.wp-block-buttons .wp-block-button.unlogged {
	display: inline-block;
}

body.logged-in .wp-block-buttons .wp-block-button.unlogged {
	display: none;
}

/* --------------------------------------------------------------
   Márgenes base para contenido
-------------------------------------------------------------- */

.wp-site-blocks :where(h1, h2, h3, h4, h5, h6),
.editor-styles-wrapper :where(h1, h2, h3, h4, h5, h6) {
	margin-block-start: 0;
	margin-block-end: 15px;
}

.wp-site-blocks :where(p),
.editor-styles-wrapper :where(p) {
	margin-block-start: 0;
	margin-block-end: 20px;
}

/* --------------------------------------------------------------
   Header
-------------------------------------------------------------- */

.cursea-header {
	position: relative;
	z-index: 20;
	box-shadow: 0 10px 24px rgba(31, 42, 68, 0.16);
}

.cursea-header-inner {
	min-height: 84px;
	padding-top: var(--wp--preset--spacing--30);
	padding-bottom: var(--wp--preset--spacing--30);
}

.cursea-header-logo {
	flex: 0 0 auto;
	margin: 0;
}

.cursea-header-logo img {
	display: block;
	width: auto;
	height: auto;
	max-width: 154px;
}

.cursea-header-nav {
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
}

.cursea-header-nav .wp-block-navigation__container {
	gap: clamp(2rem, 6vw, 6.5rem);
	justify-content: center;
}

.cursea-header-nav .wp-block-navigation-item__content {
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	text-decoration: none;
}

.cursea-header-nav .wp-block-navigation-item__content:hover,
.cursea-header-nav .wp-block-navigation-item__content:focus {
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
}

.cursea-header-actions {
	flex: 0 0 auto;
	margin: 0;
}

.cursea-header-button .wp-block-button__link {
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 4px;
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	padding-top: 0.85rem;
	padding-right: 1.85rem;
	padding-bottom: 0.85rem;
	padding-left: 1.85rem;
	text-decoration: none;
}

.cursea-header-button .wp-block-button__link:hover,
.cursea-header-button .wp-block-button__link:focus {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

/* Responsive header */
@media (max-width: 900px) {
	.cursea-header-inner {
		min-height: 74px;
	}

	.cursea-header-nav .wp-block-navigation__container {
		gap: var(--wp--preset--spacing--50);
	}

	.cursea-header-button .wp-block-button__link {
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}
}

@media (max-width: 700px) {
	.cursea-header-inner {
		gap: var(--wp--preset--spacing--40);
	}

	.cursea-header-logo img {
		max-width: 132px;
	}

	.cursea-header-actions {
		display: none;
	}
}

/* --------------------------------------------------------------
   Footer
-------------------------------------------------------------- */

.cursea-content-width {
	width: 100%;
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.cursea-footer {
	color: var(--wp--preset--color--primary);
}

.cursea-footer-main {
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--80);
}

.cursea-footer-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 160px 220px;
	gap: var(--wp--preset--spacing--80);
	align-items: start;
}

.cursea-footer-brand {
	max-width: 390px;
}

.cursea-footer-logo {
	margin-bottom: var(--wp--preset--spacing--30);
}

.cursea-footer-text {
	max-width: 360px;
	margin-top: 0;
	margin-bottom: 0;
	color: var(--wp--preset--color--primary);
	
}

.cursea-footer-title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	
}

.cursea-footer-navigation {
	gap: var(--wp--preset--spacing--20);
}

.cursea-footer-navigation .wp-block-navigation__container {
	gap: var(--wp--preset--spacing--20);
}

.cursea-footer-navigation .wp-block-navigation-item__content {
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	text-decoration: none;
}

.cursea-footer-navigation .wp-block-navigation-item__content:hover,
.cursea-footer-navigation .wp-block-navigation-item__content:focus {
	color: var(--wp--preset--color--secondary);
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.cursea-footer-bottom {
	padding-top: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--50);
}

.cursea-footer-bottom-inner {
	gap: var(--wp--preset--spacing--40);
}

.cursea-footer-copy {
	margin-top: 0;
	margin-bottom: 0;
	color: var(--wp--preset--color--neutral);
	
}

.cursea-footer-social {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--40);
}

.cursea-footer-social-link {
	margin: 0;
}

.cursea-footer-social-link a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--neutral);
	font-size: 1.25rem;
	font-weight: 700;

	text-decoration: none;
}

.cursea-footer-social-link a:hover,
.cursea-footer-social-link a:focus {
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

@media (max-width: 900px) {
	.cursea-footer-grid {
		grid-template-columns: 1fr 1fr;
		gap: var(--wp--preset--spacing--60);
	}

	.cursea-footer-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.cursea-footer-main {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}

	.cursea-footer-grid {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--50);
	}

	.cursea-footer-bottom {
		padding-top: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--40);
	}

	.cursea-footer-bottom-inner {
		align-items: flex-start;
	}

	.cursea-footer-social {
		gap: var(--wp--preset--spacing--30);
	}
}

/* --------------------------------------------------------------
   Pattern: Hero home
-------------------------------------------------------------- */

.content-width {
	width: 100%;
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.hero-home {
	--hero-home-dark: var(--wp--preset--color--secondary);
	--hero-home-shape: var(--wp--preset--color--primary);

	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: clamp(460px, 34vw, 560px);
	background-color: var(--hero-home-dark);
}

/* Compatibilidad por si quedó alguna estructura anterior */
.hero-home__panel,
.hero-home__shape {
	display: none;
}

/* Imagen a la derecha */
.hero-home__media {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: calc(50% - 2px);
	z-index: 1;
	width: auto;
	height: 100%;
	margin: 0;
	overflow: hidden;
}

.hero-home__image {
	width: 100%;
	height: 100%;
	margin: 0;
}

.hero-home__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Rombo/flecha principal */
.hero-home::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 5.5%;
	bottom: -1px;
	z-index: 2;
	width: 55%;
	background-color: var(--hero-home-shape);
	clip-path: polygon(40% 0, 85% 0, 100% 50%, 85% 100%, 40% 100%, 25% 50%);
	pointer-events: none;
}

/* Contenido */
.hero-home__content {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	min-height: clamp(460px, 34vw, 560px);
	box-sizing: border-box;
	padding-top: var(--wp--preset--spacing--70);
	padding-right: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--70);
	padding-left: var(--wp--preset--spacing--40);
}

.hero-home__text-box {
	position: relative;
	width: min(100%, 540px);
	margin: 0;
	/*margin-left: clamp(0rem, 2vw, 1.5rem);*/
	margin-left:0;
	color: var(--wp--preset--color--base);
}

.hero-home__title {
	max-width: 540px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--h-1);
	font-weight: 600;
	
	
}

.hero-home__title-emphasis {
	font-style: italic;
	font-weight: inherit;
}

.hero-home__description {
	width: min(100%, 380px);
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.hero-home__buttons {
	gap: var(--wp--preset--spacing--30);
	margin: 0;
}

.hero-home__button-primary .wp-block-button__link,
.hero-home__button-secondary .wp-block-button__link {
	border: 1px solid rgba(255, 255, 255, 0.65);
	border-radius: 3px;
	background-color: rgba(255, 255, 255, 0.08);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--button-text);
	font-weight: 400;
	
	padding-top: 0.62rem;
	padding-right: 1.25rem;
	padding-bottom: 0.62rem;
	padding-left: 1.25rem;
	text-decoration: none;
}

.hero-home__button-secondary .wp-block-button__link {
	background-color: transparent;
}

.hero-home__button-primary .wp-block-button__link:hover,
.hero-home__button-primary .wp-block-button__link:focus,
.hero-home__button-secondary .wp-block-button__link:hover,
.hero-home__button-secondary .wp-block-button__link:focus {
	background-color: var(--wp--preset--color--base);
	border-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
}

/* Editor */

.editor-styles-wrapper .hero-home {
	min-height: clamp(460px, 34vw, 560px);
	overflow: hidden;
	border-top: 6px solid var(--hero-home-dark);
}

.editor-styles-wrapper .hero-home__media {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 50%;
	width: auto;
	height: 100%;
}

.editor-styles-wrapper .hero-home__image,
.editor-styles-wrapper .hero-home__image img {
	height: 100%;
}

.editor-styles-wrapper .hero-home__image .components-placeholder {
	min-height: clamp(460px, 34vw, 560px);
	background-color: var(--hero-home-shape);
}

.editor-styles-wrapper .hero-home__content {
	min-height: clamp(460px, 34vw, 560px);
}

.editor-styles-wrapper .hero-home__text-box {
	outline: 1px dashed rgba(255, 255, 255, 0.25);
	outline-offset: 10px;
}

/* Responsive */

@media (max-width: 1200px) {
	.hero-home {
		min-height: clamp(440px, 34vw, 520px);
	}

	.hero-home__content {
		min-height: clamp(440px, 34vw, 520px);
	}

	.hero-home__media {
		left: 49%;
	}

	.hero-home::before {
		left: 4%;
		width: 58%;
	}
}

@media (max-width: 900px) {
	.hero-home {
		min-height: 460px;
	}

	.hero-home__content {
		min-height: 460px;
	}

	.hero-home__media {
		left: 47%;
	}

	.hero-home::before {
		left: 3%;
		width: 64%;
	}

	.hero-home__text-box {
		width: min(100%, 390px);
		margin-left: 0;
	}
}

@media (max-width: 781px) {
	.hero-home {
		min-height: auto;
		background-color: var(--hero-home-dark);
	}

	.hero-home::before {
		display: none;
	}

	.hero-home__media {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		width: 100%;
		height: 300px;
	}

	.editor-styles-wrapper .hero-home__media {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		width: 100%;
		height: 300px;
	}

	.hero-home__content {
		min-height: auto;
		background-color: var(--hero-home-dark);
		padding-top: var(--wp--preset--spacing--70);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--70);
		padding-left: var(--wp--preset--spacing--40);
	}

	.editor-styles-wrapper .hero-home__content {
		min-height: auto;
	}

	.hero-home__text-box {
		width: 100%;
		max-width: 100%;
	}
}

@media (max-width: 480px) {
	.hero-home__media,
	.editor-styles-wrapper .hero-home__media {
		height: 250px;
	}

	.hero-home__content {
		padding-top: var(--wp--preset--spacing--60);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--30);
	}

	.hero-home__title {
		font-size: var(--wp--preset--font-size--h-2);
		
	}

	.hero-home__buttons {
		width: 100%;
	}

	.hero-home__button,
	.hero-home__button .wp-block-button__link {
		width: 100%;
	}

	.hero-home__button .wp-block-button__link {
		justify-content: center;
		text-align: center;
	}
}

/* --------------------------------------------------------------
   Pattern: Steps info
-------------------------------------------------------------- */

.steps-info {
	position: relative;
	overflow: hidden;
	background-color: var(--wp--preset--color--secondary);
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--80);
}

.steps-info__shape {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 38%;
	background-image: url('./assets/images/shape-steps-left.svg');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	pointer-events: none;
	z-index: 1;
}

.steps-info__inner {
	position: relative;
	z-index: 2;
}

.steps-info__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--60);
	color: var(--wp--preset--color--base);
}

.steps-info__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	margin-bottom: var(--wp--preset--spacing--60);
}

.steps-info__card {
	position: relative;
	min-height: 250px;
	border-radius: 8px;
	overflow: hidden;
	background-color: var(--wp--preset--color--primary-light);
}

.steps-info__card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
}

.steps-info__card .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
}

.steps-info__card .wp-block-cover__image-background,
.steps-info__card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.steps-info__card-number {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	margin: 0;
	color: var(--wp--preset--color--primary);
	font-family: var(--wp--preset--font-family--besley, "Besley", serif);
	font-size: var(--wp--preset--font-size--step-number);
	font-style: normal;
	font-weight: 600;
	
	
	opacity: 0.78;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.editor-styles-wrapper .steps-info__card-number {
	color: var(--wp--preset--color--primary) !important;
	font-size: var(--wp--preset--font-size--step-number) !important;
	opacity: 0.78;
	z-index: 2;
}

.editor-styles-wrapper .steps-info__card-content {
	position: relative;
	z-index: 4;
}

.editor-styles-wrapper .steps-info__card .wp-block-cover__inner-container {
	position: relative;
	min-height: 250px;
}

.steps-info__card-content {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-height: 250px;
	padding-top: var(--wp--preset--spacing--50);
	padding-right: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--50);
	padding-left: var(--wp--preset--spacing--40);
	text-align: center;
}

.steps-info__card-title {
	max-width: 220px;
	margin-top: 0;
	margin-bottom: 8px;
	color: var(--wp--preset--color--base);
	
}

.steps-info__card-text {
	max-width: 220px;
	margin-top: 0;
	margin-bottom: 0;
	color: var(--wp--preset--color--base);
	
}

.steps-info__actions {
	margin: 0;
}

.steps-info__button .wp-block-button__link {
	border: 1px solid rgba(255, 255, 255, 0.75);
	border-radius: 3px;
	background-color: transparent;
	color: var(--wp--preset--color--base);
	font-weight: 400;
	
	padding-top: 0.7rem;
	padding-right: 1.4rem;
	padding-bottom: 0.7rem;
	padding-left: 1.4rem;
	text-decoration: none;
}

.steps-info__button .wp-block-button__link:hover,
.steps-info__button .wp-block-button__link:focus {
	background-color: rgba(255, 255, 255, 0.12);
	border-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--base);
}

@media (max-width: 1100px) {
	.steps-info__shape {
		width: 44%;
	}

	.steps-info__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.steps-info__card-number {
		font-size: clamp(9rem, 24vw, 16rem);
	}
}

@media (max-width: 781px) {
	.steps-info {
		padding-top: var(--wp--preset--spacing--70);
		padding-bottom: var(--wp--preset--spacing--70);
	}

	.steps-info__shape {
		opacity: 0;
	}

	.steps-info__title {
		margin-bottom: var(--wp--preset--spacing--50);
	}

	.steps-info__grid {
		grid-template-columns: 1fr;
	}

	.steps-info__card,
	.steps-info__card-content {
		min-height: 230px;
	}

	.steps-info__card-number {
		font-size: clamp(8rem, 36vw, 15rem);
	}
}

@media (max-width: 480px) {
	.steps-info {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}

	.steps-info__shape {
		opacity: 0;
	}

	.steps-info__card-content {
		padding-right: var(--wp--preset--spacing--30);
		padding-left: var(--wp--preset--spacing--30);
	}

	.steps-info__card-number {
		font-size: clamp(7rem, 42vw, 12rem);
	}
}

/* --------------------------------------------------------------
   Pattern: Accordion
-------------------------------------------------------------- */

.accordion {
	background-color: var(--wp--preset--color--surface);
	padding-top: var(--wp--preset--spacing--70);
	padding-bottom: var(--wp--preset--spacing--80);
}

.accordion__title {
	max-width: 760px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--60);
	color: var(--wp--preset--color--primary);
	
}

.accordion__title em {
	font-style: italic;
	font-weight: inherit;
}

.accordion__item {
	margin: 0;
	border-top: 1px solid var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--primary);
	overflow: hidden;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		border-color 120ms ease;
}

.accordion__item:last-child {
	border-bottom: 1px solid var(--wp--preset--color--primary);
}

.accordion__item summary {
	position: relative;
	display: grid;
	grid-template-columns: 90px minmax(0, 1fr) 32px;
	align-items: center;
	gap: var(--wp--preset--spacing--40);
	min-height: 82px;
	padding-top: var(--wp--preset--spacing--30);
	padding-right: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--30);
	padding-left: var(--wp--preset--spacing--60);
	color: var(--wp--preset--color--primary);
	font-weight: 600;
	
	cursor: pointer;
	list-style: none;
	transition:
		color 120ms ease,
		background-color 120ms ease;
}

.accordion__item summary::-webkit-details-marker {
	display: none;
}

.accordion__summary-number {
	display: block;
	white-space: nowrap;
}

.accordion__summary-title {
	display: block;
	min-width: 0;
}

.accordion__item summary::after {
	content: "→";
	justify-self: end;
	color: var(--wp--preset--color--primary-light);
	font-weight: 400;
	
	
	transition:
		color 120ms ease,
		opacity 120ms ease,
		transform 180ms ease;
}

.accordion__item.is-active {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.accordion__item.is-active summary {
	color: var(--wp--preset--color--base);
}

.accordion__item.is-active summary::after {
	content: "↓";
	color: var(--wp--preset--color--base);
	opacity: 0.8;
	transform: translateY(1px);
}

.accordion__content {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 42%);
	gap: var(--wp--preset--spacing--60);
	margin: 0;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	padding-right: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--60);
}

.accordion__text-column {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-top: var(--wp--preset--spacing--60);
	padding-right: 0;
	padding-bottom: 0;
	padding-left: calc(90px + var(--wp--preset--spacing--60) + var(--wp--preset--spacing--40));
}

.accordion__image-column {
	display: flex;
	align-items: stretch;
	padding-top: var(--wp--preset--spacing--40);
	padding-bottom: 0;
}

.accordion__image {
	width: 100%;
	height: 100%;
	margin: 0;
	overflow: hidden;
}

.accordion__image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 230px;
	object-fit: cover;
	object-position: center;
}

.accordion__text {
	max-width: 540px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--base);
	
}

.accordion__text:last-child {
	margin-bottom: 0;
}

.accordion__panel {
	overflow: hidden;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.accordion__panel > .accordion__text {
	max-width: 720px;
	margin: 0;
	padding-top: var(--wp--preset--spacing--50);
	padding-right: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--50);
	padding-left: calc(90px + var(--wp--preset--spacing--60) + var(--wp--preset--spacing--40));
	color: var(--wp--preset--color--base);
}

.accordion__item[data-animating="true"] {
	overflow: hidden;
}

.accordion__item[data-animating="true"] .accordion__panel {
	will-change: height;
}

@media (max-width: 900px) {
	.accordion__item summary {
		grid-template-columns: 64px minmax(0, 1fr) 28px;
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}

	.accordion__content {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 40%);
		gap: var(--wp--preset--spacing--40);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--40);
	}

	.accordion__text-column {
		padding-left: calc(64px + var(--wp--preset--spacing--40) + var(--wp--preset--spacing--40));
		padding-top: var(--wp--preset--spacing--50);
	}

	.accordion__panel > .accordion__text {
		padding-left: calc(64px + var(--wp--preset--spacing--40) + var(--wp--preset--spacing--40));
		padding-right: var(--wp--preset--spacing--40);
	}
}

@media (max-width: 781px) {
	.accordion {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--70);
	}

	.accordion__content {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--40);
		padding-right: var(--wp--preset--spacing--50);
		padding-bottom: var(--wp--preset--spacing--50);
		padding-left: var(--wp--preset--spacing--50);
	}

	.accordion__text-column {
		padding: 0;
		padding-top: var(--wp--preset--spacing--50);
	}

	.accordion__image-column {
		padding-top: 0;
	}

	.accordion__image img {
		min-height: 260px;
	}
}

@media (max-width: 480px) {
	.accordion__item summary {
		grid-template-columns: 48px minmax(0, 1fr) 24px;
		min-height: 72px;
		gap: var(--wp--preset--spacing--20);
		padding-right: var(--wp--preset--spacing--30);
		padding-left: var(--wp--preset--spacing--30);
	}

	.accordion__content {
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}

	.accordion__text-column {
		padding-top: var(--wp--preset--spacing--40);
	}

	.accordion__panel > .accordion__text {
		padding: var(--wp--preset--spacing--40);
	}
}

/* --------------------------------------------------------------
   Editor: Accordion
-------------------------------------------------------------- */

.editor-styles-wrapper .accordion {
	width: 100%;
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.editor-styles-wrapper .accordion__item {
	width: 100%;
	max-width: none;
}

/* Evita que Gutenberg comprima el summary */
.editor-styles-wrapper .accordion__item summary {
	display: grid !important;
	grid-template-columns: 90px minmax(0, 1fr) 32px !important;
	align-items: center;
	width: 100%;
	max-width: none;
}

/* Gutenberg añade wrappers internos: los convertimos en transparentes */
.editor-styles-wrapper .accordion__item summary > .block-editor-inner-blocks,
.editor-styles-wrapper .accordion__item summary > .block-editor-inner-blocks > .block-editor-block-list__layout {
	display: contents !important;
}

/* Los bloques internos del summary no deben tener ancho estrecho */
.editor-styles-wrapper .accordion__item summary .block-editor-block-list__block {
	width: auto !important;
	max-width: none !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Número */
.editor-styles-wrapper .accordion__summary-number {
	display: block;
	width: 90px;
	white-space: nowrap;
}

/* Título del item: ancho completo */
.editor-styles-wrapper .accordion__summary-title {
	display: block;
	width: 100%;
	max-width: none;
	min-width: 0;
	white-space: normal;
	word-break: normal;
	overflow-wrap: normal;
}

/* Flecha en editor */
.editor-styles-wrapper .accordion__item summary::after {
	grid-column: 3;
}

/* Contenido abierto en editor */
.editor-styles-wrapper .accordion__content {
	width: 100%;
	max-width: none;
}

/* Evita que las columnas internas se estrechen en el editor */
.editor-styles-wrapper .accordion__content > .block-editor-inner-blocks,
.editor-styles-wrapper .accordion__content > .block-editor-inner-blocks > .block-editor-block-list__layout {
	width: 100%;
	max-width: none;
}

/* Imagen y texto más estables en Gutenberg */
.editor-styles-wrapper .accordion__text-column {
	min-width: 0;
}

.editor-styles-wrapper .accordion__image-column {
	min-width: 0;
}

.editor-styles-wrapper .accordion__image {
	width: 100%;
	max-width: none;
}

.editor-styles-wrapper .accordion__item summary > div {
    white-space: normal !important;
    display: contents !important;
}

/* Editor: accordion summary fix */
.editor-styles-wrapper .accordion__item summary br {
    display: none;
}

/* Responsive editor */
@media (max-width: 900px) {
	.editor-styles-wrapper .accordion__item summary {
		grid-template-columns: 64px minmax(0, 1fr) 28px !important;
	}

	.editor-styles-wrapper .accordion__summary-number {
		width: 64px;
	}
}

@media (max-width: 480px) {
	.editor-styles-wrapper .accordion__item summary {
		grid-template-columns: 48px minmax(0, 1fr) 24px !important;
	}

	.editor-styles-wrapper .accordion__summary-number {
		width: 48px;
	}
}


/* --------------------------------------------------------------
   Editor: Accordion text visibility
-------------------------------------------------------------- */

/* En editor, los párrafos de paneles no activos se ven en corporativo */
.editor-styles-wrapper .accordion__item:not(.is-active) .accordion__panel,
.editor-styles-wrapper .accordion__item:not(.is-active) .accordion__content {
	color: var(--wp--preset--color--primary-light);
}

.editor-styles-wrapper .accordion__item:not(.is-active) .accordion__panel p,
.editor-styles-wrapper .accordion__item:not(.is-active) .accordion__content p,
.editor-styles-wrapper .accordion__item:not(.is-active) .accordion__text {
	color: var(--wp--preset--color--primary-light)!important;
}

/* Si el item está activo, mantenemos el contraste correcto sobre azul */
.editor-styles-wrapper .accordion__item.is-active .accordion__panel,
.editor-styles-wrapper .accordion__item.is-active .accordion__content {
	color: var(--wp--preset--color--base);
}

.editor-styles-wrapper .accordion__item.is-active .accordion__panel p,
.editor-styles-wrapper .accordion__item.is-active .accordion__content p,
.editor-styles-wrapper .accordion__item.is-active .accordion__text {
	color: var(--wp--preset--color--base) !important;
}

.editor-styles-wrapper .accordion__item.is-active .accordion__content {
    background-color: var(--wp--preset--color--primary) !important;
}

.editor-styles-wrapper .accordion__item.is-active .accordion__content .wp-block-columns,
.editor-styles-wrapper .accordion__item.is-active .accordion__content .wp-block-column {
    background-color: transparent !important;
}

.editor-styles-wrapper  .color-accord p {
	color:#fff!important;
}

/* --------------------------------------------------------------
   Pattern: FAQ tabs
-------------------------------------------------------------- */

.faq-tabs {
	position: relative;
	overflow: hidden;
	min-height: 600px;
	background-color: var(--wp--preset--color--surface);
}

.faq-tabs::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background-color: rgba(245, 247, 251, 0.82);
	pointer-events: none;
}

.faq-tabs .wp-block-cover__image-background {
	z-index: 0;
	object-fit: cover;
	object-position: center;
}

.faq-tabs .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	width: 100%;
}

.faq-tabs__inner {
	padding-top: var(--wp--preset--spacing--100);
	padding-bottom: var(--wp--preset--spacing--100);
}

.faq-tabs__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--60);
	color: var(--wp--preset--color--primary);
	
}

.faq-tabs__title em {
	font-style: italic;
	font-weight: inherit;
}

.faq-tabs__layout {
	align-items: stretch;
	gap: var(--wp--preset--spacing--50);
	margin: 0;
}

.faq-tabs__questions {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
}

.faq-tabs__button {
	width: 100%;
	margin: 0;
}

.faq-tabs__button .wp-block-button__link {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 6px;
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--primary);
	padding-top: var(--wp--preset--spacing--30);
	padding-right: calc(var(--wp--preset--spacing--60) + 1rem);
	padding-bottom: var(--wp--preset--spacing--30);
	padding-left: var(--wp--preset--spacing--40);
	text-align: left;
	
	text-decoration: none;
	box-shadow: none;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		border-color 120ms ease;
}

.faq-tabs__button .wp-block-button__link::after {
	content: "→";
	position: absolute;
	top: 50%;
	right: var(--wp--preset--spacing--40);
	color: currentColor;

	transform: translateY(-50%);
}

.faq-tabs__button.is-active .wp-block-button__link {
	border-color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.faq-tabs__answers {
	position: relative;
	min-height: 100%;
	margin: 0;
}

.faq-tabs__answer {
	display: none;
	height: 100%;
	min-height: 245px;
	margin: 0;
	border-radius: 6px;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	padding-top: var(--wp--preset--spacing--70);
	padding-right: var(--wp--preset--spacing--70);
	padding-bottom: var(--wp--preset--spacing--70);
	padding-left: var(--wp--preset--spacing--70);
}

.faq-tabs__answer.is-active {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.faq-tabs__answer-text {
	max-width: 430px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--base);
	
}

.faq-tabs__answer-text:last-child {
	margin-bottom: 0;
}

@media (max-width: 900px) {
	.faq-tabs__inner {
		padding-top: var(--wp--preset--spacing--80);
		padding-bottom: var(--wp--preset--spacing--80);
	}

	.faq-tabs__layout {
		flex-direction: column;
	}

	.faq-tabs__answer {
		min-height: 220px;
		padding: var(--wp--preset--spacing--60);
	}
}

@media (max-width: 480px) {
	.faq-tabs__inner {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}

	.faq-tabs__button .wp-block-button__link {
		padding-right: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--30);
	}

	.faq-tabs__button .wp-block-button__link::after {
		right: var(--wp--preset--spacing--30);
	}

	.faq-tabs__answer {
		padding: var(--wp--preset--spacing--40);
	}
}

/* --------------------------------------------------------------
   Editor: FAQ tabs
-------------------------------------------------------------- */

/* En editor mostramos todas las respuestas para poder editarlas */
.editor-styles-wrapper .faq-tabs__answers {
	display: flex !important;
	flex-direction: column !important;
	gap: var(--wp--preset--spacing--30);
	min-height: 0;
}

/* Fuerza visibles todos los grupos de respuesta en Gutenberg */
.editor-styles-wrapper .faq-tabs__answer,
.editor-styles-wrapper .faq-tabs__answer[hidden] {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center;
	height: auto !important;
	min-height: 150px;
	margin: 0 !important;
	padding-top: var(--wp--preset--spacing--50);
	padding-right: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--50);
	padding-left: var(--wp--preset--spacing--50);
	opacity: 1 !important;
	visibility: visible !important;
}

/* La primera sigue viéndose como activa */
.editor-styles-wrapper .faq-tabs__answer.is-active {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

/* Las demás también se ven, pero un poco diferenciadas */
.editor-styles-wrapper .faq-tabs__answer:not(.is-active) {
	border: 1px solid var(--wp--preset--color--primary);
	background-color: rgba(76, 102, 171, 0.12);
	color: var(--wp--preset--color--primary);
}

/* Textos dentro de respuestas no activas */
.editor-styles-wrapper .faq-tabs__answer:not(.is-active) .faq-tabs__answer-text,
.editor-styles-wrapper .faq-tabs__answer:not(.is-active) p {
	color: var(--wp--preset--color--primary) !important;
}

/* Textos dentro de respuesta activa */
.editor-styles-wrapper .faq-tabs__answer.is-active .faq-tabs__answer-text,
.editor-styles-wrapper .faq-tabs__answer.is-active p {
	color: var(--wp--preset--color--base) !important;
}

/* Reduce un poco la altura general en editor */
.editor-styles-wrapper .faq-tabs {
	min-height: auto;
}

.editor-styles-wrapper .faq-tabs__inner {
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--80);
}

/* --------------------------------------------------------------
   Pattern: Formación single hero
-------------------------------------------------------------- */

.formacion-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 520px;
	background-color: var(--wp--preset--color--primary);
}

/* Panel azul principal con corte tipo flecha */
.formacion-hero::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: 2;
	width: 63%;
	background-color: rgba(76, 102, 171, 0.9);
	clip-path: polygon(0 0, 82% 0, 100% 50%, 82% 100%, 0 100%);
	pointer-events: none;
}

/* Quitamos formas secundarias para evitar rombos superpuestos */
.formacion-hero::after {
	display: none;
}

/* Imagen de fondo a ancho completo */
.formacion-hero__media {
	position: absolute;
	inset: 0;
	z-index: 1;
	width: 100%;
	max-width: none;
	margin: 0;
	overflow: hidden;
}

.formacion-hero > .formacion-hero__media {
	max-width: none;
	margin-right: 0;
	margin-left: 0;
}

.formacion-hero__image,
.formacion-hero__image a,
.formacion-hero__image img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
}

.formacion-hero__image img {
	object-fit: cover;
	object-position: center;
}

/* Contenido */

.formacion-hero__content {
	position: relative;
	z-index: 4;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 520px;
	box-sizing: border-box;
	padding-top: var(--wp--preset--spacing--80);
	padding-right: var(--wp--preset--spacing--30);
	padding-bottom: var(--wp--preset--spacing--80);
	padding-left: var(--wp--preset--spacing--30);
}

.formacion-hero__text {
	width: min(100%, 650px);
	margin: 0;
	color: var(--wp--preset--color--base);
}

.formacion-hero__title {
	max-width: 650px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--base);
	
	
}

.formacion-hero__title a {
	color: inherit;
	text-decoration: none;
}

.formacion-hero__title em {
	font-style: italic;
	font-weight: inherit;
}

.formacion-hero__excerpt {
	max-width: 430px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	
}

.formacion-hero__excerpt p {
	margin-top: 0;
	margin-bottom: 0;
	color: inherit;
}

.formacion-hero__separator {
	width: 100%;
	max-width: 430px;
	height: 1px;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	margin-left: 0;
	border: 0;
	background-color: rgba(255, 255, 255, 0.55);
	opacity: 1;
}

/* Nivel */

.formacion-hero .cursea-formacion-nivel {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--20);
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
}

.formacion-hero .cursea-formacion-nivel__item {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	width: fit-content;
	border: 0;
	border-radius: 3px;
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	font-size: 1rem;
	font-weight: 600;
	
	padding-top: 0.35rem;
	padding-right: 0.65rem;
	padding-bottom: 0.35rem;
	padding-left: 0.65rem;
	text-transform: uppercase;
	
}

.formacion-hero .cursea-formacion-nivel__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 15px;
	height: 13px;
	color: var(--wp--preset--color--primary);
	
}

.formacion-hero .cursea-formacion-nivel__icon svg {
	display: block;
	width: 15px;
	height: 13px;
}

.formacion-hero .cursea-formacion-nivel__text {
	display: inline-block;
}

/* Datos */

.formacion-hero .cursea-formacion-datos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	max-width: 500px;
	margin-top: var(--wp--preset--spacing--40);
	margin-bottom: var(--wp--preset--spacing--40);
}

.formacion-hero .cursea-formacion-datos__item {
	display: inline-flex;
	flex-direction: row;
	align-items: baseline;
	gap: 0.35rem;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background-color: transparent;
	color: var(--wp--preset--color--base);
	backdrop-filter: none;
}

.formacion-hero .cursea-formacion-datos__icon {
	display: none;
}

.formacion-hero .cursea-formacion-datos__label {
	margin: 0;
	color: rgba(255, 255, 255, 0.8);
	font-size: 0.72rem;
	font-weight: 700;
	
	text-transform: uppercase;
	
}

.formacion-hero .cursea-formacion-datos__value {
	margin: 0;
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
}

/* Botón */

.formacion-hero__actions {
	margin: 0;
}

.formacion-hero__button .wp-block-button__link {
	border: 1px solid rgba(255, 255, 255, 0.75);
	border-radius: 3px;
	background-color: rgba(255, 255, 255, 0.1);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 500;
	
	padding-top: 0.75rem;
	padding-right: 1.5rem;
	padding-bottom: 0.75rem;
	padding-left: 1.5rem;
	text-decoration: none;
}

.formacion-hero__button .wp-block-button__link:hover,
.formacion-hero__button .wp-block-button__link:focus {
	background-color: var(--wp--preset--color--base);
	border-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
}

/* Editor */

.editor-styles-wrapper .formacion-hero {
	min-height: 520px;
	overflow: hidden;
}

.editor-styles-wrapper .formacion-hero__media {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.editor-styles-wrapper .formacion-hero__image,
.editor-styles-wrapper .formacion-hero__image img {
	height: 100%;
}

.editor-styles-wrapper .formacion-hero__image .components-placeholder {
	min-height: 520px;
	background-color: var(--wp--preset--color--primary-light);
}

.editor-styles-wrapper .formacion-hero__content {
	min-height: 520px;
}

.editor-styles-wrapper .formacion-hero__text {
	position: relative;
	z-index: 5;
}

/* Responsive */

@media (max-width: 1200px) {
	.formacion-hero,
	.formacion-hero__content {
		min-height: 500px;
	}

	.formacion-hero::before {
		width: 68%;
	}

	.formacion-hero__text {
		width: min(100%, 450px);
	}
}

@media (max-width: 781px) {
	.formacion-hero {
		min-height: auto;
		background-color: var(--wp--preset--color--primary);
	}

	.formacion-hero::before {
		display: none;
	}

	.formacion-hero__media {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		width: 100%;
		height: 300px;
	}

	.formacion-hero__content {
		min-height: auto;
		background-color: var(--wp--preset--color--primary);
		padding-top: var(--wp--preset--spacing--70);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--70);
		padding-left: var(--wp--preset--spacing--40);
	}

	.formacion-hero__text {
		width: 100%;
	}

	.formacion-hero .cursea-formacion-datos {
		gap: var(--wp--preset--spacing--30);
	}
}

@media (max-width: 480px) {
	.formacion-hero__media {
		height: 250px;
	}

	.formacion-hero__content {
		padding-top: var(--wp--preset--spacing--60);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--30);
	}


	.formacion-hero .cursea-formacion-datos {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--wp--preset--spacing--20);
	}

	.formacion-hero__button,
	.formacion-hero__button .wp-block-button__link {
		width: 100%;
	}

	.formacion-hero__button .wp-block-button__link {
		justify-content: center;
		text-align: center;
	}
}


/* --------------------------------------------------------------
   Pattern: Formación contenidos
-------------------------------------------------------------- */

.formacion-contenidos {
	overflow: hidden;
}

.formacion-contenidos__inner {
	width: 100%;
}

.formacion-contenidos__columns {
	gap: var(--wp--preset--spacing--60);
	align-items: stretch;
	margin-bottom: 0;
}

.formacion-contenidos__sidebar,
.formacion-contenidos__intro-card,
.formacion-contenidos__card {
	box-shadow: 0 8px 24px rgba(31, 42, 68, 0.04);
}

.formacion-contenidos__sidebar {
	align-self: stretch;
}

.formacion-contenidos__sidebar-title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-4);
	
}

.formacion-contenidos__tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--20);
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
}

.formacion-contenidos__tag {
	display: inline-flex;
	align-items: center;
	width: auto;
	max-width: 100%;
	margin: 0;
	border-radius: 3px;
	background-color: var(--wp--preset--color--primary-light);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	padding-top: 0.35rem;
	padding-right: 0.55rem;
	padding-bottom: 0.35rem;
	padding-left: 0.55rem;
	white-space: normal;
}

.formacion-contenidos__separator {
	width: 100%;
	height: 1px;
	margin-top: var(--wp--preset--spacing--40);
	margin-right: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	margin-left: 0;
	border: 0;
	background-color: var(--wp--preset--color--primary);
	opacity: 0.45;
}

.formacion-contenidos__includes {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
}

.formacion-contenidos__include {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--20);
	margin-top: 0;
	margin-bottom: 0;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	
}

.formacion-contenidos__include::before {
	content: "";
	display: inline-flex;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	margin-top: 0.05em;
	background-color: currentColor;
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
}

.formacion-contenidos__include--certificate::before {
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 15a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm-3 0-1 6 4-2 4 2-1-6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 15a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm-3 0-1 6 4-2 4 2-1-6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.formacion-contenidos__include--download::before {
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3v11m0 0 4-4m-4 4-4-4M4 15v3a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-3' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3v11m0 0 4-4m-4 4-4-4M4 15v3a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-3' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.formacion-contenidos__include--tutoring::before {
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 14c3.3 0 6 1.7 6 3.8V20H6v-2.2C6 15.7 8.7 14 12 14Zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 14c3.3 0 6 1.7 6 3.8V20H6v-2.2C6 15.7 8.7 14 12 14Zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z' fill='black'/%3E%3C/svg%3E");
}

.formacion-contenidos__include--lifetime::before {
	mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 8c-2.2 0-4 1.8-4 4s1.8 4 4 4c1.4 0 2.4-.7 3.4-1.8L12 12l1.6-2.2C14.6 8.7 15.6 8 17 8c2.2 0 4 1.8 4 4s-1.8 4-4 4c-1.4 0-2.4-.7-3.4-1.8L12 12l-1.6 2.2C9.4 15.3 8.4 16 7 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 8c-2.2 0-4 1.8-4 4s1.8 4 4 4c1.4 0 2.4-.7 3.4-1.8L12 12l1.6-2.2C14.6 8.7 15.6 8 17 8c2.2 0 4 1.8 4 4s-1.8 4-4 4c-1.4 0-2.4-.7-3.4-1.8L12 12l-1.6 2.2C9.4 15.3 8.4 16 7 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.formacion-contenidos__main {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--40);
}

.formacion-contenidos__intro-card {
	margin-bottom: var(--wp--preset--spacing--40);
}

.formacion-contenidos__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-3);
	
}

.formacion-contenidos__intro-card p {
	font-size: var(--wp--preset--font-size--body);
	
}

.formacion-contenidos__intro-card p:last-child,
.formacion-contenidos__card p:last-child {
	margin-bottom: 0;
}

.formacion-contenidos__cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
}

.formacion-contenidos__card {
	min-height: 120px;
	transition:
		transform 160ms ease,
		box-shadow 160ms ease;
}

.formacion-contenidos__card:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 30px rgba(31, 42, 68, 0.08);
}

.formacion-contenidos__card h3 {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-5);

}

.formacion-contenidos__card p {
	font-size: var(--wp--preset--font-size--body);
	
}

/* Editor */

.editor-styles-wrapper .formacion-contenidos {
	border-top: 6px solid var(--wp--preset--color--primary);
}

.editor-styles-wrapper .formacion-contenidos__inner {
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.editor-styles-wrapper .formacion-contenidos__sidebar,
.editor-styles-wrapper .formacion-contenidos__intro-card,
.editor-styles-wrapper .formacion-contenidos__card {
	outline: 1px solid rgba(76, 102, 171, 0.08);
}

.editor-styles-wrapper .formacion-contenidos__include {
	display: flex;
	align-items: flex-start;
}

.editor-styles-wrapper .formacion-contenidos__include::before {
	flex-shrink: 0;
}

/* Responsive */

@media (max-width: 900px) {
	.formacion-contenidos__columns {
		gap: var(--wp--preset--spacing--50);
	}

	.formacion-contenidos__sidebar,
	.formacion-contenidos__main {
		flex-basis: 100% !important;
	}

	.formacion-contenidos__cards {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.formacion-contenidos__tags {
		gap: var(--wp--preset--spacing--20);
	}

	.formacion-contenidos__intro-card,
	.formacion-contenidos__card,
	.formacion-contenidos__sidebar {
		border-radius: 6px;
	}

	.formacion-contenidos__card {
		min-height: auto;
	}
}

/* --------------------------------------------------------------
   Pattern: Formación programa LearnDash
-------------------------------------------------------------- */

.formacion-programa-section {
	overflow: hidden;
	padding-top: var(--wp--preset--spacing--100);
	padding-right: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--100);
	padding-left: var(--wp--preset--spacing--40);
	background-color: var(--wp--preset--color--primary-light);
}

.formacion-programa-section__inner {
	width: 100%;
}

.cursea-formacion-programa {
	width: 100%;
	color: var(--wp--preset--color--primary);
}

.cursea-formacion-programa__header {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: var(--wp--preset--spacing--50);
}

.cursea-formacion-programa__title {
	margin: 0;
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 600;
	
	
}

.cursea-formacion-programa__sections {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--60);
}

.cursea-formacion-programa__section {
	width: 100%;
}

.cursea-formacion-programa__section-title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--h-4);
	font-weight: 600;
	
}

.cursea-formacion-programa__lessons {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.cursea-formacion-programa__lesson {
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 6px;
	background-color: var(--wp--preset--color--base);
	box-shadow: 0 8px 24px rgba(31, 42, 68, 0.04);
	color: var(--wp--preset--color--contrast);
}

.cursea-formacion-programa__lesson-summary {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	min-height: 76px;
	box-sizing: border-box;
	padding: var(--wp--preset--spacing--40);
	list-style: none;
	cursor: pointer;
}

.cursea-formacion-programa__lesson-summary::-webkit-details-marker {
	display: none;
}

.cursea-formacion-programa__lesson-status {
	display: block;
	width: 18px;
	height: 18px;
	border: 3px solid rgba(76, 102, 171, 0.18);
	border-radius: 999px;
	background-color: transparent;
}

.cursea-formacion-programa__lesson-main {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.cursea-formacion-programa__lesson-title {
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 500;
	
}

.cursea-formacion-programa__lesson-meta {
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	
}

.cursea-formacion-programa__lesson-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	
	white-space: nowrap;
}

.cursea-formacion-programa__lesson-action-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 999px;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);	
	transform: rotate(-90deg);
	transition: transform 160ms ease;
}

.cursea-formacion-programa__lesson[open] .cursea-formacion-programa__lesson-action-icon {
	transform: rotate(0deg);
}

.cursea-formacion-programa__lesson-content {
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
}

.cursea-formacion-programa__content-header {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--40);
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	
}

.cursea-formacion-programa__content-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	font-size: var(--wp--preset--font-size--body);
	
}

.cursea-formacion-programa__content-title {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	
}

.cursea-formacion-programa__topics {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: var(--wp--preset--spacing--40);
	list-style: none;
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
}

.cursea-formacion-programa__topic {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: var(--wp--preset--spacing--30) 0;
	border-bottom: 1px solid rgba(76, 102, 171, 0.16);
}

.cursea-formacion-programa__topic:last-child {
	border-bottom: 0;
}

.cursea-formacion-programa__topic-status {
	display: block;
	width: 18px;
	height: 18px;
	border: 3px solid rgba(76, 102, 171, 0.18);
	border-radius: 999px;
	background-color: transparent;
}

.cursea-formacion-programa__topic-main {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	min-width: 0;
}

.cursea-formacion-programa__topic-number {
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 500;
	
	white-space: nowrap;
}

.cursea-formacion-programa__topic-title {
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	text-decoration: none;
}

/* Estado abierto */

.cursea-formacion-programa__lesson[open] {
	border-color: rgba(255, 255, 255, 0.32);
	box-shadow: 0 12px 30px rgba(31, 42, 68, 0.07);
}

.cursea-formacion-programa__lesson[open] .cursea-formacion-programa__lesson-summary {
	border-bottom: 0;
}

/* Notice editor */

.cursea-formacion-programa--notice {
	border: 1px dashed rgba(255, 255, 255, 0.45);
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--50);
}

.cursea-formacion-programa--notice p {
	margin: 0;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
}

/* Editor */

.editor-styles-wrapper .formacion-programa-section {
	border-top: 6px solid var(--wp--preset--color--primary);
}

.editor-styles-wrapper .cursea-formacion-programa__lesson-summary {
	cursor: default;
}

/* Responsive */

@media (max-width: 781px) {
	.formacion-programa-section {
		padding-top: var(--wp--preset--spacing--70);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--70);
		padding-left: var(--wp--preset--spacing--40);
	}

	.cursea-formacion-programa__lesson-summary {
		grid-template-columns: 24px minmax(0, 1fr);
	}

	.cursea-formacion-programa__lesson-action {
		grid-column: 2;
		justify-content: flex-start;
	}

	.cursea-formacion-programa__content-header {
		align-items: flex-start;
	}

	.cursea-formacion-programa__topic-main {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.2rem;
	}
}

@media (max-width: 480px) {
	.formacion-programa-section {
		padding-top: var(--wp--preset--spacing--60);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--30);
	}

	.cursea-formacion-programa__lesson-summary,
	.cursea-formacion-programa__content-header,
	.cursea-formacion-programa__topics {
		padding: var(--wp--preset--spacing--30);
	}
}

/* --------------------------------------------------------------
   Pattern: Testimonios alumnos
-------------------------------------------------------------- */

.cursea-testimonios-section {
	overflow: hidden;
	padding-top: var(--wp--preset--spacing--100);
	padding-right: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--100);
	padding-left: var(--wp--preset--spacing--40);
	background-color: var(--wp--preset--color--surface);
}

.cursea-testimonios-section__inner {
	width: 100%;
}

.cursea-testimonios-section__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--60);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 600;
	
	
}

.cursea-testimonios-carousel {
	position: relative;
	width: 100%;
}

.cursea-testimonios-carousel__viewport {
	width: 100%;
	overflow: visible;
}

.cursea-testimonios-carousel__track {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	width: 100%;
}

.cursea-testimonio-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 180px;
	box-sizing: border-box;
	border: 1px solid rgba(76, 102, 171, 0.14);
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	padding-top: var(--wp--preset--spacing--50);
	padding-right: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--40);
	padding-left: var(--wp--preset--spacing--50);
	box-shadow: 0 8px 24px rgba(31, 42, 68, 0.04);
	color: var(--wp--preset--color--contrast);
}

.cursea-testimonio-card__quote {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.cursea-testimonio-card__author {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	margin: auto 0 0;
}

.cursea-testimonio-card__avatar {
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	margin: 0;
	border-radius: 999px;
	background-color: rgba(76, 102, 171, 0.14);
	overflow: hidden;
}

.cursea-testimonio-card__avatar img {
	display: block;
	width: 42px;
	height: 42px;
	border-radius: 999px;
	object-fit: cover;
}

.cursea-testimonio-card__author-text {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	min-width: 0;
	margin: 0;
}

.cursea-testimonio-card__name {
	margin: 0;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	
}

.cursea-testimonio-card__role {
	margin: 0;
	color: var(--wp--preset--color--text-muted);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

/* Controles */

.cursea-testimonios-carousel__controls {
	display: none;
	align-items: center;
	justify-content: flex-end;
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--40);
}

.cursea-testimonios-carousel.is-carousel .cursea-testimonios-carousel__controls {
	display: flex;
}

.cursea-testimonios-carousel:not(.is-carousel) .cursea-testimonios-carousel__controls {
	display: none !important;
}

.cursea-testimonios-carousel__control {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 999px;
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--button-text);
	font-weight: 600;

	cursor: pointer;
	transition:
		background-color 160ms ease,
		color 160ms ease,
		transform 160ms ease;
}

.cursea-testimonios-carousel__control:hover,
.cursea-testimonios-carousel__control:focus {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	transform: translateY(-2px);
}

.cursea-testimonios-carousel__control:disabled {
	opacity: 0.35;
	cursor: not-allowed;
	transform: none;
}

/* Estado carrusel */

.cursea-testimonios-carousel.is-carousel .cursea-testimonios-carousel__viewport {
	overflow: hidden;
}

.cursea-testimonios-carousel.is-carousel .cursea-testimonios-carousel__track {
	display: flex;
	gap: var(--wp--preset--spacing--40);
	width: 100%;
	transition: transform 320ms ease;
	will-change: transform;
}

.cursea-testimonios-carousel.is-carousel .cursea-testimonio-card {
	flex: 0 0 calc((100% - (var(--wp--preset--spacing--40) * 3)) / 4);
	width: calc((100% - (var(--wp--preset--spacing--40) * 3)) / 4);
	min-width: calc((100% - (var(--wp--preset--spacing--40) * 3)) / 4);
	max-width: calc((100% - (var(--wp--preset--spacing--40) * 3)) / 4);
}

/* Editor */

.editor-styles-wrapper .cursea-testimonios-section {
	border-top: 6px solid var(--wp--preset--color--primary);
}

.editor-styles-wrapper .cursea-testimonio-card {
	outline: 1px solid rgba(76, 102, 171, 0.08);
}

.editor-styles-wrapper .cursea-testimonios-carousel__controls {
	display: none;
}

/* Responsive */

@media (max-width: 1100px) {
	.cursea-testimonios-carousel__track {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cursea-testimonios-carousel.is-carousel .cursea-testimonio-card {
		flex-basis: calc((100% - var(--wp--preset--spacing--40)) / 2);
		width: calc((100% - var(--wp--preset--spacing--40)) / 2);
		min-width: calc((100% - var(--wp--preset--spacing--40)) / 2);
		max-width: calc((100% - var(--wp--preset--spacing--40)) / 2);
	}
}

@media (max-width: 700px) {
	.cursea-testimonios-section {
		padding-top: var(--wp--preset--spacing--70);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--70);
		padding-left: var(--wp--preset--spacing--40);
	}

	.cursea-testimonios-section__title {
		margin-bottom: var(--wp--preset--spacing--50);
	}

	.cursea-testimonios-carousel__track {
		grid-template-columns: 1fr;
	}

	.cursea-testimonios-carousel.is-carousel .cursea-testimonio-card {
		flex-basis: 100%;
		width: 100%;
		min-width: 100%;
		max-width: 100%;
	}

	.cursea-testimonios-carousel__controls {
		justify-content: flex-start;
	}
}

@media (max-width: 480px) {
	.cursea-testimonios-section {
		padding-top: var(--wp--preset--spacing--60);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--30);
	}

	.cursea-testimonio-card {
		padding-top: var(--wp--preset--spacing--40);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}
}

/* --------------------------------------------------------------
   Pattern: Formación single CTA
-------------------------------------------------------------- */

.formacion-single-cta {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 360px;
	background-color: var(--wp--preset--color--primary);
}

/* Overlay azul propio, igual que en FAQ tabs */
.formacion-single-cta::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background-color: rgba(76, 102, 171, 0.72);
	pointer-events: none;
}

/* Imagen nativa del Cover */
.formacion-single-cta .wp-block-cover__image-background,
.formacion-single-cta .wp-block-cover__video-background {
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Contenido por encima del overlay */
.formacion-single-cta .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	width: 100%;
}

.formacion-single-cta__inner {
	width: 100%;
}

.formacion-single-cta__content {
	width: min(100%, 620px);
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.formacion-single-cta__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 600;
	
	
}

.formacion-single-cta__text {
	max-width: 520px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: var(--wp--preset--spacing--20);
	margin-left: auto;
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.formacion-single-cta__subtext {
	max-width: 520px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: var(--wp--preset--spacing--40);
	margin-left: auto;
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
	opacity: 0.95;
}

/* Botón dinámico de inscripción */

.cursea-formacion-inscripcion-button {
	display: flex;
	justify-content: center;
	margin-top: 0;
}

.cursea-formacion-inscripcion-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	min-height: 44px;
	border: 1px solid rgba(255, 255, 255, 0.85);
	border-radius: 3px;
	background-color: rgba(255, 255, 255, 0.08);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--button-text);
	font-weight: 500;
	
	padding-top: var(--wp--preset--spacing--30);
	padding-right: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--30);
	padding-left: var(--wp--preset--spacing--50);
	text-decoration: none;
	transition:
		background-color 160ms ease,
		border-color 160ms ease,
		color 160ms ease,
		transform 160ms ease;
}

.cursea-formacion-inscripcion-button__link:hover,
.cursea-formacion-inscripcion-button__link:focus {
	background-color: var(--wp--preset--color--base);
	border-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	transform: translateY(-2px);
}

/* Editor */

.editor-styles-wrapper .formacion-single-cta {
	border-top: 6px solid var(--wp--preset--color--primary);
}

.editor-styles-wrapper .formacion-single-cta__content {
	outline: 1px dashed rgba(255, 255, 255, 0.35);
	outline-offset: 12px;
}

/* Responsive */

@media (max-width: 781px) {
	.formacion-single-cta {
		min-height: 320px !important;
	}
}

@media (max-width: 480px) {
	.formacion-single-cta {
		min-height: 300px !important;
	}

	.cursea-formacion-inscripcion-button__link {
		width: 100%;
	}
}

/* --------------------------------------------------------------
   Pattern: Contacto home
-------------------------------------------------------------- */

.contacto-home {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 560px;
	padding-top: var(--wp--preset--spacing--100);
	padding-right: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--100);
	padding-left: var(--wp--preset--spacing--40);
}

/* Fondo derecho oscuro rectangular: color definido en el patrón */
.contacto-home__right-bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 57%;
	z-index: 1;
	width: auto;
	margin: 0;
	opacity: 1;
	pointer-events: none;
}

/* Flecha oscura mirando hacia la derecha: color definido en el patrón */
.contacto-home__shape {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 41%;
	z-index: 2;
	width: 24%;
	margin: 0;
	opacity: 1;
	clip-path: polygon(0 0, 72% 0, 100% 50%, 72% 100%, 0 100%, 32% 50%);
	pointer-events: none;
}

.contacto-home__inner {
	position: relative;
	z-index: 3;
	width: 100%;
}

.contacto-home__columns {
	align-items: center;
	gap: var(--wp--preset--spacing--80);
	min-height: 360px;
	margin-bottom: 0;
}

/* Texto izquierda */
.contacto-home__content-column {
	display: block;
}

.contacto-home__title {
	width: 100%;
	max-width: 460px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 600;

	white-space: normal;
	word-break: normal;
	overflow-wrap: normal;
}

.contacto-home__text {
	width: 100%;
	max-width: 420px;
	margin-top: 0;
	margin-bottom: 0;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

/* Columna formulario */
.contacto-home__form-column {
	position: relative;
	z-index: 4;
}

/* Fondo del formulario: color definido en el patrón */
.contacto-home__form-card {
	position: relative;
	z-index: 5;
	width: 100%;
	max-width: 720px;
	margin-left: auto;
	border-radius: 6px;
	padding-top: var(--wp--preset--spacing--70);
	padding-right: var(--wp--preset--spacing--70);
	padding-bottom: var(--wp--preset--spacing--70);
	padding-left: var(--wp--preset--spacing--70);
}

/* --------------------------------------------------------------
   Gravity Forms dentro de Contacto home
-------------------------------------------------------------- */

.contacto-home__form-card .gform-theme--framework,
.contacto-home__form-card .gform-theme--foundation,
.contacto-home__form-card .gform_wrapper {
	--gf-ctrl-bg-color: transparent;
	--gf-ctrl-border-color: currentColor;
	--gf-ctrl-border-radius: 9px;
	--gf-ctrl-border-width: 1px;
	--gf-ctrl-color: currentColor;
	--gf-ctrl-placeholder-color: currentColor;
	--gf-ctrl-shadow: none;
	--gf-ctrl-size: 52px;
	--gf-form-gap-y: 1.35rem;
	--gf-field-gap-x: 2rem;
	--gf-label-color-primary: currentColor;
	--gf-label-color-secondary: currentColor;
	--gf-label-font-size-primary: var(--wp--preset--font-size--body);
	--gf-label-font-size-secondary: var(--wp--preset--font-size--body);
	--gf-label-font-weight-primary: 300;
	--gf-label-font-weight-secondary: 300;
	--gf-desc-color: currentColor;
	--gf-desc-font-size: var(--wp--preset--font-size--body);
	--gf-ctrl-btn-bg-color-primary: transparent;
	--gf-ctrl-btn-border-color-primary: currentColor;
	--gf-ctrl-btn-border-radius: 5px;
	--gf-ctrl-btn-color-primary: currentColor;
	--gf-ctrl-btn-font-size: var(--wp--preset--font-size--body);
	--gf-ctrl-btn-font-weight: 300;
	--gf-ctrl-btn-padding-x: 1.85rem;
	--gf-ctrl-btn-padding-y: 0.85rem;
}

.gfield_description {
	font-size:12px;
}

/* Contenedor interno del formulario */
.contacto-home__form-card .gform_wrapper {
	width: 100% !important;
	max-width: 560px !important;
	margin: 0 auto !important;
	color: inherit !important;
}

/* Oculta elementos que no aparecen en Figma */
.contacto-home__form-card .gform_heading,
.contacto-home__form-card .gform_title,
.contacto-home__form-card .gform_description,
.contacto-home__form-card .gform_required_legend,
.contacto-home__form-card .gfield_required {
	display: none !important;
}

/* Herencia de color */
.contacto-home__form-card,
.contacto-home__form-card p,
.contacto-home__form-card label,
.contacto-home__form-card span,
.contacto-home__form-card legend,
.contacto-home__form-card .gfield,
.contacto-home__form-card .gfield_label,
.contacto-home__form-card .gform-field-label,
.contacto-home__form-card .gfield_description,
.contacto-home__form-card .gform_description,
.contacto-home__form-card .gfield_consent_label,
.contacto-home__form-card .ginput_container_consent label {
	color: inherit !important;
}

/* Grid y separación */
.contacto-home__form-card .gform_fields {
	row-gap: 1.35rem !important;
	column-gap: 2rem !important;
}

/* Labels */
.contacto-home__form-card .gfield_label,
.contacto-home__form-card .gform-field-label,
.contacto-home__form-card .gfield legend,
.contacto-home__form-card .ginput_complex label {
	margin-bottom: 0.65rem !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 300 !important;
	
}

/* Sublabels tipo Nombre / Apellidos */
.contacto-home__form-card .ginput_complex label {
	margin-top: 0.45rem !important;
	margin-bottom: 0 !important;
	font-size: var(--wp--preset--font-size--body) !important;
	opacity: 0.9;
}

/* Inputs estilo Figma */
.contacto-home__form-card input[type="text"],
.contacto-home__form-card input[type="email"],
.contacto-home__form-card input[type="tel"],
.contacto-home__form-card input[type="url"],
.contacto-home__form-card input[type="number"],
.contacto-home__form-card textarea,
.contacto-home__form-card select,
.contacto-home__form-card .gform-theme--framework input[type="text"],
.contacto-home__form-card .gform-theme--framework input[type="email"],
.contacto-home__form-card .gform-theme--framework input[type="tel"],
.contacto-home__form-card .gform-theme--framework input[type="url"],
.contacto-home__form-card .gform-theme--framework input[type="number"],
.contacto-home__form-card .gform-theme--framework textarea,
.contacto-home__form-card .gform-theme--framework select,
.contacto-home__form-card .gform_wrapper.gravity-theme input[type="text"],
.contacto-home__form-card .gform_wrapper.gravity-theme input[type="email"],
.contacto-home__form-card .gform_wrapper.gravity-theme input[type="tel"],
.contacto-home__form-card .gform_wrapper.gravity-theme input[type="url"],
.contacto-home__form-card .gform_wrapper.gravity-theme input[type="number"],
.contacto-home__form-card .gform_wrapper.gravity-theme textarea,
.contacto-home__form-card .gform_wrapper.gravity-theme select {
	width: 100% !important;
	min-height: 52px !important;
	box-sizing: border-box !important;
	border: 1px solid currentColor !important;
	border-radius: 9px !important;
	background-color: transparent !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 300 !important;
	
	padding-top: 0.85rem !important;
	padding-right: 1.35rem !important;
	padding-bottom: 0.85rem !important;
	padding-left: 1.35rem !important;
	box-shadow: none !important;
	outline: none;
}

/* Textarea */
.contacto-home__form-card textarea,
.contacto-home__form-card .gform-theme--framework textarea,
.contacto-home__form-card .gform_wrapper.gravity-theme textarea {
	min-height: 168px !important;
	resize: vertical;
}

/* Placeholder */
.contacto-home__form-card input::placeholder,
.contacto-home__form-card textarea::placeholder {
	color: currentColor !important;
	opacity: 0.45 !important;
}

/* Focus */
.contacto-home__form-card input:focus,
.contacto-home__form-card textarea:focus,
.contacto-home__form-card select:focus {
	border-color: currentColor !important;
	background-color: transparent !important;
	color: inherit !important;
	outline: 2px solid currentColor !important;
	outline-offset: 2px !important;
	box-shadow: none !important;
}

/* Select options */
.contacto-home__form-card select option {
	color: var(--wp--preset--color--contrast);
	background-color: var(--wp--preset--color--base);
}

/* Descripciones */
.contacto-home__form-card .gfield_description,
.contacto-home__form-card .gform-theme--framework .gfield_description,
.contacto-home__form-card .gform_wrapper.gravity-theme .gfield_description {
	margin-top: 0.4rem !important;
	padding-top: 0 !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 300 !important;
	
	opacity: 0.72;
}

/* Consentimiento / privacidad */
.contacto-home__form-card .gfield--type-consent,
.contacto-home__form-card .gfield_consent {
	margin-top: 0.2rem !important;
}

.contacto-home__form-card .ginput_container_consent {
	display: flex !important;
	align-items: center !important;
	gap: 0.75rem !important;
}

.contacto-home__form-card .gfield_consent_label,
.contacto-home__form-card .ginput_container_consent label {
	margin: 0 !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 300 !important;
	
}

.contacto-home__form-card .ginput_container_consent input,
.contacto-home__form-card input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	min-height: 18px !important;
	margin: 0 !important;
	border: 1px solid currentColor !important;
	background-color: transparent !important;
	accent-color: currentColor;
}

/* Enlaces */
.contacto-home__form-card a {
	color: inherit !important;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.contacto-home__form-card a:hover,
.contacto-home__form-card a:focus {
	opacity: 0.75;
}

/* Footer del formulario */
.contacto-home__form-card .gform_footer,
.contacto-home__form-card .gform_page_footer,
.contacto-home__form-card .gform_wrapper.gravity-theme .gform_footer {
	margin-top: 1.45rem !important;
	padding: 0 !important;
}

/* Botón estilo Figma */
.contacto-home__form-card .gform_button,
.contacto-home__form-card input[type="submit"],
.contacto-home__form-card button[type="submit"],
.contacto-home__form-card .gform-theme--framework input[type="submit"],
.contacto-home__form-card .gform_wrapper.gravity-theme .gform_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 214px !important;
	min-height: 50px !important;
	border: 1px solid currentColor !important;
	border-radius: 5px !important;
	background-color: transparent !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 300 !important;
	
	padding-top: 0.85rem !important;
	padding-right: 1.85rem !important;
	padding-bottom: 0.85rem !important;
	padding-left: 1.85rem !important;
	box-shadow: none !important;
	text-align: center !important;
	cursor: pointer;
	transition:
		background-color 160ms ease,
		color 160ms ease,
		border-color 160ms ease,
		opacity 160ms ease;
}

.contacto-home__form-card .gform_button:hover,
.contacto-home__form-card .gform_button:focus,
.contacto-home__form-card input[type="submit"]:hover,
.contacto-home__form-card input[type="submit"]:focus,
.contacto-home__form-card button[type="submit"]:hover,
.contacto-home__form-card button[type="submit"]:focus {
	background-color: rgba(255, 255, 255, 0.12) !important;
	color: inherit !important;
	border-color: currentColor !important;
	box-shadow: none !important;
}

/* Validación */
.contacto-home__form-card .gfield_validation_message,
.contacto-home__form-card .validation_message,
.contacto-home__form-card .gform_validation_errors {
	border-color: currentColor;
	color: inherit;
	background-color: transparent;
}

/* Editor */
.contacto-home__form-card .wp-block-shortcode {
	margin: 0;
	color: inherit;
}

.editor-styles-wrapper .contacto-home {
	border-top: 6px solid currentColor;
}

.editor-styles-wrapper .contacto-home__right-bg,
.editor-styles-wrapper .contacto-home__shape {
	pointer-events: none;
}

.editor-styles-wrapper .contacto-home__form-card {
	outline: 1px dashed currentColor;
	outline-offset: 10px;
}

/* Responsive */
@media (max-width: 1100px) {
	.contacto-home__columns {
		gap: var(--wp--preset--spacing--60);
	}

	.contacto-home__right-bg {
		left: 54%;
	}

	.contacto-home__shape {
		left: 38%;
		width: 26%;
	}

	.contacto-home__form-card {
		padding-right: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--60);
	}
}

@media (max-width: 900px) {
	.contacto-home {
		min-height: auto;
		padding-top: var(--wp--preset--spacing--80);
		padding-bottom: var(--wp--preset--spacing--80);
	}

	.contacto-home__right-bg {
		left: 0;
		width: 100%;
		opacity: 0.22;
	}

	.contacto-home__shape {
		display: none;
	}

	.contacto-home__columns {
		gap: var(--wp--preset--spacing--60);
	}

	.contacto-home__content-column,
	.contacto-home__form-column {
		flex-basis: 100% !important;
	}

	.contacto-home__form-card {
		max-width: 100%;
		margin-left: 0;
	}

	.contacto-home__form-card .gform_wrapper {
		max-width: 100% !important;
	}
}

@media (max-width: 600px) {
	.contacto-home {
		padding-top: var(--wp--preset--spacing--70);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--70);
		padding-left: var(--wp--preset--spacing--30);
	}

	.contacto-home__form-card {
		padding-top: var(--wp--preset--spacing--50);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--50);
		padding-left: var(--wp--preset--spacing--40);
	}

	.contacto-home__form-card .gform_fields {
		column-gap: 0 !important;
	}

	.contacto-home__form-card .gform_button,
	.contacto-home__form-card input[type="submit"],
	.contacto-home__form-card button[type="submit"],
	.contacto-home__form-card .gform-theme--framework input[type="submit"],
	.contacto-home__form-card .gform_wrapper.gravity-theme .gform_button {
		width: 100% !important;
		min-width: 0 !important;
	}
}
/* --------------------------------------------------------------
   Pattern: Contacto form hero
-------------------------------------------------------------- */

.contacto-form-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: clamp(620px, 43vw, 760px);
	padding: 0;
	background-color: var(--wp--preset--color--surface);
}

/* Imagen de fondo a todo el ancho */
.contacto-form-hero .wp-block-cover__image-background {
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Sin overlay nativo del Cover */
.contacto-form-hero > .wp-block-cover__background {
	display: none;
}

.contacto-form-hero .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: none;
}

/*
 * Este inner debe poder ocupar todo el ancho porque el panel/flecha
 * necesita salir hasta el borde izquierdo de la pantalla.
 */
.contacto-form-hero__inner {
	position: relative;
	width: 100%;
	max-width: none;
	min-height: clamp(620px, 43vw, 760px);
	margin: 0;
}

/*
 * Panel azul en forma de flecha.
 * No usamos opacity en el contenedor para no apagar textos ni formulario.
 * La transparencia va solo en background-color.
 */
.contacto-form-hero__panel {
	position: relative;
	z-index: 2;
	width: min(65vw, 1250px);
	min-height: clamp(620px, 43vw, 760px);
	margin: 0;
	background-color: rgba(76, 102, 171, 0.84);
	clip-path: polygon(0 0, 78% 0, 100% 50%, 78% 100%, 0 100%);
}

/*
 * Contenido alineado al ancho global del tema.
 * La flecha sigue siendo full-width, pero el texto/formulario ya no.
 */
.contacto-form-hero__content {
	position: relative;
	z-index: 3;
	width: min(100%, 620px);
	min-height: clamp(620px, 43vw, 760px);
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: max(
	var(--wp--preset--spacing--20),
	calc((100vw - var(--wp--style--global--content-size)) / 2 - var(--wp--preset--spacing--50))
	);
	box-sizing: border-box;
	padding-top: clamp(2rem, 5vw, 2.5rem);
	padding-right: 0;
	padding-bottom: clamp(2rem, 5vw, 2.5rem);
	padding-left: 0;
}

.contacto-form-hero__title {
	max-width: 620px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 600;
	
	
	white-space: normal;
	word-break: normal;
	overflow-wrap: normal;
}

.contacto-form-hero__text {
	max-width: 620px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.contacto-form-hero__form {
	width: 100%;
	max-width: 560px;
	margin: 0;
	color: var(--wp--preset--color--base);
}

/* --------------------------------------------------------------
   Gravity Forms dentro de Contacto form hero
-------------------------------------------------------------- */

.contacto-form-hero__form .gform-theme--framework,
.contacto-form-hero__form .gform-theme--foundation,
.contacto-form-hero__form .gform_wrapper {
	--gf-ctrl-bg-color: transparent;
	--gf-ctrl-border-color: currentColor;
	--gf-ctrl-border-radius: 6px;
	--gf-ctrl-border-width: 1px;
	--gf-ctrl-color: currentColor;
	--gf-ctrl-placeholder-color: currentColor;
	--gf-ctrl-shadow: none;
	--gf-ctrl-size: 42px;
	--gf-form-gap-y: 1rem;
	--gf-field-gap-x: 1rem;
	--gf-label-color-primary: currentColor;
	--gf-label-color-secondary: currentColor;
	--gf-label-font-size-primary: var(--wp--preset--font-size--body);
	--gf-label-font-size-secondary: var(--wp--preset--font-size--body);
	--gf-label-font-weight-primary: 300;
	--gf-label-font-weight-secondary: 300;
	--gf-desc-color: currentColor;
	--gf-desc-font-size: 1rem;
	--gf-ctrl-btn-bg-color-primary: transparent;
	--gf-ctrl-btn-border-color-primary: currentColor;
	--gf-ctrl-btn-border-radius: 4px;
	--gf-ctrl-btn-color-primary: currentColor;
	--gf-ctrl-btn-font-size: var(--wp--preset--font-size--body);
	--gf-ctrl-btn-font-weight: 300;
	--gf-ctrl-btn-padding-x: 1.35rem;
	--gf-ctrl-btn-padding-y: 0.65rem;
}

.contacto-form-hero__form .gform_wrapper {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	color: inherit !important;
}

/* Ocultar elementos que no salen en Figma */
.contacto-form-hero__form .gform_heading,
.contacto-form-hero__form .gform_title,
.contacto-form-hero__form .gform_description,
.contacto-form-hero__form .gform_required_legend,
.contacto-form-hero__form .gfield_required {
	display: none !important;
}

/* Herencia de color */
.contacto-form-hero__form,
.contacto-form-hero__form p,
.contacto-form-hero__form label,
.contacto-form-hero__form span,
.contacto-form-hero__form legend,
.contacto-form-hero__form .gfield,
.contacto-form-hero__form .gfield_label,
.contacto-form-hero__form .gform-field-label,
.contacto-form-hero__form .gfield_description,
.contacto-form-hero__form .gform_description,
.contacto-form-hero__form .gfield_consent_label,
.contacto-form-hero__form .ginput_container_consent label {
	color: inherit !important;
}

.contacto-form-hero__form .gform_fields {
	row-gap: 1rem !important;
	column-gap: 1rem !important;
}

/* Labels */
.contacto-form-hero__form .gfield_label,
.contacto-form-hero__form .gform-field-label,
.contacto-form-hero__form .gfield legend,
.contacto-form-hero__form .ginput_complex label {
	margin-bottom: 0.45rem !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300 !important;
	
}

.contacto-form-hero__form .ginput_complex label {
	margin-top: 0.35rem !important;
	margin-bottom: 0 !important;
	font-size: var(--wp--preset--font-size--body);
	opacity: 0.9;
}

/* Inputs */
.contacto-form-hero__form input[type="text"],
.contacto-form-hero__form input[type="email"],
.contacto-form-hero__form input[type="tel"],
.contacto-form-hero__form input[type="url"],
.contacto-form-hero__form input[type="number"],
.contacto-form-hero__form textarea,
.contacto-form-hero__form select,
.contacto-form-hero__form .gform-theme--framework input[type="text"],
.contacto-form-hero__form .gform-theme--framework input[type="email"],
.contacto-form-hero__form .gform-theme--framework input[type="tel"],
.contacto-form-hero__form .gform-theme--framework input[type="url"],
.contacto-form-hero__form .gform-theme--framework input[type="number"],
.contacto-form-hero__form .gform-theme--framework textarea,
.contacto-form-hero__form .gform-theme--framework select,
.contacto-form-hero__form .gform_wrapper.gravity-theme input[type="text"],
.contacto-form-hero__form .gform_wrapper.gravity-theme input[type="email"],
.contacto-form-hero__form .gform_wrapper.gravity-theme input[type="tel"],
.contacto-form-hero__form .gform_wrapper.gravity-theme input[type="url"],
.contacto-form-hero__form .gform_wrapper.gravity-theme input[type="number"],
.contacto-form-hero__form .gform_wrapper.gravity-theme textarea,
.contacto-form-hero__form .gform_wrapper.gravity-theme select {
	width: 100% !important;
	min-height: 42px !important;
	box-sizing: border-box !important;
	border: 1px solid currentColor !important;
	border-radius: 6px !important;
	background-color: transparent !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300 !important;
	
	padding-top: 0.65rem !important;
	padding-right: 1rem !important;
	padding-bottom: 0.65rem !important;
	padding-left: 1rem !important;
	box-shadow: none !important;
	outline: none;
}

.contacto-form-hero__form textarea,
.contacto-form-hero__form .gform-theme--framework textarea,
.contacto-form-hero__form .gform_wrapper.gravity-theme textarea {
	min-height: 110px !important;
	resize: vertical;
}

.contacto-form-hero__form input::placeholder,
.contacto-form-hero__form textarea::placeholder {
	color: currentColor !important;
	opacity: 0.45 !important;
}

.contacto-form-hero__form input:focus,
.contacto-form-hero__form textarea:focus,
.contacto-form-hero__form select:focus {
	border-color: currentColor !important;
	background-color: transparent !important;
	color: inherit !important;
	outline: 2px solid currentColor !important;
	outline-offset: 2px !important;
	box-shadow: none !important;
}

.contacto-form-hero__form select option {
	color: var(--wp--preset--color--contrast);
	background-color: var(--wp--preset--color--base);
}

/* Descripciones */
.contacto-form-hero__form .gfield_description,
.contacto-form-hero__form .gform-theme--framework .gfield_description,
.contacto-form-hero__form .gform_wrapper.gravity-theme .gfield_description {
	margin-top: 0.35rem !important;
	padding-top: 0 !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--small)!important;
	font-weight: 300 !important;
	
	opacity: 0.72;
}

/* Consentimiento */
.contacto-form-hero__form .gfield--type-consent,
.contacto-form-hero__form .gfield_consent {
	margin-top: 0.2rem !important;
}

.contacto-form-hero__form .ginput_container_consent {
	display: flex !important;
	align-items: center !important;
	gap: 0.6rem !important;
}

.contacto-form-hero__form .gfield_consent_label,
.contacto-form-hero__form .ginput_container_consent label {
	margin: 0 !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300 !important;
	
}

.contacto-form-hero__form .ginput_container_consent input,
.contacto-form-hero__form input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	min-height: 16px !important;
	margin: 0 !important;
	border: 1px solid currentColor !important;
	background-color: transparent !important;
	accent-color: currentColor;
}

/* Enlaces */
.contacto-form-hero__form a {
	color: inherit !important;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.contacto-form-hero__form a:hover,
.contacto-form-hero__form a:focus {
	opacity: 0.75;
}

/* Submit */
.contacto-form-hero__form .gform_footer,
.contacto-form-hero__form .gform_page_footer,
.contacto-form-hero__form .gform_wrapper.gravity-theme .gform_footer {
	margin-top: 1.25rem !important;
	padding: 0 !important;
}

.contacto-form-hero__form .gform_button,
.contacto-form-hero__form input[type="submit"],
.contacto-form-hero__form button[type="submit"],
.contacto-form-hero__form .gform-theme--framework input[type="submit"],
.contacto-form-hero__form .gform_wrapper.gravity-theme .gform_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 170px !important;
	min-height: 42px !important;
	border: 1px solid currentColor !important;
	border-radius: 4px !important;
	background-color: transparent !important;
	color: inherit !important;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300 !important;

	padding-top: 0.65rem !important;
	padding-right: 1.35rem !important;
	padding-bottom: 0.65rem !important;
	padding-left: 1.35rem !important;
	box-shadow: none !important;
	text-align: center !important;
	cursor: pointer;
	transition:
		background-color 160ms ease,
		color 160ms ease,
		border-color 160ms ease,
		opacity 160ms ease;
}

.contacto-form-hero__form .gform_button:hover,
.contacto-form-hero__form .gform_button:focus,
.contacto-form-hero__form input[type="submit"]:hover,
.contacto-form-hero__form input[type="submit"]:focus,
.contacto-form-hero__form button[type="submit"]:hover,
.contacto-form-hero__form button[type="submit"]:focus {
	background-color: rgba(255, 255, 255, 0.12) !important;
	color: inherit !important;
	border-color: currentColor !important;
	box-shadow: none !important;
}

/* Validación */
.contacto-form-hero__form .gfield_validation_message,
.contacto-form-hero__form .validation_message,
.contacto-form-hero__form .gform_validation_errors {
	border-color: currentColor;
	color: inherit;
	background-color: transparent;
}

/* --------------------------------------------------------------
   Editor: Contacto form hero
-------------------------------------------------------------- */

.editor-styles-wrapper .contacto-form-hero {
	min-height: clamp(620px, 43vw, 760px);
}

.editor-styles-wrapper .contacto-form-hero__inner {
	min-height: clamp(620px, 43vw, 760px);
}

.editor-styles-wrapper .contacto-form-hero__panel {
	outline: 1px dashed rgba(255, 255, 255, 0.35);
	outline-offset: -14px;
}

.editor-styles-wrapper .contacto-form-hero__form .wp-block-shortcode {
	color: inherit;
}

/* --------------------------------------------------------------
   Responsive: Contacto form hero
-------------------------------------------------------------- */

@media (max-width: 1280px) {
	.contacto-form-hero__panel {
		width: 70vw;
		clip-path: polygon(0 0, 76% 0, 100% 50%, 76% 100%, 0 100%);
	}

	.contacto-form-hero__content {
		width: min(100%, 540px);
	}
}

@media (max-width: 1024px) {
	.contacto-form-hero__panel {
		width: 76vw;
	}

	.contacto-form-hero__content {
		width: min(100%, 520px);
		margin-left: var(--wp--preset--spacing--50);
	}
}

@media (max-width: 781px) {
	.contacto-form-hero {
		min-height: auto;
	}

	.contacto-form-hero__inner {
		min-height: auto;
	}

	.contacto-form-hero__panel {
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		width: 100%;
		clip-path: none;
		background-color: rgba(76, 102, 171, 0.9);
	}

	.contacto-form-hero__content {
		width: 100%;
		max-width: none;
		margin-left: 0;
		padding-top: var(--wp--preset--spacing--70);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--70);
		padding-left: var(--wp--preset--spacing--40);
	}

	.contacto-form-hero__title,
	.contacto-form-hero__text,
	.contacto-form-hero__form {
		max-width: 100%;
	}
}

@media (max-width: 480px) {
	.contacto-form-hero__content {
		padding-top: var(--wp--preset--spacing--60);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--30);
	}

	.contacto-form-hero__title {
		font-size: var(--wp--preset--font-size--h-2);
	}

	.contacto-form-hero__form .gform_fields {
		column-gap: 0 !important;
	}

	.contacto-form-hero__form .gform_button,
	.contacto-form-hero__form input[type="submit"],
	.contacto-form-hero__form button[type="submit"],
	.contacto-form-hero__form .gform-theme--framework input[type="submit"],
	.contacto-form-hero__form .gform_wrapper.gravity-theme .gform_button {
		width: 100% !important;
		min-width: 0 !important;
	}
}

/* --------------------------------------------------------------
   Block: CURSEA Formaciones Carousel
-------------------------------------------------------------- */

.cursea-formaciones-carousel-section {
	background-color: var(--wp--preset--color--surface);
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--80);
}

.cursea-formaciones-carousel-section__inner {
	width: calc(100% - 40px);
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.cursea-formaciones-carousel-section__header {
	max-width: 620px;
	margin: 0 auto var(--wp--preset--spacing--60);
	text-align: center;
}

.cursea-formaciones-carousel-section__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--primary-light);
	font-size: var(--wp--preset--font-size--h-2);
	font-weight: 600;
	

}

.cursea-formaciones-carousel-section__title em {
	font-family: var(--wp--preset--font-family--besley, "Besley", serif);
	font-style: italic;
	font-weight: 600;
}

.cursea-formaciones-carousel-section__subtitle {
	max-width: 420px;
	margin: 0 auto;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.cursea-formaciones-carousel {
	position: relative;
	width: 100%;
}

.cursea-formaciones-carousel__viewport {
	overflow: hidden;
	width: 100%;
}

.cursea-formaciones-carousel__track {
	display: flex;
	align-items: stretch;
	gap: var(--wp--preset--spacing--50);
	will-change: transform;
}

.cursea-formaciones-carousel .cursea-formacion-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	box-shadow: 0 12px 34px rgba(31, 42, 68, 0.07);
}

.cursea-formacion-card__media-link {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	color: inherit;
	
	text-decoration: none;
}

.cursea-formacion-card__media {
	position: relative;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 8.6;
	margin: 0;
	padding: 0;
	border-radius: 8px 8px 0 0;
	background-color: var(--wp--preset--color--primary-light);
}

.cursea-formacion-card__image {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px 8px 0 0;
	object-fit: cover;
	object-position: center;
	vertical-align: top;
}

.cursea-formacion-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background:
		linear-gradient(
			135deg,
			var(--wp--preset--color--primary-light),
			var(--wp--preset--color--primary)
		);
}

.cursea-formacion-card__badge {
	position: absolute;
	top: var(--wp--preset--spacing--30);
	left: var(--wp--preset--spacing--40);
	z-index: 2;
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	border-radius: 999px;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	padding: 0.28rem 0.75rem;
	font-size: 0.72rem;
	font-weight: 600;
	
}

.cursea-formacion-card__badge::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	margin-right: 0.4rem;
	border-radius: 999px;
	background-color: currentColor;
}

.cursea-formacion-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50) var(--wp--preset--spacing--50);
}

.cursea-formacion-card__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-5);
	font-weight: 600;
	
}

.cursea-formacion-card__title a {
	color: inherit;
	text-decoration: none;
}

.cursea-formacion-card__title a:hover {
	color: var(--wp--preset--color--secondary);
}

.cursea-formacion-card__excerpt {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.cursea-formacion-card__meta {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	margin-top: auto;
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--text-muted);
	font-size: 1rem;
	
}

.cursea-formacion-card__certificate {
	display: block;
	color: var(--wp--preset--color--primary);
	font-size: 1rem;
	font-weight: 600;
	
}

.cursea-formacion-card__divider {
	display: block;
	width: 42px;
	height: 2px;
	margin-top: 0.15rem;
	margin-bottom: 0.35rem;
	border-radius: 999px;
	background-color: rgba(76, 102, 171, 0.35);
}

.cursea-formacion-card__meta-list {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.cursea-formacion-card__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.cursea-formacion-card__meta-item::before {
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	width: 14px;
	height: 14px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.cursea-formacion-card__meta-item--duration::before {
	background-image: url("./assets/icons/duracion.svg");
}

.cursea-formacion-card__meta-item--modality::before {
	background-image: url("./assets/icons/online.svg");
}

.cursea-formacion-card__button {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 4px;
	color: var(--wp--preset--color--primary);
	padding: 0.62rem 0.95rem;
	font-size: 1rem;
	font-weight: 500;
	
	text-decoration: none;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		border-color 120ms ease;
}

.cursea-formacion-card__button:hover {
	border-color: var(--wp--preset--color--secondary);
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
}

.cursea-formaciones-carousel__controls {
	position: absolute;
	top: 50%;
	left: -78px;
	right: -78px;
	z-index: 5;
	display: none;
	justify-content: space-between;
	pointer-events: none;
	transform: translateY(-50%);
}

.cursea-formaciones-carousel.is-carousel .cursea-formaciones-carousel__controls {
	display: flex;
}

.cursea-formaciones-carousel:not(.is-carousel) .cursea-formaciones-carousel__controls {
	display: none;
}


.cursea-formaciones-carousel__control {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 999px;
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	font: inherit;
	cursor: pointer;
	pointer-events: auto;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		opacity 120ms ease;
}

.cursea-formaciones-carousel__control:hover {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.cursea-formaciones-carousel__control:disabled {
	opacity: 0.35;
	cursor: default;
}

.cursea-formaciones-carousel-section__footer {
	display: flex;
	justify-content: center;
	margin-top: var(--wp--preset--spacing--60);
}

.cursea-formaciones-carousel-section__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 4px;
	color: var(--wp--preset--color--primary);
	padding: 0.8rem 1.25rem;
	font-size: var(--wp--preset--font-size--button-text);
	font-weight: 500;
	
	
	text-decoration: none;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		border-color 120ms ease;
}

.cursea-formaciones-carousel-section__button:hover {
	border-color: var(--wp--preset--color--secondary);
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
}

.cursea-formaciones-carousel:not(.is-carousel) .cursea-formaciones-carousel__track {
	flex-wrap: wrap;
	justify-content: center;
}

.cursea-formaciones-carousel:not(.is-carousel) .cursea-formacion-card {
	flex: 0 1 calc((100% - (var(--wp--preset--spacing--50) * 2)) / 3);
	max-width: 390px;
}


@media (max-width: 1280px) {
	.cursea-formaciones-carousel__controls {
		left: -56px;
		right: -56px;
	}
}

@media (max-width: 1080px) {
	.cursea-formaciones-carousel__controls {
		left: -20px;
		right: -20px;
	}
}

@media (max-width: 700px) {
	.cursea-formaciones-carousel-section {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}

	.cursea-formaciones-carousel-section__inner {
		width: calc(100% - 32px);
	}

	.cursea-formaciones-carousel-section__header {
		margin-bottom: var(--wp--preset--spacing--50);
	}

	.cursea-formaciones-carousel__track {
		gap: var(--wp--preset--spacing--40);
	}

	.cursea-formaciones-carousel:not(.is-carousel) .cursea-formaciones-carousel__track {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
	}

	.cursea-formaciones-carousel:not(.is-carousel) .cursea-formacion-card {
		flex: 0 0 auto;
		width: 100%;
		max-width: none;
	}

	.cursea-formaciones-carousel__controls {
		position: static;
		display: none;
		justify-content: center;
		gap: var(--wp--preset--spacing--30);
		margin-top: var(--wp--preset--spacing--40);
		pointer-events: auto;
		transform: none;
	}

	.cursea-formaciones-carousel.is-carousel .cursea-formaciones-carousel__controls {
		display: flex;
	}

	.cursea-formacion-card__body {
		padding: var(--wp--preset--spacing--40);
	}
	.cursea-formaciones-carousel {
		display: flex;
		flex-direction: column;
	}

	.cursea-formaciones-carousel__viewport {
		order: 1;
	}

	.cursea-formaciones-carousel__controls {
		order: 2;
		position: static;
		display: none;
		justify-content: center;
		gap: var(--wp--preset--spacing--30);
		margin-top: var(--wp--preset--spacing--40);
		margin-bottom: var(--wp--preset--spacing--40);
		pointer-events: auto;
		transform: none;
	}

	.cursea-formaciones-carousel.is-carousel .cursea-formaciones-carousel__controls {
		display: flex;
	}
}

/* --------------------------------------------------------------
   LearnDash: fuente Inter
-------------------------------------------------------------- */

/* Frontend LearnDash */
body.single-sfwd-lessons .learndash-wrapper,
body.single-sfwd-topic .learndash-wrapper,
body.single-sfwd-quiz .learndash-wrapper,
body.single-sfwd-courses .learndash-wrapper {
	--cursea-ld-font: var(--wp--preset--font-family--inter);
	font-family: var(--cursea-ld-font);
}

body.single-sfwd-lessons .learndash-wrapper :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b),
body.single-sfwd-topic .learndash-wrapper :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b),
body.single-sfwd-quiz .learndash-wrapper :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b),
body.single-sfwd-courses .learndash-wrapper :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b) {
	font-family: var(--cursea-ld-font);
}

/* Editor LearnDash */
body.post-type-sfwd-lessons .is-root-container,
body.post-type-sfwd-topic .is-root-container,
body.post-type-sfwd-quiz .is-root-container,
body.post-type-sfwd-courses .is-root-container {
	--cursea-ld-font: var(--wp--preset--font-family--inter);
	font-family: var(--cursea-ld-font);
}

body.post-type-sfwd-lessons .is-root-container :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b),
body.post-type-sfwd-topic .is-root-container :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b),
body.post-type-sfwd-quiz .is-root-container :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b),
body.post-type-sfwd-courses .is-root-container :where(p, li, a, span, div, h1, h2, h3, h4, h5, h6, button, input, textarea, select, label, strong, b) {
	font-family: var(--cursea-ld-font);
}

/* --------------------------------------------------------------
   LearnDash: line-height y títulos
-------------------------------------------------------------- */

/* Más line-height en textos del frontend */
body.single-sfwd-lessons .ld-focus-content,
body.single-sfwd-topic .ld-focus-content,
body.single-sfwd-quiz .ld-focus-content,
body.single-sfwd-courses .ld-focus-content,
body.single-sfwd-lessons .ld-focus-content p,
body.single-sfwd-topic .ld-focus-content p,
body.single-sfwd-quiz .ld-focus-content p,
body.single-sfwd-courses .ld-focus-content p,
body.single-sfwd-lessons .ld-focus-content li,
body.single-sfwd-topic .ld-focus-content li,
body.single-sfwd-quiz .ld-focus-content li,
body.single-sfwd-courses .ld-focus-content li {
	line-height: 1.5;
}

/* Más line-height en textos del editor */
body.post-type-sfwd-lessons .is-root-container,
body.post-type-sfwd-topic .is-root-container,
body.post-type-sfwd-quiz .is-root-container,
body.post-type-sfwd-courses .is-root-container,
body.post-type-sfwd-lessons .is-root-container p,
body.post-type-sfwd-topic .is-root-container p,
body.post-type-sfwd-quiz .is-root-container p,
body.post-type-sfwd-courses .is-root-container p,
body.post-type-sfwd-lessons .is-root-container li,
body.post-type-sfwd-topic .is-root-container li,
body.post-type-sfwd-quiz .is-root-container li,
body.post-type-sfwd-courses .is-root-container li {
	line-height: 1.5;
}

/* Títulos frontend LearnDash */
body.single-sfwd-lessons .ld-focus-content h1,
body.single-sfwd-topic .ld-focus-content h1,
body.single-sfwd-quiz .ld-focus-content h1,
body.single-sfwd-courses .ld-focus-content h1 {
	margin-bottom: 10px;
	font-size: clamp(2rem, 2.25vw, 2.65rem);
	
	text-transform: none;
}

body.single-sfwd-lessons .ld-focus-content h2,
body.single-sfwd-topic .ld-focus-content h2,
body.single-sfwd-quiz .ld-focus-content h2,
body.single-sfwd-courses .ld-focus-content h2 {
	margin-bottom: 10px;
	font-size: clamp(1.5rem, 1.65vw, 1.9rem);
	
	text-transform: none;
}

body.single-sfwd-lessons .ld-focus-content h3,
body.single-sfwd-topic .ld-focus-content h3,
body.single-sfwd-quiz .ld-focus-content h3,
body.single-sfwd-courses .ld-focus-content h3 {
	margin-bottom: 10px;
	font-size: clamp(1.2rem, 1.3vw, 1.45rem);
	
	text-transform: none;
}

/* Títulos editor LearnDash */
body.post-type-sfwd-lessons .is-root-container h1,
body.post-type-sfwd-topic .is-root-container h1,
body.post-type-sfwd-quiz .is-root-container h1,
body.post-type-sfwd-courses .is-root-container h1 {
	margin-bottom: 10px;
	font-size: clamp(2rem, 2.25vw, 2.65rem);
	
	text-transform: none;
}

body.post-type-sfwd-lessons .is-root-container h2,
body.post-type-sfwd-topic .is-root-container h2,
body.post-type-sfwd-quiz .is-root-container h2,
body.post-type-sfwd-courses .is-root-container h2 {
	margin-bottom: 10px;
	font-size: clamp(1.5rem, 1.65vw, 1.9rem);
	
	text-transform: none;
}

body.post-type-sfwd-lessons .is-root-container h3,
body.post-type-sfwd-topic .is-root-container h3,
body.post-type-sfwd-quiz .is-root-container h3,
body.post-type-sfwd-courses .is-root-container h3 {
	margin-bottom: 10px;
	font-size: clamp(1.2rem, 1.3vw, 1.45rem);
	
	text-transform: none;
}
/* --------------------------------------------------------------
   LearnDash: negritas más visibles
-------------------------------------------------------------- */

/* Frontend LearnDash */
body.single-sfwd-lessons .learndash-wrapper strong,
body.single-sfwd-lessons .learndash-wrapper b,
body.single-sfwd-topic .learndash-wrapper strong,
body.single-sfwd-topic .learndash-wrapper b,
body.single-sfwd-quiz .learndash-wrapper strong,
body.single-sfwd-quiz .learndash-wrapper b,
body.single-sfwd-courses .learndash-wrapper strong,
body.single-sfwd-courses .learndash-wrapper b {
	font-weight: 700;
	font-variation-settings: "wght" 700;
}

/* Editor LearnDash */
body.post-type-sfwd-lessons .is-root-container strong,
body.post-type-sfwd-lessons .is-root-container b,
body.post-type-sfwd-topic .is-root-container strong,
body.post-type-sfwd-topic .is-root-container b,
body.post-type-sfwd-quiz .is-root-container strong,
body.post-type-sfwd-quiz .is-root-container b,
body.post-type-sfwd-courses .is-root-container strong,
body.post-type-sfwd-courses .is-root-container b {
	font-weight: 700;
	font-variation-settings: "wght" 700;
}

/* --------------------------------------------------------------
   LearnDash: margen inferior en listas dentro del editor
-------------------------------------------------------------- */

body.post-type-sfwd-lessons .is-root-container ul,
body.post-type-sfwd-lessons .is-root-container ol,
body.post-type-sfwd-topic .is-root-container ul,
body.post-type-sfwd-topic .is-root-container ol,
body.post-type-sfwd-quiz .is-root-container ul,
body.post-type-sfwd-quiz .is-root-container ol,
body.post-type-sfwd-courses .is-root-container ul,
body.post-type-sfwd-courses .is-root-container ol {
	margin-bottom: 20px;
}

/* --------------------------------------------------------------
   LearnDash curso: hero de formación más bajo
-------------------------------------------------------------- */

body.single-sfwd-courses .formacion-hero,
body.single-sfwd-courses .formacion-hero__content {
	min-height: 320px;
}

body.single-sfwd-courses .formacion-hero__content {
	padding-top: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--60);
}

.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-preview>.ld-tooltip, .learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-name {
        align-items: center;
}

.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-preview .ld-status-icon {
    margin-top: -2px;
}

/* --------------------------------------------------------------
   Pattern: Formaciones Filter Section
-------------------------------------------------------------- */

.formaciones-filter-pattern {
	background-color: var(--wp--preset--color--surface);
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--100);
}

.formaciones-filter-pattern__inner {
	width: 100%;
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
}

.formaciones-filter-pattern__header {
	max-width: 820px;
	margin-bottom: var(--wp--preset--spacing--80);
}

.formaciones-filter-pattern__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-1);
	font-weight: 600;
	
	
}

.formaciones-filter-pattern__title em {
	font-family: var(--wp--preset--font-family--besley, "Besley", serif);
	font-style: italic;
	font-weight: 600;
}

.formaciones-filter-pattern__subtitle {
	max-width: 560px;
	margin: 0;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

@media (max-width: 781px) {
	.formaciones-filter-pattern {
		padding-top: var(--wp--preset--spacing--70);
		padding-bottom: var(--wp--preset--spacing--70);
	}

	.formaciones-filter-pattern__header {
		margin-bottom: var(--wp--preset--spacing--60);
	}
}

@media (max-width: 480px) {
	.formaciones-filter-pattern {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}
}

/* --------------------------------------------------------------
   Block: CURSEA Formaciones Filter
-------------------------------------------------------------- */

.cursea-formaciones-filter-section {
	width: 100%;
}


.cursea-formaciones-filter-section__layout {
	display: grid;
	grid-template-columns: 290px minmax(0, 1fr);
	gap: var(--wp--preset--spacing--60);
	align-items: start;
}

.cursea-formaciones-filter-section__sidebar {
	position: sticky;
	top: 35px;
	align-self: start;
}

.cursea-formaciones-filter-section__sidebar-card {
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--50);
	box-shadow: 0 8px 24px rgba(31, 42, 68, 0.04);
}

/* Header del filtro */

.cursea-formaciones-filter-section__filter-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	margin-bottom: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--30);
	border-bottom: 1px solid rgba(76, 102, 171, 0.18);
}

.cursea-formaciones-filter-section__sidebar-title {
	margin: 0;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	
}

.cursea-formaciones-filter-section__reset {
	color: var(--wp--preset--color--text-muted);
	font-size: 1rem;
	font-weight: 400;
	
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.cursea-formaciones-filter-section__reset:hover,
.cursea-formaciones-filter-section__reset:focus {
	color: var(--wp--preset--color--primary);
}

/* Campos del filtro */

.cursea-formaciones-filter-section__filter-group {
	margin: 0 0 var(--wp--preset--spacing--40);
	padding: 0;
	border: 0;
}

.cursea-formaciones-filter-section__filter-group:last-of-type {
	margin-bottom: var(--wp--preset--spacing--30);
}

.cursea-formaciones-filter-section__filter-label {
	display: block;
	margin: 0 0 var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--primary);
	font-size: 1rem;
	font-weight: 600;
	
}

.cursea-formaciones-filter-section__select {
	width: 100%;
	min-height: 42px;
	box-sizing: border-box;
	border: 1px solid rgba(76, 102, 171, 0.28);
	border-radius: 5px;
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
	padding: 0.65rem 0.75rem;
	box-shadow: none;
	outline: none;
}

.cursea-formaciones-filter-section__select:focus {
	border-color: var(--wp--preset--color--primary);
	outline: 2px solid rgba(76, 102, 171, 0.16);
	outline-offset: 2px;
}

.cursea-formaciones-filter-section__checks {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.cursea-formaciones-filter-section__check {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: start;
	gap: 0.65rem;
	margin: 0;
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
	
	cursor: pointer;
}

.cursea-formaciones-filter-section__check input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	width: 18px;
	height: 18px;
	margin: 0;
	border: 1px solid rgba(76, 102, 171, 0.45);
	border-radius: 4px;
	background-color: transparent;
	cursor: pointer;
	transform: translateY(-1px);
}

.cursea-formaciones-filter-section__check input[type="checkbox"]:checked {
	border-color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--primary);
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 18 18' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9.2 7.2 12.4 14 5.6' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 14px 14px;
}

.cursea-formaciones-filter-section__check input[type="checkbox"]:focus {
	outline: 2px solid rgba(76, 102, 171, 0.22);
	outline-offset: 2px;
}

.cursea-formaciones-filter-section__check span {
	display: block;
	min-width: 0;
}

.cursea-formaciones-filter-section__filter-actions {
	margin-top: var(--wp--preset--spacing--40);
}

.cursea-formaciones-filter-section__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	box-sizing: border-box;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 5px;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--button-text);
	font-weight: 500;
	
	padding: 0.75rem 1rem;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition:
		background-color 120ms ease,
		border-color 120ms ease,
		color 120ms ease;
}

.cursea-formaciones-filter-section__submit:hover,
.cursea-formaciones-filter-section__submit:focus {
	border-color: var(--wp--preset--color--secondary);
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
}

/* Resultados */

.cursea-formaciones-filter-section__main {
	min-width: 0;
}

.cursea-formaciones-filter-section__results-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--40);
	margin-bottom: var(--wp--preset--spacing--40);
}

.cursea-formaciones-filter-section__results-count {
	margin: 0;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
}

/* Chips de filtros activos */

.cursea-formaciones-filter-section__active-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	margin-bottom: var(--wp--preset--spacing--40);
}

.cursea-formaciones-filter-section__active-filters-label {
	display: inline-flex;
	align-items: center;
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	
}

.cursea-formaciones-filter-section__chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--20);
}

.cursea-formaciones-filter-section__chip {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	min-height: 32px;
	border: 1px solid rgba(76, 102, 171, 0.28);
	border-radius: 999px;
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--primary);
	padding: 0.38rem 0.75rem;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	text-decoration: none;
	box-shadow: 0 4px 14px rgba(31, 42, 68, 0.04);
	transition:
		background-color 120ms ease,
		border-color 120ms ease,
		color 120ms ease;
}

.cursea-formaciones-filter-section__chip:hover,
.cursea-formaciones-filter-section__chip:focus {
	border-color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	text-decoration: none;
}

.cursea-formaciones-filter-section__chip span:last-child {
	font-size: 1rem;
	font-weight: 400;
	
	transform: translateY(-1px);
}

/* Grid de formaciones */

.cursea-formaciones-filter-section__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
	align-items: stretch;
}

.cursea-formaciones-filter-section__card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	box-shadow: 0 12px 34px rgba(31, 42, 68, 0.07);
}

.cursea-formaciones-filter-section__card .cursea-formacion-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
}

.cursea-formaciones-filter-section__card .cursea-formacion-card__button {
	margin-top: auto;
}

/* Paginación y vacío */

.cursea-formaciones-filter-section__pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--80);
}

.cursea-formaciones-filter-section__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	border: 1px solid rgba(76, 102, 171, 0.28);
	border-radius: 4px;
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	padding: 0.45rem 0.7rem;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	text-decoration: none;
}

.cursea-formaciones-filter-section__pagination .page-numbers.current,
.cursea-formaciones-filter-section__pagination .page-numbers:hover,
.cursea-formaciones-filter-section__pagination .page-numbers:focus {
	border-color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.cursea-formaciones-filter-section__empty {
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--60);
	text-align: center;
	box-shadow: 0 8px 24px rgba(31, 42, 68, 0.04);
}

.cursea-formaciones-filter-section__empty p {
	margin: 0;
	color: var(--wp--preset--color--primary);
}

/* Editor */

.editor-styles-wrapper .cursea-formaciones-filter-section {
	border-top: 6px solid var(--wp--preset--color--primary);
}

.editor-styles-wrapper .cursea-formaciones-filter-section__sidebar {
	position: relative;
	top: auto;
}

.editor-styles-wrapper .cursea-formaciones-filter-section__card,
.editor-styles-wrapper .cursea-formaciones-filter-section__sidebar-card {
	outline: 1px solid rgba(76, 102, 171, 0.08);
}

/* Responsive */

@media (max-width: 1200px) {
	.cursea-formaciones-filter-section__layout {
		grid-template-columns: 260px minmax(0, 1fr);
		gap: var(--wp--preset--spacing--50);
	}

	.cursea-formaciones-filter-section__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.cursea-formaciones-filter-section {
		padding-top: var(--wp--preset--spacing--70);
		padding-bottom: var(--wp--preset--spacing--70);
	}

	.cursea-formaciones-filter-section__header {
		margin-bottom: var(--wp--preset--spacing--50);
	}

	.cursea-formaciones-filter-section__layout {
		grid-template-columns: 1fr;
	}

	.cursea-formaciones-filter-section__sidebar {
		position: relative;
		top: auto;
	}

	.cursea-formaciones-filter-section__grid {
		grid-template-columns: 1fr;
	}

	.cursea-formaciones-filter-section__results-head {
		margin-bottom: var(--wp--preset--spacing--30);
	}
}

@media (max-width: 480px) {
	.cursea-formaciones-filter-section {
		padding-top: var(--wp--preset--spacing--60);
		padding-bottom: var(--wp--preset--spacing--60);
	}

	.cursea-formaciones-filter-section__sidebar-card {
		padding: var(--wp--preset--spacing--40);
	}

	.cursea-formaciones-filter-section__filter-head {
		align-items: flex-start;
		flex-direction: column;
		gap: var(--wp--preset--spacing--20);
	}

	.cursea-formaciones-filter-section__active-filters {
		align-items: flex-start;
		flex-direction: column;
	}

	.cursea-formaciones-filter-section__chips {
		width: 100%;
	}

	.cursea-formaciones-filter-section__chip {
		max-width: 100%;
	}
}

/* --------------------------------------------------------------
   Template: Archive cursos LearnDash
-------------------------------------------------------------- */

.cursea-courses-archive-main {
	overflow: hidden;
}

.cursea-courses-archive__grid {
	gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
	margin: 0;
	padding: 0;
	list-style: none;
}

.cursea-courses-archive__grid > li {
	display: flex;
	margin: 0;
	padding: 0;
}

.cursea-archive-course-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	width: 100%;
	min-height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	box-shadow: 0 12px 34px rgba(31, 42, 68, 0.07);
}

.cursea-archive-course-card .cursea-formacion-card__media {
	position: relative;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 8.6;
	margin: 0;
	padding: 0;
	border-radius: 8px 8px 0 0;
	background-color: var(--wp--preset--color--primary-light);
}

.cursea-archive-course-card .cursea-formacion-card__media a {
	display: block;
	width: 100%;
	height: 100%;
	
}

.cursea-archive-course-card .cursea-formacion-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px 8px 0 0;
	object-fit: cover;
	object-position: center;
	vertical-align: top;
}

.cursea-archive-course-card .cursea-formacion-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50) var(--wp--preset--spacing--50);
}

.cursea-archive-course-card .cursea-formacion-card__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-5);
	font-weight: 600;
	
}

.cursea-archive-course-card .cursea-formacion-card__title a {
	color: inherit;
	text-decoration: none;
}

.cursea-archive-course-card .cursea-formacion-card__title a:hover,
.cursea-archive-course-card .cursea-formacion-card__title a:focus {
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
}

.cursea-archive-course-card .cursea-formacion-card__excerpt {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.cursea-archive-course-card .cursea-formacion-card__excerpt p,
.cursea-archive-course-card .wp-block-post-excerpt__excerpt {
	margin-top: 0;
	margin-bottom: 0;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

.cursea-archive-course-card .cursea-formacion-card__button {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	margin-top: auto;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 4px;
	color: var(--wp--preset--color--primary);
	padding: 0.62rem 0.95rem;
	font-size: 1rem;
	font-weight: 500;
	
	text-decoration: none;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		border-color 120ms ease;
}

.cursea-archive-course-card .cursea-formacion-card__button:hover,
.cursea-archive-course-card .cursea-formacion-card__button:focus {
	border-color: var(--wp--preset--color--secondary);
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	text-decoration: none;
}

.cursea-courses-archive__pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
}

.cursea-courses-archive__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	border: 1px solid rgba(76, 102, 171, 0.28);
	border-radius: 4px;
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	padding: 0.45rem 0.7rem;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;
	
	text-decoration: none;
}

.cursea-courses-archive__pagination .page-numbers.current,
.cursea-courses-archive__pagination .page-numbers:hover,
.cursea-courses-archive__pagination .page-numbers:focus {
	border-color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

/* Editor */

.editor-styles-wrapper .cursea-archive-course-card {
	outline: 1px solid rgba(76, 102, 171, 0.08);
}

/* Responsive */

@media (max-width: 1200px) {
	.cursea-courses-archive__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.cursea-archive-course-card .cursea-formacion-card__body {
		padding: var(--wp--preset--spacing--40);
	}
}

@media (max-width: 600px) {
	.cursea-courses-archive__grid {
		grid-template-columns: 1fr;
	}
}

/* --------------------------------------------------------------
   Template: Archive formaciones
-------------------------------------------------------------- */

.cursea-formaciones-archive-main {
	overflow: hidden;
}

.cursea-formaciones-archive__grid {
	gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
	margin: 0;
	padding: 0;
	list-style: none;
}

.cursea-formaciones-archive__grid > li {
	display: flex;
	margin: 0;
	padding: 0;
}

.cursea-archive-formacion-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	width: 100%;
	min-height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px;
	background-color: var(--wp--preset--color--base);
	box-shadow: 0 12px 34px rgba(31, 42, 68, 0.07);
}

.cursea-archive-formacion-card .cursea-formacion-card__media {
	position: relative;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 8.6;
	margin: 0;
	padding: 0;
	border-radius: 8px 8px 0 0;
	background-color: var(--wp--preset--color--primary-light);
}

.cursea-archive-formacion-card .cursea-formacion-card__media a {
	display: block;
	width: 100%;
	height: 100%;
	
}

.cursea-archive-formacion-card .cursea-formacion-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border-radius: 8px 8px 0 0;
	object-fit: cover;
	object-position: center;
	vertical-align: top;
}

.cursea-archive-formacion-card .cursea-formacion-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50) var(--wp--preset--spacing--50);
}

.cursea-archive-formacion-card .cursea-formacion-card__title {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--h-5);
	font-weight: 600;
	
}

.cursea-archive-formacion-card .cursea-formacion-card__title a {
	color: inherit;
	text-decoration: none;
}

.cursea-archive-formacion-card .cursea-formacion-card__title a:hover,
.cursea-archive-formacion-card .cursea-formacion-card__title a:focus {
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
}

.cursea-archive-formacion-card .cursea-formacion-card__excerpt {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	
}

.cursea-archive-formacion-card .cursea-formacion-card__excerpt p,
.cursea-archive-formacion-card .wp-block-post-excerpt__excerpt {
	margin-top: 0;
	margin-bottom: 0;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

.cursea-archive-formacion-card .cursea-formacion-card__button {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	margin-top: auto;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: 4px;
	color: var(--wp--preset--color--primary);
	padding: 0.62rem 0.95rem;
	font-size: 1rem;
	font-weight: 500;
	

	text-decoration: none;
	transition:
		background-color 120ms ease,
		color 120ms ease,
		border-color 120ms ease;
}

.cursea-archive-formacion-card .cursea-formacion-card__button:hover,
.cursea-archive-formacion-card .cursea-formacion-card__button:focus {
	border-color: var(--wp--preset--color--secondary);
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	text-decoration: none;
}

.cursea-formaciones-archive__pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
}

.cursea-formaciones-archive__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	border: 1px solid rgba(76, 102, 171, 0.28);
	border-radius: 4px;
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	padding: 0.45rem 0.7rem;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 400;

	text-decoration: none;
}

.cursea-formaciones-archive__pagination .page-numbers.current,
.cursea-formaciones-archive__pagination .page-numbers:hover,
.cursea-formaciones-archive__pagination .page-numbers:focus {
	border-color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

/* Editor */

.editor-styles-wrapper .cursea-archive-formacion-card {
	outline: 1px solid rgba(76, 102, 171, 0.08);
}

/* Responsive */

@media (max-width: 1200px) {
	.cursea-formaciones-archive__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.cursea-archive-formacion-card .cursea-formacion-card__body {
		padding: var(--wp--preset--spacing--40);
	}
}

@media (max-width: 600px) {
	.cursea-formaciones-archive__grid {
		grid-template-columns: 1fr;
	}
}

/* --------------------------------------------------------------
   Pattern: Hero simple
-------------------------------------------------------------- */

.hero-simple-header .hero-simple-header__separator {
	width: 96px;
	height: 3px;
	margin: 0 0 var(--wp--preset--spacing--40);
	border: 0;
	background-color: var(--wp--preset--color--primary);
	opacity: 1;
}

/* --------------------------------------------------------------
   Pattern: Hero dark
-------------------------------------------------------------- */

.hero-dark-header {
	background-color: var(--wp--preset--color--primary);
}

.hero-dark-header .hero-dark-header__separator {
	width: 96px;
	height: 3px;
	margin: 0 0 var(--wp--preset--spacing--40);
	border: 0;
	background-color: var(--wp--preset--color--base);
	opacity: 1;
}

.hero-dark-header em {
	font-style: italic;
}

/* --------------------------------------------------------------
   Pattern: Quienes somos
-------------------------------------------------------------- */
.quienes-somos-hero {
	min-height: 0;
}

.quienes-somos-hero .contacto-form-hero__inner,
.quienes-somos-hero .contacto-form-hero__panel,
.quienes-somos-hero .contacto-form-hero__content {
	min-height: 0;
}

.quienes-somos-hero .contacto-form-hero__content {
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--80);
}

.quienes-somos-hero .contacto-form-hero__title {
	font-size: var(--wp--preset--font-size--h-1);
	margin-bottom: var(--wp--preset--spacing--40);
}

.quienes-somos-hero .contacto-form-hero__form h2 {
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
}

.quienes-somos-hero .contacto-form-hero__form p {
	margin-bottom: var(--wp--preset--spacing--40);
}

.quienes-somos-hero .contacto-form-hero__form p:last-child {
	margin-bottom: 0;
}

.editor-styles-wrapper .quienes-somos-hero,
.editor-styles-wrapper .quienes-somos-hero .contacto-form-hero__inner,
.editor-styles-wrapper .quienes-somos-hero .contacto-form-hero__panel,
.editor-styles-wrapper .quienes-somos-hero .contacto-form-hero__content {
	min-height: 0;
}

/* --------------------------------------------------------------
   Pattern: Quiénes somos responsive
-------------------------------------------------------------- */

@media (max-width: 781px) {
	.quienes-somos-hero.contacto-form-hero {
		display: flex;
		flex-direction: column;
		min-height: 0;
		padding: 0;
		background-color: var(--wp--preset--color--surface);
	}

	.quienes-somos-hero .wp-block-cover__image-background {
		position: relative !important;
		inset: auto !important;
		display: block;
		order: 1;
		width: 100% !important;
		height: 260px !important;
		object-fit: cover;
		object-position: center;
	}

	.quienes-somos-hero .wp-block-cover__background {
		display: none;
	}

	.quienes-somos-hero .wp-block-cover__inner-container {
		position: relative;
		order: 2;
		width: 100%;
	}

	.quienes-somos-hero .contacto-form-hero__inner {
		width: 100%;
		max-width: none;
		min-height: 0;
	}

	.quienes-somos-hero .contacto-form-hero__panel {
		width: 100%;
		min-height: 0;
		margin: 0;
		clip-path: none;
		background-color: var(--wp--preset--color--primary);
	}

	.quienes-somos-hero .contacto-form-hero__content {
		width: 100%;
		max-width: 720px;
		min-height: 0;
		margin: 0 auto;
		box-sizing: border-box;
		padding-top: var(--wp--preset--spacing--60);
		padding-right: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--60);
		padding-left: var(--wp--preset--spacing--40);
	}

	.quienes-somos-hero .contacto-form-hero__title {
		margin-bottom: var(--wp--preset--spacing--30) !important;
	}
}

@media (max-width: 480px) {
	.quienes-somos-hero .wp-block-cover__image-background {
		height: 220px !important;
	}

	.quienes-somos-hero .contacto-form-hero__content {
		padding-top: var(--wp--preset--spacing--50);
		padding-right: var(--wp--preset--spacing--30);
		padding-bottom: var(--wp--preset--spacing--50);
		padding-left: var(--wp--preset--spacing--30);
	}
}

@media (max-width: 781px) {
	.quienes-somos-hero .contacto-form-hero__panel.has-background {
		padding: 10px !important;
	}
}

/* --------------------------------------------------------------
   Pattern: Nuestros valores
-------------------------------------------------------------- */

.cursea-valores {
	overflow: hidden;
}

.cursea-valores__inner {
	width: 100%;
}

.cursea-valores__cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--50);
	width: 100%;
	margin: 0;
	align-items: stretch;
}

.cursea-valores__card {
	display: flex;
	overflow: hidden;
	margin: 0;
	padding: 0 !important;
}

.cursea-valores__card-inner {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	width: 100%;
	min-height: 136px;
	margin: 0;
	padding: 0 !important;
	align-items: stretch;
}

.cursea-valores__card-inner > * {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.cursea-valores__number-col {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	min-width: 96px;
	height: 100%;
	min-height: 136px;
	margin: 0;
	padding: 0 !important;
	align-self: stretch;
}

.cursea-valores__content-col {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	margin: 0;
}

.cursea-valores__number {
	margin: 0;
	white-space: nowrap;
}

.cursea-valores__card-title {
	margin-top: 0;
	word-break: normal;
	overflow-wrap: normal;
}

.cursea-valores__card-text {
	margin-top: 0;
	margin-bottom: 0;
}

/* Editor */

.editor-styles-wrapper .cursea-valores__cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--50);
	width: 100%;
	margin: 0;
	align-items: stretch;
}

.editor-styles-wrapper .cursea-valores__card {
	display: flex;
	overflow: hidden;
	margin: 0;
	padding: 0 !important;
}

.editor-styles-wrapper .cursea-valores__card-inner {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	width: 100%;
	min-height: 136px;
	margin: 0;
	padding: 0 !important;
	align-items: stretch;
}

.editor-styles-wrapper .cursea-valores__number-col {
	padding: 0 !important;
}

/* Responsive */

@media (max-width: 1200px) {
	.cursea-valores__cards,
	.editor-styles-wrapper .cursea-valores__cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.cursea-valores {
		padding-top: var(--wp--preset--spacing--70) !important;
		padding-right: var(--wp--preset--spacing--30) !important;
		padding-bottom: var(--wp--preset--spacing--70) !important;
		padding-left: var(--wp--preset--spacing--30) !important;
	}

	.cursea-valores__cards,
	.editor-styles-wrapper .cursea-valores__cards {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--40);
	}

	.cursea-valores__card-inner,
	.editor-styles-wrapper .cursea-valores__card-inner {
		grid-template-columns: 84px minmax(0, 1fr);
		min-height: 124px;
	}

	.cursea-valores__number-col {
		width: 84px;
		min-width: 84px;
		min-height: 124px;
	}

	.cursea-valores__content-col {
		padding-top: var(--wp--preset--spacing--40) !important;
		padding-right: var(--wp--preset--spacing--40) !important;
		padding-bottom: var(--wp--preset--spacing--40) !important;
		padding-left: var(--wp--preset--spacing--40) !important;
	}
}

@media (max-width: 420px) {
	.cursea-valores__card-inner,
	.editor-styles-wrapper .cursea-valores__card-inner {
		grid-template-columns: 72px minmax(0, 1fr);
	}

	.cursea-valores__number-col {
		width: 72px;
		min-width: 72px;
	}

	.cursea-valores__content-col {
		padding-right: var(--wp--preset--spacing--30) !important;
		padding-left: var(--wp--preset--spacing--30) !important;
	}
}

/* --------------------------------------------------------------
   Pattern: Native accordion
-------------------------------------------------------------- */

.cursea-native-accordion {
	overflow: hidden;
}

.cursea-native-accordion__inner {
	width: 100%;
}

.cursea-native-accordion__title {
	max-width: 760px;
	color: var(--wp--preset--color--primary);
}

.cursea-native-accordion__title em {
	font-style: italic;
	font-weight: inherit;
}

.cursea-native-accordion__item {
	margin: 0;
	border-top: 1px solid var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--primary);
	overflow: hidden;
}

.cursea-native-accordion__item:last-child {
	border-bottom: 1px solid var(--wp--preset--color--primary);
}

.cursea-native-accordion__item summary {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 24px;
	align-items: center;
	min-height: 72px;
	box-sizing: border-box;
	padding-top: var(--wp--preset--spacing--30);
	padding-right: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--30);
	padding-left: var(--wp--preset--spacing--60);
	color: var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	list-style: none;
}

.cursea-native-accordion__item summary::-webkit-details-marker {
	display: none;
}

.cursea-native-accordion__item summary::after {
	content: "→";
	justify-self: end;
	color: currentColor;
	font-weight: 400;
}

.cursea-native-accordion__item[open] {
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
}

.cursea-native-accordion__item[open] summary {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.cursea-native-accordion__item[open] summary::after {
	content: "↓";
	color: var(--wp--preset--color--base);
}

.cursea-native-accordion__content {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 42%);
	align-items: center;
	gap: var(--wp--preset--spacing--70);
	margin: 0;
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	padding-top: var(--wp--preset--spacing--60);
	padding-right: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--60);
	padding-left: var(--wp--preset--spacing--60);
}

.cursea-native-accordion__text-column,
.cursea-native-accordion__image-column {
	min-width: 0;
	margin: 0;
}

.cursea-native-accordion__text {
	max-width: 620px;
	margin-top: 0;
	margin-bottom: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 300;
	line-height: 1.4;
}

.cursea-native-accordion__text:last-child {
	margin-bottom: 0;
}

.cursea-native-accordion__text--single {
	max-width: 760px;
	margin: 0;
	background-color: var(--wp--preset--color--secondary);
	padding-top: var(--wp--preset--spacing--50);
	padding-right: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--50);
	padding-left: var(--wp--preset--spacing--60);
}

.cursea-native-accordion__image {
	width: 100%;
	margin: 0;
	overflow: hidden;
}

.cursea-native-accordion__image img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 7.3;
	object-fit: cover;
	object-position: center;
}

/* Editor */

.editor-styles-wrapper .cursea-native-accordion__item summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 24px;
	align-items: center;
	width: 100%;
	max-width: none;
}

.editor-styles-wrapper .cursea-native-accordion__item[open],
.editor-styles-wrapper .cursea-native-accordion__item[open] .cursea-native-accordion__content {
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
}

.editor-styles-wrapper .cursea-native-accordion__item[open] summary {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.editor-styles-wrapper .cursea-native-accordion__content {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 42%);
	align-items: center;
	gap: var(--wp--preset--spacing--70);
	width: 100%;
	max-width: none;
	margin: 0;
}

.editor-styles-wrapper .cursea-native-accordion__content p,
.editor-styles-wrapper .cursea-native-accordion__text {
	color: var(--wp--preset--color--base) !important;
}

.editor-styles-wrapper .cursea-native-accordion__image,
.editor-styles-wrapper .cursea-native-accordion__image img {
	width: 100%;
	max-width: none;
}

.editor-styles-wrapper .cursea-native-accordion__image img {
	aspect-ratio: 16 / 7.3;
	object-fit: cover;
	object-position: center;
}

/* Responsive */

@media (max-width: 900px) {
	.cursea-native-accordion__item summary,
	.editor-styles-wrapper .cursea-native-accordion__item summary {
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}

	.cursea-native-accordion__content,
	.editor-styles-wrapper .cursea-native-accordion__content {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 40%);
		gap: var(--wp--preset--spacing--50);
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}

	.cursea-native-accordion__text--single {
		padding-right: var(--wp--preset--spacing--40);
		padding-left: var(--wp--preset--spacing--40);
	}
}

@media (max-width: 781px) {
	.cursea-native-accordion {
		padding-top: var(--wp--preset--spacing--60) !important;
		padding-right: var(--wp--preset--spacing--40) !important;
		padding-bottom: var(--wp--preset--spacing--70) !important;
		padding-left: var(--wp--preset--spacing--40) !important;
	}

	.cursea-native-accordion__content,
	.editor-styles-wrapper .cursea-native-accordion__content {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--40);
		padding: var(--wp--preset--spacing--50);
	}

	.cursea-native-accordion__image img {
		aspect-ratio: 16 / 9;
	}

	.cursea-native-accordion__text--single {
		padding: var(--wp--preset--spacing--50);
	}
}

@media (max-width: 480px) {
	.cursea-native-accordion {
		padding-right: var(--wp--preset--spacing--30) !important;
		padding-left: var(--wp--preset--spacing--30) !important;
	}

	.cursea-native-accordion__item summary,
	.editor-styles-wrapper .cursea-native-accordion__item summary {
		min-height: 64px;
		padding-right: var(--wp--preset--spacing--30);
		padding-left: var(--wp--preset--spacing--30);
	}

	.cursea-native-accordion__content,
	.editor-styles-wrapper .cursea-native-accordion__content,
	.cursea-native-accordion__text--single {
		padding: var(--wp--preset--spacing--40);
	}
}


/* --------------------------------------------------------------
   Pattern: Contacto form hero responsive
-------------------------------------------------------------- */

@media (max-width: 781px) {
	.contacto-form-hero:not(.quienes-somos-hero) {
		display: flex;
		flex-direction: column;
		min-height: 0;
		padding: 0;
		background-color: var(--wp--preset--color--surface);
	}

	.contacto-form-hero:not(.quienes-somos-hero) .wp-block-cover__image-background {
		position: relative !important;
		inset: auto !important;
		display: block;
		order: 1;
		width: 100% !important;
		height: 240px !important;
		object-fit: cover;
		object-position: center;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .wp-block-cover__background {
		display: none;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .wp-block-cover__inner-container {
		position: relative;
		order: 2;
		width: 100%;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__inner {
		width: 100%;
		max-width: none;
		min-height: 0;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__panel {
		width: 100%;
		min-height: 0;
		margin: 0;
		clip-path: none;
		background-color: var(--wp--preset--color--primary);
	}

	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__panel.has-background {
		padding: 10px !important;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__content {
		width: 100%;
		max-width: 720px;
		min-height: 0;
		margin: 0 auto;
		box-sizing: border-box;
		padding-top: var(--wp--preset--spacing--40) !important;
		padding-right: var(--wp--preset--spacing--30) !important;
		padding-bottom: var(--wp--preset--spacing--40) !important;
		padding-left: var(--wp--preset--spacing--30) !important;
	}


	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__text {
		margin-bottom: var(--wp--preset--spacing--30) !important;
	}
}

@media (max-width: 480px) {
	.contacto-form-hero:not(.quienes-somos-hero) .wp-block-cover__image-background {
		height: 200px !important;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__panel.has-background {
		padding: 10px !important;
	}

	.contacto-form-hero:not(.quienes-somos-hero) .contacto-form-hero__content {
		padding-top: var(--wp--preset--spacing--30) !important;
		padding-right: var(--wp--preset--spacing--20) !important;
		padding-bottom: var(--wp--preset--spacing--30) !important;
		padding-left: var(--wp--preset--spacing--20) !important;
	}
}

@media (max-width: 781px) {
	.hero-simple-header,
	.hero-dark-header {
		padding-top: var(--wp--preset--spacing--80) !important;
		padding-bottom: var(--wp--preset--spacing--70) !important;
		margin-bottom: var(--wp--preset--spacing--50) !important;
	}
}

@media (max-width: 480px) {
	.hero-simple-header,
	.hero-dark-header {
		padding-top: var(--wp--preset--spacing--70) !important;
		padding-bottom: var(--wp--preset--spacing--60) !important;
		margin-bottom: var(--wp--preset--spacing--40) !important;
	}
}

/* --------------------------------------------------------------
   LearnDash course hero responsive
-------------------------------------------------------------- */

@media (max-width: 781px) {
	body.single-sfwd-courses .formacion-hero {
		min-height: auto !important;
		background-color: var(--wp--preset--color--primary);
	}

	body.single-sfwd-courses .formacion-hero__media {
		display: none !important;
	}

	body.single-sfwd-courses .formacion-hero__content {
		min-height: auto !important;
		padding-top: var(--wp--preset--spacing--60) !important;
		padding-right: var(--wp--preset--spacing--40) !important;
		padding-bottom: var(--wp--preset--spacing--60) !important;
		padding-left: var(--wp--preset--spacing--40) !important;
	}

	body.single-sfwd-courses .formacion-hero__text {
		width: 100%;
		max-width: 100%;
	}

	body.single-sfwd-courses .formacion-hero__title {
		font-size: var(--wp--preset--font-size--h-2) !important;
		line-height: 1 !important;
		letter-spacing: -1px !important;
		margin-bottom: var(--wp--preset--spacing--30) !important;
	}

	body.single-sfwd-courses .formacion-hero__separator {
		margin-bottom: 0 !important;
	}
}

@media (max-width: 480px) {
	body.single-sfwd-courses .formacion-hero__content {
		padding-top: var(--wp--preset--spacing--50) !important;
		padding-right: var(--wp--preset--spacing--30) !important;
		padding-bottom: var(--wp--preset--spacing--50) !important;
		padding-left: var(--wp--preset--spacing--30) !important;
	}

	body.single-sfwd-courses .formacion-hero__title {
		font-size: clamp(1.8rem, 8vw, 2.35rem) !important;
		line-height: 1 !important;
		letter-spacing: -0.8px !important;
	}
}