/* Base defaults only — kept low-specificity on purpose so that
   every Elementor Style-tab control (which outputs higher-specificity
   .elementor-element-{id} selectors) can override these safely. */

.whocourse-widget * { box-sizing: border-box; }

.whocourse-row {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 40px;
}

.whocourse-col-content { flex: 1 1 55%; min-width: 280px; }
.whocourse-col-image { flex: 1 1 40%; min-width: 260px; position: relative; }

.whocourse-heading {
	margin: 0 0 20px;
	line-height: 1.2;
	overflow-wrap: break-word;
	word-break: break-word;
}
/* Only the top-level lines are block; the highlighted word + trailing
   text are kept together as an inline-wrap group (matches the design
   where "THIS COURSE FOR ?" sit on the same line). Selectors below are
   deliberately scoped to our own namespaced classes only — never to a
   bare "span" — so this never collides with theme/global CSS. */
.whocourse-heading .whocourse-line-1 { display: block; }
.whocourse-heading .whocourse-line-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 0.3em;
}
.whocourse-heading .whocourse-line-highlight,
.whocourse-heading .whocourse-line-2-extra {
	display: inline-block;
	font-size: inherit;
	line-height: inherit;
}
.whocourse-heading .whocourse-line-highlight { color: #C99A2E; }
.whocourse-heading .whocourse-line-2-extra { color: #0B1E3C; }

.whocourse-desc { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 24px; }
.whocourse-desc-icon { flex-shrink: 0; width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; }
.whocourse-desc-icon i, .whocourse-desc-icon svg { width: 1em; height: 1em; }
.whocourse-desc-text p { margin: 0; }

.whocourse-label-badge {
	display: inline-block;
	background: #0B1E3C;
	color: #fff;
	padding: 12px 20px;
	border-radius: 6px;
	font-weight: 600;
	margin-bottom: 22px;
}

.whocourse-pathways {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px 30px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.whocourse-pathway-item { display: flex; align-items: center; gap: 14px; }

.whocourse-item-icon {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #0B1E3C;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #C99A2E;
	font-size: 18px;
}
.whocourse-item-icon i, .whocourse-item-icon svg { width: 1em; height: 1em; }

.whocourse-item-title { font-weight: 700; margin: 0; }

.whocourse-image-wrap img {
	width: 100%;
	height: auto;
	display: block;
}

.whocourse-quote-box {
	background: #0B1E3C;
	color: #fff;
	border-radius: 10px;
	padding: 24px 28px;
	margin-top: -60px;
	position: relative;
	z-index: 2;
	max-width: 100%;
	overflow: hidden; /* safeguard: keeps the quote icon from ever spilling outside the box */
}

.whocourse-quote-icon {
	color: #C99A2E;
	font-size: 28px;
	line-height: 1;
	margin-bottom: 6px;
	display: inline-flex;
	max-width: 80px;
	max-height: 80px;
}
.whocourse-quote-icon i,
.whocourse-quote-icon svg { width: 1em; height: 1em; max-width: 100%; max-height: 100%; }

.whocourse-quote-text { margin: 0; font-weight: 600; overflow-wrap: break-word; }
.whocourse-quote-text .whocourse-quote-highlight { color: #C99A2E; }

@media (max-width: 767px) {
	.whocourse-row { flex-direction: column; gap: 30px; }
	.whocourse-pathways { grid-template-columns: 1fr; }
	.whocourse-quote-box { margin-top: 20px; }
}
