html { height: 100%; }

body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: var(--s-25);
	color: var(--s-800-t75);
	font-size: 15px;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
    line-height: 24px;
	overflow-y: scroll;
}

body.no-scroll { overflow-y: hidden; }

* { margin: 0; padding: 0; outline: 0; }

a { color: var(--b-50); text-decoration: none; }
a img { border: 0; }

strong { font-weight: 500; }
input, textarea, button { font-family: 'Inter', sans-serif; }

h1, h2, h3, h4, h5 { color: var(--s-800); font-family: 'Gambetta', sans-serif; font-weight: 400; }
h1 { font-size: 30px; line-height: 40px; }
h2, h3, h4, h5 { font-size: 24px; line-height: 36px; }

.hidden { display: none !important; }

#email { position: absolute; z-index: -100; width: 1px; height: 1px; opacity: 0; }

.wrap { display: flex; flex-direction: column; width: 100%; min-height: 100%; }
.container { flex-grow: 1; display: flex; flex-direction: column; width: 100%; }
.content { display: flex; flex-direction: column; box-sizing: border-box; width: 100%; max-width: 1400px; padding: 0 10px; }

.header { flex-shrink: 0; display: flex; flex-direction: column; position: relative; z-index: 1100; width: 100%; height: 100px; }
.header .inner { transition: background 0.2s ease-in-out; display: flex; flex-direction: column; align-items: center; width: 100%; height: 100px; }
.header.transparent { position: relative; margin-bottom: -100px; }
.header .inner:after { content: ""; position: absolute; z-index: 50; bottom: 0; left: 0; width: 100%; height: 1px; background: var(--s-800-t15); }
.header.transparent:not(.sticky) .inner:after { background: var(--s-25-t25); }
.header .content { flex-direction: row; flex-wrap: nowrap; justify-content: space-between; align-items: stretch; height: 100%; }

.header .logo { flex-shrink: 0; display: flex; align-items: center; }
.header .logo a { display: flex; }
.header .logo img { height: 60px; }

.header .menu { display: flex; align-items: stretch; }
.header .menu nav { display: flex; align-items: stretch; position: relative; z-index: 100; }
.header .menu nav ul { display: flex; flex-wrap: nowrap; align-items: stretch; list-style: none; }
.header .menu nav ul li { display: flex; flex-wrap: nowrap; align-items: stretch; position: relative; padding: 0 20px; }
.header .menu nav ul li:first-child { padding-left: 0; }
.header .menu nav ul li:last-child { padding-right: 0; }
.header .menu nav ul li a.button { align-self: center; position: relative; z-index: 810; }
.header .menu nav ul li a:not(.button) { transition: color 0.2s ease-in-out; display: flex; flex-wrap: nowrap; align-items: center; border-bottom: 2px solid transparent; color: var(--s-25); font-size: 15px; font-weight: 500; line-height: 24px; text-align: center; white-space: nowrap; }
.header .menu nav ul li a:not(.button):hover { color: var(--s-25-t75); }
.header .menu nav ul li.active a:not(.button) { border-color: var(--b-50); color: var(--b-50); }
.header.transparent:not(.sticky) .menu nav ul li a.button:not(:hover) { color: var(--s-25); }
.header .menu nav ul li .arrow { display: flex; margin-left: 10px; }

.header .menu nav ul li .submenu { display: none; position: absolute; z-index: 800; top: 100%; left: 0; padding-top: 10px; min-width: 100%; }
.header .menu nav ul li:hover .submenu { display: block; }
.header .menu nav ul li .submenu ul { flex-direction: column; align-items: flex-start; padding: 8px 0; background: var(--s-25); border: 1px solid var(--s-800-t15); text-align: left; }
.header .menu nav ul li .submenu ul li { width: 100%; padding: 0; }
.header .menu nav ul li .submenu ul li a:not(.button) { transition: border-color 0.2s ease-in-out; box-sizing: border-box; width: 100%; padding: 2px 16px; border-bottom: 0; border-left: 2px solid transparent; color: var(--s-800); white-space: nowrap; }
.header .menu nav ul li .submenu ul li a:not(.button):hover { border-color: var(--s-800-t15); }
.header .menu nav ul li .submenu ul li.active a:not(.button) { border-color: var(--b-50); color: var(--b-50); }
/*
.header .menu nav ul li .submenu-container { display: none; position: absolute; z-index: 800; top: 61px; left: 0; width: 100%; padding-top: 39px; }
.header .menu nav ul li:hover .submenu-container,
.header .menu nav ul li .submenu-container:hover { display: flex; }
.header .menu nav ul li .submenu { display: flex; position: relative; width: 100%; }
.header .menu nav ul li .submenu .bg { content: ""; position: absolute; z-index: 50; top: 0; left: 0; box-sizing: border-box; width: 100vw; height: 100%; background: var(--s-900-t75); border-bottom: 2px solid var(--b-50); }
.header .menu nav ul li .submenu ul { flex-direction: column; padding: 34px 0; }
.header .menu nav ul li .submenu ul li { position: relative; z-index: 100; padding: 5px 0; }
.header .menu nav ul li .submenu ul li:first-child { margin-top: 0; }
.header .menu nav ul li .submenu ul li:last-child { margin-bottom: 0; }
.header .menu nav ul li .submenu ul li a:not(.button) { border: 0; font-size: 20px; font-weight: 400; line-height: 30px; white-space: normal; }
.header .menu nav ul li.active .submenu ul li a:not(.button) { color: var(--s-25); }
.header .menu nav ul li .submenu ul li a:not(.button):hover { color: var(--s-25-t50); }
.header .menu nav ul li .submenu ul li.active a:not(.button) { color: var(--b-25); }
*/

.header .mobile-menu { display: none; align-items: center; padding-right: 20px; }
.header .mobile-menu .mobile-menu-button { transition: color 0.2s ease-in-out; display: flex; color: var(--s-800); font-size: 30px; }
.header.transparent:not(.sticky) .mobile-menu .mobile-menu-button { color: var(--s-25); }
.header .mobile-menu .mobile-menu-button.close { display: none; }

.header.sticky .inner { position: fixed; z-index: 100; top: 0; left: 0; background: var(--s-25); }
.header:not(.transparent) .menu nav ul li:not(.active) a:not(.button),
.header.sticky .menu nav ul li:not(.active) a:not(.button) { color: var(--s-800); }

