/* Theme Variables */
:root {
    /* Typography */
    --font-family-body: "Barlow", Helvetica, Arial, sans-serif;
    --font-family-heading: "Barlow", Helvetica, Arial, sans-serif;

    --font-size-h1: 2.375rem;
    --font-size-h2: 2rem;
    --font-size-h3: 1.875rem;
    --font-size-h4: 1.625rem;
    --font-size-h5: 1.125rem;
    --font-size-h6: 1rem;
    --font-size-paragraph: 1rem;

    /* Colors */
    --primary-color: #CF4520;
    --secondary-color: #1a1a1a;
    --color-text: #000000;
    --color-text-muted: #1a1a1a;
    --color-link: #1a1a1a;
    --color-link-hover: #0056B3;
    --job-title-colour: #1a1a1a;
    --dark-color: var(--color-text);
    --light-color: #ffffff;
    --input-border-color: #CED4DA;
    --input-bg-color: #FFFFFF;

    /* Other variables */
    --border-radius: 5px;

    /* Border Radius & Padding */
    --btn-border-radius: 0px;
    --input-border-radius: 0px;
    --input-padding: 0.625em 1.75em;

    /* Primary Button */
    --primary-btn-bg: #CF4520;
    --primary-btn-color: #FFFFFF;
    --primary-btn-border-color: #CF4520;

    /* Primary Button Hover */
    --primary-btn-bg-hover: #d15939;
    --primary-btn-color-hover: #FFFFFF;
    --primary-btn-border-color-hover: #d15939;

    /* Secondary Button */
    --secondary-btn-bg: #000000;
    --secondary-btn-color: #FFFFFF;
    --secondary-btn-border-color: #000000;

    /* Secondary Button Hover */
    --secondary-btn-bg-hover: #1a1a1a;
    --secondary-btn-color-hover: #FFFFFF;
    --secondary-btn-border-color-hover: #1a1a1a;

    /* Button One */
    --button-one-bg: #CF4520;
    --button-one-color: #FFFFFF;
    --button-one-border-color: #CF4520;

    /* Button One Hover */
    --button-one-bg-hover: #d15939;
    --button-one-color-hover: #FFFFFF;
    --button-one-border-color-hover: #d15939;

    /* Button Two */
    --button-two-bg: #01579B;
    --button-two-color: #FFFFFF;
    --button-two-border-color: #01579B;

    /* Button Two Hover */
    --button-two-bg-hover: #014F8C;
    --button-two-color-hover: #FFFFFF;
    --button-two-border-color-hover: #014F8C;

    /* Button Three */
    --button-three-bg: #01579B;
    --button-three-color: #FFFFFF;
    --button-three-border-color: #01579B;

    /* Button Three Hover */
    --button-three-bg-hover: #014F8C;
    --button-three-color-hover: #FFFFFF;
    --button-three-border-color-hover: #014F8C;

    /* Button Four */
    --button-four-bg: #FFFFFF;
    --button-four-color: #1a1a1a;
    --button-four-border-color: #FFFFFF;

    /* Button Four Hover */
    --button-four-bg-hover: #FFFFFF;
    --button-four-color-hover: #1a1a1a;
    --button-four-border-color-hover: #FFFFFF;

    /* Cards */
    --card-background-color: #F1E9E6;
    --card-border-color: #F1E9E6;
    --card-padding: 1.2em 1.45em;
    --card-border-radius: 0px;
    --card-box-shadow: none;

    /* Navbar */
    --navbar-background: #FFFFFF;
    --navbar-color: #ffffff;

    /* Footer */
    --footer-background: #010101;
    --footer-color: #FFFFFF;

    /* Layout Settings */
    --job-search-card-columns: 3;
    --job-search-filter-columns: 4;

    /* Spacing */
    --theme-gutter-x: 1.5rem;
    --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;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius: 0.375rem;
    --bs-border-radius-lg: 0.5rem;
    --bs-border-radius-xl: 0.75rem;
    --bs-border-radius-xxl: 1rem;

    --motion-duration: .2s;
    --motion-ease: cubic-bezier(.2,.7,.3,1);
}

