/* Theme Variables */
@font-face {
  font-family: 'Lexend-Regular';
  src: url('https://dfacxoaxr5wom.cloudfront.net/d2f55daa923f417ceb571b588ca391d4/794ba3eeb69b61cd394aa8c3b986862a/Lexend_fonts/Lexend-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Lexend-Bold';
  src: url('https://dfacxoaxr5wom.cloudfront.net/d2f55daa923f417ceb571b588ca391d4/794ba3eeb69b61cd394aa8c3b986862a/Lexend_fonts/Lexend-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
    /* Typography */
    --font-family-body: "Lexend-Regular", Arial, sans-serif;
    --font-family-heading: "Lexend-Bold", Arial, sans-serif;
    
    --font-size-h1: 38px;
    --font-size-h2: 34px;
    --font-size-h3: 30px;
    --font-size-h4: 26px;
    --font-size-h5: 18px;
    --font-size-h6: 16px;
    --font-size-paragraph: 16px;
    
    /* Colors */
    --primary-color: #006130;
    --secondary-color: #6c757d;
    --dark-color: #000000;
    --light-color: #ffffff;
    --input-border-color:#ced4da;
	--input-bg-color:#ffffff;
 
	/* Other variables */
  	--border-radius: 5px;
  	--box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);

    /* Border Radius & Padding */
    --btn-border-radius: 35px;
    --input-border-radius: 5px;
    --input-padding: 11px 28px;

    /* Primary Button */
    --primary-btn-bg: #006130;
    --primary-btn-color: #ffffff;
    --primary-btn-border-color: #006130;
    
    /* Primary Button Hover */
    --primary-btn-bg-hover: #33805B;
    --primary-btn-color-hover: #ffffff;
    --primary-btn-border-color-hover: #33805B;
    
    /* Secondary Button */
    --secondary-btn-bg: #006130;
    --secondary-btn-color: #ffffff;
    --secondary-btn-border-color: #006130;
    
    /* Secondary Button Hover */
    --secondary-btn-bg-hover: #5a6268;
    --secondary-btn-color-hover: #ffffff;
    --secondary-btn-border-color-hover: #5a6268;
 
    /* Button One */
    --button-one-bg: #006130;
    --button-one-color: #ffffff;
    --button-one-border-color: #006130;

    /* Button One Hover */
    --button-one-bg-hover: #79D853;
    --button-one-color-hover: #ffffff;
    --button-one-border-color-hover: #79D853;

    /* Button Two */
    --button-two-bg: #FFFFFF;
    --button-two-color: #006130;
    --button-two-border-color: #006130;

    /* Button Two Hover */
    --button-two-bg-hover: #79D853;
    --button-two-color-hover: #ffffff;
    --button-two-border-color-hover: #79D853;

    /* Button Three */
    --button-three-bg: #f7f6f3;
    --button-three-color: #006130;
    --button-three-border-color: #006130;

    /* Button Three Hover */
    --button-three-bg-hover: #79D853;
    --button-three-color-hover: #ffffff;
    --button-three-border-color-hover: #79D853;

    /* Button Four */
    --button-four-bg: #414042;
    --button-four-color: #ffffff;
    --button-four-border-color: #414042;

    /* Button Four Hover */
    --button-four-bg-hover: #79D853;
    --button-four-color-hover: #ffffff;
    --button-four-border-color-hover: #79D853;
	
	/* Cards */
	--card-background-color: #ffffff;
	--card-border-color: #c9c9c9;
	--card-padding: 30px 30px;
	--card-border-radius: 10px;

	/* Navbar */
	--navbar-background: #006132;
	--navbar-color: #ffffff;

	/* Footer */
	--footer-background: hsla(270, 1.54%, 25.49%, 1);
	--footer-color: #ffffff;

    /* Layout Settings */
    --card-columns: 33.333%;
    --filter-columns: 25%;

	/* Spacing */
	--bs-spacer-0: 0;
	--bs-spacer-1: 0.25rem;
	--bs-spacer-2: 0.5rem;
	--bs-spacer-3: 1rem;
	--bs-spacer-4: 1.5rem;
	--bs-spacer-5: 3rem;
	--bs-spacer-6: 6rem;

	--motion-duration: .2s;
    --motion-ease: cubic-bezier(.2,.7,.3,1);
}

/*** Global Theme ***/
body {
	background: #fff;
	color: var(--dark-color);
	line-height: 1.5;
	font-family: var(--font-family-body);
	font-weight: 400;
	font-size: var(--font-size-paragraph);
	overflow-x: hidden;
}
/** Typography **/
p {
  line-height: 1.55em;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-family-heading);
	font-weight: 600;
	letter-spacing: normal;
    color:hsla(150.93, 100%, 19.02%, 1);
}
.h1, h1 {
	font-size: var(--font-size-h1);
}
.h2, h2 {
	font-size: var(--font-size-h2);
}
.h3, h3 {
	font-size: var(--font-size-h3);
}
.h4, h4 {
	font-size: var(--font-size-h4);
}
.h5, h5 {
	font-size: var(--font-size-h5);
}
.h6, h6 {
	font-size: var(--font-size-h6);
}
/* Responsive Typography */

