/* =============================================================
   Zenda — Byner Integration · vacancy front-end styles

   Plain CSS — no build step. Edit this file directly.
   Brand values live in :root below — change them in one place
   to match the zenda.nl theme.
   ============================================================= */

:root {
	--zb-accent: #f6d435;
	/* primary / buttons / links     */
	--zb-accent-hover: #d1af11;
	/* hover state                   */
	--zb-link: #dd1520;
	/* links + inline emphasis (red) */

	/* ---- Header  ---- */
	--zb-dark: #1d1d1d;
	/* header + process background    */
	--zb-dark-text: #f2f5f7;
	/* text on dark (Zenda athensGray)*/

	/* ---- Neutrals ---- */
	--zb-text: #1a1a1a;
	--zb-text-soft: #3d3d3d;
	--zb-muted: #6a6a6a;
	--zb-border: #e2e2e2;
	--zb-bg-soft: #f2f5f7;
	/* athensGray — top bar + form (Zenda) */
	--zb-bg-info: #f2f5f7;
	/* light grey content bg (Zenda)  */

	/* ---- Layout ---- */
	--zb-max-width: 1140px;
	--zb-single-width: 820px;
	--zb-gap: 24px;
	--zb-radius: 0;
	--zb-sticky-top: var(--header-height, 102px);
	/* prefers theme --header-height when set */
}

/* =============================================================
   Shared button
   ============================================================= */
.zb-card-cta,
.zb-filters button,
#zb-apply .gform_button {
	display: inline-block;
	padding: 12px 22px;
	background: var(--zb-accent);
	color: #fff;
	border: 0;
	border-radius: var(--zb-radius);
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: background .15s ease;
}

.zb-card-cta:hover,
.zb-card-cta:focus,
.zb-filters button:hover,
.zb-filters button:focus,
#zb-apply .gform_button:hover,
#zb-apply .gform_button:focus {
	background: var(--zb-accent-hover);
	color: #fff;
}

/* =============================================================
   Archive (vacancy list) — layout inspired by Zenda's Recruitee
   overview: dark header + dark filter sidebar + vacancy cards
   ============================================================= */

/* ---- Dark header with eyebrow + title ---- */
.zb-archive-heading {
	background: var(--zb-dark);
	color: var(--zb-dark-text);
	padding: 70px 0 90px;
	text-align: center;
}

.zb-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--zb-dark-text);
	margin: 0 0 14px;
}

.zb-eyebrow::before {
	content: "";
	width: 12px;
	height: 12px;
	background: var(--zb-link, #dd1520);
	display: inline-block;
}

.zb-archive-title {
	font-size: clamp(30px, 5vw, 54px);
	line-height: 1.02;
	font-style: italic;
	font-weight: 900;
	text-transform: uppercase;
	margin: 0;
	color: var(--zb-dark-text);
}

/* ---- Body: sidebar + list ---- */
.zb-archive-body {
	background: var(--zb-bg-info);
	padding: 60px 0 90px;
}

.zb-archive-grid {
	display: grid;
	grid-template-columns: 320px 1fr;
	gap: 40px;
	align-items: start;
}

/* ---- Filter sidebar (dark) ---- */
.zb-filter-side {
	position: sticky;
	top: calc(var(--zb-sticky-top) + 20px);
}

.zb-filter-form {
	background: var(--zb-dark);
	color: var(--zb-dark-text);
	padding: 28px 24px;
	border-radius: var(--zb-radius);
}

.zb-filter-head {
	font-size: 26px;
	font-weight: 900;
	font-style: italic;
	padding-bottom: 14px;
	margin-bottom: 18px;
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

.zb-filter-group+.zb-filter-group {
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, .12);
}

/* collapsible group header (button with minus/plus icon, like Zenda) */
.zb-filter-group-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0;
	margin-bottom: 14px;
	background: none;
	border: 0;
	color: inherit;
	cursor: pointer;
	text-align: left;
}

.zb-filter-group-title {
	font-size: 15px;
	font-weight: 700;
	font-style: italic;
}

/* minus / plus icon drawn in CSS */
.zb-filter-group-icon {
	position: relative;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.zb-filter-group-icon::before,
.zb-filter-group-icon::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 16px;
	height: 2px;
	background: currentColor;
	transition: transform .2s ease;
}

/* vertical bar — hidden when expanded (shows minus), shown when collapsed (shows plus) */
.zb-filter-group-icon::after {
	transform: rotate(90deg);
	opacity: 0;
}