/*** Global Theme ***/
body {
    background: #fff;
    color: var(--color-text);
    line-height: 1.5;
    font-family: var(--font-family-body);
    font-weight: 400;
    font-size: var(--font-size-paragraph);
    overflow-x: hidden;
}
/** Typography **/

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-family-heading);
    font-weight: 800;
    letter-spacing: normal;
    text-transform: uppercase;
    color:var(--primary-color);
}
.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: clamp(1.9rem, 5vw, 3.4912rem);
}
.hero-h2 h2 {
    font-size: clamp(1.4875rem, 4vw, 2.8688rem);
}
@media (max-width: 576px) {
    .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(--color-link);
}
a:hover {
    color: var(--color-link-hover);
}

/** Navigation **/

.navbar {
    background: var(--navbar-background);
}
.nav-item {
    margin: 0px;
    margin-top: auto !important;
    margin-bottom: auto !important;
}
.nav-link {
    color: var(--navbar-color) !important;
    font-size: 1rem;
    font-weight: 400;
    padding: 8px 20px !important;
}
.nav-link:visited {
    color: var(--navbar-color) !important;
}
.nav-link:hover {
    color: var(--primary-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;
    }
}
.navbar-toggler {
    border-radius: 5px !important;
}
/* Logos */

.navbar-brand-logo {
    width: 100%;
    max-width: 155px;
}
.footer-brand-logo {
    width: 100%;
    max-width: 155px;
}
@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: 0.9375rem;
    text-transform: uppercase;
    text-decoration: none !important;
}
.btn-primary {
    background: var(--primary-btn-bg);
    color: var(--primary-btn-color);
    border: 1px solid var(--primary-btn-border-color);
}
.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: 0.25em 0.75em;
    font-size: 0.8125rem !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);
    padding: 0.625em 0.875em;
}
.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(--card-border-radius);
    box-shadow: var(--card-box-shadow);
    margin-bottom: 6px;
    background: var(--card-background-color);
    padding: var(--card-padding);
}
.card-title {
    line-height: 1.1;
}
/* Search / CTA input */
.job-search-control .form-control {
    border-radius: var(--input-border-radius) !important;
}
.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);
}
.job-search-control .easy-autocomplete {
    background: transparent;
}
.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);
    padding: 0.625em 0.875em;
}
.selectize-dropdown-content .option.active {
    background-color: var(--primary-color);
    color: var(--light-color);
}
.selectize-dropdown .option {
    color: var(--color-link);
}
.selectize-input {
    border-radius: var(--input-border-radius) !important;
    padding:0.625em .75em;
}
.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: var(--color-text) !important;
}
.easy-autocomplete-container .eac-item * {
    color: var(--color-text) !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(--job-title-colour);
}
.job-search-filter-header {
    font-size: 1.25rem !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 */

.job-search-results-card {
    border: 1px solid var(--card-border-color);
    border-radius: var(--card-border-radius);
    box-shadow: var(--card-box-shadow);
    margin-bottom: 6px;
}
.job-search-results-card-title a {
    color: var(--job-title-colour);
    font-size: 1.375rem;
}
.job-search-results-summary {
    color: var(--color-text-muted);
    font-size: 1rem;
}
.job-component-icon-and-text {
    color: var(--color-text-muted);
}
.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(--color-link);
}
.job-search-results-card {
    background: var(--card-background-color);
}
.job-component-details {
    padding-top: 8px;
}
@media (min-width: 992px) {
    .job-search-results-card-col {
        flex: 0 0 calc(100% / var(--job-search-card-columns));
        max-width: calc(100% / var(--job-search-card-columns));
    }
}
@media (min-width: 768px) {
    .job-search-results-dropdown-filter-col {
        flex: 0 0 calc(100% / var(--job-search-filter-columns));
        max-width: calc(100% / var(--job-search-filter-columns));
    }
}
/** 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: 0.625em;
    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(--color-link);
}
@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-search-results .job-search-collapse {
    font-size: 16px !important;
}
.job-search-results .job-search-collapse:after {
    content: "\F64D";
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: 600 !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -4px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 20px;
    margin-left: 2px;
}
@media (max-width: 767px) {
    .job-search-control input {
        margin-bottom: 8px;
    }
}

/** Job Advert **/

