/* Theme style */

@media (max-width: 670px) {
	:root {
		--wp--custom--header-height--top: 70px;
	}
}

/* ==========================================================================
Base styles
========================================================================== */

/* Headings
========================================================================== */

/* Paragraphs
========================================================================== */

p.is-style-eyebrow {
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 500;
	margin-bottom: 1em;
}

:is(.has-brand-primary-background-color, .has-black-background-color) .is-style-eyebrow {
	color: var(--wp--preset--color--white);
}

.is-style-tag {
	line-height: 1;
	max-width: fit-content;
	color: var(--wp--preset--color--brand-secondary);
	border: 1px solid currentColor;
	border-radius: 6px;
	font-weight: inherit;
	padding: 6px var(--wp--preset--spacing--xxs);
	font-size: var(--wp--preset--font-size--xs);
	margin-bottom: var(--wp--preset--spacing--m);
	text-decoration: none;
}

:is(.has-brand-primary-background-color, .has-black-background-color) :is(.is-style-tag) {
	color: var(--wp--preset--color--brand-accent);
	border-color: currentColor;
}

p.has-heading-display-font-family {
	line-height: 1.2;
	font-weight: 700;
}

h1 + p:first-of-type {
    font-size: var(--wp--preset--font-size--m);
}

/* Typography spacing
========================================================================== */

h1 ~ h2 {
	margin-top: var(--wp--preset--spacing--xl);
}

h2 ~ h3 {
	margin-top: var(--wp--preset--spacing--l);
}

p ~ h2 {
	margin-top: var(--wp--preset--spacing--xl);
}

p ~ h3 {
	margin-top: var(--wp--preset--spacing--l);
}

p ~ :is(figure, iframe, video, table) {
	margin-top: var(--wp--preset--spacing--l);
	margin-bottom: var(--wp--preset--spacing--l);
}

.wp-block-buttons + p {
	margin-top: var(--wp--preset--spacing--l);
}

:is(p, .wp-block-heading) + .qt-accordion {
	margin-top: var(--wp--preset--spacing--l);
}

.qt-accordion + :is(p, .wp-block-heading) {
	margin-top: var(--wp--preset--spacing--l);
}

.qt-accordion + .qt-accordion {
	margin-top: var(--wp--preset--spacing--l);
}

.wp-block-heading ~ :is(figure, iframe, video, table) {
	margin-top: var(--wp--preset--spacing--l);
}

:is(figure, iframe, video, table, .qt-accordion) + .wp-block-heading:is(h2) {
	margin-top: var(--wp--preset--spacing--xl);
}

.is-style-tag ~ .wp-block-heading {
	margin-top: var(--wp--preset--spacing--m);
}

.wp-block-post-featured-image ~ .is-style-tag {
	margin-top: var(--wp--preset--spacing--m);
}

p ~ .qt-section {
	margin-top: var(--wp--preset--spacing--xl) !important;
}

/* Links
========================================================================== */

a:hover {
	text-decoration-style: solid;
	opacity: 1;
}

/* Arrow link */

/* Arrow link inverted */

/* Lists
========================================================================== */

:is(.wp-block-list, ul, ol) + .wp-block-heading {
	margin-top: var(--wp--preset--spacing--xl);
}

:is(ul):not(.menu, .sub-menu, .splide__list, .splide__pagination, .post-meta__categories) {
	list-style: none;
	margin-left: 0;
}

:is(ul):not(.menu, sub-menu, .splide__list, .splide__pagination, .post-meta__categories) li {
	position: relative;
	margin-bottom: 0.75em;
	padding-left: 1.75em;
}

:is(ul):not(.menu, .sub-menu, .splide__list, .splide__pagination, .post-meta__categories) li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.25em;
	width: 1em;
	height: 1em;
	background-color: var(--wp--preset--color--brand-secondary);
	mask: url("data:image/svg+xml,%3Csvg%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2017%2017%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cmask%20id%3D%22mask0_1124_1171%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2217%22%20height%3D%2218%22%3E%3Crect%20y%3D%220.0078125%22%20width%3D%2217%22%20height%3D%2217%22%20fill%3D%22%23D9D9D9%22%2F%3E%3C%2Fmask%3E%3Cg%20mask%3D%22url(%23mask0_1124_1171)%22%3E%3Cpath%20d%3D%22M7.02069%2013.1663C6.63016%2013.5568%205.997%2013.5568%205.60647%2013.1663L1.86244%209.42228C1.51125%209.0711%201.51125%208.50171%201.86244%208.15053C2.21362%207.79934%202.78301%207.79934%203.13419%208.15053L5.60647%2010.6228C5.997%2011.0133%206.63016%2011.0133%207.02069%2010.6228L13.866%203.77748C14.2172%203.42629%2014.7866%203.42629%2015.1378%203.77748C15.489%204.12866%2015.489%204.69805%2015.1378%205.04923L7.02069%2013.1663Z%22%20fill%3D%22black%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

:is(.has-brand-primary-background-color, .has-black-background-color)
	:is(ul, ol):not(.menu, .sub-menu, .splide__list, .splide__pagination, .post-meta__categories)
	li::before {
	background-color: var(--wp--preset--color--brand-accent);
}

/* Buttons
========================================================================== */

.wp-block-buttons {
	gap: var(--wp--style--block-gap);
}

.wp-block-button .wp-block-button__link {
	justify-content: space-between;
}

.wp-block-button .wp-block-button__link::after {
	content: url(data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22black%22%20xmlns%3D%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M12.5146%208.76945H0.0742188V7.23069H12.5146L6.67114%201.38725L7.76802%200.306274L15.4618%208.00007L7.76802%2015.6939L6.67114%2014.6129L12.5146%208.76945Z%22/%3E%3C/svg%3E);
	border-left: 1px solid rgba(0, 0, 0, 0.3);
	padding-left: var(--wp--preset--spacing--xs);
	margin-left: var(--wp--preset--spacing--xs);
	height: 20px;
	display: inline-flex;
	align-items: center;
	line-height: 0;
	filter: invert(1);
}

/* Primary button (core) */

/* Secondary button */
.is-style-button-secondary .wp-block-button__link {
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

.is-style-button-secondary .wp-block-button__link::after {
	filter: invert(1);
}

/* Inverted button */
.is-style-button-inverted .wp-block-button__link::after {
	filter: invert(0);
}

/* Outline button (core) */
.is-style-outline .wp-block-button__link {
	background-color: transparent;
	color: var(--wp--preset--color--black);
	border-color: var(--wp--preset--color--black);
}

.is-style-outline .wp-block-button__link::after {
	filter: invert(0);
}

/* Outline button inverted */
.is-style-button-outline-inverted .wp-block-button__link {
	background-color: transparent;
	color: var(--wp--preset--color--white);
	border-color: var(--wp--preset--color--white);
}

/* Text button */
.is-style-button-text .wp-block-button__link {
	text-decoration: none;
}

.is-style-button-text .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22black%22%20xmlns%3D%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M12.5146%208.76945H0.0742188V7.23069H12.5146L6.67114%201.38725L7.76802%200.306274L15.4618%208.00007L7.76802%2015.6939L6.67114%2014.6129L12.5146%208.76945Z%22/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	margin-left: var(--wp--preset--spacing--xs);
	transition: transform linear 100ms;
}

.is-style-button-text .wp-block-button__link:hover::after,
.is-style-button-text .wp-block-button__link:focus::after {
	transform: translateX(4px);
}

/* Text button inverted */
.is-style-button-text-inverted .wp-block-button__link {
	text-decoration: none;
}

.is-style-button-text-inverted .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22black%22%20xmlns%3D%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M12.5146%208.76945H0.0742188V7.23069H12.5146L6.67114%201.38725L7.76802%200.306274L15.4618%208.00007L7.76802%2015.6939L6.67114%2014.6129L12.5146%208.76945Z%22/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	margin-left: var(--wp--preset--spacing--xs);
	transition: transform linear 100ms;
	filter: invert(1);

	border: 0;
	padding: 0;
}

.is-style-button-text-inverted .wp-block-button__link:hover::after,
.is-style-button-text-inverted .wp-block-button__link:focus::after {
	transform: translateX(4px);
}

/* Download buttons (group) */
.is-style-download-buttons {
	margin-top: var(--wp--preset--spacing--l);
	gap: var(--wp--preset--spacing--s);
}

.is-style-download-buttons .wp-block-image img {
	border-radius: 0;
}

/* Inputs
========================================================================== */

/* Label */
label {
	font-size: var(--wp--preset--font-size--xs);
}

/* Input fields */
input,
textarea,
select {
	border-radius: 6px;
}

/* Select */

/* Checkbox & radio button */

/* Focus and active statements */

/* Acceptance */

/* Submit */
[type="submit"],
.submit [type="submit"] {
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--s);
	border-radius: 6px;
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--button);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 400;
}

/* Contact form 7
========================================================================== */