.zb-filter-group.is-collapsed .zb-filter-group-icon::after {
	opacity: 1;
}

/* collapse the list */
.zb-filter-list {
	list-style: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
	transition: max-height .25s ease, opacity .2s ease;
	max-height: 1000px;
	opacity: 1;
}

.zb-filter-group.is-collapsed .zb-filter-list {
	max-height: 0;
	opacity: 0;
}

.zb-filter-item {
	margin-bottom: 10px;
}

.zb-filter-item label {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	font-size: 15px;
}

.zb-filter-form .zb-filter-item input[type="checkbox"] {
	display: inline-block;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	margin: 0;
	padding: 0;
	border: 1px solid #fff;
	border-radius: 3px;
	cursor: pointer;
	position: relative;
	vertical-align: middle;
	transition: background .15s ease, border-color .15s ease;
}


.zb-filter-form .zb-filter-item input[type="checkbox"]:checked {
	background: var(--zb-link, #dd1520);
	border-color: var(--zb-link, #dd1520);
}

.zb-filter-form .zb-filter-item input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 6px;
	width: 4px;
	height: 9px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* keyboard focus visibility */
.zb-filter-form .zb-filter-item input[type="checkbox"]:focus-visible {
	outline: 2px solid var(--zb-accent);
	outline-offset: 2px;
}

.zb-filter-label {
	flex: 1;
}

.zb-filter-count {
	color: rgba(255, 255, 255, .6);
	font-size: 14px;
}

.zb-filter-submit {
	margin-top: 18px;
	width: 100%;
	padding: 10px;
	background: var(--zb-accent);
	color: var(--zb-dark);
	border: 0;
	border-radius: var(--zb-radius);
	font-weight: 700;
	cursor: pointer;
}

.zb-filter-reset {
	display: inline-block;
	margin-top: 16px;
	font-size: 14px;
	color: rgba(255, 255, 255, .7);
	text-decoration: underline;
}

.zb-filter-reset:hover {
	color: #fff;
}

/* ---- Vacancy cards (rows) ---- */
.zb-vacancy-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.zb-vacancy-row {
	background: #fff;
	border-radius: var(--zb-radius);
	padding: 28px 32px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .06);
}

.zb-row-title {
	font-size: clamp(20px, 2.4vw, 26px);
	font-style: italic;
	font-weight: 900;
	margin: 0 0 10px;
}

.zb-row-title a {
	color: var(--zb-link, #dd1520);
	text-decoration: none;
}

.zb-row-title a:hover {
	text-decoration: underline;
}

.zb-row-excerpt {
	color: var(--zb-text-soft);
	font-size: 15px;
	line-height: 1.6;
	margin-bottom: 18px;
}

.zb-row-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 24px;
	margin-bottom: 20px;
}

.zb-row-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 500;
	color: var(--zb-text);
}

