/* Jampink — contenuto corso importato su frontend */
.jampink-wp-course {
	max-width: 100%;
}
.jampink-wp-intro {
	margin-bottom: 1.5em;
}
.jampink-wp-price {
	margin: 1em 0;
}
.jampink-wp-locandina {
	margin: 2em 0;
	padding: 1em 0;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
/* Locandina da file PNG pubblicato (API course.locandina_png_pubblica_url), non canvas HTML */
.jampink-wp-course .jampink-wp-locandina-figure--published-png {
	margin: 0 auto;
	max-width: 420px;
}
.jampink-wp-course .jampink-wp-locandina-figure--published-png .jampink-wp-locandina-img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 4px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
}
/* Classi senza "__": WP/TinyMCE convertono jampink-wp-locandina__foo in jampink-wp-locandina_foo e il CSS BEM non matcha → figure 0×0. Alias: nuovi nomi + vecchi __/_ */
.jampink-wp-locandina-viewport,
.jampink-wp-locandina__viewport,
.jampink-wp-locandina_viewport {
	width: 100%;
	max-width: 100%;
	position: relative;
	background-color: #121212;
}
.jampink-wp-locandina-scalewrap,
.jampink-wp-locandina__scalewrap,
.jampink-wp-locandina_scalewrap {
	width: 100%;
	max-width: 420px;
	margin: 0 auto;
	display: block;
	background-color: #121212;
}
.jampink-wp-locandina-canvas,
.jampink-wp-locandina__canvas,
.jampink-wp-locandina_canvas {
	width: 100%;
	max-width: 420px;
	aspect-ratio: 420 / 525;
	height: auto;
	min-height: 12rem;
	margin: 0 auto;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
	display: block;
	position: relative;
}
/* Tre layer come modal-locandina-composer.js (renderLayers): media z0 → overlay z5 → SVG z10 → testi/logo/CTA z20. */
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-media,
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-svg,
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-front {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-media {
	z-index: 0;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-svg {
	z-index: 10;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-front {
	z-index: 20;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-media .jampink-wp-locandina-item,
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-svg .jampink-wp-locandina-item,
.jampink-wp-locandina-canvas .jampink-wp-locandina-layer-front .jampink-wp-locandina-item {
	pointer-events: auto;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-item {
	box-sizing: border-box;
	margin: 0;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-item-svg {
	min-height: 0;
}
/* Promo con forma (come #locandina_comp_layers in join_locandina_web_composer.html) */
.jampink-wp-locandina-canvas .locandina-comp-promo-bg .locandina-promo-svg {
	width: 100%;
	height: 100%;
	display: block;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame {
	position: relative;
	z-index: 1;
	width: 100%;
	box-sizing: border-box;
	padding: 13% 11% 13% 11%;
	min-height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame .locandina-comp-text-inner {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	white-space: normal;
	word-wrap: break-word;
	overflow-wrap: break-word;
	word-break: break-word;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame .locandina-comp-text-inner * {
	white-space: normal;
	word-break: break-word;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame--shape-wordart {
	overflow: visible;
	position: relative;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame--shape-wordart .locandina-comp-promo-wordart.locandina-comp-promo-wordart--frame-offset {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame--shape-wordart .locandina-comp-promo-wordart {
	display: block;
	width: 88%;
	max-width: 100%;
	min-width: 0;
	margin-left: auto;
	margin-right: auto;
	transform-origin: center center;
	text-align: center;
	line-height: 1.22;
}
.jampink-wp-locandina-canvas .locandina-comp-promo-frame--shape-wordart .locandina-comp-promo-wordart .locandina-comp-text-inner,
.jampink-wp-locandina-canvas .locandina-comp-promo-frame--shape-wordart .locandina-comp-promo-wordart .locandina-comp-text-inner * {
	color: inherit !important;
}
.jampink-wp-locandina-figure-canvas,
.jampink-wp-locandina__figure--canvas,
.jampink-wp-locandina_figure--canvas {
	margin: 0 auto 1em;
	text-align: center;
	display: block;
	width: 100%;
	max-width: 420px;
}
.jampink-wp-locandina-figure,
.jampink-wp-locandina__figure,
.jampink-wp-locandina_figure {
	margin: 0 0 1em;
	text-align: center;
}
.jampink-wp-locandina-img,
.jampink-wp-locandina__img,
.jampink-wp-locandina_img {
	max-width: 100%;
	height: auto;
	display: inline-block;
	margin: 0 auto;
}
/* SVG: colori in style !important da PHP (locandina-svg-inline.js). Host come .locandina-comp-svg-host + svg.locandina-svg-root (composer). */
.jampink-wp-locandina-canvas .locandina-comp-svg-host,
.jampink-wp-locandina-svg-inline {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	line-height: 0;
	box-sizing: border-box;
	pointer-events: none;
}
.jampink-wp-locandina-canvas .locandina-comp-svg-host svg,
.jampink-wp-locandina-svg-inline svg {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
/* Non usare * { color: inherit }: con colori inline tolti da KSES il testo diventa nero su foto scura (come Jampink). */
.jampink-wp-locandina-text-inner a,
.jampink-wp-locandina__text-inner a,
.jampink-wp-locandina_text-inner a {
	color: inherit;
}
/* Liste: molti temi azzerano `list-style`; ripristiniamo punti e padding (colori/sfondo restano sugli span inline). */
.jampink-wp-locandina-canvas .jampink-wp-locandina-text-inner ul,
.jampink-wp-locandina-canvas .jampink-wp-locandina-text-inner ol,
.jampink-wp-locandina-canvas .jampink-wp-locandina-img-caption ul,
.jampink-wp-locandina-canvas .jampink-wp-locandina-img-caption ol {
	list-style-position: outside;
	padding-left: 1.25em;
	margin: 0.35em 0;
	box-sizing: border-box;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-text-inner ul,
.jampink-wp-locandina-canvas .jampink-wp-locandina-img-caption ul {
	list-style: disc outside;
}
.jampink-wp-locandina-canvas .jampink-wp-locandina-text-inner ol,
.jampink-wp-locandina-canvas .jampink-wp-locandina-img-caption ol {
	list-style: decimal outside;
}
.jampink-wp-locandina-canvas,
.jampink-wp-locandina__canvas,
.jampink-wp-locandina_canvas {
	isolation: isolate;
}
/* Base pulsante CTA (come .locandina-cta-btn su Jampink) */
.jampink-wp-locandina-cta-btn,
.jampink-wp-locandina__cta-btn,
.jampink-wp-locandina_cta-btn {
	display: inline-block;
	font-weight: 700;
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	padding: 0.55em 1.2em;
	box-sizing: border-box;
	max-width: 100%;
	text-align: center;
	line-height: 1.25;
	border: 2px solid transparent;
}
.jampink-wp-locandina-cta-primary_full,
.jampink-wp-locandina__cta--primary_full,
.jampink-wp-locandina_cta--primary_full {
	color: #fff;
	border-radius: 10px;
	background: linear-gradient(180deg, #2d9cf5 0%, #1565c0 100%);
	box-shadow: 0 4px 14px rgba(21, 101, 192, 0.45);
}
.jampink-wp-locandina-cta-pill_full,
.jampink-wp-locandina__cta--pill_full,
.jampink-wp-locandina_cta--pill_full {
	color: #fff;
	border-radius: 999px;
	background: linear-gradient(135deg, #7c4dff, #5c6bc0);
	box-shadow: 0 3px 12px rgba(92, 107, 192, 0.4);
}
.jampink-wp-locandina-cta-outline_bold,
.jampink-wp-locandina__cta--outline_bold,
.jampink-wp-locandina_cta--outline_bold {
	color: #1565c0;
	background: transparent;
	border: 3px solid #1565c0;
	border-radius: 10px;
}
.jampink-wp-locandina-cta-soft_glass,
.jampink-wp-locandina__cta--soft_glass,
.jampink-wp-locandina_cta--soft_glass {
	color: #fff;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-color: rgba(255, 255, 255, 0.35);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
}
.jampink-wp-locandina-cta-neon_glow,
.jampink-wp-locandina__cta--neon_glow,
.jampink-wp-locandina_cta--neon_glow {
	color: #e0f7ff;
	border-radius: 10px;
	background: #0d1b2a;
	border-color: #00e5ff;
	box-shadow: 0 0 12px rgba(0, 229, 255, 0.65), 0 0 28px rgba(0, 229, 255, 0.35);
}
.jampink-wp-locandina-cta-flat_contrast,
.jampink-wp-locandina__cta--flat_contrast,
.jampink-wp-locandina_cta--flat_contrast {
	color: #fff;
	border-radius: 8px;
	background: #111;
	border-color: #ffb300;
}
.jampink-wp-locandina-cta-long_shadow,
.jampink-wp-locandina__cta--long_shadow,
.jampink-wp-locandina_cta--long_shadow {
	color: #fff;
	border-radius: 8px;
	background: #e65100;
	box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.2);
}
.jampink-wp-locandina-cta-inset_pressed,
.jampink-wp-locandina__cta--inset_pressed,
.jampink-wp-locandina_cta--inset_pressed {
	color: #37474f;
	border-radius: 10px;
	background: #cfd8dc;
	border-color: #90a4ae;
	box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.2);
}
.jampink-wp-locandina-cta-double_ring,
.jampink-wp-locandina__cta--double_ring,
.jampink-wp-locandina_cta--double_ring {
	color: #fff;
	border-radius: 12px;
	background: #00897b;
	box-shadow: 0 0 0 2px #fff, 0 0 0 5px #00897b;
}
.jampink-wp-locandina-cta-ribbon,
.jampink-wp-locandina__cta--ribbon,
.jampink-wp-locandina_cta--ribbon {
	color: #fff;
	background: #c62828;
	border-radius: 4px;
	clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 50%, calc(100% - 14px) 100%, 0 100%);
	padding-left: 1.4em;
	padding-right: 1.6em;
}
.jampink-wp-locandina-cta-chamfer,
.jampink-wp-locandina__cta--chamfer,
.jampink-wp-locandina_cta--chamfer {
	color: #fff;
	background: #5e35b1;
	clip-path: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px);
}
.jampink-wp-locandina-cta-skew,
.jampink-wp-locandina__cta--skew,
.jampink-wp-locandina_cta--skew {
	transform: skewX(-10deg);
	border-radius: 6px;
	color: #fff;
	background: #3949ab;
}
.jampink-wp-locandina-cta-gradient_mesh,
.jampink-wp-locandina__cta--gradient_mesh,
.jampink-wp-locandina_cta--gradient_mesh {
	color: #fff;
	border-radius: 12px;
	background: linear-gradient(135deg, #ff6f00 0%, #d81b60 50%, #6a1b9a 100%);
	box-shadow: 0 6px 20px rgba(106, 27, 154, 0.35);
}
.jampink-wp-locandina-cta-dark_mode,
.jampink-wp-locandina__cta--dark_mode,
.jampink-wp-locandina_cta--dark_mode {
	color: #eceff1;
	border-radius: 10px;
	background: #1a237e;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.45);
}
.jampink-wp-locandina-cta-pastel_soft,
.jampink-wp-locandina__cta--pastel_soft,
.jampink-wp-locandina_cta--pastel_soft {
	color: #4a148c;
	border-radius: 999px;
	background: #e1bee7;
	border-color: #ce93d8;
}
.jampink-wp-locandina-cta-stroke_text,
.jampink-wp-locandina__cta--stroke_text,
.jampink-wp-locandina_cta--stroke_text {
	color: #fff;
	background: transparent;
	border: none;
	-webkit-text-stroke: 1.5px #263238;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}
.jampink-wp-locandina-cta-underline_bar,
.jampink-wp-locandina__cta--underline_bar,
.jampink-wp-locandina_cta--underline_bar {
	color: #fff;
	background: transparent;
	border: none;
	border-radius: 0;
	border-bottom: 4px solid #ffab00;
	padding-left: 0.2em;
	padding-right: 0.2em;
}
.jampink-wp-locandina-cta-split_tone,
.jampink-wp-locandina__cta--split_tone,
.jampink-wp-locandina_cta--split_tone {
	color: #fff;
	border-radius: 8px;
	background: linear-gradient(90deg, #00695c 50%, #ffd54f 50%);
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}
.jampink-wp-locandina-cta-minimal_frame,
.jampink-wp-locandina__cta--minimal_frame,
.jampink-wp-locandina_cta--minimal_frame {
	color: #263238;
	background: rgba(255, 255, 255, 0.92);
	border-radius: 4px;
	border: 1px solid rgba(38, 50, 56, 0.35);
	padding: 0.65em 1.5em;
	font-weight: 600;
	letter-spacing: 0.04em;
}
.jampink-wp-locandina-cta-icon_chip,
.jampink-wp-locandina__cta--icon_chip,
.jampink-wp-locandina_cta--icon_chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.jampink-wp-locandina-img-caption,
.jampink-wp-locandina__img-caption,
.jampink-wp-locandina_img-caption {
	margin-top: 4px;
	font-size: 0.9em;
}
.jampink-wp-locandina-link,
.jampink-wp-locandina__link,
.jampink-wp-locandina_link {
	margin: 0.75em 0 0;
}
.jampink-wp-module {
	margin: 2em 0;
	box-sizing: border-box;
}
.jampink-wp-module__title {
	font-size: 1.35em;
	margin: 0 0 0.75em;
}
.jampink-wp-module__content {
	margin-bottom: 1em;
}
/* Preset modulo (layout_variant): section + specificità alta (tema/Elementor spesso azzerano section) */
.jampink-wp-course section.jampink-wp-module--highlight {
	padding: 1rem 1.1rem 1.25rem !important;
	border-left: 4px solid #0d6efd !important;
	border-radius: 6px !important;
	background: linear-gradient(180deg, rgba(13, 110, 253, 0.07) 0%, transparent 100%) !important;
	box-sizing: border-box !important;
}
.jampink-wp-course section.jampink-wp-module--card {
	padding: 1rem 1.15rem 1.25rem !important;
	border: 1px solid rgba(0, 0, 0, 0.1) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
	box-sizing: border-box !important;
}
.jampink-wp-course section.jampink-wp-module--minimal .jampink-wp-module__title {
	font-size: 1.15em !important;
	font-weight: 600 !important;
}
.jampink-wp-docenti {
	list-style: none;
	margin: 0;
	padding: 0;
}
.jampink-wp-docente {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75em;
	align-items: flex-start;
	margin-bottom: 1.25em;
}
.jampink-wp-docente__photo img {
	border-radius: 50%;
	object-fit: cover;
}
.jampink-wp-docente__name {
	font-weight: 600;
	display: block;
	width: 100%;
}
.jampink-wp-ud-table,
.jampink-wp-cal-table {
	width: 100%;
	border-collapse: collapse;
	margin: 1em 0;
	font-size: 0.95em;
}
.jampink-wp-ud-table th,
.jampink-wp-ud-table td,
.jampink-wp-cal-table th,
.jampink-wp-cal-table td {
	border: 1px solid rgba(0, 0, 0, 0.12);
	padding: 0.5em 0.65em;
	text-align: left;
}

/* Parità composer: titolo grande + promo shape */
.jampink-wp-locandina-canvas .locandina-comp-titolo-wrap {
	box-sizing: border-box;
	display: inline-block;
	max-width: 100%;
	vertical-align: top;
}

.jampink-wp-locandina-canvas .jampink-wp-locandina-item--promo-shape {
	overflow: visible;
}

.jampink-wp-locandina-canvas .locandina-comp-promo-stack {
	position: relative;
	display: flex;
	align-items: stretch;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 56px;
	flex: 1 1 auto;
	box-sizing: border-box;
}

.jampink-wp-locandina-canvas .locandina-comp-promo-bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	pointer-events: none;
}

.jampink-wp-locandina-canvas .locandina-comp-promo-wordart.locandina-comp-promo-wordart--frame-offset {
	inset: auto !important;
}