.wpcf7-radio label,
.wpcf7-checkbox label,
.wpcf7-acceptance label {
	align-items: flex-start;
}

.wpcf7-form-control-wrap:has(.wpcf7-checkbox) {
	margin-top: 0.75em;
}

.submit [type="submit"] {
	width: 100%;
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white) !important;
}

.wpcf7-form label {
	font-size: var(--wp--preset--font-size--xs);
}

.wpcf7-form :is(input, textarea, radio, checkbox) {
	font-size: var(--wp--preset--font-size--xs);
	background-color: var(--wp--preset--color--white);
}

/* Media
========================================================================== */

/* Images */
.wp-block-post-featured-image img,
.wp-block-image img {
	border-radius: 20px;
}

.wp-block-image .aligncenter,
.wp-block-image .alignleft,
.wp-block-image .alignright,
.wp-block-image.aligncenter,
.wp-block-image.alignleft,
.wp-block-image.alignright {
	display: block;
}

/* Video */

/* Iframe & embedded */
.wp-block-embed {
	overflow-wrap: break-word;
	border-radius: 20px;
	overflow: hidden;
}

/* Files */
.wp-block-file:not(.wp-element-button) {
	font-size: inherit;
}

.wp-block-file:not(:last-child) {
	margin-bottom: var(--wp--preset--spacing--s);
}

/* ==========================================================================
Layout
========================================================================== */

/* Paddings and margins
========================================================================== */

.qt-section.has-background .qt-section.has-background {
	padding: 0;
}

.qt-section.has-brand-primary-background-color + .qt-section.has-brand-primary-background-color {
    padding-top: 0;
}

.qt-section.has-background,
.qt-section__inner.has-background {
	padding: var(--wp--preset--spacing--xxl) var(--wp--preset--spacing--m);
}

.qt-section__inner.has-background,
.qt-container.has-background {
	padding: var(--wp--preset--spacing--m);
	border-radius: 20px;
}

.qt-section.has-background:has(+ .qt-section.has-background) {
	margin-bottom: 0;
}

@media (max-width: 768px) {
	.qt-section,
	.qt-section.has-background,
	.qt-section__inner.has-background {
		padding-left: var(--wp--preset--spacing--s);
		padding-right: var(--wp--preset--spacing--s);
	}
}

/* Colors
========================================================================== */

:is(.has-brand-primary-background-color, .has-black-background-color) * {
	color: var(--wp--preset--color--white);
}

:is(.has-brand-primary-background-color, .has-black-background-color) .splide .splide__arrow {
	background-color: var(--wp--preset--color--white);
}

:is(.has-brand-primary-background-color, .has-black-background-color) .splide .splide__arrow img {
	filter: invert(0);
}

:is(.has-brand-primary-background-color, .has-black-background-color) .splide__arrow:hover:not(:disabled) {
	background-color: var(--wp--preset--color--white);
}

.qt-container[style="background-color:#F9F9F9"] * {
    color: var(--wp--preset--color--black);
}

/* Max widths
========================================================================== */

:is(.page-template-subpage-tenant, .page-template-subpage) .is-style-breadcrumbs > .qt-section__inner {
	max-width: var(--wp--custom--maxwidth--m);
}

/* Grids
========================================================================== */

.grid-col-1 {
	grid-gap: calc(2 * var(--wp--style--block-gap));
}

/* ==========================================================================
Announcement bar
========================================================================== */

.announcement-bar {
    background-color: var(--wp--preset--color--accent-1);
    color: var(--wp--preset--color--black);
}

.announcement-bar p, .announcement-bar a {
	color: currentcolor;
}

.announcement-bar__close path {
    fill: var(--wp--preset--color--black);
}

/* ==========================================================================
Top bar
========================================================================== */

.is-style-header-topbar {
	height: var(--wp--custom--header-height--top-bar);
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.is-style-header-topbar .qt-container {
	display: flex;
	justify-content: flex-end;
	gap: var(--wp--style--block-gap);
}

.is-style-header-topbar .menu > .menu-item:not(.mega-menu-item) {
	height: var(--wp--custom--header-height--top-bar);
	display: inline-flex;
	align-items: center;
}

.is-style-header-topbar .menu {
	justify-content: flex-end;
}

/* ==========================================================================
Header
========================================================================== */

.is-style-header-top {
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.is-style-header-top .grid {
	gap: calc(2 * var(--wp--style--block-gap));
}

.is-style-header-top .is-style-button-text-inverted .wp-block-button__link {
	color: var(--wp--preset--color--brand-accent);
	font-size: var(--wp--preset--font-size--xs);
	padding-left: 0;
	padding-right: 0;
}

.is-style-header-top .is-style-button-text-inverted .wp-block-button__link:hover {
	text-decoration: underline;
}

.is-style-header-top .is-style-button-text-inverted .wp-block-button__link::after {
	filter: brightness(0) saturate(100%) invert(82%) sepia(35%) saturate(496%) hue-rotate(72deg) brightness(104%)
		contrast(92%);
	width: 12px;
	height: 12px;
	transform: unset;
}

.is-style-header-top .is-style-button-outline-inverted .wp-block-button__link {
	gap: var(--wp--preset--spacing--xs);
	border: 1px solid rgba(255, 255, 255, 0.6);
	height: 40px;
}

.is-style-header-top .is-style-button-outline-inverted .wp-block-button__link::after {
	display: none;
}

header .menu {
	grid-gap: var(--wp--preset--spacing--l);
}

.is-style-header-top .qt-container:has(.mega-menu-mobile) {
	display: flex;
	align-items: center;
	gap: var(--wp--style--block-gap);
}

header .menu .menu-item a,
header .menu .menu-item span {
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--white);
}

header .menu .menu-item a:hover {
	text-decoration: underline;
	text-decoration-thickness: 1px;
}

.mega-menu .mega-menu-item-parent .chevron {
	transition: transform 0.2s ease;
	filter: invert(1);
	transform: rotate(-90deg) scale(1.25) !important;
}

header .menu > .menu-item > :is(a, span) {
	display: inline-block;
	height: auto;
}

header .menu > .menu-item > :is(a, span) img {
	vertical-align: middle;
}

.mega-menu .mega-menu-item-parent .chevron {
	margin-left: var(--wp--preset--spacing--xxs);
	filter: invert(1);
}

@media (max-width: 1100px) {
	.is-style-header-top .grid {
		grid-template-columns: auto 1fr;
		grid-gap: var(--wp--preset--spacing--s);
	}

	.is-style-header-top .qt-container:has(.mega-menu:not(.mega-menu-mobile)) {
		display: none;
	}

	.is-style-header-top .qt-container:has(.mega-menu-mobile) {
		justify-content: flex-end;
	}

	.is-style-header-top .qt-container:has(.mega-menu-mobile) .is-style-button-text-inverted {
		display: none;
	}
}

@media (max-width: 768px) {
	header .wp-block-buttons {
		display: flex;
	}
}

@media (max-width: 480px) {
	/* header .wp-block-button.is-style-button-text-inverted {
		display: none;
	} */

	header .is-style-button-outline-inverted .wp-block-button__link {
		display: none;
	}
}

/* Desktop menu
========================================================================== */

/* Site logo */
.wp-block-site-logo img {
	max-width: 100%;
}

/* Header button */

/* Hamburger icon
========================================================================== */

#toggle-hamburger,
.mega-menu-mobile .mega-menu-btn {
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 6px;
	height: 40px;
	width: 40px;
}

.mega-menu-mobile .mega-menu-btn img {
	filter: invert(1);
}

.mega-menu-mobile .mega-menu-back.mega-menu-back-btn button img {
	transform: scale(1.25) rotate(90deg) !important;
}

.hamburger-icon {
	background-color: transparent;
}

.hamburger-icon::before {
	top: 4.5px;
}

.hamburger-icon:after {
	bottom: 4.5px;
}

/* User toolbar
========================================================================== */

@media (max-width: 1200px) {
	.qt-container:has(.hamburger) .wp-block-buttons {
		margin-right: 0;
	}
}

/* Search bar
========================================================================== */

/* Language switcher
========================================================================== */

.wpml-language-switcher-block {
	flex-wrap: nowrap;
	max-width: max-content;
	gap: var(--wp--preset--spacing--xxs);
}

.wpml-language-switcher-block::before {
	content: url("../images/language.svg");
	line-height: 0;
	filter: brightness(100) invert(1);
}

.wpml-language-switcher-block ul li:not(:last-child) {
	border-right: 1px solid var(--wp--preset--color--white);
	padding-right: var(--wp--preset--spacing--xxs);
	margin-right: var(--wp--preset--spacing--xxs);
}

.wpml-language-switcher-block ul {
	gap: 0 !important;
}

.wpml-language-switcher-block ul li {
	padding: 0;
	margin: 0;
	font-weight: 400;
	letter-spacing: 0.025em;
	font-size: var(--wp--preset--font-size--xs);
}

.wpml-language-switcher-block li::before {
	display: none;
}

.wpml-language-switcher-block ul.isHorizontal li {
	margin: 0 !important;
}

div.wpml-language-switcher-block ul.horizontal-list {
	gap: var(--wp--preset--spacing--xxs) !important;
}

.wpml-language-switcher-block ul li:last-of-type > div {
	border: none;
	padding-right: 0;
}

/* Current, hover language */
[data-wpml="current-language-item"] :is(span, a),
[data-wpml="language-item"] :is(span, a):hover {
	opacity: 1;
	text-decoration: underline;
	text-underline-position: under;
	text-decoration-skip-ink: none;
}

/* ==========================================================================
Footer
========================================================================== */

footer {
	background: url(../images/sbs-pattern-tile.png), var(--wp--preset--color--black) !important;
	background-repeat: repeat;
	background-size: contain;
	background-position: center;
}

.qt-section.is-style-footer-top {
	padding-top: calc(3 * var(--wp--preset--spacing--m));
	padding-bottom: calc(3 * var(--wp--preset--spacing--m));
}

.qt-section.is-style-footer-top .grid {
	grid-template-columns: 1.5fr repeat(3, minmax(0, 1fr));
}

.qt-section.is-style-footer-top img {
	filter: grayscale(1) brightness(100);
}

.qt-section.is-style-footer-bottom .qt-section__inner {
	border-top: 1px solid rgba(255, 255, 255, 0.6);
	padding-top: var(--wp--preset--spacing--m);
	grid-template-columns: auto auto 1fr;
	grid-gap: calc(2 * var(--wp--style--block-gap));
}

footer .wpml-language-switcher-block :is(a, span) {
	color: var(--wp--preset--color--white);
}

footer .wpml-language-switcher-block::before {
	filter: brightness(100) invert(1);
}

.is-style-footer-bottom .qt-container:last-of-type {
	display: flex;
	justify-content: flex-end;
	gap: var(--wp--style--block-gap);
}

.is-style-footer-bottom .qt-container:last-of-type p {
	margin-bottom: 0;
}

@media (max-width: 870px) {
	.qt-section.is-style-footer-top .grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-row-gap: calc(2 * var(--wp--style--block-gap));
	}

	.qt-section.is-style-footer-top .qt-container:has(.wp-block-site-logo) {
		grid-column: 1/-1;
	}
}