.zb-row-meta-item svg {
	color: var(--zb-link, #dd1520);
	flex-shrink: 0;
}

.zb-row-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/* ---- Pagination + empty state ---- */
.zb-pagination {
	margin-top: 32px;
}

.zb-pagination .page-numbers {
	display: inline-block;
	padding: 8px 14px;
	margin: 0 2px;
	background: #fff;
	border: 1px solid var(--zb-border);
	border-radius: var(--zb-radius);
	text-decoration: none;
	color: var(--zb-text);
}

.zb-pagination .page-numbers.current {
	background: var(--zb-accent);
	color: var(--zb-dark);
	border-color: var(--zb-accent);
	font-weight: 700;
}

.zb-no-results {
	background: #fff;
	border-radius: var(--zb-radius);
	padding: 40px;
	text-align: center;
}

.zb-no-results p {
	margin: 0 0 16px;
	font-size: 16px;
}

/* =============================================================
   Single vacancy — typography/spacing match theme single-vacancy_pt
   (GoodProWide loads via theme dist/styles.css — do not add @font-face here)
   ============================================================= */

.single-vacancy > .body {
	overflow: visible;
}

/* Mirror body + vacancysingle__content from theme _typography / _vacancysingle */
.zb-single-pt {
	font-family: "GoodProWide", Helvetica, Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	color: #000;
}

.zb-container {
	max-width: var(--zb-max-width);
	margin: 0 auto;
	padding-left: calc(var(--bs-gutter-x, 32px) * 0.5);
	padding-right: calc(var(--bs-gutter-x, 32px) * 0.5);
}

/* ---- Dark header (header-new-section look) ---- */
.zb-vacancy-heading {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 364px;
	overflow: hidden;
	background: var(--zb-dark);
	color: var(--zb-dark-text);
	padding: 80px 0;
	text-align: center;
}

.zb-vacancy-heading::before,
.zb-vacancy-heading::after {
	position: absolute;
	background-repeat: no-repeat;
	background-position: center;
	content: "";
	pointer-events: none;
}

.zb-vacancy-heading::before {
	top: 0;
	left: 0;
	width: 405px;
	height: 743px;
	background-image: var(--zb-header-left, none);
}

.zb-vacancy-heading::after {
	top: 0;
	right: 0;
	width: 500px;
	height: 1040px;
	background-image: var(--zb-header-right, none);
	background-size: 500px 1040px;
}

.zb-vacancy-heading-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.zb-vacancy-title {
	margin: 0 0 16px;
	font-size: 48px;
	font-weight: 900;
	font-style: italic;
	line-height: 1;
	color: #fff;
}

.zb-vacancy-heading .zb-btn {
	margin-top: 50px;
}

/* ---- Buttons (theme .btn look: yellow + arrow) ---- */
.zb-btn {
	position: relative;
	display: inline-flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	height: 47px;
	padding: 16px 20px;
	background: var(--zb-accent);
	color: var(--zb-dark);
	border: 0;
	border-radius: var(--zb-radius);
	font-weight: 600;
	font-size: 16px;
	line-height: 1.08;
	text-decoration: none;
	cursor: pointer;
	transition: background .15s ease, color .15s ease;
}

.zb-btn::after {
	width: 25px;
	height: 25px;
	background-image: var(
		--zb-btn-arrow,
		url("data:image/svg+xml,%3Csvg width='29' height='29' viewBox='0 0 29 29' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.6038 9.2243V10.4949H17.5976L8.73115 19.3613L9.61503 20.2452L18.4815 11.3788V17.3726H19.7521V9.85959L19.7383 9.23811L19.1168 9.2243H11.6038Z' fill='%231D1D1D'/%3E%3C/svg%3E")
	);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	pointer-events: none;
	transition: transform .5s ease;
}

.zb-btn:hover,
.zb-btn:focus {
	background: var(--zb-accent-hover);
	color: var(--zb-dark);
}

.zb-btn:hover::after,
.zb-btn:focus::after {
	transform: rotate(45deg);
}

/* ---- Sticky top bar ---- */
.zb-top-bar {
	position: sticky;
	top: var(--zb-sticky-top);
	z-index: 10;
	padding: 10px 0;
	background: var(--zb-bg-soft);
	border-bottom: 1px solid rgba(0, 0, 0, .25);
	transition: transform .3s ease-in-out, opacity .3s ease-in-out;
}

.zb-top-bar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}

.zb-top-bar-labels {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	flex: 1;
}

.zb-top-bar-label {
	display: inline-flex;
	align-items: center;
	font-weight: 500;
	font-size: 16px;
	line-height: 26px;
	color: #000;
}

.zb-top-bar-label svg {
	flex-shrink: 0;
	width: 20px;
	height: 25px;
	margin-right: 8px;
	object-fit: contain;
}

/* divider between labels */
.zb-top-bar-label:not(:last-of-type) {
	position: relative;
	margin-right: 24px;
	padding-right: 24px;
}

.zb-top-bar-label:not(:last-of-type)::after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 16px;
	background: #e2e3e3;
	transform: translateY(-50%);
	content: "";
}

.zb-top-bar .zb-btn {
	display: block;
}

/* ---- Body: two-column ---- */
.zb-vacancy-info {
	padding: 80px 0 100px;
	background: var(--zb-bg-info);
}

.zb-info-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 0 30px;
	align-items: start;
}

.zb-info-main {
	min-width: 0;
}

.zb-content {
	margin-bottom: 0;
}

.zb-content + .zb-content {
	margin-top: 24px;
}

/* theme h2 / vacancysingle__h2 */
.zb-content h2 {
    font-size: 22px;
    margin: 0 0 12px;
    color: var(--zb-dark);
}

.zb-content strong {
	font-weight: 700;
	font-size: 20px;
	font-style: italic;
	line-height: 30px;
}

.zb-content p {
	margin-top: 0;
	margin-bottom: 9px;
	line-height: 26px;
}

.zb-content p:empty {
	display: none;
}

.zb-content ul {
	margin-bottom: 24px;
	padding-left: 20px;
	line-height: 26px;
}

/* contact sidebar — sticky on desktop */
.zb-info-side {
	position: sticky;
	top: calc(var(--zb-sticky-top) + 100px);
	margin-left: 30px;
}