.block-job-description .job-title {
    font-size: 1.625rem !important;
    color: var(--job-title-colour);
}
.job-description a:not(.btn) {
    text-decoration: underline;
    font-weight: 400;
}
.job-component-icon-and-text {
    color: var(--color-text-muted);
}
/* Side panels */

.side-panel {
    background: var(--card-background-color);
    border: 1px solid var(--card-border-color);
    box-shadow: var(--card-box-shadow);
    padding: 40px 25px;
    margin-bottom: 20px;
    border-radius: var(--card-border-radius);
}
.side-panel .job-title {
    font-size: 1.375rem !important;
    font-weight: 500 !important;
    margin-bottom: 10px !important;
}
.side-panel .job-field {
    color: var(--color-text-muted);
    font-size: 0.875rem;
    font-weight: 600;
}
.side-panel h3 {
    font-size: 1.3125rem;
}
.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: var(--card-background-color);
    border: 1px solid var(--card-border-color);
    border-radius: var(--card-border-radius);
    box-shadow: var(--card-box-shadow);
    padding: var(--card-padding);
    width: calc(33.333% - 15px);
    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(--job-title-colour);
    font-size: 1.125rem;
}
.job-list-cards .job-summary {
    padding-top: 12px;
    color: var(--color-text-muted) !important;
}
/* Jobs list content block table style */

.job {
    background: transparent;
    padding: 0px;
}
.job .job-title {
    margin-bottom: 10px;
    color: var(--job-title-colour);
}
.job-summary {
    padding-top: 12px;
    color: var(--color-text-muted) !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: 1.0625rem;
    font-weight: 600;
}
.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: var(--card-background-color);
}
.posts-cards .posts-card {
    border: 1px solid var(--card-border-color);
    border-radius: var(--card-border-radius);
    box-shadow: var(--card-box-shadow);
}
.posts-cards .posts-card-body {
    height: auto;
    padding: 20px 0px;
    background: rgba(236 236 236 / 0%);
}
.posts-cards .posts-card .card-title {
    font-size: 1.125rem;
    font-weight: 600;
}
.posts-cards .posts-card-link {
    color: var(--color-link) !important;
    font-weight: 600;
    font-size: 1rem;
    margin-top: 10px;
    text-decoration: underline;
}
.badge.post-tag {
    background: var(--primary-color) !important;
    padding: 0.375em 0.625em;
    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: 0px;
    border-top-right-radius: 0px;
}
.accordion-item:last-of-type {
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}
.accordion-item {
    color: var(--color-text);
    background-color: #FFFFFF;
    border: 1px solid #333333;
    border-radius: 0px;
    overflow: hidden;
}
.accordion-button:not(.collapsed) {
    color: var(--color-text);
    background-color: #FFFFFF;
    box-shadow: unset;
}
.accordion-item:first-of-type .accordion-button {
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}
.accordion-button:focus {
    z-index: 3;
    border-color: transparent;
    outline: 0;
    box-shadow: unset;
}
.accordion-button {
    font-size: 1rem;
    padding: 20px;
    background-color: #FFFFFF;
    border-radius: 0px;
}
.accordion-item:last-of-type .accordion-button.collapsed {
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}
.accordion-body {
    padding: 20px;
    background-color: #FFFFFF;
}
/** 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(--footer-color) !important;
    opacity: 0.85;
}
.social a {
    font-size: 1rem;
    text-decoration: none;
}
/** 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: 0.9375rem;
    }
    #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: 1.375rem;
}
.exit-call-to-action-modal {
  .modal-content {
      border-radius: 8px;
  }
  .modal-header {

  }
  .modal-body {

  }
  .modal-footer {

  }
}
/* 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;
}
.mt-auto .col-md-6, .mt-auto .col-md-8, .mt-auto .col-md-4 {
    margin-top: auto !important;
}
.mb-auto .col-md-6, .mb-auto .col-md-8, .mb-auto .col-md-4 {
    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;
    }
}
.row {
  --bs-gutter-x: var(--theme-gutter-x);
}

/* 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: var(--color-text);
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    margin-right: 8px;
}
.list-item-circle-check li::before {
    content: "\f058";
    color: var(--color-text);
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    margin-right: 8px;
}
.eyebrow h5 {
    background: #fcfcfc;
    display: inline-block;
    padding: 7px 16px;
    font-size: 0.9375rem;
    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>");
    }
}
/** fix for media querries in the builder **/
.page {
    &.editing {
        & .page-row {
            .block-wrapper {
                display: block !important;
            }
        }
    }
}
/** Custom Career Site CSS **/
.nav-link {
  color: var(--light-color) !important;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.hero-banner {
    background:
        linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.2) 100%),
        url(https://d2nc0na9w8r5aj.cloudfront.net/public/uploads/9e4cf9688b57dcba0edc1cf5fd5213a0/images/files/fe970595c7afd1d929e3e20dced5dd16/original/brand-collective-hero.jpg?1776734301);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.job-search-results-card-title a, .job-title {
    color: var(--job-title-colour) !important;
    font-size: 1.25rem;
    text-transform: uppercase;
    font-weight: 700;
}
.job-field {
    color: #1a1a1a;
}
.job-component-icon-and-text {
    font-size: 14px;
}
.job-search-results-summary {
    font-size: 14px;
}
.card-title {
    line-height: .95;
}
.card-footer i {
    display: none;
}
.job-search-results-footer a {
    background: var(--card-background-color);
    color: #1a1a1a;
    font-weight: 700;
    text-transform: capitalize;
    text-decoration: underline;
    text-underline-offset: 6px;
}
.job-search-control .input-group {
    border: 1px solid #CED4DA;
    padding: 6px 6px;
}
.job-search-control input {
    border: none;
}
.job-search-control {
    margin-bottom: 6px;
}
.job-search-dropdown-filters select {
    padding: .85em 0.625em;
}
.job-search-results-content {
    padding-top:15px;
}
.footer-brand-collective {
  background: #000;
  color: #fff;
}