@media (max-width: 670px) {
	.qt-section.is-style-footer-top .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.qt-section.is-style-footer-top .qt-container:has(.wp-block-site-logo) {
		grid-column: 1/-1;
	}

	.qt-section.is-style-footer-bottom .wp-block-list {
		justify-content: flex-start;
	}

	.qt-section.is-style-footer-bottom .grid {
		grid-template-columns: 1fr;
		grid-gap: var(--wp--preset--spacing--l);
	}

	.qt-section.is-style-footer-bottom .qt-container:last-of-type {
		display: flex;
		justify-content: flex-start;
	}
}

@media (max-width: 510px) {
	.qt-section.is-style-footer-top .wp-block-site-logo {
		max-width: 200px;
	}

	.qt-section.is-style-footer-top .grid {
		grid-template-columns: minmax(0, 1fr);
		grid-row-gap: calc(1.5 * var(--wp--style--block-gap));
	}
}

/* Navigation
========================================================================== */

footer :where(p) {
	font-size: var(--wp--preset--font-size--xs);
	line-height: 1.5;
	color: var(--wp--preset--color--white);
}

.footer-heading,
.is-style-footer-heading {
	margin-bottom: 1em;
	font-weight: 700;
	font-size: var(--wp--preset--font-size--s);
}

.is-style-footer-bottom p.is-style-footer-heading {
	margin-bottom: 0.75em;
}

.footer-menu .menu {
	display: block;
	line-height: 1.75;
	margin-top: 1em;
	color: var(--wp--preset--color--white);
}

.footer-menu .menu-item a {
	font-size: var(--wp--preset--font-size--xs);
	text-decoration: none;
}

.footer-menu .menu-item a:hover {
	text-decoration: underline;
}

/* Social icons
========================================================================== */

.social-icons {
	display: flex;
	flex-direction: row;
	gap: var(--wp--preset--spacing--s);
}

.social-icons a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 6px;
	line-height: 0;
}

.social-icons a:hover {
	border-color: var(--wp--preset--color--white);
}

/* ==========================================================================
Utility classes
========================================================================== */

/* ==========================================================================
Components and modules
========================================================================== */

/* Card */
.card .card__image-img {
	border-radius: 10px;
}

/* Breadcrumbs
========================================================================== */

.is-style-breadcrumbs {
	padding-top: var(--wp--preset--spacing--l);
	padding-bottom: var(--wp--preset--spacing--l);
}

.is-style-breadcrumbs:has(+ .entry-content > .qt-section.has-background:first-of-type) {
	padding-bottom: var(--wp--preset--spacing--l);
}

/* Separator */
.rank-math-breadcrumb .separator {
	display: inline-block;
	width: 13px;
	height: auto;
	background-image: url(../images/icon-arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	color: transparent;
	margin: 0 var(--wp--preset--spacing--xs);
	vertical-align: bottom;
}
.rank-math-breadcrumb .separator::before {
	content: "";
}

.rank-math-breadcrumb a {
	text-decoration: underline;
	color: currentcolor;
}

/* Pagination
========================================================================== */

.pagination {
	margin-top: calc(2 * var(--wp--style--block-gap));
}

/* Current, hover */
:is(.wp-block-query-pagination, .pagination) .page-numbers.current,
:is(.wp-block-query-pagination, .pagination) .page-numbers:hover {
	background-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
}

.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination-next:hover {
	background-color: var(--wp--preset--color--brand-secondary);
	color: var(--wp--preset--color--white);
}

/* Prev, next */
.pagination .page-numbers,
.wp-block-query-pagination .page-numbers {
	background-color: var(--wp--preset--color--brand-secondary);
	color: var(--wp--preset--color--white);
	border: 1px solid transparent;
	border-radius: 6px;
}

.pagination .page-numbers path {
	fill: var(--wp--preset--color--white);
}

.pagination .page-numbers:hover path {
	fill: var(--wp--preset--color--black);
}

.pagination .page-numbers:is(.prev, .next):hover {
	background-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
}

.wp-block-query-pagination .wp-block-query-pagination-previous,
.wp-block-query-pagination .wp-block-query-pagination-next,
.pagination .page-numbers.prev,
.pagination .page-numbers.next {
	background-color: var(--wp--preset--color--brand-secondary);
	color: var(--wp--preset--color--white);
	border-radius: 6px;
}

/* Accordion
========================================================================== */

.qt-accordion .grid {
	gap: 0;
}

.qt-accordion .accordion-item {
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--neutral-2);
}

.qt-accordion button[data-trigger="accordion-trigger"] {
	background-color: transparent;
	font-size: var(--wp--preset--font-size--s);
	font-family: inherit;
	padding-left: 0;
	padding-right: 0;
}

/* Accordion heading */

/* Accordion content */
.qt-accordion .accordion-content__inner {
	padding-top: 0;
	padding-left: 0;
	padding-right: 0;
}

/* Accordion icon */

/* Tabs
========================================================================== */

/* Splide slider
========================================================================== */

.splide__track .splide__slide {
	margin: 0;
	padding: 0;
}

/* Splide pagination */
.splide .splide__pagination {
	position: relative;
	bottom: 0;
	margin-top: 32px;
	padding: 0;
	display: flex;
	gap: var(--wp--preset--spacing--s);
	padding-right: var(--wp--preset--spacing--m);
}

.splide .splide__pagination li {
	margin: 0;
}

button.splide__pagination__page {
	background-color: var(--wp--preset--color--black);
	width: 12px;
	height: 12px;
	opacity: 1;
	margin: 0;
}

.splide__pagination__page:hover,
.splide__pagination__page.is-active {
	outline: 1px solid currentColor;
	outline-offset: 4px;
	transform: scale(1);
	background-color: currentColor;
}

/* Splide arrows */
.splide .splide__arrow {
	background-color: var(--wp--preset--color--black);
	border-radius: 6px;
	opacity: 1;
	transition: all 150ms linear;
	border: 1px solid transparent;
	height: 40px;
	width: 40px;
}

.splide__arrow:hover:not(:disabled) {
	opacity: 0.6;
	background-color: var(--wp--preset--color--black);
}

.splide .splide__arrow:disabled {
	opacity: 0.6;
}

.splide .splide__arrow img {
	filter: invert(1);
}

/* Slider header */

/* ==========================================================================
Styles for pages, sections, blocks and others.
========================================================================== */

/* Page: Search results 
========================================================================== */

/* Section: Hero
========================================================================== */