@media (max-width: 768px) {
	.h1, h1 {
		font-size: calc(var(--font-size-h1) * 0.9);
	}
	.h2, h2 {
		font-size: calc(var(--font-size-h2) * 0.9);
	}
	.h3, h3 {
		font-size: calc(var(--font-size-h3) * 0.9);
	}
	.h4, h4 {
		font-size: calc(var(--font-size-h4) * 0.9);
	}
}
@media (max-width: 576px) {
	.h1, h1 {
		font-size: calc(var(--font-size-h1) * 0.8);
	}
	.h2, h2 {
		font-size: calc(var(--font-size-h2) * 0.8);
	}
	.h3, h3 {
		font-size: calc(var(--font-size-h3) * 0.8);
	}
	.h4, h4 {
		font-size: calc(var(--font-size-h4) * 0.8);
	}
}
.hero-h1 h1 {
	font-size: 56px;
}
.hero-h2 h2 {
	font-size: 46px;
}
@media (max-width: 576px) {
	.hero-h1 h1 {
		font-size: calc(var(--font-size-h1)* 0.8);
	}
	.hero-h2 h2 {
		font-size: calc(var(--font-size-h2)* 0.7);
	}
  	.hero-h1 .container-fluid h1,
  	.hero-h2 .container-fluid h2,
	.hero-h1 .container-fluid p,
  	.hero-h2 .container-fluid p {
		padding-left: 15px;
		padding-right: 15px;
  }
}
a, a:visited {
	color: var(--primary-color);
}
a:hover {
	color: var(--primary-color);
}

/** Navigation **/

.navbar {
	background: var(--navbar-background);
    padding: 32px 0;
}
.nav-item {
	margin: 0px;
	margin-top: auto !important;
	margin-bottom: auto !important;
}
.nav-link {
	color: var(--navbar-color) !important;
	font-size: 14px;
	font-weight: 400;
    padding: 8px 18px !important;
}
.dropdown-item {
  font-size: 14px;
}
.nav-link:visited {
	color: var(--navbar-color) !important;
}
.nav-link:hover {
	color: var(--light-color) !important;
}
.dropdown-item:hover, .dropdown-item:focus {
    color: var(--dark-color);
    background-color: #ececec;
}
.dropdown-item.active, .dropdown-item:active {
    color: var(--dark-color);
    background-color: #ececec;
}
@media (max-width: 767px) {
  .nav-link {
    padding: 10px 8px !important;
  }
  .navbar-nav .nav-item:first-child {
    margin-top: 20px;
  }
}
/* Logos */

.navbar-brand-logo {
	    width: auto;
    max-width: 100%;
    max-height: 25px;
}
.footer-brand-logo {
	    width: auto;
    max-width: 100%;
    max-height: 25px;
}
@media (max-width: 576px) {
	.navbar-brand-logo {
		max-width: 115px;
	}
}
@media (max-width: 576px) {
	.footer-brand-logo {
		max-width: 155px;
	}
}
.no-gutters .col-md-12 {
	padding: 0px;
}
/*** Buttons ***/