.zb-contact-block {
	width: 100%;
	overflow: hidden;
}

.zb-contact-photo {
	display: block;
	width: 100%;
	height: 210px;
	object-fit: cover;
}

.zb-contact-block-body {
	padding: 24px;
	color: #fff;
	background: var(--zb-dark);
}

.zb-contact-name {
	margin-bottom: 18px;
	font-weight: 900;
	font-size: 24px;
	font-style: italic;
	line-height: 1.5;
}

.zb-contact-description {
	margin-bottom: 18px;
	font-size: inherit;
	font-weight: 400;
	line-height: 26px;
}

.zb-contact-description p {
	margin-top: 0;
	margin-bottom: 9px;
}

.zb-contact-description p:last-child {
	margin-bottom: 0;
}

.zb-btn-contact {
	display: flex;
	width: 100%;
	margin: 0 auto 16px;
	text-align: center;
}

.zb-btn-contact:last-child {
	margin-bottom: 8px;
}

/* mail / phone icons (Font Awesome when theme loads it; CSS fallback otherwise) */
.zb-btn-mail::after,
.zb-btn-phone::after {
	width: auto;
	height: auto;
	margin-right: 8px;
	background-image: none;
	font-family: "Font Awesome 5 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", sans-serif;
	font-weight: 900;
	font-style: normal;
	transform: scaleX(-1);
	content: "\f0e0";
}

.zb-btn-phone::after {
	content: "\f095";
}

.zb-btn-mail:hover::after,
.zb-btn-phone:hover::after,
.zb-btn-mail:focus::after,
.zb-btn-phone:focus::after {
	transform: scaleX(-1);
}

/* ---- Process section ---- */
.zb-vacancy-process {
	padding: 70px 0;
	color: var(--zb-dark-text);
	text-align: center;
	background: var(--zb-dark);
}

.zb-process-title {
	margin: 0 0 16px;
	color: #f2f5f7;
	font-weight: 900;
	font-size: 32px;
	font-style: italic;
	line-height: 1.5;
	text-transform: uppercase;
}

.zb-process-description {
	max-width: 720px;
	margin: 0 auto;
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
}

.zb-process-steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	justify-content: center;
	margin-top: 50px;
}

.zb-process-step-name {
	margin-bottom: 8px;
	font-weight: 900;
	font-size: 16px;
	font-style: italic;
	line-height: 26px;
}

.zb-process-step-icon {
	width: 40px;
	height: 40px;
	margin: 0 auto 12px;
	object-fit: contain;
}

.zb-process-step-desc {
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
}

/* ---- Application form section ---- */
.zb-vacancy-form {
	padding: 93px 0;
	background: var(--zb-bg-soft);
	scroll-margin-top: 170px;
}

.zb-vacancy-form h2 {
	margin: 0 0 16px;
	color: #1d1d1d;
	font-weight: 900;
	font-size: 40px;
	font-style: italic;
	line-height: 1.5;
	text-align: center;
	text-transform: uppercase;
}

.zb-form-narrow {
	max-width: 720px;
}

.zb-vacancy-info-form {
	margin-top: 40px;
}

.zb-vacancy-form fieldset.field_description_below {
	display: flex;
}

.zb-vacancy-form .gfield--type-hidden {
	display: none;
}

.zb-vacancy-form .gform_submission_error {
	font-size: 16px;
	color: var(--zb-link);
}

/* GF field layout — mirrors theme single-vacancy form rules */
.zb-vacancy-form .gform_wrapper .gfield {
	width: 100%;
}

@media (min-width: 992px) {
	.zb-vacancy-form .gform_wrapper .gfield:not(.gfield--type-textarea):not(.gfield--type-html):not(.gfield--type-fileupload):not(.gfield--width-full) {
		width: 50%;
	}
}

.zb-vacancy-form .gform_wrapper .gfield_label {
	position: relative;
	top: unset;
	left: unset;
	color: var(--zb-dark) !important;
	font-weight: 900;
	font-style: italic;
	transform: none;
}

.zb-vacancy-form .gform_wrapper .gfield_label.label--active,
.zb-vacancy-form .gform_wrapper .gfield_label.gfield_label_before_complex {
	color: #dd1520 !important;
	font-size: 16px;
}

.zb-vacancy-form .gform_wrapper .ginput_container input:not([type="radio"]):not([type="checkbox"]):not([type="file"]),
.zb-vacancy-form .gform_wrapper .ginput_container textarea,
.zb-vacancy-form .gform_wrapper .ginput_container select {
	font-family: inherit;
	font-size: 16px;
	font-weight: 400;
	font-style: normal;
	line-height: 26px;
	border-color: #1d1d1d;
	border-radius: 0;
}