.is-style-hero .wp-block-cover {
	padding: var(--wp--preset--spacing--xxl) var(--wp--preset--spacing--m);
	height: calc(100vh - var(--wp--custom--header-height--total));
	align-items: center;
}

.is-style-hero .wp-block-cover .wp-block-cover__background {
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 8.07%, rgba(0, 0, 0, 0) 99.76%);
	opacity: 1 !important;
}

/* Section: Subhero
========================================================================== */

/* Section: Stacked boxes
========================================================================== */

.is-style-text-column:first-child {
	padding-left: 0;
}

/* Section - KPI values
========================================================================== */
.is-style-kpi .grid:not(.grid.grid-col-1) {
	grid-gap: var(--wp--preset--spacing--l);
}

/* Section - Intro with button
========================================================================== */
.is-style-intro-with-button {
	display: grid;
	grid-template-columns: minmax(0, var(--wp--custom--maxwidth--s)) auto;
	grid-column-gap: var(--wp--style--block-gap);
}

.is-style-intro-with-button .wp-block-heading:not(:has(+ p)) {
	margin-bottom: 0;
}

.is-style-intro-with-button p {
	grid-column: 1;
}

.is-style-intro-with-button .wp-block-buttons {
	margin: 0;
	display: flex;
	align-content: flex-end;
	justify-content: flex-end;
}

@media (max-width: 768px) {
	.is-style-intro-with-button {
		grid-template-columns: minmax(0, 1fr);
	}

	.is-style-intro-with-button .wp-block-buttons {
		margin-top: var(--wp--preset--spacing--l);
		justify-content: flex-start;
	}
}

/* Slider - Logos
========================================================================== */

/* Archive: Category
========================================================================== */

.archive .is-style-breadcrumbs {
	padding-bottom: var(--wp--preset--spacing--xxl);
}

/* Page: Articles
========================================================================== */

.articles {
	grid-gap: calc(1.5 * var(--wp--style--block-gap)) var(--wp--style--block-gap);
}

/* Card */
.card--article .card__postmeta {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--s);
}

.card--article .card__title {
	margin-bottom: 0;
	font-size: var(--wp--preset--font-size--s);
}

.card--article .card__postmeta-date {
	color: var(--wp--preset--color--neutral-1);
	text-transform: capitalize;
}

.card--article .card__postmeta-category {
	margin: 0;
	border: 1px solid currentColor;
	color: var(--wp--preset--color--brand-secondary);
}

/* Single: Article
========================================================================== */

/* Post meta */
.single .post-meta__categories {
	margin-left: 0;
}

.single .post-meta__categories::before {
	display: none;
}

.single .post-meta__categories li {
	margin: 0;
}

/* Featured image */
.single .wp-block-post-featured-image img {
	aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
	border-radius: 20px;
}

/* Featured image slider */
.single .featured-image-wrapper .splide__slide img {
	aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
	border-radius: 20px;
	object-fit: cover;
}

/* Featured image buttons */
.featured-image-wrapper {
	position: relative;
}

.featured-image-buttons {
	position: absolute;
	bottom: var(--wp--preset--spacing--m);
	right: var(--wp--preset--spacing--m);
}

/* Link buttons */
.single .wp-block-buttons + .wp-block-post-content {
	margin-top: var(--wp--preset--spacing--l);
}

/* Post content */
.single .wp-block-post-content > :last-child {
	margin-bottom: 0;
}

/* Section: Latest articles
========================================================================== */

.latest-articles.grid {
	grid-template-columns: 2fr repeat(2, minmax(0, 1fr));
	grid-gap: var(--wp--style--block-gap);
}

@media (max-width: 980px) {
	.latest-articles.grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.latest-articles.grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 670px) {
	.latest-articles.grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Section: Employees
========================================================================== */

.employees {
	grid-row-gap: calc(2 * var(--wp--style--block-gap));
}

.card--employee .card__image-img {
	aspect-ratio: var(--wp--custom--aspect-ratio--portrait);
}

.card--employee .card__content [class*="card__"] {
	margin-bottom: 0;
}

.card--employee .card__name {
	margin-bottom: 0.5em !important;
	font-weight: inherit;
	font-size: var(--wp--preset--font-size--m);
	color: var(--wp--preset--color--white);
}

.card--employee .wp-block-buttons {
	margin-top: var(--wp--preset--spacing--m);
}

.card--employee .wp-block-button__link {
	padding: 0;
}

@media screen and (max-width: 670px) {
	.employees {
		grid-row-gap: calc(1.5 * var(--wp--style--block-gap));
	}
}

/* Section: Testimonial slider
========================================================================== */

.slider-testimonials .splide__arrows {
	top: calc(-1 * (3 * var(--wp--style--block-gap)));
}

.card--testimonial {
	display: grid;
	grid-template-columns: 3fr 9fr;
}

.card--testimonial .card__content p:first-of-type {
	font-size: var(--wp--preset--font-size--m);
}

.card--testimonial .card__author {
	flex-direction: column;
	align-items: flex-start;
}

.card--testimonial .card__author-image img {
	aspect-ratio: var(--wp--custom--aspect-ratio--portrait);
	height: 140px;
	width: 120px;
	border-radius: 10px;
}

.card--testimonial .card__author-name,
.card--testimonial .card__author-subheadline {
	font-weight: 400;
	color: currentColor;
}

@media (max-width: 670px) {
	.card--testimonial {
		grid-template-columns: 1fr;
	}

	.card--testimonial .card__content {
		grid-row: 1;
	}
}

/* Block: Slider - Image gallery
========================================================================== */

.qt-section.image-gallery .qt-container {
	grid-column: 1 / -1;
}

.qt-section:has(.slider-image-gallery) .qt-container,
.image-gallery .slider-image-gallery {
	left: 0;
}

.qt-section.image-gallery .splide__arrows {
	top: -4em;
	right: calc((100vw - (var(--wp--custom--maxwidth--default))) / 2);
}

@media (max-width: 1188px) {
	.qt-section.image-gallery .qt-container {
		position: unset;
		left: 0;
	}

	.qt-section.image-gallery .splide__arrows {
		right: var(--wp--preset--spacing--m);
	}
}

.qt-section:has(.slider-image-gallery) {
	padding-right: 0;
	-ms-overflow-style: none;
	scrollbar-width: none;
	overflow-x: hidden;
}

.qt-section:has(.slider-image-gallery) .qt-section__inner {
	display: grid;
	max-width: none;
	grid-column-gap: 0;
	grid-template-columns: 1fr calc(var(--wp--custom--maxwidth--default) + var(--wp--preset--spacing--m)) 1fr;
}

.qt-section:has(.slider-image-gallery) .qt-container {
	grid-column: 2 / -1;
	position: relative;
}

.qt-container:has(.slider-image-gallery) {
	left: var(--wp--preset--spacing--s);
}

.slider-image-gallery {
	grid-column: 2 / -1;
	grid-gap: 0;
	left: calc(-1 * var(--wp--preset--spacing--s));
	position: relative;
}

.slider-image-gallery .splide__list {
	display: flex;
	gap: 0;
}

.slider-image-gallery .splide__track .splide__slide {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--s);
}

.slider-image-gallery .pswp__img {
	width: auto;
	height: auto;
	object-fit: contain;}

.slider-image-gallery .splide__arrows {
	position: absolute;
	width: 115px;
	right: calc((100vw - (var(--wp--custom--maxwidth--default) + var(--wp--preset--spacing--m))) / 2);
	height: fit-content;
	top: -3em;
}

.slider-image-gallery .splide__arrow--next {
	right: 0;
}

.slider-image-gallery .splide__arrow--prev {
	left: 1em;
}

.slider-image-gallery .splide__slide img {
	border-radius: 20px;
	aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
	object-fit: cover;
}

@media (max-width: 1188px) {
	.slider-image-gallery .splide__arrows {
		right: var(--wp--preset--spacing--m);
	}

	.qt-section:has(.slider-image-gallery) .qt-section__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.qt-section:has(.slider-image-gallery) .qt-container {
		grid-column: 1;
	}
}

/* Section: Accordions
========================================================================== */

.accordion-item {
	background-color: transparent;
}

.accordion-item__icon {
	background-color: var(--wp--preset--color--brand-accent);
	border-radius: 6px;
	padding: var(--wp--preset--spacing--xs);
}

button[data-accordion="accordion-trigger"] {
	background-color: transparent;
	padding-left: 0;
	padding-right: 0;
	font-family: inherit;
	font-size: var(--wp--preset--font-size--s);
	color: currentcolor;
}

/* Block: Card - Step
========================================================================== */

.card--step {
	height: 100%;
    display: flex;
    justify-content: space-between;
}

.card--step::after {
	content: "";
	border-bottom: 1px solid currentColor;
	opacity: 0.3;
	padding-bottom: var(--wp--preset--spacing--s);
}

.card--step .card__heading {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--s);
	font-size: var(--wp--preset--font-size--m);
	font-weight: 700;
}