.btn, button, a.button {
	font-weight: 600;
	font-family: inherit;
	line-height: 1.5;
	padding: var(--input-padding);
    transition:
    background-color var(--motion-duration) var(--motion-ease),
    color var(--motion-duration) var(--motion-ease),
    border-color var(--motion-duration) var(--motion-ease),
    box-shadow var(--motion-duration) var(--motion-ease);
	border-radius: var(--btn-border-radius) !important;
	font-size: 15px;
	text-transform: inherit;
}
.btn-primary, .btn-primary * {
	background: var(--primary-btn-bg) !important;
	color: var(--primary-btn-color) !important;
	border: 1px solid var(--primary-btn-border-color) !important;
}
.btn-primary:visited, .btn-primary:active, .btn-primary:focus {
	background: var(--primary-btn-bg);
	color: var(--primary-btn-color);
	border: 1px solid var(--primary-btn-border-color);
}
.btn-primary:hover, .btn-primary:first-child:active, .btn-primary:focus-visible {
	background: var(--primary-btn-bg-hover);
	color: var(--primary-btn-color-hover);
	border: 1px solid var(--primary-btn-border-color-hover);
}
.btn-success {
	background: var(--secondary-btn-bg);
	color: var(--secondary-btn-color);
	border: 1px solid var(--secondary-btn-border-color);
}
.btn-success:visited, .btn-success:active, .btn-success:focus, .btn:first-child:active {
	background: var(--secondary-btn-bg);
	color: var(--secondary-btn-color);
	border: 1px solid var(--secondary-btn-border-color);
}
.btn-success:hover {
	background: var(--secondary-btn-bg-hover);
	color: var(--secondary-btn-color-hover);
	border: 1px solid var(--secondary-btn-border-color-hover);
}
.btn-info, .btn-danger {
	background: var(--primary-btn-bg);
	color: var(--primary-btn-color);
	border: 1px solid var(--primary-btn-border-color);
}
.btn-info:hover, .btn-info:visited, .btn-info:active, .btn-info:focus,
.btn-danger:hover, .btn-danger:visited, .btn-danger:active, .btn-danger:focus {
	background: var(--primary-btn-bg-hover);
	color: var(--primary-btn-color-hover);
	border: 1px solid var(--primary-btn-border-color-hover);
}
.candidate-favourite:hover, .view-favourites:hover {
    text-decoration: none;
}
@media (max-width: 768px) {
  .candidate-favourite, .view-favourites {
    margin-bottom: 5px;
  }
}
/* Candidate setting buttons */

.label {
	background: var(--secondary-btn-bg);
	color: var(--secondary-btn-color);
	border: 1px solid var(--secondary-btn-bg);
	padding: 4px 12px;
	font-size: 13px !important;
	margin-bottom: 4px;
	display: inline-block;
	border-radius: var(--btn-border-radius);
}
/* custom buttons */

a.button.button1 {
	background: var(--button-one-bg);
	color: var(--button-one-color);
	border: 1px solid var(--button-one-border-color);
}
a.button.button1:hover {
	background: var(--button-one-bg-hover);
	color: var(--button-one-color-hover);
	border: 1px solid var(--button-one-border-color-hover);
}
a.button.button2 {
	background: var(--button-two-bg);
	color: var(--button-two-color);
	border: 1px solid var(--button-two-border-color);
}
a.button.button2:hover {
	background: var(--button-two-bg-hover);
	color: var(--button-two-color-hover);
	border: 1px solid var(--button-two-border-color-hover);
}
a.button.button3 {
	background: var(--button-three-bg);
	color: var(--button-three-color);
	border: 1px solid var(--button-three-border-color);
}
a.button.button3:hover {
	background: var(--button-three-bg-hover);
	color: var(--button-three-color-hover);
	border: 1px solid var(--button-three-border-color-hover);
}
a.button.button4 {
	background: var(--button-four-bg);
	color: var(--button-four-color);
	border: 1px solid var(--button-four-border-color);
}
a.button.button4:hover {
	background:var(--button-four-bg-hover);
	color:var(--button-four-color-hover);
	border:1px solid var(--button-four-border-color-hover);
}
/* Input group */

.call-to-action .form-control {
  border: 1px solid var(--input-border-color);
  background: var(--input-bg-color);
}
.input-group input, .input-group-btn button {
	height: auto !important;
	padding: var(--input-padding) !important;
}
/* Bootstrap Card */

.card {
	border: 1px solid var(--card-border-color);
	border-radius: var(--border-radius);
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
	margin-bottom: 6px;
	background: var(--card-background-color);
	padding: var(--card-padding);
}
.card-title {
    line-height: 1.1;
}
/* Search / CTA input */

.job-search-control .near-me-control {
	margin-left: 0;
}
.job-search-control .input-group-btn {
	margin-left: 15px !important;
}
@media (max-width: 576px) {
	.job-search-control .form-control, .job-search-control .input-group-btn, .job-search-control .input-group-btn .btn, .job-search-control .btn, .job-search-control .col-2 {
		width: 100%;
	}
	.job-search-control .input-group-btn {
		margin: 5px 0 !important;
	}
}
.call-to-action .form-control {
    border-radius: var(--input-border-radius) !important;
}
.form-control {
    background-color: var(--input-bg-color);
}
.job-search-control input {
	background: var(--input-bg-color);
}
.call-to-action .form-control {
	border-radius: var(--input-border-radius);
}
.call-to-action-form input, .call-to-action-form select {
    background: var(--input-bg-color);
}
.form-call-to-action input[type=file].form-control {
    padding: 6px 10px;
}
.selectize-control.multi .selectize-input>div {
	background-color: var(--primary-color);
	color: var(--light-color);
	border-radius: var(--btn-border-radius);
}
.selectize-dropdown-content .option.active {
	background-color: var(--primary-color);
    color:var(--light-color);
}
.selectize-dropdown .option {
    color:var(--primary-color);
}
.selectize-input {
    border-radius: var(--input-border-radius) !important;
}
.cta-left-align .block-call-to-action form {
	margin: 0 auto 0 0;
}
.cta-right-align .block-call-to-action form {
	margin: 0 0 0 auto;
}
/** Job Search content block **/
.easy-autocomplete-container .eac-category {
    color: #000000 !important;
}
.easy-autocomplete-container .eac-item * {
    color: #000000 !important;
}

