.elementor-5091 .elementor-element.elementor-element-0c2d03a{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:64px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-5091 .elementor-element.elementor-element-0c2d03a:not(.elementor-motion-effects-element-type-background), .elementor-5091 .elementor-element.elementor-element-0c2d03a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0F0F2;}.elementor-5091 .elementor-element.elementor-element-6e8a915{text-align:center;}.elementor-5091 .elementor-element.elementor-element-6e8a915 .elementor-heading-title{font-family:"Manrope", Sans-serif;font-size:44px;font-weight:800;line-height:1.15em;color:#252525;}.elementor-5091 .elementor-element.elementor-element-4bf9860{font-family:"Manrope", Sans-serif;font-size:17px;color:#7A7A7A;}.elementor-5091 .elementor-element.elementor-element-4c26463{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#E5E5E5;--border-color:#E5E5E5;--padding-top:26px;--padding-bottom:24px;--padding-left:20px;--padding-right:20px;}.elementor-5091 .elementor-element.elementor-element-4c26463:not(.elementor-motion-effects-element-type-background), .elementor-5091 .elementor-element.elementor-element-4c26463 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-5091 .elementor-element.elementor-element-a2a66d0{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:56px;--padding-bottom:72px;--padding-left:20px;--padding-right:20px;}.elementor-5091 .elementor-element.elementor-element-a2a66d0:not(.elementor-motion-effects-element-type-background), .elementor-5091 .elementor-element.elementor-element-a2a66d0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-5091 .elementor-element.elementor-element-921f3ab{--grid-columns:1;--grid-row-gap:16px;--e-loop-nothing-found-message-align:left;--grid-column-gap:24px;}.elementor-5091 .elementor-element.elementor-element-921f3ab .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-5091 .elementor-element.elementor-element-921f3ab .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-5091 .elementor-element.elementor-element-921f3ab .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-5091 .elementor-element.elementor-element-921f3ab .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-5091 .elementor-element.elementor-element-921f3ab .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}@media(max-width:1024px){.elementor-5091 .elementor-element.elementor-element-921f3ab{--grid-columns:1;}}@media(max-width:767px){.elementor-5091 .elementor-element.elementor-element-921f3ab{--grid-columns:1;}}/* Start custom CSS *//* Astra applies its blog post-grid styling to Elementor loop items — it stamps
   ast-grid-common-col / ast-full-width-col onto each one, which paints a grey
   card background, adds its own padding and border, and constrains the width.
   The symptom was a small white card floating inside a larger grey box. Strip
   it so the loop item is a plain full-width wrapper and the Job Card template
   is the only thing drawing a card. */
.elementor-loop-container .e-loop-item,
.elementor-loop-container .e-loop-item.ast-grid-common-col,
.elementor-loop-container .e-loop-item.ast-full-width-col {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.elementor-loop-container .e-loop-item .ast-article-post,
.elementor-loop-container .e-loop-item .ast-article-single {
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

/* The archive template supplies its own layout; Astra's container padding and
   sidebar gutters would otherwise narrow it. */
.ast-page-builder-template .site-content > .ast-container,
.elementor-location-archive > .ast-container {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

/* The results container aligns children to the start rather than stretching, so
   the loop grid shrink-wrapped to its content and sat centred inside a wider
   container — cards were inset from the filter bar above them. Hero, filter bar
   and results now share one left edge. */
.elementor-element-a2a66d0 > .e-con-inner > .elementor-widget,
.elementor-element-a2a66d0 > .elementor-widget {
	width: 100%;
	max-width: 100%;
}

.elementor-element-a2a66d0 .elementor-loop-container {
	width: 100%;
}

/* The filter bar is a shortcode now, so it needs the full measure too. Its own
   styling lives in the plugin (zr_jobs_filters_assets), not here — it is not
   Elementor's to own. */
.elementor-element-4c26463 > .e-con-inner > .elementor-widget,
.elementor-element-4c26463 > .elementor-widget {
	width: 100%;
}

/* Empty state on the loop grid. A filter combination that matches nothing must
   not leave a blank band — it should keep the candidate moving toward an alert
   or a CV. Rendered class is e-loop-nothing-found-message__text. */
.elementor-element-921f3ab .e-loop-nothing-found-message__text {
	display: block;
	padding: 32px;
	background: #F0F0F2;
	border-radius: 12px;
	font-family: Manrope, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	color: #7A7A7A;
	text-align: left;
}

.elementor-element-921f3ab .e-loop-nothing-found-message__text strong {
	display: block;
	margin-bottom: 6px;
	font-size: 18px;
	color: #252525;
}

.elementor-element-921f3ab .e-loop-nothing-found-message__text a {
	color: #C60000;
	font-weight: 600;
	text-decoration: underline;
}/* End custom CSS */