.card--step .card__number {
	font-size: var(--wp--preset--font-size--l);
	color: var(--wp--preset--color--brand-secondary);
}

:is(.has-brand-primary-background-color, .has-black-background-color) .card--step .card__number {
    color: var(--wp--preset--color--brand-accent);
}

/* Block: Slider - Steps
========================================================================== */

.qt-section:has(.slider-steps) {
	padding-right: 0;
	-ms-overflow-style: none;
	scrollbar-width: none;
	overflow-x: hidden;
}

.qt-section:has(.slider-steps) .qt-section__inner {
	display: grid;
	max-width: none;
	grid-column-gap: 0;
	grid-template-columns: 1fr calc(var(--wp--custom--maxwidth--default) + var(--wp--preset--spacing--m)) 1fr;
}

.qt-section:has(.slider-steps) .qt-container {
	grid-column: 2 / -1;
	position: relative;
}

.qt-container:has(.slider-steps) {
	left: var(--wp--preset--spacing--s);
}

.slider-steps {
	grid-column: 2 / -1;
	grid-gap: 0;
	left: calc(-1 * var(--wp--preset--spacing--s));
	position: relative;
}

.slider-steps .splide__list {
	display: flex;
	gap: 0;
}

.slider-steps .splide__arrows {
	position: absolute;
	width: 115px;
	right: calc((100vw - (var(--wp--custom--maxwidth--default) + var(--wp--preset--spacing--s))) / 2);
	height: fit-content;
	top: -4em;
}

.slider-steps .splide__arrow--next {
	right: 0;
}

.slider-steps .splide__arrow--prev {
	left: 1em;
}

@media (max-width: 1188px) {
	.slider-steps .splide__arrows {
		right: var(--wp--preset--spacing--m);
	}

	.qt-section:has(.slider-steps) .qt-section__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.qt-section:has(.slider-steps) .qt-container {
		grid-column: 1;
	}
}

/* Card */
.card--step-slide {
	background-color: var(--wp--preset--color--white);
	padding: var(--wp--preset--spacing--m);
	border-radius: 20px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-gap: var(--wp--style--block-gap);
	height: 100%;
}

.card--step-slide .card__content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: calc(2 * var(--wp--style--block-gap));
}

.card--step-slide .card__content * {
	color: var(--wp--preset--color--black);
}

.card--step-slide .card__heading {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--s);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--m);
	margin-bottom: 0;
}

.card--step-slide .card__number {
	font-weight: 700;
	background-color: var(--wp--preset--color--accent-2);
	border-radius: 6px;
	padding: 0;
	font-size: var(--wp--preset--font-size--s);
	line-height: 1;
	height: 40px;
	width: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media (max-width: 768px) {
	.card--step-slide {
		grid-template-columns: minmax(0, 1fr);
	}

	.card--step-slide .card__content {
		gap: var(--wp--preset--spacing--xs);
		justify-content: flex-end;
	}

	.card--step-slide .card__media {
		grid-row: -1;
		display: flex;
		justify-content: flex-end;
	}
}

@media (max-width: 670px) {
	.card--step-slide {
		grid-template-columns: minmax(0, 1fr);
	}

	.card--step-slide .card__image-img {
		height: 60px;
		width: 60px;
	}
}

/* Block: Card - Metrics 
========================================================================== */

.card--metric {
	display: grid;
	grid-gap: 0 var(--wp--style--block-gap);
	grid-template-columns: 1fr auto;
}

.card--metric::after {
	content: "";
	border-bottom: 1px solid currentColor;
	opacity: 0.3;
	padding-bottom: var(--wp--preset--spacing--s);
	grid-column: 1/-1;
}

.card--metric .card__content {
	padding-left: var(--wp--preset--spacing--s);
}

.card--metric .card__eyebrow {
	margin-bottom: 0.25em;
	color: inherit;
}

.card--metric .card__heading {
	font-size: var(--wp--preset--font-size--xl);
	font-weight: 700;
}

.card--metric .card__media {
	padding-right: var(--wp--preset--spacing--s);
}

@media (max-width: 980px) {
	.card--metric .card__image-img {
		height: 75px;
		width: 75px;
	}
}

@media (max-width: 670px) {
	.card--metric .card__image-img {
		height: 60px;
		width: 60px;
	}
}

/* Block: Google maps
========================================================================== */
.acf-map {
	border-radius: 10px;
	margin-top: calc(2 * var(--wp--style--block-gap));
}

.qt-container > .acf-map {
	margin-top: 0;
}

/* Section: CTA
========================================================================== */

.qt-section.is-style-cta {
	padding: 0;
	-ms-overflow-style: none;
	scrollbar-width: none;
	overflow-x: hidden;
}

.qt-section.is-style-cta .qt-section__inner {
	display: grid;
	max-width: none;
	grid-column-gap: 0;
	grid-gap: var(--wp--style--block-gap);
	grid-template-columns: 7fr 5fr;
	max-width: var(--wp--custom--maxwidth--default);
}

.qt-section.is-style-cta .is-style-text-column {
	padding-top: var(--wp--preset--spacing--xxl);
	padding-bottom: var(--wp--preset--spacing--xxl);
}

.qt-section.is-style-cta .is-style-image-column img {
	border-radius: 0;
	border-bottom-left-radius: 60px;
	height: 100%;
	width: 100%;
}

.qt-section.is-style-cta .is-style-image-column .wp-block-image {
	height: 100%;
}

.is-style-cta .qt-section__inner {
	max-width: var(--wp--custom--maxwidth--default);
	display: grid;
	grid-template-columns: 7fr 5fr;
}

.is-style-cta .is-style-image-column {
	margin-right: calc((100vw - var(--wp--custom--maxwidth--default)) / -2);
}

@media (max-width: 1188px) {
	.qt-section.is-style-cta {
		padding-left: var(--wp--preset--spacing--m);
	}

	.is-style-cta .is-style-image-column {
		margin-right: 0;
	}
}

@media (max-width: 768px) {
	.qt-section.is-style-cta {
		padding: 0;
	}

	.qt-section.is-style-cta .grid {
		grid-template-columns: minmax(0, 1fr);
		grid-gap: 0;
	}

	.qt-section.is-style-cta .is-style-text-column {
		padding: var(--wp--preset--spacing--xxl) var(--wp--preset--spacing--m);
	}

	.qt-section.is-style-cta .is-style-image-column img {
		border-radius: 0;
		aspect-ratio: var(--wp--custom--aspect-ratio--landscape) !important;
	}
}

/* Section: House rules
========================================================================== */

.is-style-rules .qt-section__inner {
	border: 1px solid var(--wp--preset--color--neutral-2);
	padding: var(--wp--preset--spacing--m);
	border-radius: 20px;
}

.is-style-rules:is(.has-brand-primary-background-color, .has-black-background-color) .qt-section__inner {
	border: 1px solid rgba(255, 255, 255, 0.25);
}

.is-style-rules ul {
	list-style: none;
	padding-left: 0;
	margin-left: 0;
	font-size: var(--wp--preset--font-size--xs);
}

.is-style-rules ul li {
	position: relative;
	padding-left: 2rem;
	margin-bottom: 0.75rem;
}

.is-style-rules ul li:last-of-type {
	margin-bottom: 0;
}

/* Section: Navigation cards
========================================================================== */

/* Card */
a:has(.card--navigation) {
	text-decoration: none;
}

.card--navigation {
	border-radius: 20px;
	padding: var(--wp--preset--spacing--m);
	background-size: cover;
	background-position: center center;
	gap: 0;
	position: relative;
	overflow: hidden;
	min-height: unset;
}

.card--navigation .wp-block-cover__background {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
	z-index: 1;
}

.card--navigation .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.card--navigation .card__content {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-top: auto;
}

.card--navigation .card__media {
	display: flex;
	justify-content: flex-end;
	width: 100%;
}

.card--navigation .card__eyebrow {
	margin-bottom: 0.5em;
	color: var(--wp--preset--color--brand-accent);
}

.card--navigation .card__heading {
	font-size: var(--wp--preset--font-size--l);
	font-weight: 700;
	font-family: var(--wp--preset--font-family--heading);
	line-height: 1.2;
	color: var(--wp--preset--color--white);
}

@media (max-width: 980px) {
	.is-style-navigation-cards .grid-col-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.card--navigation .card__image-img {
		height: 75px;
		width: 75px;
	}
}

@media (max-width: 670px) {
	.is-style-navigation-cards .grid-col-2,
	.is-style-navigation-cards .grid-col-3 {
		grid-template-columns: minmax(0, 1fr);
	}

	.card--navigation .card__image-img {
		height: 60px;
		width: 60px;
	}
}

/* Section: All cities
========================================================================== */

.cities {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--style--block-gap);
}

.cities .item--city {
	display: flex;
	margin: 0;
	padding: 0;
}