/** Job Search page **/

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    background-image: url("data:image/svg+xml,%3Csvg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 26px;
}
/* Job Search table */

.job-search-results-table .job-search-results-title a {
    color:var(--primary-color);
}
.job-search-filter-header {
	font-size: 20px !important;
}
.block-job-search-results .job-search-results table, .block-job-search-results .job-search-results .table-counts {
    font-size: inherit !important;
}
.table>:not(caption)>*>* {
    padding: 0.7rem 0.5rem;
}
/* Job Search cards */

@media (min-width: 992px) {
	.job-search-results-card-col {
		flex: 0 0 var(--card-columns);
		max-width: var(--card-columns);
	}
}
@media (min-width: 768px) {
	.job-search-results-dropdown-filter-col {
		flex: 0 0 var(--filter-columns);
		max-width: var(--filter-columns);
	}
}
.job-search-results-card {
	border: 1px solid #ececec;
	border-radius: var(--border-radius);
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
	margin-bottom: 6px;
}
.job-search-results-card-title a {
	color: #000000;
	font-size: 22px;
}
.job-search-results-summary {
    font-size: 16px;
}
.job-search-results-card-body {
	padding: 0px;
}
.job-search-results-footer {
	background: var(--card-background-color);
	border-top: 0px;
	padding: 10px 0px;
}
.job-search-results-footer a {
	background: var(--card-background-color);
	color: var(--primary-color);
}
.job-search-results-card {
	background: var(--card-background-color);
}

/** Job Search page filters / inputs */

.block-job-search-results .job-search-results .job-search-filter-groups {
	width: 100%;
}
.job-search-control input {
	border-radius: var(--input-border-radius) !important;
	border: 1px solid var(--input-border-color);
}
.job-search-dropdown-filters select {
	padding: 10px 10px;
	margin-bottom: 6px;
	border-radius: var(--input-border-radius);
	border: 1px solid var(--input-border-color);
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 100%;
	color: var(--dark-color);
	background-color: var(--light-color);
}
.badge {
	background-color: var(--primary-color) !important;
	border-radius: var(--border-radius);
	color: var(--light-color);
}
.page-item.active .page-link {
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	color: var(--light-color);
}
.page-link {
	color: var(--primary-color);
}
@media (max-width: 576px) {
  .pagination li.page-item {
    display: none;
  }
  .pagination li.prev,
  .pagination li.next {
    display: inline-block;
  }
  .pagination li.active {
    display: inline-block;
  }
  .pagination li.page-item:has(+ .active) {
    display: inline-block;
  }
  .pagination li.active + li.page-item {
    display: inline-block;
  }
}

/** Job Advert **/

.block-job-description .job-title {
	font-size: 26px !important;
	color:var(--primary-color);
}
.job-description a:not(.btn) {
	text-decoration: underline;
	font-weight: 400;
}
/* Side panels */

.side-panel {
	box-shadow: 0 5px 9px 0 rgb(0 0 0 / 10%);
	padding: 40px 25px;
	margin-bottom: 20px;
	border-radius: 6px;
}
.side-panel .job-title {
	font-size: 22px !important;
	font-weight: 500 !important;
	margin-bottom: 10px !important;
}
.side-panel .job-field {
	color: #484848;
	font-size: 14px;
	font-weight: 600;
}
.side-panel h3 {
	font-size: 21px;
}
.side-panel .job-summary {
	margin-top: 2px;
	padding-top: 2px;
}
/* Jobs list content block card style */

.job-list-cards .jobs-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-left: -15px;
	margin-top: -15px;
	align-items: stretch;
}
.job-list-cards .job {
	background: #ffffff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	padding: 30px;
	width: calc(33.333% - 30px);
	margin-left: 15px;
	margin-top: 15px;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	margin-bottom: 0px !important;
}
@media (max-width: 768px) {
	.job-list-cards .job {
		width: calc(50% - 30px);
	}
}
@media (max-width: 480px) {
	.job-list-cards .job {
		width: calc(100% - 30px);
	}
}
.job-list-cards .job .job-title {
	margin-bottom: 10px;
	color:var(--primary-color);
    font-size:18px;
}
.job-list-cards .job-summary {
	padding-top: 12px;
	color: #444444 !important;
}
/* Jobs list content block table style */