.footer-brand-collective a {
  color: #fff;
  text-decoration: none;
}

.footer-brand-collective a:hover {
  opacity: 0.8;
}

.footer-brand-logo {
  max-width: 110px;
  height: auto;
}

.footer-heading {
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 1rem;
  color: #fff;
}

.footer-links li {
  margin-bottom: 0.75rem;
}

.footer-links a {
  font-size: 0.9rem;
  font-weight: 400;
}

.footer-divider {
  border-top: 1px solid rgba(255,255,255,0.15);
}

.footer-social-link {
  font-size: 1.2rem;
  line-height: 1;
}

.footer-follow-text {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.footer-meta {
  font-size: 0.75rem;
}

@media (min-width: 992px) {
  .footer-links-spaced {
    padding-top: 1.9rem;
  }
}
.site-header-overlay {
    position: relative;
    z-index: 20;
    margin-bottom: -8.5rem;
}
.site-navbar {
    background: transparent;
}
.site-navbar-inner {
    align-items: center;
}


.site-navbar .navbar-collapse {
    flex-grow: 0;
}
.site-navbar-nav {
    align-items: center;
}


.site-navbar-toggler {
    border-color: rgba(255, 255, 255, 0.7);
    padding: 0.4rem 0.55rem;
}
.site-navbar-toggler:focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.2);
}
.hero-banner {
    position: relative;
    padding: clamp(16rem, 28vw, 24rem) 0px clamp(0.5rem, 6vw, 2rem);
    color: var(--light-color);
}
.hero-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(1, 1, 1, 0.42) 0%, rgba(1, 1, 1, 0.18) 45%, rgba(1, 1, 1, 0.1) 100%);
    pointer-events: none;
}
.hero-banner .page-row-inner,
.hero-banner .page-row-container,
.hero-banner .page-row-and-new-button,
.hero-banner .page-row-border,
.hero-banner .block-wrapper,
.hero-banner .block-html,
.hero-banner .page-block {
    position: relative;
    z-index: 1;
}
.hero-banner .page-row-border {
    align-items: end;
    row-gap: var(--bs-spacer-4);
}
.hero-banner h1 {
    margin: 0;
    color: var(--light-color);
    font-size: clamp(4rem, 9vw, 6.8rem);
    line-height: 0.9;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
.hero-banner p {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .site-header-overlay {
        margin-bottom: -6.5rem;
    }
    .hero-banner .page-row-border {
        align-items: start;
    }
}