.cities .item--city::before {
	display: none;
}

.item--city .item__button {
	text-decoration: none;
	font-size: var(--wp--preset--font-size--m);
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--brand-accent);
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--s);

	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);
}

.item--city .item__button::before {
	content: url(data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%228%22%20r%3D%228%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E);
	line-height: normal;
	filter: brightness(0) saturate(100%) invert(91%) sepia(9%) saturate(1836%) hue-rotate(66deg) brightness(99%)
		contrast(94%);
}

/* Section: Area information
========================================================================== */

.area-info .is-style-image-column img {
	aspect-ratio: var(--wp--custom--aspect-ratio--portrait);
	object-fit: cover;
	height: 100%;
}

/* Section: Details
========================================================================== */

.details {
	margin: 0;
	display: grid;
	grid-gap: var(--wp--style--block-gap);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid rgba(255, 255, 255, 0.25);
	padding-top: var(--wp--preset--spacing--xl);
}

.details .item--detail::before {
	display: none;
}

.details .item--detail {
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--brand-accent);
	padding: var(--wp--preset--spacing--s) var(--wp--preset--spacing--s);
	margin: 0;

	display: flex;
	align-items: center;
	gap: var(--wp--style--block-gap);
}

.detail__icon {
	display: flex;
	align-items: center;
}

.detail__icon path {
	fill: var(--wp--preset--color--brand-accent);
}

.detail__content {
	display: flex;
	flex-direction: column;
}

.detail__content .label {
	font-size: var(--wp--preset--font-size--xs);
}

.detail__content .value {
	font-size: var(--wp--preset--font-size--m);
}