.page-container { flex-grow: 1; display: flex; flex-direction: column; width: 100%; }
.section-container { flex-grow: 1; display: flex; flex-direction: column; width: 100%; }

.hero { flex-shrink: 0; display: flex; flex-direction: column; align-items: center; position: relative; width: 100%; height: 810px; background: var(--s-900); }
.hero .slider,
.hero .slick-list,
.hero .slick-track { display: flex; align-items: stretch; width: 100%; height: 100%; }
.hero .item { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; width: 100%; }
.hero .item a.whole { position: absolute; z-index: 140; top: 0; left: 0; width: 100%; height: 100%; }
.hero .item .image { display: flex; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.hero .item .image img { position: relative; z-index: 40; width: 100%; height: 100%; object-fit: cover; }
.hero .item .image:after { content: ""; opacity: 0.5; position: absolute; z-index: 50; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.4) 50%, rgba(0,0,0,0.6) 100%); }
.hero .item .content { position: relative; z-index: 100; padding: 150px 370px 50px 10px; padding-bottom: 50px; overflow: hidden; }
.hero .item .headline { overflow: hidden; }
.hero .item .headline h2 { color: var(--s-25); font-size: 36px; line-height: 48px; }
.hero .item .price { display: flex; align-items: baseline; margin-top: 10px; color: var(--s-25); overflow: hidden; }
.hero .item .price .amount { margin-right: 4px; font-size: 24px; font-weight: 500; line-height: 36px; }
.hero .item .price .text { font-size: 14px; font-weight: 600; line-height: 22px; }
.hero .item .location { display: flex; flex-wrap: nowrap; align-items: center; margin-top: 10px; color: var(--s-25); font-size: 15px; line-height: 24px; overflow: hidden; }
.hero .item .location .icon { flex-shrink: 0; display: flex; margin-right: 12px; color: var(--b-50); font-size: 16px; }

.hero .controls { align-items: flex-end; position: absolute; z-index: 150; bottom: 45px; left: 50%; transform: translateX(-50%); }
.hero .controls .arrows { display: flex; flex-wrap: nowrap; }
.hero .controls .dots { display: flex; width: 340px; margin-top: 25px; }
.hero .controls .slider-arrow { transition: color 0.2s ease-in-out; display: flex; margin-left: 10px; padding: 0 2px; background: transparent; border: 0; color: var(--s-25); font-size: 30px; cursor: pointer; }
.hero .controls .slider-arrow:hover { color: var(--b-50); }
.hero .controls .slider-arrow:first-child { margin-left: 0; }
.hero .controls ul.slick-dots { display: flex; flex-wrap: nowrap; width: 100%; list-style: none; }
.hero .controls ul.slick-dots li { flex-basis: 0; flex-grow: 1; flex-shrink: 1; display: flex; height: 2px; padding: 5px; cursor: pointer; }
.hero .controls ul.slick-dots li:first-child { padding-left: 0; }
.hero .controls ul.slick-dots li:last-child { padding-right: 0; }
.hero .controls ul.slick-dots li button { transition: background 0.2s ease-in-out; display: flex; width: 100%; height: 100%; background: var(--s-25-t50); border: 0; font-size: 0; line-height: 0; cursor: pointer; }
.hero .controls ul.slick-dots li:hover button { background: var(--s-25-t75); }
.hero .controls ul.slick-dots li.slick-active button { background: var(--b-50); }

.page { display: flex; flex-direction: column; align-items: center; width: 100%; padding: 40px 0; }
.page:last-child { flex-grow: 1; }
.page.spacing-bottom { padding-bottom: 70px; }
.page.divider { border-bottom: 1px solid var(--s-800-t20); }

.page .title { display: flex; flex-direction: column; align-items: center; width: 100%; padding: 10px 0; text-align: center; }
.page .title.align-left { align-items: flex-start; text-align: left; }
.page .title h1,
.page .title h2 { color: var(--s-800); font-size: 30px; line-height: 40px; }

