.elementor-317 .elementor-element.elementor-element-0166991{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:65px 0px;--row-gap:65px;--column-gap:0px;--padding-top:105px;--padding-bottom:150px;--padding-left:120px;--padding-right:120px;}.elementor-317 .elementor-element.elementor-element-0452854{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-317 .elementor-element.elementor-element-3c4ba5d{text-align:center;}.elementor-317 .elementor-element.elementor-element-0a0f856{--grid-columns:3;}@media(max-width:1024px){.elementor-317 .elementor-element.elementor-element-0166991{--padding-top:100px;--padding-bottom:100px;--padding-left:30px;--padding-right:30px;}.elementor-317 .elementor-element.elementor-element-0a0f856{--grid-columns:2;}}@media(max-width:767px){.elementor-317 .elementor-element.elementor-element-0166991{--padding-top:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-317 .elementor-element.elementor-element-0452854{--justify-content:flex-start;}.elementor-317 .elementor-element.elementor-element-0a0f856{--grid-columns:1;}}/* Start custom CSS for loop-grid, class: .elementor-element-0a0f856 *//* ── Workshops loop grid — contain within page ── */
.elementor-loop-container.elementor-grid {
	width: 100% !important;
	max-width: 100% !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

/* ── Loop items — prevent overflow ── */
.elementor-loop-container.elementor-grid .e-loop-item {
	min-width: 0 !important;
	box-sizing: border-box !important;
}



/* ── Tablet (≤1024px) — 2 columns ── */
@media (max-width: 1024px) {
	.elementor-loop-container.elementor-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

/* ── Mobile (≤767px) — 1 column ── */
@media (max-width: 767px) {
	.elementor-loop-container.elementor-grid {
		grid-template-columns: repeat(1, 1fr) !important;
	}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0166991 */.header-row {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
}

.header-title {
	text-align: center;
	grid-column: 2;
}

.header-button {
	justify-self: end;
	grid-column: 3;
}

/* ── Tablet (≤1024px) ── */
@media (max-width: 1024px) {
	.header-row {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto;
		justify-items: center;
		gap: 16px;
	}

	.header-title {
		grid-column: 1;
		grid-row: 1;
		text-align: center;
	}

	.header-button {
		grid-column: 1;
		grid-row: 2;
		justify-self: center;
	}
}

/* ── Mobile (≤768px) ── */
@media (max-width: 768px) {
	.header-button {
		width: 100% !important;
		justify-self: stretch;
		text-align: center;
	}
}/* End custom CSS */