/**
 * Catalogo corsi (card D/E) — mobile e tablet.
 * Caricato per ultimo: corregge flex-column ereditato e colonne grid troppo strette.
 */

@media (max-width: 1140px) {
	.vc-marketplace,
	.vc-marketplace * {
		-webkit-text-size-adjust: 100%;
		text-size-adjust: 100%;
	}

	.vc-marketplace,
	.vc-gaming.vc-marketplace {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
		overflow-x: clip;
	}

	.vc-marketplace__hero--showcase,
	.vc-marketplace__hero--showcase .vc-marketplace__hero-promo,
	.vc-mkt-training-cta,
	.vc-mkt-training-cta__card,
	.vc-mkt-training-cta__main,
	.vc-mkt-training-cta__actions,
	.vc-mkt-training-cta__panel,
	.vc-mkt-training-cta__catalog-block,
	.vc-mkt-training-cta__catalog-grid {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	/* Una card per riga: mai 2–3 colonne strette */
	.vc-mkt-training-cta__catalog-grid,
	.vc-mkt-training-cta--dual-catalog .vc-mkt-training-cta__catalog-grid,
	.vc-mkt-training-cta--premium .vc-mkt-training-cta__catalog-grid,
	.vc-marketplace__hero--showcase .vc-marketplace__hero-promo .vc-mkt-training-cta--premium .vc-mkt-training-cta__catalog-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-auto-flow: row !important;
		gap: clamp(0.65rem, 2.2vw, 0.85rem) !important;
		width: 100% !important;
	}

	/* Layout orizzontale: icona | testo | freccia (flex fallback + grid) */
	.vc-gaming.vc-marketplace .vc-mkt-training-cta__catalog-card,
	.vc-gaming.vc-marketplace .vc-mkt-training-cta--dual-catalog .vc-mkt-training-cta__catalog-card,
	.vc-gaming.vc-marketplace .vc-mkt-training-cta--premium .vc-mkt-training-cta__catalog-card,
	.vc-gaming .vc-marketplace__hero--showcase .vc-marketplace__hero-promo .vc-mkt-training-cta--premium .vc-mkt-training-cta__catalog-card,
	.vc-mkt-training-cta--dual-catalog .vc-mkt-training-cta__catalog-card,
	.vc-mkt-training-cta--premium .vc-mkt-training-cta__catalog-card,
	.vc-marketplace__hero--showcase .vc-marketplace__hero-promo .vc-mkt-training-cta--premium .vc-mkt-training-cta__catalog-card,
	a.vc-mkt-training-cta__catalog-card {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		min-height: 3.5rem !important;
		height: auto !important;
		padding: clamp(0.8rem, 2.8vw, 1rem) clamp(0.85rem, 3vw, 1.05rem) !important;
		gap: clamp(0.5rem, 2vw, 0.75rem) !important;
		text-align: left !important;
		hyphens: none !important;
		-webkit-hyphens: none !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
		-webkit-tap-highlight-color: rgba(4, 69, 175, 0.12);
		touch-action: manipulation;
	}

	.vc-mkt-training-cta__catalog-card-icon {
		flex: 0 0 clamp(2.65rem, 11vw, 3.1rem) !important;
		width: clamp(2.65rem, 11vw, 3.1rem) !important;
		height: clamp(2.65rem, 11vw, 3.1rem) !important;
		min-width: 2.65rem !important;
		min-height: 2.65rem !important;
		align-self: center !important;
	}

	.vc-mkt-training-cta__catalog-card-body {
		flex: 1 1 auto !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		justify-content: center !important;
		min-width: 0 !important;
		width: auto !important;
		max-width: none !important;
		overflow: visible !important;
	}

	.vc-mkt-training-cta__catalog-card-arrow {
		flex: 0 0 2.25rem !important;
		align-self: center !important;
		min-width: 2rem !important;
		min-height: 2rem !important;
	}

	.vc-mkt-training-cta__catalog-card-title {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		font-family: var(--vc-game-font-body, "Rajdhani", "Segoe UI", system-ui, sans-serif) !important;
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.3 !important;
		font-weight: 800 !important;
		letter-spacing: -0.01em !important;
		white-space: normal !important;
		hyphens: none !important;
		-webkit-hyphens: none !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
		-webkit-text-fill-color: currentColor !important;
		background: none !important;
		background-clip: unset !important;
		-webkit-background-clip: unset !important;
	}

	.vc-mkt-training-cta__catalog-card-desc {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		font-family: var(--vc-game-font-body, "Rajdhani", "Segoe UI", system-ui, sans-serif) !important;
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.45 !important;
		font-weight: 500 !important;
		opacity: 1 !important;
		hyphens: none !important;
		-webkit-hyphens: none !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
	}

	.vc-mkt-training-cta__catalog-heading-label,
	.vc-mkt-training-cta__title,
	.vc-mkt-training-cta__lead {
		hyphens: none !important;
		-webkit-hyphens: none !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
		max-width: 100% !important;
	}

	.vc-mkt-training-cta__btn {
		min-height: 48px;
		font-size: max(16px, 1rem);
		touch-action: manipulation;
	}
}

@media (max-width: 390px) {
	.vc-mkt-training-cta__catalog-card {
		padding: 0.75rem 0.8rem !important;
		gap: 0.5rem 0.6rem !important;
	}

	.vc-mkt-training-cta__catalog-card-icon {
		flex-basis: 2.6rem !important;
		width: 2.6rem !important;
		height: 2.6rem !important;
		min-width: 2.6rem !important;
		min-height: 2.6rem !important;
	}

	.vc-mkt-training-cta__catalog-card-title {
		font-size: 1rem !important;
		line-height: 1.28 !important;
	}

	.vc-mkt-training-cta__catalog-card-desc {
		font-size: 0.875rem !important;
		line-height: 1.42 !important;
	}
}

/* Tablet: card sempre a tutta larghezza; griglia 2 col solo da 900px */
@media (min-width: 601px) and (max-width: 1140px) {
	.vc-marketplace__hero--showcase {
		padding-inline: max(16px, env(safe-area-inset-left)) max(16px, env(safe-area-inset-right));
	}

	.vc-marketplace__hero-grid {
		grid-template-columns: 1fr;
		gap: clamp(20px, 3vw, 32px);
	}

	.vc-mkt-training-cta__card {
		padding: clamp(1rem, 2.5vw, 1.35rem);
	}

	.vc-mkt-training-cta__register-group {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem;
	}

	.vc-mkt-training-cta__catalog-card {
		min-height: 4.25rem !important;
		padding: 1rem 1.1rem !important;
	}
}