.job {
	background: transparent;
	padding: 0px;
}
.job .job-title {
	margin-bottom: 10px;
	color:var(--primary-color);
}
.job-summary {
	padding-top: 12px;
	color: #444444 !important;
}
.block-jobs .job {
	margin-bottom: 16px;
}
/* Employee Referral Link */

/* Carousel */

.carousel-caption {
	position: relative;
	right: 0 !important;
	bottom: 1.25rem;
	left: 0 !important;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	color: #fff;
	text-align: center;
	padding-left: 40px;
	padding-right: 40px;
}
.carousel-control-prev-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000000'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}
.carousel-control-next-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000000'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.carousel-control-prev-icon, .carousel-control-next-icon {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 60% 60%;
	border-radius: 2rem;
	background-color: #FFF;
	padding: 2rem;
}
.carousel-item-caption-header {
	text-shadow: none !important;
	color: var(--dark-color) !important;
}
.carousel-item-caption-detail * {
	text-shadow: none !important;
	color: var(--dark-color) !important;
}
@media (min-width: 768px) {
	.carousel-control-prev, .carousel-control-next {
		width: 3%;
	}
}
.carousel-item-block.col-6 {
  flex: 0 0 100%;
  max-width: 100%;
}
@media (min-width: 768px) {
  .carousel-item-block.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
/** Video **/

/** Teams **/

/*** Team Member Quote ***/

.team-member-bio {
	text-align: left !important;
}
.team-member-image {
	margin-bottom: 10px;
}
.team-member-bio .name {
	font-size: 17px;
	font-weight: 600;
}
.team-member-bio .title {

}
.team-member-bio .bio {

}
.team-member-bio .social-links i {
	margin-right: 8px !important;
}
/** Blogs **/

.posts-cards .posts-cards-cols {
	display: flex;
	flex-wrap: wrap;
	gap: inherit;
}
.posts-card {
	flex: 0 calc(33.33% - 2rem);
	margin: 1rem;
	background:#ffffff;
}
.posts-cards .posts-card {
	border-radius: 10px;
}
.posts-cards .posts-card-body {
	height: auto;
	padding: 20px 0px;
	background: rgba(236 236 236 / 0%);
}
.posts-cards .posts-card .card-title {
	font-size: 18px;
	font-weight: 600;
}
.posts-cards .posts-card-link {
	color: #202e49 !important;
	font-weight: 600;
	font-size: 16px;
	margin-top: 10px;
	text-decoration: underline;
}
.badge.post-tag {
	background: #202e49 !important;
	padding: 6px 10px;
	font-weight: 600;
	text-transform: uppercase;
}
.posts-card-body .post-tags {
	display: none;
}
.posts-cards .posts-card-footer {
	padding: 10px 30px;
	background: none;
}
.posts-card-image {
	transition: transform 0.3s ease;
	border-radius: 8px;
}
@media only screen and (max-width: 768px) {
	.posts-cards .posts-cards-cols {
		flex-direction: column;
	}
}
/** FAQs Accordion **/

.accordion-item:first-of-type {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
.accordion-item:last-of-type {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.accordion-item {
	color: #333333;
	background-color: #ffffff;
	border: 1px solid #333;
}
.accordion-button:not(.collapsed) {
	color: #333;
	background-color: #ececec;
	box-shadow: unset;
}
.accordion-item:first-of-type .accordion-button {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
.accordion-button:focus {
	z-index: 3;
	border-color: transparent;
	outline: 0;
	box-shadow: unset;
}
.accordion-button {
	font-size: 16px;
	padding: 20px;
}
.accordion-body {
	padding: 20px;
}
/** Footer **/

footer {
	background: var(--footer-background);
}
footer * {
	color: var(--footer-color);
}
footer a {
  	color: var(--footer-color);
}
footer a:hover,
footer a:visited,
footer a:active {
  color: var(--light-color) !important;
}
.social a {
	font-size: 16px;
}
/** Cookie consent **/

.offcanvas.offcanvas-bottom, .offcanvas.offcanvas-top {
    height: fit-content !important;
}
.consent-modal .image-wrapper {
	width: 100%;
	text-align: left;
}
.consent-reject, .reject-performance-cookies {
	background: var(--secondary-btn-bg);
	color: var(--secondary-btn-color);
	border: 1px solid var(--secondary-btn-border-color);
}
.consent-agree, .consent-confirm {
	background: var(--primary-btn-bg);
	color: var(--primary-btn-color);
	border: 1px solid var(--primary-btn-border-color);
}
.consent-reject:hover,
.reject-performance-cookies:hover,
.consent-reject:focus,
.reject-performance-cookies:focus,
.consent-reject:active,
.reject-performance-cookies:active,
.consent-reject:disabled,
.reject-performance-cookies:disabled {
	background: var(--secondary-btn-bg-hover);
	color: var(--secondary-btn-color-hover);
	border: 1px solid var(--secondary-btn-border-color-hover);
}
.consent-agree:hover,
.consent-confirm:hover,
.consent-agree:focus,
.consent-confirm:focus,
.consent-agree:active,
.consent-confirm:active,
.consent-agree:disabled,
.consent-confirm:disabled {
	background: var(--primary-btn-bg-hover);
	color: var(--primary-btn-color-hover);
	border: 1px solid var(--primary-btn-border-color-hover);
}
@media (max-width: 767.98px) {
    #cookie_consent_description {
        font-size: 15px;
    }
    #implied_consent_footer {
        height: auto;
    }
}
.cookie-description * {
    color: var(--dark-color);
}

/* Candidate Settings */

.candidate-settings-panel {
	background-color: #f9f9f9;
	padding: 30px 42px;
}
.candidate-settings {
	background: #f0f0f0;
	margin: 10px 0px;
	padding: 50px;
}
.candidate-settings-panel i {
	color: var(--dark-color);
}
.candidate-settings-panel h3 {
	font-size: 22px;
}
/* Accessibility */

:where(a, button, .btn):focus-visible{
  outline: 2px solid color-mix(in oklch, var(--primary-btn-bg), white 20%);
  outline-offset: 3px;
}
/* Alignment / Spacing / Order */

.my-auto .col-md-6, .my-auto .col-md-8, .my-auto .col-md-4 {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

/* ordering */

@media (max-width: 767px) {
  .reverse-columns .row.page-row-border {
    display: flex;
    flex-direction: column;
  }
  .reverse-columns .row.page-row-border > [class*="col-"]:first-child {
    order: 2;
  }
  .reverse-columns .row.page-row-border > [class*="col-"]:last-child {
    order: 1;
  }
}
/* adds padding to the bottom of every col */

@media (max-width: 768px) {
	.row>.col-md-2, .row>.col-md-3, .row>.col-md-4, .row>.col-md-6, .row>.col-md-8 {
		padding-bottom: 1.5rem !important;
	}
}
/* Treat col-md-2 as col-md-4 on tablets and smaller desktops */

@media (min-width: 768px) and (max-width: 991px) {
	.col-md-2 {
		flex: 0 0 auto;
		width: 33.333333%;
	}
}
/* Text left alignment sits within container on fullwidth page */

@media (min-width: 576px) {
	.hero-banner .block-image-text * {
		width: 540px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (min-width: 768px) {
	.hero-banner .block-image-text * {
		width: 720px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (min-width: 992px) {
	.hero-banner .block-image-text * {
		width: 960px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (min-width: 1200px) {
	.hero-banner .block-image-text * {
		width: 1140px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (min-width: 1400px) {
	.hero-banner .block-image-text * {
		width: 1320px;
		margin-right: auto;
		margin-left: auto;
	}
}
/** Rounded class for images **/
.rounded-0 .image-uncropped-full-width,
.rounded-0 .block-image-cover {
    border-radius: 0 !important;
}

.rounded-1 .image-uncropped-full-width,
.rounded-1 .block-image-cover {
    border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 .image-uncropped-full-width,
.rounded-2 .block-image-cover {
    border-radius: var(--bs-border-radius) !important;
}

.rounded-3 .image-uncropped-full-width,
.rounded-3 .block-image-cover {
    border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 .image-uncropped-full-width,
.rounded-4 .block-image-cover {
    border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 .image-uncropped-full-width,
.rounded-5 .block-image-cover {
    border-radius: var(--bs-border-radius-xxl) !important;
}
/** Negative spacing utilites **/

.mt-n1 {
	margin-top: calc(var(--bs-spacer-1) * -1) !important;
}
.mt-n2 {
	margin-top: calc(var(--bs-spacer-2) * -1) !important;
}
.mt-n3 {
	margin-top: calc(var(--bs-spacer-3) * -1) !important;
}
.mt-n4 {
	margin-top: calc(var(--bs-spacer-4) * -1) !important;
}
.mt-n5 {
	margin-top: calc(var(--bs-spacer-5) * -1) !important;
}
.mt-n6 {
	margin-top: calc(var(--bs-spacer-6) * -1) !important;
}
.me-n1 {
	margin-right: calc(var(--bs-spacer-1) * -1) !important;
}
.me-n2 {
	margin-right: calc(var(--bs-spacer-2) * -1) !important;
}
.me-n3 {
	margin-right: calc(var(--bs-spacer-3) * -1) !important;
}
.me-n4 {
	margin-right: calc(var(--bs-spacer-4) * -1) !important;
}
.me-n5 {
	margin-right: calc(var(--bs-spacer-5) * -1) !important;
}
.me-n6 {
	margin-right: calc(var(--bs-spacer-6) * -1) !important;
}
.mb-n1 {
	margin-bottom: calc(var(--bs-spacer-1) * -1) !important;
}
.mb-n2 {
	margin-bottom: calc(var(--bs-spacer-2) * -1) !important;
}
.mb-n3 {
	margin-bottom: calc(var(--bs-spacer-3) * -1) !important;
}
.mb-n4 {
	margin-bottom: calc(var(--bs-spacer-4) * -1) !important;
}
.mb-n5 {
	margin-bottom: calc(var(--bs-spacer-5) * -1) !important;
}
.mb-n6 {
	margin-bottom: calc(var(--bs-spacer-6) * -1) !important;
}
.ms-n1 {
	margin-left: calc(var(--bs-spacer-1) * -1) !important;
}
.ms-n2 {
	margin-left: calc(var(--bs-spacer-2) * -1) !important;
}
.ms-n3 {
	margin-left: calc(var(--bs-spacer-3) * -1) !important;
}
.ms-n4 {
	margin-left: calc(var(--bs-spacer-4) * -1) !important;
}
.ms-n5 {
	margin-left: calc(var(--bs-spacer-5) * -1) !important;
}
.ms-n6 {
	margin-left: calc(var(--bs-spacer-6) * -1) !important;
}
/** hero image positioning **/

.img-top .block-image-cover {
    background-position: 50% 15% !important;
}
.img-bottom .block-image-cover {
    background-position: 50% 75% !important;
}
/** Theme Specific **/

.list-item-check li, .list-item-circle-check li {
	list-style: none;
}
.list-item-check li::before {
    content: "\f00c";
    color: #000;
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    margin-right: 8px;
}
.list-item-circle-check li::before {
    content: "\f058";
    color: #000;
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    margin-right: 8px;
}
.eyebrow h5 {
    background: #fcfcfc;
    display: inline-block;
    padding: 7px 16px;
    font-size: 15px;
    font-weight: 600;
    border-radius: 35px;
    box-shadow: 0px 1px 3px #2e2f3130;
}
.section-one-background {
    background-color: #f1f6fb;
    background-image: url(https://cdn.prod.website-files.com/656d63a5a8c1cffefeee75a0/656eb9324bc9f3abbb604420_pattern-1.png);
    background-position: 0 0;
    background-size: auto;
}
.benefit-card img {
    width: 100%;
    max-width: 90px !important;
    height: auto;
}
.curved-hero-banner {
  position: relative;
  padding: 165px 0 250px;
  color: #fff;
  background: none;
  overflow: visible;  
}
.curved-hero-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.25)),
    url('#')
      center/cover no-repeat;
  -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><path fill='white' d='M0,0 H100 V80 Q50,98 0,80 Z'/></svg>");
          mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><path fill='white' d='M0,0 H100 V80 Q50,98 0,80 Z'/></svg>");
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
.curved-hero-banner > * {
  position: relative;
  z-index: 1;
}
@media (max-width: 575px) {
  .curved-hero-banner {
    padding: 180px 0 200px;
  }
  .curved-hero-banner::before {
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><path fill='white' d='M0,0 H100 V84 Q50,96 0,84 Z'/></svg>");
            mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><path fill='white' d='M0,0 H100 V84 Q50,96 0,84 Z'/></svg>");
  }
}

/** Custom Career Site CSS **/
.navbar-toggler {
    border-radius: 5px !important;
    border-color: rgba(255,255,255,0.5);
}
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.border-radius img {
    border-radius: 16px;
}
.health-card .card {
    background: #fff;
    border-radius: 22px;
    max-width: 400px;
    height: 350px;
    border-color: transparent;
}
.health-card .card img {
    border-radius: 12px;
    width: 100%;
    height: auto;
}
.value-card .block-image-cover {
    height: 300px;
    border-radius: 16px !important;
}
.block-image-cover, .image-uncropped-full-width {
    border-radius: 12px;
}
.container-fluid .block-image-cover {
    border-radius: 0px;
}
.row-background-brand_color_2 .btn-primary {
  background: #ffffff;
  border: 1px solid #ffffff;
}

.row-background-brand_color_2 .btn-primary span {
  color: #ffffff !important;
}
.row-background-brand_color_2 .btn-primary {
  border: 1px solid #ffffff !important;
}
.row-background-brand_color_2 .btn-primary:hover,
.row-background-brand_color_2 .btn-primary:focus {
  background: #5a6268;
  border-color: #5a6268;
}
.row-background-brand_color_2 .btn-primary:hover span,
.row-background-brand_color_2 .btn-primary:focus span {
  color: #ffffff !important;
}
.exit-call-to-action-modal {
  .modal-content {
      border-radius: 8px;
  }
  .modal-header {
  
  }
  .modal-body {
      padding: 10px 30px;
  }
  .modal-footer {
  
  }
  .modal-footer .btn-primary, .modal-footer .btn-primary:hover {
      background: none;
      color: #006130;
      border: none;
      padding: 8px 10px;
  }
}

/** typing animation **/
  .career-typing h3 {
    color: #ffffff;
    margin: 0;
  }

  .career-typing .intro-text {
    display: inline;
  }

  .career-typing #dynamic-field-wrap {
    display: inline;
  }

  .career-typing #dynamic-field {
    color: #7ed957;
    white-space: nowrap;
  }

  .career-typing .caret {
    display: inline-block;
    color: #7ed957;
    margin-left: 2px;
    animation: blink 0.9s steps(1) infinite;
  }

  @keyframes blink {
    50% { opacity: 0; }
  }

  @media (max-width: 767.98px) {
    .career-typing #dynamic-field-wrap {
      display: block;
      margin-top: 6px;
    }
  }

  .team-contact {
    font-family: "Lexend", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: transparent;
    margin: 0;
    padding: 0;
  }

  .team-card,
  .team-card * {
    box-sizing: border-box;
  }

  .team-contact__header {
    margin: 0 0 1.25rem;
    padding: 0;
  }

  .team-contact__header h1 {
    margin: 0 0 0.75rem;
    color: #0f172a;
    font-size: clamp(1.85rem, 2.6vw, 2.5rem);
    letter-spacing: -0.02em;
    line-height: 1.15;
  }

  .team-contact__header p {
    margin: 0;
    color: #475569;
    max-width: 72ch;
    font-size: 1.05rem;
    line-height: 1.6;
  }

  .team-grid {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
  }

  @media (max-width: 980px) {
    .team-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }
  }

  @media (max-width: 560px) {
    .team-grid {
      grid-template-columns: 1fr;
      gap: 12px;
    }
  }

  .team-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    overflow: hidden;

    /* Card-like shadow (matches modern "soft card" style) */
    box-shadow:
      0 1px 2px rgba(2, 6, 23, 0.06),
      0 10px 24px rgba(2, 6, 23, 0.08);

    display: grid;
    grid-template-rows: auto 1fr;
    min-height: 100%;
    transition: box-shadow 180ms ease, transform 180ms ease;
  }

  .team-card:hover {
    transform: translateY(-2px);
    box-shadow:
      0 2px 6px rgba(2, 6, 23, 0.08),
      0 14px 34px rgba(2, 6, 23, 0.12);
  }

  .team-card__media {
    padding: 12px;
  }

  .team-card__img {
    width: 100%;
    max-width: 180px;
    margin-inline: auto;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: contain;
    display: block;
    border-radius: 14px;
    background: transparent;
  }

  .team-card__content {
    padding: 0.25rem 1rem 1rem;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    gap: 0.85rem;
  }

  .team-card__details {
    flex: 1;
  }

  .team-card__name {
    margin: 0.25rem 0 0.35rem;
    font-size: 1.05rem;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: #0f172a;
  }

  .team-card__role {
    margin: 0;
    color: #475569;
    line-height: 1.45;
  }

  .team-card__actions {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .team-card__tel {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.7rem 0.8rem;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #0f172a;
    text-decoration: none;
    font-weight: 600;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
  }

  .team-card__tel:hover,
  .team-card__tel:focus-visible {
    background: #f8fafc;
    border-color: #cbd5e1;
    color: #0f172a;
  }

  .icon {
    width: 20px;
    height: 20px;
    display: inline-grid;
    place-items: center;
    color: currentColor;
  }

  .team-card__linkedin {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    width: 100%;
    padding: 0.7rem 0.8rem;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 600;
    border: 1px solid #0077b5;
    background: #0077b5;
    color: #ffffff;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
  }

  /* Hover stays white background/blue text BUT keep icon the same (white) */
  .team-card__linkedin:hover,
  .team-card__linkedin:focus-visible {
    background: #ffffff;
    border-color: #0077b5;
    color: #0077b5;
  }

  .team-card__linkedin-icon {
    width: 18px;
    height: 18px;
    display: block;
    object-fit: contain;
    /* Important: do NOT filter on hover (keeps same colour) */
    filter: none !important;
  }

  @media (prefers-reduced-motion: reduce) {
    .team-card,
    .team-card__tel,
    .team-card__linkedin {
      transition: none !important;
    }
  }