@media (max-width: 1024px) {
	.details {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.details {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Section: All guides
========================================================================== */

.guides {
	margin: 0;
	display: grid;
	grid-gap: var(--wp--style--block-gap);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.container-m .guides {
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(2 * var(--wp--style--block-gap));
}

.guides .item--guide {
	display: flex;
	margin: 0;
	padding: 0;
}

.guides .item--guide::before {
	display: none;
}

.item--guide .item__button {
	text-decoration: none;
	font-size: var(--wp--preset--font-size--s);
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--neutral-2);
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--s);

	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--xs);

	width: 100%;
}

.item--guide .item__button:hover {
	opacity: 1;
	background-color: var(--wp--preset--color--neutral-3);
}

.item--guide .item__button svg {
	background-color: var(--wp--preset--color--brand-accent);
	border-radius: 6px;
}

.item--guide .item__button path {
	fill: var(--wp--preset--color--black);
}

@media (max-width: 1024px) {
	.guides {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.guides {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.guides,
	.container-m .guides {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Section: Document list
========================================================================== */

.documents .item--document {
	padding: 0;
	margin: 0;

	border-bottom: 1px solid var(--wp--preset--color--neutral-2);
}

.documents .item--document::before {
	display: none;
}

.documents .item--document a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
	padding: var(--wp--preset--spacing--s) 0;
}

.documents .item__icon {
	background-color: var(--wp--preset--color--brand-accent);
	border-radius: 6px;
	line-height: 0;
}

/* Page: Listings
========================================================================== */

.listings {
	grid-gap: calc(1.5 * var(--wp--style--block-gap)) var(--wp--style--block-gap);
}

h2 + .listings__filter {
	margin-top: calc(2 * var(--wp--preset--spacing--m));
}

.listings__filter {
	margin-bottom: calc(2 * var(--wp--preset--spacing--m));
}

/* Listing labels */
.listing__tag[data-profile-id]::before {
	margin-right: var(--wp--preset--spacing--xxs);
	display: inline-flex;
	align-items: center;
	line-height: 0;
	vertical-align: bottom;
}

.listing__tag[data-profile-id="85790107-a803-4f5a-9d6c-50c8a9d11bff"]::before {
	/* Short term */
	content: url("../images/clock.svg");
}

.listing__tag[data-profile-id="03dd7b07-be7b-4f54-9dc7-cacb4be4c815"]::before {
	/* Student */
	content: url("../images/school.svg");
}

.listing__tag[data-profile-id="44833499-3c4e-4c68-9509-d92ec77408ed"]::before {
	/* Student + Worker */
	content: url("../images/work.svg");
}

.listing__tag[data-profile-id="f55574c9-8100-4435-a876-5b937473e575"]::before {
	/* Student + Youth */
	content: url("../images/youth.svg");
}

.listing__tag[data-profile-id="47e7e6ed-1eb1-4a19-9e5d-c4a473d12b26"]::before {
	/* Youth */
	content: url("../images/youth.svg");
}

/* Listing dates */
.listing__dates {
	line-height: normal;
	display: flex;
	gap: var(--wp--style--block-gap);
	align-items: center;
}

.listing__date {
	font-size: var(--wp--preset--font-size--xs);
	position: relative;
	padding-left: 1.5em;
}

.listing__date::before {
	content: "";
	line-height: normal;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1em;
	height: 1em;
	background-color: currentColor;
	mask-size: 100%;
}

.listing__date-vacancy::before {
	mask: url("data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2215%22%20viewBox%3D%220%200%2015%2015%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cmask%20id%3D%22mask0_1605_6307%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2215%22%20height%3D%2215%22%3E%3Crect%20width%3D%2215%22%20height%3D%2215%22%20fill%3D%22%23D9D9D9%22%2F%3E%3C%2Fmask%3E%3Cg%20mask%3D%22url(%23mask0_1605_6307)%22%3E%3Cpath%20d%3D%22M3.125%2013.75C2.78125%2013.75%202.48698%2013.6276%202.24219%2013.3828C1.9974%2013.138%201.875%2012.8438%201.875%2012.5V3.75C1.875%203.40625%201.9974%203.11198%202.24219%202.86719C2.48698%202.6224%202.78125%202.5%203.125%202.5H3.75V1.25H5V2.5H10V1.25H11.25V2.5H11.875C12.2188%202.5%2012.513%202.6224%2012.7578%202.86719C13.0026%203.11198%2013.125%203.40625%2013.125%203.75V7.73438L11.875%208.98438V6.25H3.125V12.5H7L8.25%2013.75H3.125ZM3.125%205H11.875V3.75H3.125V5ZM10.3437%2014.0625L8.125%2011.8438L9%2010.9688L10.3281%2012.2969L12.9844%209.64063L13.8594%2010.5313L10.3437%2014.0625Z%22%20fill%3D%22black%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

.listing__date-apply::before {
	mask: url("data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2215%22%20viewBox%3D%220%200%2015%2015%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cmask%20id%3D%22mask0_2249_2916%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2215%22%20height%3D%2215%22%3E%3Crect%20width%3D%2215%22%20height%3D%2215%22%20fill%3D%22%23D9D9D9%22%2F%3E%3C%2Fmask%3E%3Cg%20mask%3D%22url(%23mask0_2249_2916)%22%3E%3Cpath%20d%3D%22M3.375%2013.5C3.07292%2013.5%202.8099%2013.388%202.58594%2013.1641C2.36198%2012.9401%202.25%2012.6771%202.25%2012.375V4.125C2.25%203.81563%202.36198%203.55078%202.58594%203.33047C2.8099%203.11016%203.07292%203%203.375%203H4.5V1.5H5.625V3H9.375V1.5H10.5V3H11.625C11.9271%203%2012.1901%203.11016%2012.4141%203.33047C12.638%203.55078%2012.75%203.81563%2012.75%204.125V7.5H11.625V6.75H3.375V12.375H8.625V13.5H3.375ZM3.375%205.625H11.625V4.125H3.375V5.625ZM10.125%2013.5C10.0221%2013.5%209.93385%2013.4632%209.86031%2013.3897C9.78677%2013.3161%209.75%2013.2279%209.75%2013.125V10.875C9.75%2010.7721%209.78677%2010.6839%209.86031%2010.6103C9.93385%2010.5368%2010.0221%2010.5%2010.125%2010.5H10.5V9.75C10.5%209.44063%2010.6105%209.17578%2010.8314%208.95547C11.0523%208.73516%2011.318%208.625%2011.6283%208.625C11.9386%208.625%2012.2031%208.73516%2012.4219%208.95547C12.6406%209.17578%2012.75%209.44063%2012.75%209.75V10.5H13.125C13.2279%2010.5%2013.3161%2010.5368%2013.3897%2010.6103C13.4632%2010.6839%2013.5%2010.7721%2013.5%2010.875V13.125C13.5%2013.2279%2013.4632%2013.3161%2013.3897%2013.3897C13.3161%2013.4632%2013.2279%2013.5%2013.125%2013.5H10.125ZM11.0625%2010.5H12.1875V9.75C12.1875%209.59062%2012.1339%209.45703%2012.0267%209.34922C11.9195%209.24141%2011.7867%209.1875%2011.6283%209.1875C11.4698%209.1875%2011.3359%209.24141%2011.2266%209.34922C11.1172%209.45703%2011.0625%209.59062%2011.0625%209.75V10.5Z%22%20fill%3D%22black%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

/* Card */
.card--listing {
	text-decoration: none;
}

.card--listing .is-style-tag {
	margin: 0;
}

.card--listing .card__image-img {
	aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
	object-fit: cover;
}

.card--listing .listing__tag {
	position: absolute;
	top: var(--wp--preset--spacing--s);
	left: var(--wp--preset--spacing--s);
	background-color: var(--wp--preset--color--brand-accent);
	border-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
}

.card--listing .card__media {
	position: relative;
}

.card--listing .card__content {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--s);
}

.card--listing .card__title {
	font-size: var(--wp--preset--font-size--m);
	font-weight: 400;
	margin: 0;
}

.card--listing .listing__details {
	display: flex;
	flex-direction: row;
	gap: var(--wp--preset--spacing--s);
	margin-top: 0;
}

.card--listing .listing__details li {
	margin-bottom: 0;
	padding-left: 1.25em;
	font-size: var(--wp--preset--font-size--xs);
}

.card--listing .listing__details li::before {
	content: "";
	line-height: normal;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background-color: var(--wp--preset--color--brand-secondary);
	mask: url(data:image/svg+xml,%3Csvg%20width%3D%228%22%20height%3D%228%22%20viewBox%3D%220%200%208%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20cx%3D%224%22%20cy%3D%224%22%20r%3D%224%22%20fill%3D%22%23006645%22%2F%3E%3C%2Fsvg%3E);
}

/* Single: Listing
========================================================================== */

/* Breadcrumbs */
.single-listing .is-style-breadcrumbs {
	background-color: var(--wp--preset--color--brand-primary);
}

.single-listing .rank-math-breadcrumb {
	color: var(--wp--preset--color--white);
}

.single-listing .rank-math-breadcrumb a {
	color: var(--wp--preset--color--white);
}

.single-listing .rank-math-breadcrumb .separator {
	filter: invert(1);
}

/* Listing content */
.single-listing .is-style-listing-information .grid {
	grid-template-columns: 8fr 4fr;
	grid-gap: calc(2 * var(--wp--style--block-gap));
}

.single-listing .is-style-listing-information .qt-container:nth-child(1) p:first-of-type {
	font-size: var(--wp--preset--font-size--m);
}

.single-listing .is-style-listing-information .qt-container:nth-child(2) {
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 20px;
	padding: var(--wp--preset--spacing--m);
	height: fit-content;
}

.single-listing .is-style-listing-information .qt-container:nth-child(2) hr {
	border: 0.5px solid rgba(255, 255, 255, 0.25);
}

.single-listing .is-style-listing-information .qt-container:nth-child(2) .wp-block-button__link {
	width: 100%;
	display: flex;
	margin-top: var(--wp--preset--spacing--m);
}

@media (max-width: 768px) {
	.single-listing .is-style-listing-information .grid {
		grid-template-columns: minmax(0, 1fr);
		grid-column-gap: var(--wp--style--block-gap);
	}
}

/* Listing labels */
.single-listing .listing__labels {
	display: flex;
	gap: var(--wp--style--block-gap);
}

.single-listing .listing__tag {
	background-color: var(--wp--preset--color--brand-accent);
	border-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
}

/* Listing dates */
.single-listing .listing__dates {
	margin: var(--wp--preset--spacing--m) 0;
}

.single-listing .listing__date {
	/* font-size: var(--wp--preset--font-size--s); */
	padding-left: 1.75em;
}

.single-listing .listing__date::before {
	width: 1.25em;
	height: 1.25em;
	mask-size: 100%;
}

/* Monthly rent */
.single-listing .listing__monthy-rent {
	font-size: var(--wp--preset--font-size--l);
	font-weight: 700;
	margin-bottom: var(--wp--preset--spacing--m);
}

/* Features */
.single-listing .listing__features-heading {
	margin-bottom: 1em;
	font-size: var(--wp--preset--font-size--m);
	font-weight: 700;
}

.single-listing .listing__features {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--xs);
	margin-bottom: var(--wp--preset--spacing--m);
}

.single-listing .listing__features span {
	margin: 0;
}

.single-listing .features__excluded span {
	color: var(--wp--preset--color--white);
}

/* Image gallery */
.qt-section.image-gallery .qt-container {
	grid-column: 1 / -1;
}

/* Location map */
.single-listing .listing__map {
	border-radius: 20px;
	height: 700px;
	max-height: calc(100dvh - var(--wp--custom--header-height--total));
}

/* Single: Project
========================================================================== */

.single-project .qt-section:first-of-type:not(.is-style-breadcrumbs, .is-style-footer-top) {
	padding-top: 0;
}

/* Filter */
.projects-filters {
	display: grid;
	grid-gap: var(--wp--style--block-gap);
	margin-bottom: calc(2 * var(--wp--style--block-gap));
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Breadcrumbs */
.single-project .is-style-breadcrumbs {
	background-color: var(--wp--preset--color--brand-primary);
}

.single-project .rank-math-breadcrumb {
	color: var(--wp--preset--color--white);
}

.single-project .rank-math-breadcrumb a {
	color: var(--wp--preset--color--white);
}

.single-project .rank-math-breadcrumb .separator {
	filter: invert(1);
}

/* Project content */
.single-project .is-style-project-information .grid {
	grid-template-columns: 8fr 4fr;
	grid-gap: calc(2 * var(--wp--style--block-gap));
}

.single-project .is-style-project-information .qt-container:nth-child(1) p:first-of-type {
	font-size: var(--wp--preset--font-size--m);
}

.single-project .is-style-project-information .qt-container:nth-child(2) {
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 20px;
	padding: var(--wp--preset--spacing--m);
	height: fit-content;
}

.single-project .is-style-project-information .qt-container:nth-child(2) .wp-block-buttons {
	border-top: 1px solid rgba(255, 255, 255, 0.25);
}

.single-project .is-style-project-information .qt-container:nth-child(2) .wp-block-button {
	width: 100%;
	margin-top: var(--wp--preset--spacing--m);
}

@media (max-width: 768px) {
	.single-project .is-style-project-information .grid {
		grid-template-columns: minmax(0, 1fr);
		grid-column-gap: var(--wp--style--block-gap);
	}
}

/* Card */
.card--project {
	text-decoration: none;
}

.card--project .is-style-tag {
	margin: 0;
}

.card--project .card__image-img {
	aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
	object-fit: cover;
}

.card--project .card__media {
	position: relative;
}

.card--project .project__phase {
	position: absolute;
	top: var(--wp--preset--spacing--s);
	left: var(--wp--preset--spacing--s);
	background-color: var(--wp--preset--color--brand-accent);
	border-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
}

.card--project .project__status {
	position: absolute;
	bottom: 15%;
	right: 10%;
	background-color: var(--wp--preset--color--brand-accent);
	border-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
	
    aspect-ratio: 1;
    clip-path: shape(from 70.52% 92.19%, curve to 58.21% 96.42% with 64.43% 94.41%, curve to 45.34% 98.14% with 51.99% 98.43%, curve to 33.33% 93.82% with 38.69% 97.84%, curve to 22.50% 86.62% with 27.98% 89.80%, curve to 12.51% 78.72% with 17.02% 83.43%, curve to 4.87% 68.05% with 7.99% 74.00%, curve to 3.17% 55.43% with 1.76% 62.11%, curve to 3.50% 42.00% with 4.59% 48.76%, curve to 6.17% 29.68% with 2.40% 35.25%, curve to 15.10% 20.24% with 9.93% 24.11%, curve to 25.14% 12.54% with 20.27% 16.37%, curve to 35.90% 6.46% with 30.01% 8.71%, curve to 48.18% 3.27% with 41.78% 4.22%, curve to 60.93% 3.80% with 54.57% 2.31%, curve to 72.43% 9.20% with 67.28% 5.28%, curve to 82.51% 17.16% with 77.57% 13.12%, curve to 91.57% 26.41% with 87.45% 21.19%, curve to 96.87% 38.17% with 95.69% 31.62%, curve to 96.97% 51.16% with 98.04% 44.73%, curve to 93.55% 63.42% with 95.90% 57.59%, curve to 87.52% 74.17% with 91.20% 69.25%, curve to 80.22% 84.53% with 83.84% 79.10%, curve to 70.52% 92.19% with 76.61% 89.96%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    max-width: 100%;
    height: auto;
    text-align: center;
    line-height: normal;
}

.card--project .card__content {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--s);
}

.card--project .card__title {
	font-size: var(--wp--preset--font-size--l);
	margin: 0;
}

.card--project .project__phase {
	background-color: var(--wp--preset--color--brand-accent);
	color: var(--wp--preset--color--black);
	border-color: transparent;
}

/* Nearby items */
.qt-container:has(.project__nearby) {
    display: grid;
	grid-template-columns: auto 1fr;
    grid-gap: calc(2 * var(--wp--style--block-gap));
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 20px;
	padding: var(--wp--preset--spacing--m);
}

.project__nearby {
	width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-column-gap: var(--wp--style--block-gap);
}

ul.project__nearby li::before {
    mask: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxOSAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMC41IiB5PSIwLjUiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgcng9IjIuNSIgc3Ryb2tlPSIjOEZGNUExIi8+CjxtYXNrIGlkPSJtYXNrMF8xNzQ3XzcxODMiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjEiIHk9IjEiIHdpZHRoPSIxNyIgaGVpZ2h0PSIxNyI+CjxyZWN0IHg9IjEiIHk9IjEiIHdpZHRoPSIxNyIgaGVpZ2h0PSIxNyIgZmlsbD0iI0Q5RDlEOSIvPgo8L21hc2s+CjxnIG1hc2s9InVybCgjbWFzazBfMTc0N183MTgzKSI+CjxwYXRoIGQ9Ik04LjAyMDY5IDE0LjE1OUM3LjYzMDE2IDE0LjU0OTUgNi45OTcgMTQuNTQ5NSA2LjYwNjQ3IDE0LjE1OUwyLjg2MjQ0IDEwLjQxNUMyLjUxMTI1IDEwLjA2MzggMi41MTEyNSA5LjQ5NDM5IDIuODYyNDQgOS4xNDMyQzMuMjEzNjIgOC43OTIwMiAzLjc4MzAxIDguNzkyMDIgNC4xMzQxOSA5LjE0MzJMNi42MDY0NyAxMS42MTU1QzYuOTk3IDEyLjAwNiA3LjYzMDE2IDEyLjAwNiA4LjAyMDY5IDExLjYxNTVMMTQuODY2IDQuNzcwMTZDMTUuMjE3MiA0LjQxODk3IDE1Ljc4NjYgNC40MTg5NyAxNi4xMzc4IDQuNzcwMTVDMTYuNDg5IDUuMTIxMzQgMTYuNDg5IDUuNjkwNzIgMTYuMTM3OCA2LjA0MTkxTDguMDIwNjkgMTQuMTU5WiIgZmlsbD0iIzhGRjVBMSIvPgo8L2c+Cjwvc3ZnPgo=);
    width: 19px;
    height: 19px;
}

@media (max-width: 870px) {
	.qt-container:has(.project__nearby) {
		grid-template-columns: 1fr;
		grid-gap: var(--wp--style--block-gap);
	}
}

@media (max-width: 670px) {
	.project__nearby {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.project__nearby {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Timeline */
.timeline {
    display: flex;
	gap: var(--wp--style--block-gap);
}

.timeline-item {
    flex: 1;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.timeline-item::after {
    content: '';
    position: absolute;
    top: 20px;
    left: 50%;
    right: 0;
    width: 102%;
    height: 2px;
    background-color: rgba(255, 255, 255, 0.6);
    z-index: 0;
}

.timeline-item:last-child::after {
    display: none;
}

.timeline-item[data-state="completed"]::after {
    background-color: var(--wp--preset--color--brand-accent);
}

.timeline-item__number {
    width: 40px;
    height: 40px;
    margin-bottom: 20px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--wp--preset--font-size--m);
    font-weight: 500;
    background-color: var(--wp--preset--color--brand-primary);
    color: var(--wp--preset--color--white);
    border: 2px solid rgba(255, 255, 255, 0.6);
    position: relative;
    z-index: 10;
}

.timeline-item[data-state="completed"] .timeline-item__number,
.timeline-item[data-state="active"] .timeline-item__number {
    background-color: var(--wp--preset--color--brand-accent);
    color: var(--wp--preset--color--black);
    border-color: var(--wp--preset--color--brand-accent);
}

.timeline-item__content {
    position: relative;
    z-index: 10;
}

.timeline-item__heading {
    font-size: var(--wp--preset--font-size--m);
    margin-bottom: 0.5em;
    color: var(--wp--preset--color--white);
}

.timeline-item__text {
    font-size: var(--wp--preset--font-size--xs);
}

@media (max-width: 768px) {
    .timeline {
        flex-direction: column;
    }
    
    .timeline-item {
        flex-direction: row;
        align-items: flex-start;
        text-align: left;
        padding: 15px 0;
        gap: 20px;
    }
    
    .timeline-item::after {
        top: 50px;
        left: 20px;
        right: auto;
        width: 2px;
        height: calc(100% + 30px);
    }
    
    .timeline-item__number {
        flex-shrink: 0;
        margin-bottom: 0;
    }
    
    .timeline-item__content {
        flex: 1;
        padding-top: 10px;
    }
    
    .timeline-item__heading {
        font-size: 20px;
        margin-bottom: 8px;
    }
}

@media (max-width: 480px) {
    .timeline {
        padding: 30px 15px;
    }
    
    .timeline-item {
        gap: 15px;
    }
    
    .timeline-item::after {
        left: 15px;
    }
    
    .timeline-item__number {
        width: 40px;
        height: 40px;
        font-size: 18px;
        border-radius: 8px;
    }
    
    .timeline-item__heading {
        font-size: 18px;
    }
}

/* Filter listings
========================================================================== */

.listings-filter {
	position: fixed;
	top: var(--wp--custom--header-height--total);
	left: 100%;
	background-color: var(--wp--preset--color--white);
	bottom: 0;
	transform: translateX(0);
	transition: transform 150ms ease-in-out;
	width: 90%;
	max-width: 400px;
	z-index: 10;
	padding: var(--wp--preset--spacing--m);
	overflow: auto;
}

.admin-bar .listings-filter {
	top: calc(var(--wp--custom--header-height--total) + 32px);
}

@media (max-width: 768px) {
	.admin-bar .listings-filter {
		top: calc(var(--wp--custom--header-height--total) + 46px);
	}
}

.listings-filter.is-open {
	transform: translateX(-100%);
	box-shadow: -4px 0 16px rgba(0, 0, 0, 0.1);
}

.listings-filter-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 5;
	opacity: 0;
	visibility: hidden;
	transition: opacity 150ms ease-in-out;
}

.listings-filter-overlay.is-open {
	opacity: 1;
	visibility: visible;
}

/* Listings filter heading */
.listings-filter-heading {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-bottom: var(--wp--preset--spacing--m);
}

.listings-filter-heading .wp-block-buttons {
	margin-top: 0;
}

/* Listings count */
.listings-result-count {
	padding-bottom: var(--wp--preset--spacing--s);
}

/* Filter form */
.listings-filter form {
	margin-bottom: calc(2 * var(--wp--preset--spacing--m));
	display: flex;
	gap: var(--wp--preset--spacing--s);
	flex-wrap: wrap;
}

.filter-group {
	width: 100%
}

.filter-group__range {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--s);
}

.qt-filter-btn {
    background-color: var(--wp--preset--color--brand-secondary);
    border-radius: 6px;
    border-color: transparent;
    border-width: 1px;
    border-style: solid;
    color: var(--wp--preset--color--white);
    font-family: var(--wp--preset--font-family--paragraph);
    font-size: var(--wp--preset--font-size--s);
    line-height: 1;
    padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--s);
}

/* Filter toggle */
.listings-filter-toggle {
	appearance: none;
	background: transparent;
	border: 1px solid var(--wp--preset--color--black);
    color: var(--wp--preset--color--black);
	border-radius: 6px;
	cursor: pointer;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--s);
	font-size: var(--wp--preset--font-size--s);
	display: inline-flex;
	align-items: center;
	transition: all 150ms linear;
}

.listings-filter-toggle:hover {
	opacity: 0.6;
}

.listings-filter-toggle::after {
	content: url('../images/icon-filter.svg');
	object-fit: contain;
	border-left: 1px solid rgba(0, 0, 0, 0.3);
    padding-left: var(--wp--preset--spacing--xs);
    margin-left: var(--wp--preset--spacing--xs);
    height: 20px;
    display: inline-flex;
    align-items: center;
}

.listings-filter-count {
	background-color: var(--wp--preset--color--black);
	border-radius: 50%;
    justify-content: center;
    align-items: center;
    margin-left: var(--wp--preset--spacing--xs);
	width: 20px;
	height: 20px;
	color: var(--wp--preset--color--white);
	font-size: 14px;
	text-align: center;
	display: none;
}

.listings-filter-count.has-filters {
	display: inline-flex;
}

/* Filter close */
.listings-filter-close {
	display: flex;
	justify-content: flex-end;
	margin-bottom: var(--wp--preset--spacing--m);
}

.listings-filter-close button {
	appearance: none;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--black);
	background: transparent;
	font-weight: 700;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.listings-filter-close button::after {
	content: '';
	background: url('../images/icon-close.svg') no-repeat center center;
	width: 20px;
	height: 20px;
	display: block;
}

.listings-filter .clear-filter::after {
	content: unset;
}