.page .title.horizontal { flex-direction: row; flex-wrap: nowrap; justify-content: space-between; text-align: left; }
.page .title.horizontal .item { display: flex; flex-wrap: nowrap; align-items: center; }
.page .title.horizontal .item:nth-child(2) { justify-content: flex-end; padding-left: 20px; }
.page .title.horizontal .item .link { align-self: center; margin-left: 20px; }
.page .title.horizontal .item .link:first-child { margin-left: 0; }
.page .title.horizontal .item .item-inner { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
.page .title.horizontal .item .item-inner .item-label { margin: 10px; color: var(--s-800); font-size: 15px; line-height: 24px; }
.page .title.horizontal .item .item-inner .item-field { display: flex; width: 180px; }

.page:not(.divider) + .page { padding-top: 0; }
.page:not(.divider) + .page .title { padding-top: 0; }

.text-container { display: flex; flex-direction: column; width: 100%; padding: 10px 0; }´
.text-container h1,
.text-container h2,
.text-container h3,
.text-container h4,
.text-container h5 { margin: 20px 0 10px 0; color: var(--s-800); }
.text-container h1:first-child,
.text-container h2:first-child,
.text-container h3:first-child,
.text-container h4:first-child,
.text-container h5:first-child { margin-top: 0; }
.text-container h1,
.text-container h2 { font-size: 24px; line-height: 36px; }
.text-container h3,
.text-container h4,
.text-container h5 { font-size: 20px; line-height: 32px; }
.text-container p { margin-bottom: 20px; color: var(--s-800-t75); font-size: 15px; line-height: 24px; }
.text-container p:last-child { margin-bottom: 0; }
.text-container ul,
.text-container ol { margin: 0 0 20px 20px; }
.text-container ol:last-child,
.text-container ul:last-child { margin-bottom: 0; }
.text-container ul li,
.text-container ol li { margin: 5px 0; color: var(--s-800-t75); font-size: 15px; line-height: 24px; }
.text-container img { align-self: flex-start; max-width: 100%; margin-bottom: 20px; }
.text-container img:last-child { margin-bottom: 0; }
.text-container table,
.text-container blockquote,
.text-container figure { margin-bottom: 20px; }
.text-container table:last-child,
.text-container blockquote:last-child,
.text-container figure:last-child { margin-bottom: 0; }
.text-container hr { height: 1px; margin-bottom: 30px; background: var(--s-800-t15); border: 0; }
.text-container table { border-spacing: 0; }
.text-container table tr th { font-weight: 600; }
.text-container table tr th,
.text-container table tr td { padding: 10px; border-top: 1px solid var(--s-800-t15); border-right: 1px solid var(--s-800-t15); text-align: left; color: var(--s-800-t75); font-size: 15px; line-height: 24px; }
.text-container table tr:last-child td { border-bottom: 1px solid var(--s-800-t15); }
.text-container table tr th:first-child,
.text-container table tr td:first-child { border-left: 1px solid var(--s-800-t15); }
.text-container p .button { display: inline-block; }

.image-container { display: flex; margin-bottom: 20px; width: 100%; }
.image-container img { width: 100%; }

.iframe-container { display: flex; width: 100%; height: 420px; margin-top: 10px; background: var(--s-800-t15); }
.iframe-container:first-child { margin-top: 0; }
.iframe-container iframe { width: 100%; height: 100%; }

.list { display: flex; padding: 5px 0; }
.list ul { display: flex; flex-direction: column; list-style: none; }
.list ul li { display: flex; margin: 5px 0; color: var(--s-800); font-size: 15px; line-height: 24px; }
.list ul li a { transition: color 0.2s ease-in-out; display: flex; color: var(--s-800); }
.list ul li a:hover { color: var(--s-800-t75); }
.list ul li .icon { flex-shrink: 0; display: flex; margin: 4px 20px 0 0; font-size: 14px; }
.list ul li .icon.gold { color: var(--b-50); }
.list.socials ul li .icon { margin-right: 10px; font-size: 16px; }

.icon-list { display: flex; width: 100%; margin-top: 10px; }
.icon-list:first-child { margin-top: 0; }
.icon-list ul { display: flex; flex-wrap: wrap; width: 100%; list-style: none; }
.icon-list ul li { display: flex; flex-direction: column; box-sizing: border-box; width: 33.33%; padding: 20px 20px 0 0; }
.icon-list ul li:nth-child(1),
.icon-list ul li:nth-child(2),
.icon-list ul li:nth-child(3) { padding-top: 0; }
.icon-list ul li:nth-child(3n) { padding-right: 0; }
.icon-list ul li .name { margin-bottom: 10px; color: var(--s-800-t75); font-size: 15px; line-height: 24px; }
.icon-list ul li .value { display: flex; flex-wrap: nowrap; color: var(--s-800); font-size: 15px; font-weight: 500; line-height: 24px; }
.icon-list ul li .value .icon { flex-shrink: 0; min-width: 24px; margin-right: 10px; font-size: 18px; }

.data-list { display: flex; width: 100%; margin-top: 10px; }
.data-list:first-child { margin-top: 0; }
.data-list ul { display: flex; flex-wrap: wrap; width: 100%; list-style: none; }
.data-list ul li { box-sizing: border-box; width: 50%; padding: 20px 20px 0 0; }
.data-list ul li:nth-child(1),
.data-list ul li:nth-child(2) { padding-top: 0; }
.data-list ul li:nth-child(even) { padding-right: 0; }

.button-container { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 25px; }
.button-container .button { margin: 5px; }

.paging { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; margin: 35px 0 5px 0; }
.paging a { transition: border-color 0.2s ease-in-out; flex-shrink: 0; display: flex; justify-content: center; align-items: center; box-sizing: border-box; min-width: 40px; height: 44px; margin: 5px; padding: 0 16px; background: var(--s-25); border: 1px solid var(--s-800-t40); color: var(--s-800); font-size: 15px; font-weight: 500; line-height: 24px; }
.paging a:hover { border-color: var(--s-800); }
.paging a.active { border-color: var(--b-50); }

.search-container { position: relative; padding: 5px; }
.search-container .inner { display: flex; flex-wrap: nowrap; box-sizing: border-box; width: 100%; }
.search-container .inner.advanced-toggle { justify-content: center; margin-top: 15px; }
.search-container .inner.advanced { position: absolute; z-index: 550; top: 100%; left: 0; margin-top: 20px; padding: 0 10px; }
.search-container .items { flex-grow: 1; display: flex; flex-wrap: nowrap; width: 0; }
.search-container .item { display: flex; box-sizing: border-box; width: 14.3%; padding: 5px; }
.search-container .button-item { flex-shrink: 0; width: auto; }
.search-container .button-item .button { width: 100%; }

.search-container .filters { display: flex; box-sizing: border-box; width: 100%; padding: 10px; background: var(--s-25); border: 1px solid var(--s-800-t15); }
.search-container .filters .item { flex-grow: 1; }

.filters { flex-direction: row; flex-wrap: wrap; padding: 0; }
.filters .item { display: flex; flex-direction: column; justify-content: flex-end; box-sizing: border-box; width: 16.66%; padding: 10px; }
.filters .item.width-two { width: 33.32%; }
.filters .item.width-full { width: 100%; }
.filters .item.checkboxes { flex-direction: row; flex-wrap: wrap; justify-content: flex-start; }
.filters .item .item-heading { margin-bottom: 6px; color: var(--s-800); font-size: 15px; line-height: 24px; }

.filters .item .checkbox-container { margin: 10px 40px 10px 0; }
.filters .item .checkbox-container:last-child { margin-right: 0; }

.filters .item .split-items { display: flex; flex-wrap: nowrap; width: 100%; }
.filters .item .split-items .split-item { display: flex; box-sizing: border-box; width: 50%; }
.filters .item .split-items:not(.slim) .split-item:first-child { padding-right: 10px; }
.filters .item .split-items:not(.slim) .split-item:last-child { padding-left: 10px; }
.filters .item .split-items.slim .split-item:first-child { padding-right: 5px; }
.filters .item .split-items.slim .split-item:last-child { padding-left: 5px; }

.form-container { display: flex; flex-wrap: wrap; align-items: stretch; box-sizing: border-box; width: 100%; }
.form-container .form-item { display: flex; flex-direction: column; box-sizing: border-box; width: 50%; padding: 10px; }
.form-container .form-item.width-full { width: 100%; }
.form-container .form-item .item-heading { margin-bottom: 6px; color: var(--s-800); font-size: 15px; line-height: 24px; }

.form-container.slim { padding: 5px; }
.form-container.slim .form-item { padding: 5px; }
.form-container.slim .form-item .checkbox-container { padding: 10px 0; }
.form-container.slim .form-item .textarea { height: 96px; }

.properties-overview { flex-direction: row; flex-wrap: wrap; align-items: stretch; margin-top: 20px; padding: 0; }
.properties-overview .item { display: flex; box-sizing: border-box; width: 50%; padding: 10px; }
.properties-overview .box { transition: border-color 0.2s ease-in-out; display: flex; flex-direction: column; position: relative; box-sizing: border-box; width: 100%; height: 100%; border: 1px solid var(--s-800-t15); }
.properties-overview .box:hover { border-color: var(--s-800-t25); }
.properties-overview .box a.whole { position: absolute; z-index: 50; top: 0; left: 0; width: 100%; height: 100%; }
.properties-overview .box .image { flex-shrink: 0; display: flex; position: relative; width: 100%; height: 340px; }
.properties-overview .box .image img { width: 100%; height: 100%; object-fit: cover; }
.properties-overview .box .details { flex-grow: 1; display: flex; flex-direction: column; box-sizing: border-box; width: 100%; padding: 16px 20px 20px 20px; }
.properties-overview .box .details .top { display: flex; flex-wrap: nowrap; justify-content: space-between; width: 100%; }
.properties-overview .box .details .top .left { display: flex; flex-direction: column; padding-right: 20px; }
.properties-overview .box .details .top .right { flex-shrink: 0; display: flex; flex-direction: column; align-items: flex-end; text-align: right; }
.properties-overview .box .details .headline h3 { color: var(--s-800); font-size: 24px; line-height: 36px; }
.properties-overview .box .details .location { display: flex; flex-wrap: nowrap; align-items: center; margin-top: 10px; color: var(--s-800); font-size: 15px; line-height: 24px; }
.properties-overview .box .details .location .icon { flex-shrink: 0; display: flex; margin-right: 12px; color: var(--b-50); font-size: 16px; }
.properties-overview .box .details .price { display: flex; align-items: baseline; color: var(--s-800); font-size: 24px; font-weight: 500; line-height: 36px; }
.properties-overview .box .details .price .text { margin-left: 4px; font-size: 14px; font-weight: 600; line-height: 22px; }
.properties-overview .box .details .reference { margin-top: 10px; color: var(--s-800-t50); font-size: 15px; line-height: 24px; }
.properties-overview .box .details .bottom { flex-grow: 1; display: flex; flex-direction: column; justify-content: flex-end; width: 100%; margin-top: 20px; }
.properties-overview .box .details .bottom ul { display: flex; flex-wrap: wrap; width: 100%; list-style: none; }
.properties-overview .box .details .bottom ul li { margin-right: 30px; color: var(--s-800); font-size: 15px; line-height: 24px; }
.properties-overview .box .details .bottom ul li:last-child { margin-right: 0; }

.offices-overview { flex-direction: row; flex-wrap: wrap; align-items: stretch; width: 100%; padding: 0; }
.offices-overview .item { display: flex; box-sizing: border-box; width: 33.33%; padding: 10px; }
.offices-overview .box { transition: border-color 0.2s ease-in-out; display: flex; flex-direction: column; box-sizing: border-box; width: 100%; height: 100%; padding: 30px; background: var(--crimson-25); border: 1px solid var(--crimson-25); }
.offices-overview .box .headline { display: flex; width: 100%; margin-bottom: 10px; }
.offices-overview .box .headline h3 { color: var(--s-25); font-size: 24px; line-height: 36px; }
.offices-overview .box .list ul li,
.offices-overview .box .list ul li a { color: var(--s-25); }
.offices-overview .box .list ul li a:hover { color: var(--s-25-t75); }
.offices-overview .box .list ul li .icon { margin-right: 10px; }
.offices-overview .box .socials-icons { flex-grow: 1; display: flex; align-items: flex-end; width: 100%; }
.offices-overview .box .socials-icons ul { display: flex; flex-wrap: wrap; align-items: center; width: 100%; list-style: none; }
.offices-overview .box .socials-icons ul li { display: flex; margin: 10px 16px 0 0; }
.offices-overview .box .socials-icons ul li:last-child { margin-right: 0; }
.offices-overview .box .socials-icons ul li a { transition: color 0.2s ease-in-out; display: flex; color: var(--s-25-t50); font-size: 20px; }
.offices-overview .box .socials-icons ul li a:hover { color: var(--s-25); }

.pages-overview { flex-direction: row; flex-wrap: wrap; align-items: stretch; padding: 0; }
.pages-overview:first-child { margin-top: 10px; }
.pages-overview .item { display: flex; box-sizing: border-box; width: 50%; padding: 10px; }
.pages-overview .box { transition: border-color 0.2s ease-in-out; display: flex; flex-direction: column; position: relative; box-sizing: border-box; width: 100%; height: 100%; border: 1px solid var(--s-800-t15); }
.pages-overview .box:hover { border-color: var(--s-800-t25); }
.pages-overview .box a.whole { position: absolute; z-index: 50; top: 0; left: 0; width: 100%; height: 100%; }
.pages-overview .box .image { flex-shrink: 0; display: flex; width: 100%; height: 260px; }
.pages-overview .box .image img { width: 100%; height: 100%; object-fit: cover; }
.pages-overview .box .details { flex-grow: 1; display: flex; flex-direction: column; box-sizing: border-box; width: 100%; padding: 20px; color: var(--s-800); }
.pages-overview .box .details h3 { font-size: 22px; line-height: 28px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.pages-overview .box .details p { margin-top: 10px; color: var(--s-800-t75); font-size: 15px; line-height: 24px; }

.articles-overview { flex-direction: row; flex-wrap: wrap; align-items: stretch; padding: 0; }
.articles-overview:first-child { margin-top: 10px; }
.articles-overview .item { display: flex; box-sizing: border-box; width: 33.33%; padding: 10px; }
.articles-overview .box { transition: border-color 0.2s ease-in-out; display: flex; flex-direction: column; position: relative; box-sizing: border-box; width: 100%; height: 100%; border: 1px solid var(--s-800-t15); }
.articles-overview .box:hover { border-color: var(--s-800-t25); }
.articles-overview .box a.whole { position: absolute; z-index: 50; top: 0; left: 0; width: 100%; height: 100%; }
.articles-overview .box .image { flex-shrink: 0; display: flex; width: 100%; height: 234px; }
.articles-overview .box .image img { width: 100%; height: 100%; object-fit: cover; }
.articles-overview .box .details { flex-grow: 1; display: flex; flex-direction: column; box-sizing: border-box; width: 100%; padding: 20px; color: var(--s-800); }
.articles-overview .box .details h3 { font-size: 22px; line-height: 28px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.articles-overview .box .details p { margin-top: 10px; color: var(--s-800-t75); font-size: 15px; line-height: 24px; }

.text-boxes { flex-direction: row; flex-wrap: wrap; align-items: stretch; width: 100%; margin-top: 30px; padding: 0; }
.text-boxes:first-child { margin-top: 0; }
.text-boxes .item { display: flex; box-sizing: border-box; width: 33.33%; padding: 10px; }
.text-boxes .box { display: flex; flex-direction: column; box-sizing: border-box; width: 100%; height: 100%; padding: 30px; border: 1px solid var(--s-800-t15); }
.text-boxes .box .icon { display: flex; margin-bottom: 20px; color: var(--b-50); font-size: 36px; }
.text-boxes .box .text { display: flex; flex-direction: column; }
.text-boxes .box .text h2 { margin-bottom: 10px; color: var(--s-800); font-size: 24px; line-height: 36px; }
.text-boxes .box .text p { color: var(--s-800-t75); font-size: 15px; line-height: 24px; }

.image-text-container { display: flex; flex-wrap: nowrap; align-items: center; width: 100%; padding-bottom: 10px; }
.image-text-container.divider { padding-top: 50px; border-top: 1px solid var(--s-800-t20); }
.image-text-container .image { flex-shrink: 0; display: flex; width: 480px; }
.image-text-container .image img { width: 100%; }
.image-text-container .text { flex-grow: 1; display: flex; flex-direction: column; box-sizing: border-box; width: 0; padding-left: 100px; }
.image-text-container .text h2 { margin-bottom: 10px; color: var(--s-800); font-size: 30px; line-height: 40px; }
.image-text-container .text p { color: var(--s-800-t75); font-size: 15px; line-height: 24px; }
.image-text-container .text .link { margin-top: 20px; }
.image-text-container .text .form { margin-top: 10px; }
.image-text-container .text .success { max-width: 480px; margin-top: 10px; }

.image-text-container.reverse { flex-direction: row-reverse; }
.image-text-container.reverse .text { padding-left: 0; padding-right: 100px; }

.form { display: flex; flex-direction: column; width: 100%; max-width: 480px; }
.form .form-item { display: flex; width: 100%; padding: 10px 0; }

.panel-container { display: flex; flex-wrap: nowrap; align-items: stretch; width: 100%; padding: 10px 0; }
.panel-container .panel-main { flex-grow: 1; display: flex; flex-direction: column; width: 0; }
.panel-container .panel-main .text-container { padding: 50px 0 0 0; }
.panel-container .panel-main .text-container:first-child { padding-top: 0; }
.panel-container .panel-side { flex-shrink: 0; display: flex; flex-direction: column; box-sizing: border-box; width: 400px; padding-left: 20px; }
.panel-container .panel-side .panel-box { position: sticky; top: 120px; }
.panel-container .panel-box { display: flex; flex-direction: column; box-sizing: border-box; width: 100%; padding: 20px; border: 1px solid var(--s-800-t15); }
.panel-container .panel-box.full-height { flex-grow: 1; justify-content: space-between; }
.panel-container .panel-box .box-content { display: flex; flex-direction: column; box-sizing: border-box; width: 100%; padding: 10px; }
.panel-container .panel-box .box-headline h2 { color: var(--s-800); font-size: 24px; line-height: 36px; }
.panel-container .panel-box .text-container { padding: 0; }
.panel-container .box-headline { display: flex; width: 100%; margin-bottom: 10px; }
.panel-container .box-headline:last-child { margin-bottom: 0; }
.panel-container .panel-section { display: flex; flex-direction: column; width: 100%; padding: 50px 0; border-top: 1px solid var(--s-800-t15); }
.panel-container .panel-section:first-child { padding-top: 0; border-top: 0; }
.panel-container .panel-section:last-child { padding-bottom: 0; }

.panel-container .panel-box.dark { background: var(--crimson-25); border-color: var(--crimson-25); }
.panel-container .panel-box.dark .box-headline h2 { color: var(--s-25); }
.panel-container .panel-box.dark .list ul li,
.panel-container .panel-box.dark .list ul li a { color: var(--s-25); }
.panel-container .panel-box.dark .list ul li a:hover { color: var(--s-25-t75); }
.panel-container .panel-box.dark .text-container p { color: var(--s-25-t75); }

.gallery-container { display: flex; flex-wrap: nowrap; align-items: stretch; width: 100%; height: 480px; margin-bottom: 30px; }
.gallery-container .image { display: flex; justify-content: center; align-items: center; position: relative; width: 100%; height: 100%; }
.gallery-container .image a { display: flex; position: relative; width: 100%; height: 100%; }
.gallery-container .image img { transition: opacity 0.2s ease-in-out; position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.gallery-container .image img:nth-child(1) { z-index: 200; }
.gallery-container .image img:nth-child(2) { z-index: 100; }
.gallery-container .image img.placeholder { position: static; max-width: 100%; width: auto; height: 100px; }
.gallery-container .main { flex-grow: 1; display: flex; position: relative; width: 0; }
.gallery-container .thumbnails { flex-shrink: 0; display: flex; flex-direction: column; box-sizing: border-box; width: 400px; padding-left: 20px; }
.gallery-container .thumbnails .image { height: 50%; }
.gallery-container .thumbnails .image:first-child { padding-bottom: 10px; }
.gallery-container .thumbnails .image:last-child { padding-top: 10px; }
.gallery-container .buttons { display: flex; flex-wrap: wrap; position: absolute; bottom: 20px; left: 20px; }
.gallery-container .buttons a { transition: background 0.2s ease-in-out; flex-shrink: 0; display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; position: relative; z-index: 500; margin: 10px 10px 0 0; padding: 6px 12px; background: var(--s-900-t60); align-items: center; color: var(--s-25); font-size: 15px; font-weight: 600; line-height: 24px; }
.gallery-container .buttons a:last-child { margin-right: 0; }
.gallery-container .buttons a:hover { background: var(--b-50); }
.gallery-container .buttons a .icon { flex-shrink: 0; display: flex; margin-right: 10px; }
.gallery-container .slider-arrow { transition: background 0.2s ease-in-out; position: absolute; z-index: 500; top: 50%; transform: translateY(-50%); display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; background: var(--s-900-t60); color: var(--s-25); font-size: 20px; }
.gallery-container .slider-arrow:hover { background: var(--b-50); }
.gallery-container .slider-arrow.previous { left: 20px; }
.gallery-container .slider-arrow.next { right: 20px; }
.gallery-container .preload { display: none; }

.property-head { display: flex; flex-wrap: nowrap; justify-content: space-between; width: 100%; }
.property-head .item { display: flex; flex-direction: column; }
.property-head .item:nth-child(2) { flex-shrink: 0; align-items: flex-end; padding-left: 20px; text-align: right; }
.property-head .headline { display: flex; }
.property-head .headline h1 { color: var(--s-800); font-size: 30px; line-height: 40px; }
.property-head .location { display: flex; flex-wrap: nowrap; align-items: center; margin-top: 10px; color: var(--s-800); font-size: 15px; line-height: 24px; }
.property-head .location .icon { flex-shrink: 0; display: flex; margin-right: 12px; color: var(--b-50); font-size: 16px; }
.property-head .price { display: flex; flex-wrap: nowrap; align-items: baseline; padding: 3px 0 1px 0; color: var(--s-800); font-size: 24px; font-weight: 500; line-height: 36px; }
.property-head .price .text { margin-left: 4px; font-size: 14px; font-weight: 600; line-height: 22px; }
.property-head .reference { display: flex; margin-top: 10px; color: var(--s-800-t50); font-size: 15px; line-height: 24px; }

.map-container { display: flex; width: 100%; height: 400px; background: var(--s-900); }
.map-container .map { width: 100%; height: 100%; }

.footer-container { flex-shrink: 0; display: flex; flex-direction: column; width: 100%; }

.cta { display: flex; flex-direction: column; align-items: center; width: 100%; padding-top: 50px; }
.cta .item { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; box-sizing: border-box; width: 100%; padding: 55px 0; background: var(--crimson-25); }
.cta .item h4 { margin: 20px; color: var(--s-25); font-size: 36px; line-height: 48px; text-align: center; }
.cta .item .button { align-self: center; margin: 20px; }
.cta .item .button:not(:hover) { color: var(--s-25); }

.footer { display: flex; flex-direction: column; align-items: center; width: 100%; }

.footer .top { flex-direction: row; flex-wrap: nowrap; padding: 65px 0 60px 0; }
.footer .top .item { flex-basis: 0; flex-grow: 1; flex-shrink: 1; display: flex; flex-direction: column; box-sizing: border-box; padding: 10px; }
.footer .top .item .headline { margin-bottom: 10px; }
.footer .top .item .headline h5 { color: var(--s-800); font-size: 24px; line-height: 36px; }

.footer .bottom { display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: center; width: 100%; padding: 50px 0; border-top: 1px solid var(--s-800-t20); }
.footer .bottom .text { display: flex; flex-direction: column; padding-right: 20px; color: var(--s-800-t50); font-size: 13px; line-height: 24px; }
.footer .bottom .logo { flex-shrink: 0; display: flex; }
.footer .bottom .logo a { display: flex; }
.footer .bottom .logo img { height: 60px; }

.link { transition: color 0.2s ease-in-out; align-self: flex-start; flex-shrink: 0; display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; text-align: center; color: var(--b-50); font-size: 15px; font-weight: 500; line-height: 24px; }
.link:hover { color: var(--b-25); }
.link .icon { display: flex; margin-left: 10px; }
.link .icon.before { margin-left: 0; margin-right: 10px; }

.labels { position: absolute; top: 20px; right: 20px; display: flex; flex-wrap: wrap; justify-content: flex-end; }
.labels .label { position: relative; z-index: 500; margin: 0 0 10px 10px; background: var(--s-900); padding: 8px 10px; color: var(--s-25); font-size: 12px; font-weight: 600; line-height: 16px; text-transform: uppercase; }
.labels .label:first-child { margin-left: 0; }

.checkbox-container { display: flex; flex-wrap: nowrap; }
.checkbox-container input { display: none; }
.checkbox-container .checkbox { flex-shrink: 0; display: flex; justify-content: center; align-items: center; box-sizing: border-box; width: 24px; height: 24px; background: var(--s-25); border: 1px solid var(--s-800-t15); cursor: pointer; }
.checkbox-container .checkbox span { display: none; color: var(--s-25); font-size: 14px; }
.checkbox-container input.error + .checkbox { border-color: var(--red-25); }
.checkbox-container input:checked + .checkbox { background: var(--b-50); border-color: var(--b-50); }
.checkbox-container input:checked + .checkbox span { display: block; }
.checkbox-container .checkbox-label { padding-left: 12px; color: var(--s-800-t75); font-size: 13px; line-height: 24px; cursor: pointer; user-select: none; }

.input { box-sizing: border-box; width: 100%; height: 48px; padding: 0 18px; background: var(--s-25); border: 1px solid var(--s-800-t15); color: var(--s-800); font-size: 15px; line-height: 24px; }
.input:focus { border-color: var(--b-50); }
.input.error { border-color: var(--red-25); }

.textarea { box-sizing: border-box; width: 100%; height: 144px; padding: 12px 18px; background: var(--s-25); border: 1px solid var(--s-800-t15); color: var(--s-800); font-size: 15px; line-height: 24px; resize: none; }
.textarea:focus { border-color: var(--b-50); }
.textarea.error { border-color: var(--red-25); }

.button { transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out; flex-shrink: 0; align-self: flex-start; display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; padding: 12px 18px; background: transparent; border: 1px solid var(--b-50); color: var(--s-800); font-size: 15px; font-weight: 500; line-height: 24px; text-align: center; cursor: pointer; }
.button:hover { color: var(--b-50); }

.button.width-full { align-self: stretch; }

.button.grey { border-color: var(--s-800-t40); }
.button.grey:hover { border-color: var(--b-50); }

.button .icon { display: flex; margin-left: 10px; }
.button .icon.before { margin-left: 0; margin-right: 10px; }

.success { flex-grow: 1; display: none; box-sizing: border-box; width: 100%; padding: 10px; color: var(--s-800); font-size: 15px; line-height: 24px; text-align: center; }
.success .success-inner { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; height: 100%; }
.success .icon { margin-bottom: 20px; color: var(--s-800-t15); font-size: 60px; }
.success .text { width: 100%; padding: 0 !important; }

.no-results { flex-grow: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; padding-top: 40px; padding-bottom: 40px; color: var(--s-800-t50); font-size: 15px; line-height: 24px; }
.no-results .icon { min-height: 40px; margin-bottom: 20px; color: var(--s-800-t15); font-size: 40px; }

.cta-buttons { display: flex; flex-wrap: nowrap; align-items: stretch; transform: rotate(90deg) translateX(50%); transform-origin: 100% 0; position: fixed; z-index: 1050; top: 50%; right: 0; }
.cta-buttons .item { flex-shrink: 0; display: flex; }
.cta-buttons .item a { display: flex; align-items: center; box-sizing: border-box; height: 100%; padding: 6px 12px; background: var(--b-50); color: var(--s-25); font-size: 15px; font-weight: 500; line-height: 24px; }
.cta-buttons ul { flex-shrink: 0; display: flex; flex-wrap: nowrap; align-items: center; gap: 14px; padding: 6px 12px; background: var(--s-900); list-style: none; }
.cta-buttons ul li { display: flex; }
.cta-buttons ul li a { display: flex; transform: rotate(-90deg); color: var(--s-25); font-size: 14px; }

.cookie-message { display: flex; flex-direction: column; align-items: center; position: fixed; z-index: 2000; bottom: 0; left: 0; width: 100%; padding: 10px 0; background: var(--s-25); border-top: 1px solid var(--s-800-t15); font-size: 14px; }
.cookie-message .content { flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px; }
.cookie-message .content .column { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; }
.cookie-message .content .column:nth-child(2) { flex-shrink: 0; }
.cookie-message .content .column .link,
.cookie-message .content .column .button { align-self: center; }

.loading-container { flex-grow: 1; justify-content: center; align-items: center; width: 100%; padding-top: 40px; padding-bottom: 40px; color: var(--s-800); font-size: 15px; line-height: 24px; }
.loading-container .icon { min-height: 40px; margin-bottom: 20px; font-size: 40px; }
.loading-container .icon svg { animation-name: spin; animation-duration: 1s; animation-iteration-count: infinite; animation-timing-function: ease-in-out;  }

.fancybox-show-thumbs .fancybox-inner { right: 0; bottom: 104px; }
.fancybox-thumbs.fancybox-thumbs-x { top: auto; width: 100%; background: transparent; text-align: center; }
.fancybox-thumbs.fancybox-thumbs-x .fancybox-thumbs__list { display: inline-block; }
.fancybox-thumbs.fancybox-thumbs-x .fancybox-thumbs__list a::before { border: 3px solid var(--b-50); }

@keyframes spin {
    from { transform:rotate(0deg); }
    to { transform:rotate(360deg); }
}

@media (max-width: 1450px) {
    .cta-buttons { display: none; }
}

@media (max-width: 1200px) {
    .filters .item { flex-grow: 1; flex-basis: 320px; width: auto; }
    .filters .item.width-two { width: auto; }
    .filters .item.width-full { flex-basis: auto; }
    
    .properties-overview .box .image { height: 28vw; }
    
    .pages-overview { padding: 5px; }
    .pages-overview .item { padding: 5px; }
    .pages-overview .box .image { height: 21vw; }
    
    .articles-overview { padding: 5px; }
    .articles-overview .item { padding: 5px; }
    .articles-overview .box .image { height: 17vw; }
}

@media (max-width: 1000px) {
    .header .logo { position: relative; z-index: 950; }
    .header .menu { position: fixed; z-index: 900; top: 0; left: 0; box-sizing: border-box; width: 100%; height: 100%; padding-top: 100px; }
    .header .menu:not(.visible) { display: none; }
    .header .menu nav { width: 100%; height: 100%; background: var(--s-25); overflow-y: auto; }
    .header .menu nav ul { flex-direction: column; width: 100%; }
    .header .menu nav ul li { flex-direction: column; align-items: center; width: 100%; padding: 0; border-bottom: 1px solid var(--s-800-t15); }
    .header .menu nav ul li:last-child { border-bottom: 0; }
    .header .menu nav ul li a:not(.button) { justify-content: center; box-sizing: border-box; width: 100%; padding: 15px; border-bottom: 0; }
    .header .menu nav ul li:not(.active) a:not(.button),
    .header .menu nav ul li:not(.active) a:not(.button):hover { color: var(--s-800); }
    .header .menu nav ul li.active a:not(.button) { border-color: var(--s-800-t15); }
    .header .menu nav ul li a.button { margin: 15px 0; }
    .header.transparent:not(.sticky) .menu nav ul li a.button:not(:hover) { color: var(--s-800); }
    
    .header .menu nav ul li .submenu { display: flex; position: static; top: auto; left: auto; margin-top: 0; padding-top: 0; }
    .header .menu nav ul li .submenu ul { box-sizing: border-box; width: 100%; max-width: 100%; padding: 0 0 10px 0; border: 0; }
    .header .menu nav ul li .submenu ul li { border-bottom: 0; }
    .header .menu nav ul li .submenu ul li a:not(.button) { padding: 5px 10px; color: var(--s-800); }
    
    /*
    .header .menu nav ul li .submenu-container { display: flex; position: static; top: auto; left: auto; padding: 0 0 10px 0; }
    .header .menu nav ul li .submenu .bg { display: none; }
    .header .menu nav ul li .submenu ul { padding: 0; }
    .header .menu nav ul li .submenu ul li { padding: 0; border-bottom: 0; }
    .header .menu nav ul li .submenu ul li a:not(.button) { padding: 6px 15px; font-size: 14px; line-height: 22px; }
    */
    
    .header .mobile-menu { display: flex; position: relative; z-index: 950; }
    .header .menu.visible + .mobile-menu .mobile-menu-button.open { display: none; }
    .header .menu.visible + .mobile-menu .mobile-menu-button.close { display: flex; }
    
    .hero { height: 500px; }
    .hero .item .content { margin: 100px 0; padding: 0 10px; }
    .hero .item .headline { flex-shrink: 0; }
    .hero .item .headline h2 { font-size: 26px; line-height: 38px; }
    .hero .item .price { flex-shrink: 0; }
    .hero .item .price .amount { font-size: 20px; line-height: 28px; }
    .hero .item .location { flex-shrink: 0; font-size: 14px; }
    .hero .controls { align-items: flex-start; bottom: 10px; }
    
    .search-container .inner { flex-wrap: wrap; }
    .search-container .items { flex-wrap: wrap; width: 100%; }
    .search-container .item { flex-grow: 1; width: 50%; }
    .search-container .button-item { width: 100%; }
    
    .page .title h1,
    .page .title h2 { font-size: 24px; line-height: 32px; }
    
    .image-text-container { flex-direction: column; }
    .image-text-container .image { width: 100%; }
    .image-text-container .text { width: 100%; padding-left: 0; padding-top: 40px; }
    .image-text-container .text h2 { font-size: 24px; line-height: 32px; }
    
    .image-text-container.reverse { flex-direction: column; }
    .image-text-container.reverse .text { padding-right: 0; }
    
    .form { max-width: 100%; }
    .form .form-item .button { width: 100%; }
    
    .icon-list ul li { flex-basis: 160px; width: auto; }
    .icon-list ul li,
    .icon-list ul li:nth-child(1),
    .icon-list ul li:nth-child(2),
    .icon-list ul li:nth-child(3),
    .icon-list ul li:nth-child(3n) { padding: 5px 10px 5px 0; }
    .icon-list ul li .name { margin-bottom: 5px; font-size: 14px; line-height: 22px; }
    .icon-list ul li .value { font-size: 14px; line-height: 22px; }
    .icon-list ul li .value .icon { min-width: 20px; margin-right: 5px; font-size: 16px; }
    
    .panel-container { flex-direction: column; }
    .panel-container .panel-main { width: 100%; }
    .panel-container .panel-side { width: 100%; padding-left: 0; padding-top: 20px; }
    .panel-container .panel-box .box-headline h2 { font-size: 22px; line-height: 28px; }
    
    .properties-overview .box .details .headline h3 { font-size: 18px; line-height: 24px; }
    .properties-overview .box .details .location { font-size: 14px; line-height: 22px; }
    .properties-overview .box .details .location .icon { font-size: 15px; }
    .properties-overview .box .details .price { font-size: 20px; line-height: 24px; }
    .properties-overview .box .details .reference { font-size: 14px; line-height: 22px; }
    .properties-overview .box .details .bottom ul li { font-size: 14px; line-height: 22px; }
    
    .pages-overview .box .details h3 { font-size: 16px; line-height: 22px; }
    .pages-overview .box .details span { margin-top: 5px; }
    
    .articles-overview .box .details h3 { font-size: 16px; line-height: 22px; }
    .articles-overview .box .details span { margin-top: 5px; }
    
    .offices-overview .item { flex-grow: 1; flex-basis: 330px; width: auto; }
    
    .text-boxes .item { flex-grow: 1; flex-basis: 330px; width: auto; }
    .text-boxes .box .text h2 { font-size: 20px; line-height: 28px; }
    
    .gallery-container { flex-direction: column; height: 90vw; min-height: 300px; }
    .gallery-container .main { width: 100%; height: 0; }
    .gallery-container .thumbnails { flex-direction: row; width: 100%; height: 34%; padding-left: 0; padding-top: 10px; }
    .gallery-container .thumbnails .image { width: 50%; height: 100%; }
    .gallery-container .thumbnails .image:first-child { padding-bottom: 0; padding-right: 5px; }
    .gallery-container .thumbnails .image:last-child { padding-top: 0; padding-left: 5px; }
    .gallery-container .slider-arrow { width: 40px; height: 40px; font-size: 16px; }
    
    .property-head .headline h1 { font-size: 22px; line-height: 30px; }
    .property-head .location { font-size: 14px; line-height: 22px; }
    .property-head .location .icon { font-size: 15px; }
    .property-head .price { padding: 0; font-size: 20px; line-height: 30px; }
    .property-head .reference { font-size: 14px; line-height: 22px; }
    
    .cta .item h4 { font-size: 26px; line-height: 38px; }
    
    .footer .top { flex-wrap: wrap; }
    .footer .top .item { flex-basis: 50%; align-items: center; }
    .footer .top .item .headline { text-align: center; }
    .footer .top .item .headline h5 { font-size: 20px; line-height: 28px; }
    .footer .top .item .list ul { align-items: center; }
    .footer .top .item .list ul li { text-align: center; }
    .footer .bottom { flex-direction: column; }
    .footer .bottom .text { padding-right: 0; padding-bottom: 20px; text-align: center; }
}

@media (max-width: 900px) {
    .articles-overview .item { width: 50%; }
    .articles-overview .box .image { height: 25vw; }
}

@media (max-width: 800px) {
    .properties-overview .item { width: 100%; }
    .properties-overview .box .image { height: 57vw; }
}

@media (max-width: 600px) {
    .form-container .form-item { width: 100%; }
    .form-container .form-item .button { width: 100%; }
    
    .pages-overview .item { width: 100%; }
    .pages-overview .box .image { height: 43vw; }
    
    .articles-overview .item { width: 100%; }
    .articles-overview .box .image { height: 51vw; }
}

@media (max-width: 500px) {
    .search-container .item { width: 100%; }
    
    .page .title.horizontal h1,
    .page .title.horizontal h2 { text-align: center; }
    .page .title.horizontal { flex-direction: column; align-items: center; }
    .page .title.horizontal .item:nth-child(2) { padding-left: 0; padding-top: 20px; }
}

@media (max-width: 400px) {
    .properties-overview .box .details .top { flex-direction: column; }
    .properties-overview .box .details .top .left { padding-right: 0; padding-bottom: 20px; }
    .properties-overview .box .details .top .right { align-items: flex-start; text-align: left; }
    
    .property-head { flex-direction: column; }
    .property-head .item:nth-child(2) { align-items: flex-start; padding-left: 0; padding-top: 20px; text-align: left; }
}

@media (max-width: 320px) {
    .filters .item .split-items { flex-direction: column; }
    .filters .item .split-items .split-item { width: 100%; }
    .filters .item .split-items.slim .split-item:first-child,
    .filters .item .split-items:not(.slim) .split-item:first-child { padding-right: 0; padding-bottom: 2.5px; }
    .filters .item .split-items.slim .split-item:last-child,
    .filters .item .split-items:not(.slim) .split-item:last-child { padding-left: 0; padding-top: 2.5px; }
}