.zb-vacancy-form .gform_wrapper .ginput_container input[type="radio"] + label {
	padding-left: 32px;
	font-weight: 400;
}

.zb-vacancy-form .gform_wrapper .ginput_container input[type="radio"] + label::before {
	width: 22px;
	height: 22px;
	margin-right: 8px;
	background-color: #fff;
	border: 1px solid #1d1d1d;
}

.zb-vacancy-form .gform_wrapper .ginput_container input[type="radio"]:checked + label::after {
	position: absolute;
	top: 50%;
	left: 4px;
	width: 13px;
	height: 13px;
	border-radius: 90px;
	transform: scale(1) translate(0, -50%);
	transition: none;
}

.zb-vacancy-form .gform_wrapper .gfield--type-fileupload .ginput_container_file .input_file_wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 9px 15px;
}

.zb-vacancy-form .gform_wrapper .gfield--type-fileupload .ginput_container_file .input_file_wrapper::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	background-image: var(--zb-upload-icon, none);
	background-repeat: no-repeat;
	background-position: right 15px top 50%;
	background-size: 18px 18px;
	border: 1px solid #1d1d1d;
	content: "";
}

.zb-vacancy-form .gform_wrapper .gfield--type-fileupload .input_file_placeholder {
	position: absolute;
	top: 50%;
	left: 15px;
	z-index: 1;
	margin-left: 0;
	color: #8e8e8e;
	font-size: 16px;
	transform: translateY(-50%);
	cursor: pointer;
}

.zb-vacancy-form .gform_wrapper .gfield--type-fileupload input[type="file"] {
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
	opacity: 0;
}

.zb-vacancy-form .gform_wrapper .gfield.recruitee-open-question-field-boolean,
.zb-vacancy-form .gform_wrapper .gfield--width-full {
	width: 100%;
}

.zb-vacancy-form .gform_wrapper .gform_button,
.zb-vacancy-form .gform_wrapper input[type="submit"] {
	display: inline-flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	height: 47px;
	padding: 16px 20px;
	background: var(--zb-accent);
	color: var(--zb-dark);
	border: 0;
	border-radius: 0;
	font-weight: 600;
	font-size: 16px;
	cursor: pointer;
}

.zb-vacancy-form .gform_wrapper .gform_button:hover,
.zb-vacancy-form .gform_wrapper input[type="submit"]:hover {
	background: var(--zb-accent-hover);
}

/* =============================================================
   Responsive
   ============================================================= */

/* tablet and down — collapse two-column + process; sticky bar → bottom */
@media (max-width: 991px) {
	.zb-info-grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.zb-info-side {
		position: static;
		margin-left: 0;
	}

	.zb-process-steps {
		grid-template-columns: 1fr;
	}

	.zb-vacancy-title {
		margin-top: 40px;
		margin-bottom: 30px;
		text-align: center;
	}

	.zb-vacancy-heading .zb-btn {
		margin-top: 0;
	}

	.zb-content h2 {
		font-weight: 700;
		font-size: 26px;
	}

	.zb-vacancy-form h2 {
		font-size: clamp(20px, 7vw, 35px);
	}

	/* sticky bar moves to the bottom on mobile (like Zenda) */
	.zb-top-bar {
		position: fixed;
		top: auto;
		bottom: 0;
		left: 0;
		width: 100%;
	}

	.zb-single-pt {
		padding-bottom: 88px;
	}

	.zb-top-bar-inner {
		flex-direction: column;
		justify-content: center;
	}

	.zb-top-bar .zb-btn {
		margin: 0 auto;
	}

	/* archive: filter sidebar moves above the list, loses sticky */
	.zb-archive-grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.zb-filter-side {
		position: static;
	}
}

@media (max-width: 600px) {

	/* archive list single column */
	.zb-list {
		grid-template-columns: 1fr;
	}

	.zb-filters {
		flex-direction: column;
	}

	.zb-filters select,
	.zb-filters input[type="text"] {
		width: 100%;
	}

	.zb-vacancy-heading {
		min-height: 280px;
		padding: 50px 0;
	}

	.zb-vacancy-heading::before,
	.zb-vacancy-heading::after {
		opacity: .35;
	}

	.zb-vacancy-info {
		padding: 50px 0 80px;
	}

	.zb-vacancy-form {
		padding: 60px 0;
	}
}