/**
 * @author sh1zen
 * @copyright Copyright (C) 2025.
 * @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
 */
:root {
    --sw-container-max: 1606px;
    --sw-content-max: 1122px;
    --sw-wide-content-max: 1298px;
    --sw-sidebar-width: 350px;
    --sw-container-gap: 10px;
    --sw-archive-max: min(var(--sw-container-max), calc(var(--sw-content-max) + var(--sw-sidebar-width) + var(--sw-container-gap)));
    --sw-reserved-max: 1298px;
    --sw-reserved-wide-max: 1408px;
    --sw-page-gutter-global: 1.6rem;
    --sw-page-gutter-compact: 1rem;
    --sw-color-brand: #1b4c2c;
    --sw-color-brand-control: #217e42;
    --sw-color-accent: #f5822f;
    --sw-color-white: #fff;
    --sw-color-border: #cfcfcf;
    --sw-color-border-soft: #c7c7c7;
    --sw-color-text: #5a5a5a;
    --sw-color-control-text: #3f3f3f;
    --sw-radius-sm: 3px;
    --sw-control-height: 4.6rem;
    --sw-control-padding-x: 1.4rem;
    --sw-control-shadow: inset 0 1px 0 rgba(34, 43, 53, .03);
    --sw-focus-ring: 0 0 0 3px rgba(27, 76, 44, .08);
    --sw-control-transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
    --sw-panel-border: #dde3e0;
    --sw-panel-radius: 8px;
    --sw-panel-shadow: 0 12px 26px rgba(34, 43, 53, .06);
}

*, *::before, *::after {
    margin: 0;
    padding: 0;
    color: inherit;
    font: inherit;
    box-sizing: border-box;
}

html {
    position: relative;
    max-width: 100%;
    min-height: 100%;
    height: 100%;
    overflow-y: initial;
    font-size: 68.75%;
    cursor: default;
    -webkit-tap-highlight-color: transparent;
}

body {
    position: relative;
    top: 0 !important;
    max-width: 100%;
    min-height: 100%;
    overflow-x: hidden;
    color: var(--sw-color-text);
    font-family: system-ui, -apple-system, sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    overflow-wrap: break-word;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

body > main {
    min-height: calc(100vh - 189px);
}

block, page, actions, sw-search, sub-nav, sw-list, .sw-form .sw-autocomplete, .sw-tabContent[aria-hidden=false], .sw-select.is-open .sw-select__menu, .sw-rangeInput.is-open .sw-rangeInput__menu, .sw-pageStack, .sw-vpageInfoFact__value, .sw-vpageInfoFact__label, .sw-mortgageCalc {
    display: block;
}

ol, ul {
    padding-left: 3rem;
}

nav ol, nav ul, .sw-tabBar {
    list-style: none;
}

h1, h2, h3, h4, h5, h6 {
    margin: 2.5rem 0 1.5rem;
    font-weight: 400;
}

h1 {
    font-size: 2.1rem;
    line-height: 2.9rem;
}

h2 {
    font-size: 1.9rem;
    line-height: 2.7rem;
}

h3 {
    font-size: 1.6rem;
    line-height: 2.4rem;
}

h4, h5, h6 {
    font-size: 1.4rem;
    line-height: 2.2rem;
}

p {
    margin: 1rem 0;
}

a {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    outline: 0;
    transition: all 350ms ease-in-out 250ms;
}

b, strong, .sw-mortgageCalc__value {
    font-weight: 700;
}

img, svg {
    max-width: 100%;
    vertical-align: middle;
}

img {
    display: inline-block;
    height: auto;
}

svg, .sw-vpageCta__whatsapp .sw-icon, .sw-vpageCta__whatsapp .sw-icon * {
    fill: currentColor;
}

img::selection, .sw-button--invisible {
    background: transparent;
}

table {
    width: 100%;
    border-collapse: collapse;
}

td, th {
    padding: 1px;
    text-align: center;
    vertical-align: middle;
}

.sw-managePostsPage .sw-article__options.sw-scrollableRow {
    overflow: visible;
}

.sw-vpageInfoDynamicForm .sw-labelValue, .sw-vpageInfoDynamicForm .sw-checkbox__textControl {
    text-transform: none;
}

button {
    display: inline-block;
    border: 0;
    background: inherit;
    color: inherit;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

button:focus, .sw-tab:focus, .sw-stackItem:focus, .sw-autocomplete:focus {
    outline: 0;
}

button[disabled], input[disabled] {
    cursor: default;
}

textarea {
    overflow: auto;
    resize: vertical;
    min-height: 10rem;
    padding: 1.5rem var(--sw-control-padding-x);
    line-height: 1.5;
}

input, select {
    vertical-align: middle;
}

input[type=checkbox], input[type=radio] {
    min-width: 1.15em;
    height: 1.15em;
    line-height: 1.15em;
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}

input:is([type=url], [type=email], [type=password], [type=text], [type=tel], [type=number], [type=search]), select, textarea {
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    background: var(--sw-color-white);
    color: var(--sw-color-control-text);
    box-shadow: var(--sw-control-shadow);
    transition: var(--sw-control-transition);
    outline: 0;
}

input:is([type=email], [type=password], [type=text], [type=tel], [type=url], [type=number], [type=search]), select {
    font-weight: 400;
    min-height: var(--sw-control-height);
    padding: 0 var(--sw-control-padding-x);
    appearance: none;
}

[aria-controls], [href], [onclick], [role=button], [tabindex], [type=button], [type=file], [type=reset], [type=submit], a, button, input, label, select, textarea {
    touch-action: manipulation;
}

::selection {
    background: #2b9e54;
    color: var(--sw-color-white);
}

::-webkit-scrollbar {
    width: 1.4rem;
    background-color: var(--sw-color-white);
}

::-webkit-scrollbar-track {
    border-radius: 3px;
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    border: .3rem solid transparent;
    border-radius: 9em;
    background-clip: padding-box;
    background-color: #ababab;
}

.center {
    display: block;
    margin: auto;
    text-align: center;
}

.sw-noMargin {
    margin: 0 !important;
}

.sw-separator {
    flex: 1 0 100%;
}

.sw-separator::after {
    content: '';
    display: block;
    height: 2px;
    margin-top: 8px;
    background: #acacac;
}

.sw-inlineAction, .sw-notFoundButton, .sw-notFoundCard__icon, .sw-singleSavedNote__icon, .sw-singleIntro__icon, .sw-singleHighlights__icon, .sw-singleDetails__icon, .sw-singleDetailCard__icon, .sw-singleEnergy__badge, .sw-mapClose, .sw-GeoMapToolbar__button, .sw-searchContract__link, .sw-authorLogo, .sw-switch__control, .sw-membership-menu__icon, .sw-statusPill, .sw-iconBubble, .sw-vpageCta__whatsapp, .sw-localSeo__icon, .sw-mortgageCalc__hint, .sw-authorTabs .sw-tab, .sw-membership-menu a, .sw-accountProfilePage .sw-accountAvatar .arv-uploadButton {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sw-relative {
    position: relative;
}

.sw-pageRoot {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.sw-form {
    margin: 0 auto;
    padding: 1em 2em;
    box-shadow: 0 0 3px 0 #acacac;
    border-radius: 3px;
    width: 100%;
}

.sw-form > *, .sw-form .sw-input {
    margin: 1rem auto;
}

.sw-form .sw-separator {
    margin: 2.5em auto 1em;
    font-weight: 600;
    font-size: 1.8rem;
    text-align: left;
}

.sw-form .sw-label {
    align-self: flex-start;
    text-align: left;
    font-weight: 600;
    color: #1c1c1c;
}

.sw-form .sw-labelled .sw-input {
    margin: .4rem auto;
}

.sw-form .sw-gridRow > * {
    flex: 1 1 12em;
}

.sw-form .sw-autocomplete .sw-autocomplete__list {
    top: 0;
    border-color: var(--sw-color-border);
    position: relative;
}

.sw-inputAction {
    position: absolute;
    right: 6px;
    top: 6px;
    font-size: 13px;
    font-weight: 700;
    color: var(--sw-color-white);
    line-height: 4rem;
    border-radius: 4px;
    background: #acacac;
    padding: 0 3rem;
}

.sw-inputAction:hover {
    background: #838383;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, .4);
}

.sw-input, .sw-inputTextarea {
    font-weight: 400;
    margin: 0;
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    background-color: var(--sw-color-white);
    color: var(--sw-color-control-text);
    box-shadow: var(--sw-control-shadow);
    font-size: 1.55rem;
    line-height: 1.45;
    transition: var(--sw-control-transition);
    width: 100%;
}

.sw-input {
    height: var(--sw-control-height);
    padding: 0 var(--sw-control-padding-x);
    text-overflow: ellipsis;
}

.sw-input::placeholder, .sw-inputTextarea::placeholder {
    color: #777;
    opacity: 1;
}

.sw-input:not(:disabled):not(.is-disabled):hover, .sw-inputTextarea:not(:disabled):not(.is-disabled):hover, .sw-rangeInput__control:hover, .sw-select__control:hover {
    border-color: #aeb4b0;
}

.sw-input:disabled, .sw-input.is-disabled {
    background-color: #f3f3f3;
    color: #8a8a8a;
    cursor: not-allowed;
}

.sw-inputMajor {
    border-radius: 8px;
    padding: 2.5rem;
    font-size: 1.8rem;
    font-weight: 600;
}

.sw-inputTextarea, textarea.sw-input {
    height: auto;
    min-height: 10rem;
    padding: 1.5rem 1.4rem;
    line-height: 1.5;
    overflow: hidden;
}

.sw-inputMajor:focus {
    box-shadow: var(--sw-focus-ring);
}

.sw-notice {
    background: #f5f5f5;
    padding: 1em;
    margin: 1em auto;
    box-shadow: 0 0 3px 0 #acacac;
    border-radius: 3px;
}

.sw-notice__title {
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 3rem;
    margin: 1rem 0 2rem;
    text-align: center;
}

.sw-notice__content {
    margin: 1rem 0 2rem;
    text-align: center;
}

.sw-notice__action {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    margin: 3rem 0 1rem;
    gap: 12px;
}

.sw-notice__title::after {
    content: '';
    display: block;
    height: 2px;
    background: #c7c7c7;
    width: 60%;
    margin: 8px auto 0;
    position: relative;
}

.sw-notice--restricted::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    background: var(--sw-color-brand);
}

.sw-notice--restricted .sw-notice__icon {
    width: 6.2rem;
    aspect-ratio: 1;
    margin: 0 0 1.6rem;
    border-radius: 50%;
    background: #edf4f0;
    color: var(--sw-color-brand);
}

.sw-notice--restricted .sw-notice__icon .sw-icon {
    width: 3rem;
    aspect-ratio: 1;
    margin: 0;
}

.sw-notice--restricted .sw-notice__title {
    margin: 0;
    color: var(--sw-color-brand);
    font-size: 2.7rem;
    font-weight: 800;
    line-height: 1.15;
}

.sw-notice--restricted .sw-notice__title::after {
    width: 7rem;
    height: 3px;
    margin: 1.4rem auto 0;
    border-radius: 999px;
    background: var(--sw-color-accent);
}

.sw-notice--restricted .sw-notice__content {
    max-width: 54rem;
    margin: 1.6rem 0 0;
    color: #4f5b64;
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: center;
}

.sw-notice--restricted .sw-notice__content strong {
    display: block;
    color: #2f3944;
    font-weight: 800;
}

.sw-notice--restricted .sw-notice__content p {
    margin: .8rem 0 0;
}

.sw-notice--restricted .sw-notice__action {
    align-items: center;
    justify-content: center;
    gap: 1.2rem;
    margin: 2.2rem 0 0;
}

.sw-notice--restricted .sw-button {
    width: auto;
    min-width: 14rem;
    max-width: none;
    padding: 0 1.8rem;
    border-radius: 6px;
    box-shadow: none;
    font-weight: 800;
    text-decoration: none;
}

.sw-notFoundPage {
    width: min(100% - 2rem, 58rem);
    margin: 0 auto;
    padding: 2.4rem 0 3rem;
    color: #29323d;
}

.sw-notFoundHero, .sw-notFoundCard, .sw-singleDetailRow, .sw-singleEnergy, .sw-archiveEmpty, .sw-agencySearchForm, .sw-singleAgency, .sw-serviceEmptyHero, .sw-serviceActionCard, .sw-servicePrivacyNote, .sw-accountRow, .sw-accountSubscription, .sw-savedListHero, .sw-personalExportCard, .sw-serviceHero__content, .sw-valuationTool, .sw-reservedSearchCard.sw-savedListCard .sw-cardEntity__head {
    display: grid;
    align-items: center;
}

.sw-notFoundHero {
    gap: 2.4rem;
    min-height: 0;
}

.sw-notFoundHero__art {
    display: flex;
    justify-content: center;
    order: 0;
    min-width: 0;
}

.sw-notFoundIllustration {
    width: min(40rem, 100%);
}

.sw-notFoundHero__content {
    max-width: none;
    text-align: left;
}

.sw-notFoundHero__content h1 {
    max-width: 62rem;
    margin: 0 0 1.6rem;
    color: #29323d;
    font-size: 3rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.08;
}

.sw-notFoundHero__content p {
    margin: 0 0 1.4rem;
    color: #3f4a56;
    font-size: 1.7rem;
    line-height: 1.55;
}

.sw-notFoundActions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 2.4rem 0 3rem;
}

.sw-notFoundButton {
    width: 100%;
    min-height: 4.8rem;
    padding: 0 2.2rem;
    gap: .8rem;
    border: 1px solid var(--sw-color-brand);
    border-radius: 4px;
    color: var(--sw-color-brand);
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    transition: background-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.sw-notFoundButton--primary {
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    box-shadow: 0 7px 16px rgba(27, 76, 44, .18);
}

.sw-notFoundButton--secondary, .sw-homeStrip--light, .sw-valuationTool .sw-inputMajor, .sw-agencyAdminCard .sw-relative, .sw-singleContact .sw-postSidebar {
    background: var(--sw-color-white);
}

.sw-notFoundButton--secondary .sw-icon, .sw-rotate180.sw-rotate180, .sw-vpageLegalBack .sw-icon {
    transform: rotate(180deg);
}

.sw-notFoundButton:hover {
    background: #216b3a;
    border-color: #216b3a;
    color: var(--sw-color-white);
}

.sw-notFoundSearch {
    width: 100%;
    max-width: 64rem;
    padding: 1.6rem;
    border: 1px solid #e1e5e2;
    border-radius: 8px;
    background: var(--sw-color-white);
    box-shadow: 0 8px 24px rgba(34, 43, 53, .06);
}

.sw-notFoundSearch__label {
    display: block;
    margin: 0 0 1.4rem;
    color: #29323d;
    font-size: 1.55rem;
    font-weight: 900;
}

.sw-notFoundSearch__row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: relative;
    align-items: stretch;
}

input.sw-notFoundSearch__input {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    min-height: 5.5rem;
    padding: 0 1.6rem 0 6.2rem;
    border: 1px solid #d9dfdc;
    border-radius: 6px;
    color: #29323d;
    font-size: 1.55rem;
    line-height: 1.2;
}

.sw-notFoundSearch__input::placeholder {
    color: #7d8790;
}

.sw-notFoundSearch__icon {
    position: absolute;
    top: 1.75rem;
    left: 1.8rem;
    width: 2rem;
    aspect-ratio: 1;
    border: 2px solid #29323d;
    border-radius: 50%;
    pointer-events: none;
    z-index: 1;
}

.sw-notFoundSearch__icon::after {
    content: "";
    position: absolute;
    right: -.7rem;
    bottom: -.5rem;
    width: .9rem;
    height: .2rem;
    background: #29323d;
    border-radius: 999px;
    transform: rotate(45deg);
}

.sw-notFoundSearch__button {
    flex: 0 0 auto;
    width: 100%;
    min-width: 8rem;
    min-height: 5.5rem;
    padding: 0 1.6rem;
    border-radius: 6px;
    background: var(--sw-color-accent);
    color: var(--sw-color-white);
    font-size: 1.7rem;
    font-weight: 900;
}

.sw-notFoundSearch__button:hover {
    background: #e86f18;
}

.sw-notFoundExplore {
    margin-top: 3.2rem;
    text-align: center;
}

.sw-notFoundExplore h2 {
    margin: 0 0 2rem;
    color: #29323d;
    font-size: 1.75rem;
    font-weight: 900;
    line-height: 1.3;
}

.sw-notFoundCards {
    display: grid;
    gap: 1rem;
    text-align: left;
}

.sw-notFoundCard {
    grid-template-columns: 4.8rem 1fr 1.6rem;
    min-height: 8.8rem;
    padding: 1.4rem;
    gap: 1.4rem;
    border: 1px solid #e1e5e2;
    border-radius: 8px;
    background: var(--sw-color-white);
    box-shadow: 0 7px 18px rgba(34, 43, 53, .05);
    color: #29323d;
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.sw-notFoundCard:hover {
    border-color: #cad7cf;
    box-shadow: 0 12px 24px rgba(34, 43, 53, .08);
}

.sw-notFoundCard__icon {
    width: 4.4rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #eef5f1;
    color: var(--sw-color-brand);
}

.sw-notFoundCard__icon .sw-icon {
    width: 2.3rem;
    aspect-ratio: 1;
}

.sw-notFoundCard__body {
    display: block;
    min-width: 0;
}

.sw-notFoundCard__body strong {
    display: block;
    margin-bottom: .35rem;
    color: #29323d;
    font-size: 1.45rem;
    font-weight: 900;
}

.sw-notFoundCard__body span {
    display: block;
    color: #4d5964;
    font-size: 1.28rem;
    line-height: 1.35;
}

.sw-notFoundCard__arrow {
    color: var(--sw-color-accent);
    font-size: 2.2rem;
    line-height: 1;
}

.sw-icon {
    line-height: inherit;
    width: 1em;
    aspect-ratio: 1;
    margin: 0 4px;
    flex-shrink: 0;
    fill: currentColor;
    clip-rule: evenodd;
    vector-effect: non-scaling-stroke;
    shape-rendering: geometricprecision;
    user-select: none;
    align-self: center;
    position: relative;
}

.sw-icon--medium {
    width: 1.5em;
    aspect-ratio: 1;
}

.sw-iconDot {
    width: 10px;
    aspect-ratio: 1;
}

.sw-icon use {
    display: block;
    height: auto;
    margin: auto;
    fill: currentColor;
    width: 100%;
    overflow: hidden;
}

.sw-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    cursor: pointer;
    max-width: 10em;
    min-width: 8em;
    height: 4rem;
    line-height: 1;
    font-size: 1em;
    font-weight: 700;
    text-decoration: none;
    border: none;
    vertical-align: middle;
    text-align: center;
    background-color: #f5f5f5;
    border-radius: 3px;
    transition: background-color 200ms ease-in-out 150ms, color 200ms ease-in-out 150ms, border-color 200ms ease-in-out 150ms, box-shadow 200ms ease-in-out 150ms, opacity 200ms ease-in-out 150ms;
    padding: 0 1rem;
    overflow: hidden;
}

.sw-button.is-active, .sw-button:hover {
    background: #ddd;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, .4);
}

.sw-button--invisible:hover {
    background: transparent;
    box-shadow: none;
}

.sw-button__auto {
    width: auto;
    max-width: unset;
    text-align: center;
}

.sw-button.is-disabled, .sw-button:disabled, .sw-stackItem.is-disabled, .sw-stackItem:disabled, .sw-checkbox__nativeControl.is-disabled + .sw-checkbox__control, .sw-checkbox__control.is-disabled, .sw-checkbox__nativeControl:disabled + .sw-checkbox__control, .sw-radio__nativeControl.is-disabled + .sw-radio__control, .sw-radio__control.is-disabled, .sw-radio__nativeControl:disabled + .sw-radio__control {
    opacity: .65;
    cursor: not-allowed;
    pointer-events: none;
}

.sw-actionBar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--sw-actionBar-gap, .8rem);
}

.sw-actionBar--equal {
    --sw-actionButton-flex: 1 1 0;
}

.sw-actionBar > .sw-button {
    flex: var(--sw-actionButton-flex, 0 1 auto);
    gap: var(--sw-actionButton-gap, .55rem);
    width: auto;
    min-width: var(--sw-actionButton-min, 0);
    max-width: var(--sw-actionButton-max, none);
}

.sw-actionBar > .sw-button:only-child, .sw-actionBar > .sw-actionButton--full {
    flex-basis: 100%;
    width: 100%;
}

.sw-actionBar--compact > .sw-button {
    height: 3.4rem;
    padding: var(--sw-actionButton-padding, 0 .55rem);
}

.sw-button.is-loading:after {
    animation: anim-spinning .7s linear infinite;
    display: inline-block;
    margin-left: 4px;
    width: 1.6rem;
    aspect-ratio: 1;
    border-radius: 100%;
    border-color: currentcolor transparent transparent currentcolor;
    border-style: solid;
    border-width: .2rem;
    content: "";
    position: relative;
}

.sw-grid {
    max-width: 140rem;
    margin: 0 auto;
    padding: 0 1.6rem;
    width: 100%;
}

.sw-gridCol {
    flex-flow: column wrap;
    margin: auto;
    display: flex;
    align-items: center;
}

.sw-gridRow {
    flex-flow: row wrap;
    margin: auto;
    gap: 12px;
    display: flex;
    align-items: center;
}

.sw-gridRow > * {
    margin-block: 0;
}

.sw-navigation, .sw-select__control > span:first-child {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.sw-navigation-bar {
    padding: 1rem;
    background: rgb(255 255 255 / 90%);
    backdrop-filter: blur(10px);
    position: relative;
}

.sw-navigation-bar.sw-sticky {
    top: 56px;
    z-index: 900;
    transition: box-shadow .18s ease;
}

.sw-navigation-bar.sw-sticky.is-scrolled {
    box-shadow: 0 8px 24px rgba(31, 42, 51, .12);
}

.sw-archiveNav {
    z-index: 900;
    padding: .8rem 0 1.2rem;
}

.sw-archiveNav__content {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: var(--sw-archive-max);
    min-width: 0;
    margin: 0 auto;
    padding-inline: calc(var(--sw-page-gutter-compact) * 2);
}

.sw-archiveNav + .sw-container {
    max-width: var(--sw-archive-max);
    padding-inline: var(--sw-page-gutter-compact);
}

.sw-navigation-bar.sw-archiveNav:after, .sw-list--pipe .sw-list__item:first-child:before, .sw-agencyAdminCard .sw-cservices_title::after, .sw-modal--filters .sw-searchBar__item ~ .sw-searchBar__item:before, .sw-accountProfilePage .sw-accountAvatar .arv-uploadButton::before {
    content: none;
}

.sw-archiveNav__row--tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: .9rem;
}

.sw-archiveNav .sw-tabBar {
    --sw-actionBar-gap: .6rem;
    --sw-actionButton-gap: .55rem;
    --sw-actionButton-padding: 0 .55rem;
    --sw-actionButton-min: 8.2rem;
    min-width: 0;
    width: 100%;
    overflow: visible;
}

.sw-breadcrumb {
    display: flex;
    min-width: 0;
    width: 100%;
    padding-top: .35rem;
    font-size: 1.3rem;
    line-height: 1.2;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
}

.sw-breadcrumb .wpfs-breadcrumb {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: .25rem .55rem;
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.sw-breadcrumb .wpfs-breadcrumb-item,
.sw-breadcrumb .wpfs-breadcrumb-separator {
    flex: 0 0 auto;
    white-space: nowrap;
}

.sw-breadcrumb .wpfs-breadcrumb-separator {
    color: #6f7780;
}

.sw-archiveNav .sw-breadcrumb, .sw-archiveNav .sw-breadcrumb .wpfs-breadcrumb {
    justify-content: flex-end;
    text-align: right;
}

#breadcrumbs > .sw-navigation-bar--content {
    width: 100%;
    max-width: var(--sw-container-max);
    flex-wrap: nowrap;
    align-items: center;
    gap: 1.6rem;
}

#breadcrumbs .sw-breadcrumb {
    flex: 1 1 auto;
    justify-content: flex-end;
    width: auto;
    min-width: 0;
    margin-left: auto;
    padding-top: 0;
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
}

#breadcrumbs .sw-breadcrumb .wpfs-breadcrumb {
    flex-wrap: nowrap;
    justify-content: flex-end;
    min-width: 0;
    overflow: hidden;
}

#breadcrumbs .sw-breadcrumb .wpfs-breadcrumb-item {
    min-width: max-content;
}

#breadcrumbs .wpfs-breadcrumb-current {
    display: inline;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media all and (max-width: 680px) {
    #breadcrumbs > .sw-navigation-bar--content {
        flex-wrap: wrap;
        align-items: flex-start;
        gap: .45rem 1rem;
    }

    #breadcrumbs .sw-breadcrumb {
        flex: 1 0 100%;
        width: 100%;
    }

    #breadcrumbs .sw-breadcrumb, #breadcrumbs .sw-breadcrumb .wpfs-breadcrumb {
        justify-content: flex-start;
        text-align: left;
    }
}

.sw-navigation-bar--content {
    max-width: 1400px;
    margin: 0 auto;
    justify-content: space-between;
    flex-flow: row wrap;
    display: flex;
    align-items: center;
}

.sw-navigation-bar:after {
    position: absolute;
    bottom: 0;
    inset-inline: 0 0;
    content: '';
    border-bottom: 1px solid #ddd;
}

.sw-miniSearch {
    padding: 0 1em;
    margin: 0 auto 1em;
    box-shadow: 0 0 3px 0 #acacac;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sw-archiveNav .sw-miniSearch {
    display: block;
    width: 100%;
    max-width: none;
    min-height: 4.6rem;
    padding: 0;
    margin: 0;
    box-shadow: none;
}

@media all and (max-width: 680px) {
    .sw-archiveNav .sw-miniSearch {
        display: none;
    }
}

.sw-archiveNav .sw-miniSearch > sw-search, .sw-archiveNav #search-form {
    display: block;
    flex: 1 1 100%;
    width: 100%;
    max-width: none;
    min-height: 0;
}

.sw-archiveNav #search-form {
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.sw-archiveNav #search-form .sw-searchBar__mainFilters {
    width: 100%;
    min-height: 6rem;
    flex-wrap: nowrap;
    align-items: stretch;
    border: 1px solid var(--sw-color-border);
    border-radius: 8px;
    box-shadow: none;
    overflow: visible;
}

.sw-archiveNav #search-form .sw-searchBar__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 1 0;
    min-width: 18rem;
    max-width: none;
    padding: .25rem 1.4rem;
    position: relative;
}

.sw-archiveNav #search-form .sw-searchBar__item--location {
    min-width: 18rem;
    z-index: 40;
}

.sw-archiveNav #search-form .sw-searchBar__item--location > .sw-autocomplete,
.sw-modal--filters .sw-searchBar__item--location > .sw-autocomplete {
    position: relative;
    z-index: 40;
    overflow: visible;
}

.sw-archiveNav #search-form .sw-searchBar__item--location .sw-autocomplete__list,
.sw-modal--filters .sw-searchBar__item--location .sw-autocomplete__list {
    background: var(--sw-color-white);
}

.sw-archiveNav #search-form .sw-searchBar__item--location .sw-autocomplete__list {
    z-index: 80;
}

.sw-archiveNav #search-form .sw-searchBar__label {
    margin: 0 0 .15rem 4rem;
    color: #8a9298;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1;
}

.sw-archiveNav #search-form .sw-searchBar__item:not(.sw-searchBar__item--location) .sw-searchBar__label, .sw-savedPostsPage .sw-article__options .sw-button {
    margin-left: 0;
}

.sw-actionBar--nowrap, .sw-archiveNav #search-form .sw-autocomplete__container, .sw-multiSelect__accordion .sw-checkbox {
    flex-wrap: nowrap;
}

.sw-archiveNav #search-form .sw-rangeInput__control, .sw-archiveNav #search-form .sw-select__control, .sw-archiveNav #search-form .sw-autocomplete__input {
    height: 2.3rem;
    min-height: 2.3rem;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    font-size: 1.6rem;
    line-height: 2.5rem;
}

.sw-archiveNav #search-form .sw-rangeInput__control, .sw-archiveNav #search-form .sw-select__control, .sw-justify-between {
    justify-content: space-between;
}

.sw-archiveNav .sw-tabBar .sw-button {
    line-height: 1;
    font-size: 1.05rem;
    border: 1px solid var(--sw-color-border);
    border-radius: 6px;
    background-color: var(--sw-color-white);
    color: #2d3740;
    box-shadow: 0 5px 14px rgba(31, 42, 51, .05);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sw-archiveNav .sw-tabBar .sw-button .sw-icon {
    width: 1.35rem;
    aspect-ratio: 1;
    margin: 0 .35rem 0 0;
    flex: 0 0 auto;
}

@media all and (max-width: 680px) {
    .sw-archiveNav .sw-tabBar {
        --sw-actionButton-flex: 1 1 0;
        --sw-actionButton-min: 0;
    }
}

@media all and (max-width: 420px) {
    .sw-actionBar--iconOnlyNarrow > .sw-button {
        gap: .35rem;
        padding-inline: .6rem;
        font-size: 0;
    }

    .sw-actionBar--iconOnlyNarrow > .sw-button .sw-icon {
        width: 1.7rem;
        margin-right: 0;
    }
}

.sw-archiveNav .sw-tabBar .sw-BG__Orange {
    border-color: var(--sw-color-accent);
    background: var(--sw-color-accent);
    color: var(--sw-color-white);
    box-shadow: 0 8px 18px rgba(250, 121, 33, .22);
}

.sw-dropdown {
    display: block;
    position: fixed;
    z-index: 1;
    top: 56px;
    right: 0;
    height: 100%;
    padding: 20px;
    list-style-type: none;
    cursor: auto;
    width: 100%;
    overflow: hidden;
}

.sw-dropdown > .sw-dropdownItem {
    margin: 0;
    text-align: center;
}

.sw-dropdown > .sw-navbar__item,
.sw-dropdown > .sw-navbar__item > .sw-navbar__link {
    width: 100%;
}

.sw-navbar__account .sw-dropdown > .sw-navbar__item > .sw-navbar__link::after {
    right: 0;
    left: 0;
}

.sw-dropdown > .sw-dropdownItem + .sw-dropdownItem, .sw-checkbox + .sw-checkbox {
    margin-top: .8rem;
}

.sw-dialog__header {
    color: inherit;
    min-height: 5rem;
    padding: .8rem 1.6rem;
    background: #ddd;
    position: relative;
    overflow: hidden;
}

.sw-dialog__header .sw-title {
    line-height: inherit;
    font-size: 2rem;
    margin: 0;
    padding: 0;
}

.sw-dialog__header .sw-dialog__back {
    display: flex;
    position: absolute;
    left: 0;
    cursor: pointer;
    font-size: 1.4rem;
    line-height: 1.4rem;
    vertical-align: middle;
    font-weight: 600;
}

.sw-dialog__header .sw-dialog__back > *, .sw-stackItem > *, .sw-rangeInput__control > *, .sw-select__control > *, .sw-accordion__label > *, .sw-modal__close svg {
    pointer-events: none;
}

.sw-navbar__icon {
    width: 1.8em;
    aspect-ratio: 1;
    margin-right: 1em;
}

.sw-navbar--boxed {
    max-width: 160rem;
    height: inherit;
}

.sw-navbar .sw-navbar__group {
    display: flex;
    flex-flow: row nowrap;
    height: inherit;
    padding: 0;
    justify-content: flex-start;
}

.sw-navbar__primary {
    order: 2;
    margin-left: auto;
}

.sw-navbar__group {
    height: inherit;
}

.sw-navbar__item, .sw-navbar__link {
    flex-grow: 0;
    flex-shrink: 0;
    justify-content: flex-start;
    padding: .6rem;
    color: currentColor;
    font-size: 1.4rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    position: relative;
}

.sw-navbar__item > .sw-navbar__link::after {
    content: "";
    position: absolute;
    right: .6rem;
    bottom: -.15rem;
    left: .6rem;
    height: 2px;
    background: currentColor;
    opacity: 0;
    transition: opacity 160ms ease-in-out 150ms;
    pointer-events: none;
}

.sw-navbar__item:hover > .sw-navbar__link::after, .sw-navbar__item--current > .sw-navbar__link::after, .sw-navbar__item > .sw-navbar__link--current::after {
    opacity: 1;
}

.sw-searchFilters--wrapper {
    display: flex;
    flex-flow: column wrap;
    align-content: space-between;
    justify-content: center;
    align-items: stretch;
    padding: 0;
    width: 100%;
}

.sw-searchFilters--row {
    display: block;
    border-bottom: 1px solid #c7c7c7;
    width: 100%;
}

.sw-searchFilters--opener {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    line-height: 1;
    padding: 1.6rem .5rem;
    width: 100%;
}

.sw-searchFilters--label {
    display: flex;
    flex-shrink: 0;
    font-weight: 600;
}

.sw-searchFilters--value {
    flex-shrink: 1;
    margin-left: auto;
    width: auto;
}

.sw-searchFilters--body {
    display: none;
    margin-left: auto;
    margin-block: 1em;
    border: 1px solid #cfcfcf;
    max-width: 36rem;
}

.sw-scrollableRow {
    display: inline-flex;
    max-width: 100%;
    white-space: nowrap;
    user-select: none;
    overflow-x: auto;
    overflow-y: visible;
    overscroll-behavior: contain;
    padding: 0;
    gap: 8px;
    position: relative;
}

.sw-scrollableRow::-webkit-scrollbar-thumb {
    border: .3rem solid #b8b8b8a1;
}

.sw-scrollableRow:hover::-webkit-scrollbar-thumb {
    border: .3rem solid #acacac;
}

.sw-scrollableRow::-webkit-scrollbar {
    height: .4rem;
}

.sw-tab {
    color: #5c5c5c;
    transition: color 200ms ease-in-out 150ms, background-color 200ms ease-in-out 150ms, border-color 200ms ease-in-out 150ms, opacity 200ms ease-in-out 150ms;
    flex-shrink: 0;
    height: 4.8rem;
    padding: 0 1.8rem;
    font-size: 1.6rem;
    line-height: 4.8rem;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
}

.sw-tab:after {
    transition: opacity 200ms ease-in-out 150ms, background-color 200ms ease-in-out 150ms;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background-color: currentColor;
    opacity: 0;
    content: "";
    contain: strict;
}

.sw-tab:hover {
    background: rgba(150, 150, 150, .2);
    color: #217e42;
    text-decoration: none;
}

.sw-tab.is-active {
    color: #217e42;
}

.sw-ar-tabs {
    margin: 0;
    padding: 0;
    width: 100%;
    position: relative;
}

.sw-ar-tabs > .sw-tabBar {
    border-bottom: 1px solid #ddd;
}

.sw-ar-tabs .sw-tab {
    background: var(--sw-color-white);
    cursor: pointer;
    line-height: 2.4em;
    height: 2.4em;
    padding: 0 20px;
    margin-right: 4px;
    outline: 0;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    user-select: none;
    transition: color 200ms ease-in-out 150ms, background-color 200ms ease-in-out 150ms, border-color 200ms ease-in-out 150ms, opacity 200ms ease-in-out 150ms;
    text-decoration: none;
}

.sw-ar-tabs .sw-tab[aria-selected=true], .sw-listMeta__link:hover, .sw-color--green {
    color: var(--sw-color-brand);
}

.sw-ar-tabs .sw-tab[aria-selected=true]:after {
    opacity: 1;
}

.sw-tabContent {
    display: none;
    padding: 1em;
    margin: 1em auto;
    box-shadow: 0 0 3px 0 #acacac;
    border-radius: 3px;
    position: relative;
    overflow: hidden;
}

.sw-container {
    max-width: var(--sw-container-max);
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    padding: 0 0 2rem;
    gap: var(--sw-container-gap);
    width: 100%;
    position: relative;
}

.sw-pageMargin {
    padding-inline: var(--sw-page-gutter-compact);
}

.sw-sidebar {
    flex: 1 1 100%;
    max-width: min(980px, calc(100% - 2rem));
    text-align: justify;
    box-shadow: 0 1px 5px rgba(0, 0, 0, .2);
    border-radius: 3px;
    margin: 0 auto;
    background: var(--sw-color-white);
    position: relative;
    overflow: hidden;
}

.sw-postSidebar {
    background: #fbfbfb;
    overflow: hidden;
}

.sw-archive--sidebar {
    display: none;
    text-align: justify;
    text-align-last: center;
    border: none;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
}

.sw-sidebarCard {
    width: 100%;
    min-height: 11.2rem;
    margin-bottom: 1.2rem;
    border: 1px solid rgba(31, 42, 51, .08);
    border-radius: 8px;
    background: var(--sw-color-white);
    box-shadow: 0 8px 22px rgba(31, 42, 51, .09);
    overflow: hidden;
    text-align: left;
    text-align-last: auto;
}

.sw-termEditor {
    min-height: 0;
    padding: .8rem;
}

.sw-termEditor__fields {
    display: none;
}

.sw-termEditor__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
}

.sw-termEditor__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 7.2rem;
    gap: .45rem;
    min-width: 0;
    min-height: 3.4rem;
    padding: 0 .75rem;
    border: 1px solid rgba(27, 76, 44, .18);
    border-radius: 6px;
    background: #f6faf7;
    color: var(--sw-color-brand);
    cursor: pointer;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1;
}

.sw-termEditor__button:hover, .sw-termEditor__button:focus-visible {
    border-color: rgba(27, 76, 44, .35);
    background: #eef7f1;
    color: var(--sw-color-brand-control);
    box-shadow: 0 8px 18px rgba(27, 76, 44, .08);
}

.sw-termEditor__button .sw-icon {
    width: 1.35rem;
    height: 1.35rem;
    flex: 0 0 auto;
}

.sw-termEditor__button span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sw-sidebarSellCta {
    min-height: 12.9rem;
    padding: 2rem 2rem 1.6rem 6.6rem;
    background: linear-gradient(135deg, #007a3b, var(--sw-color-brand));
    color: var(--sw-color-white);
    position: relative;
}

.sw-sidebarSellCta:after {
    content: "";
    position: absolute;
    right: -1rem;
    bottom: -1.4rem;
    width: 11.8rem;
    height: 9.2rem;
    background: url("../images/sidebar-sell-house.svg") center / contain no-repeat;
}

.sw-sidebarSellCta__icon {
    position: absolute;
    top: 2rem;
    left: 2rem;
    width: 3.4rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgba(255, 255, 255, .18);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-sidebarSellCta strong, .sw-sidebarSellCta > span:not(.sw-sidebarSellCta__icon), .sw-sidebarSellCta__button {
    position: relative;
    z-index: 1;
}

.sw-sidebarSellCta strong {
    display: block;
    margin-bottom: .8rem;
    font-size: 1.45rem;
    line-height: 1.2;
}

.sw-sidebarSellCta > span:not(.sw-sidebarSellCta__icon) {
    display: block;
    max-width: 14rem;
    margin-bottom: 1rem;
    font-size: 1.1rem;
    line-height: 1.45;
}

.sw-sidebarSellCta__button {
    display: inline-flex;
    align-items: center;
    gap: .8rem;
    min-height: 3.1rem;
    padding: 0 1.3rem;
    border-radius: 6px;
    background: var(--sw-color-white);
    color: var(--sw-color-brand);
    font-size: 1.15rem;
    font-weight: 800;
    text-decoration: none;
}

.sw-sidebarTrust {
    min-height: 8.8rem;
    padding: 1.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-trustpilotSlot {
    width: 100%;
    min-height: 5.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-sidebar--banner {
    flex-direction: column;
    height: 233px;
    min-height: 233px;
    text-align: center;
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.sw-sidebar--banner:after {
    content: '';
    display: block;
    margin-top: 0;
    background: #c5c5c5;
    width: 100%;
    position: relative;
}

.sw-sidebar__title {
    display: block;
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    line-height: 45px;
    height: 45px;
    padding: 0 1em;
    font-weight: 700;
    width: 100%;
}

.sw-sidebar__actions {
    padding: 2rem 0 1rem;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-evenly;
    gap: 10px;
    background: rgb(245, 245, 245);
}

.sw-bannerImage {
    display: block;
    height: 100%;
    border-radius: 3px;
    width: 100%;
    aspect-ratio: 300 / 207;
    max-height: none;
    margin: 0;
    object-fit: cover;
    box-shadow: 0 0 4px -1px;
}

.sw-sidebar--banner a {
    display: block;
    width: 100%;
    height: 100%;
}

.sw-flex {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    gap: 10px;
}

.sw-flexColumn {
    display: flex;
    flex-flow: column wrap;
    justify-content: space-between;
}

.sw-page {
    padding: 0 var(--sw-page-gutter-compact);
    flex: 1 1 100%;
    width: 100%;
    overflow: hidden;
}

.sw-page {
    display: block;
    max-width: var(--sw-content-max);
    margin: 0 auto;
    min-height: calc(100vh - 300px);
    position: relative;
}

.sw-xswipe {
    position: absolute;
    height: 100%;
    justify-content: stretch;
    width: 100%;
    overflow: hidden;
}

.sw-xswipe.sw-xswipe--full {
    position: fixed;
    inset: 0;
    z-index: 100000;
    width: 100vw;
    height: 100dvh;
    min-width: 100vw;
    min-height: 100dvh;
    max-width: none;
    max-height: none;
    margin: 0;
    background: #111;
}

.sw-xswipe.sw-xswipe--full .sw-xswipe__slider, .sw-xswipe.sw-xswipe--full .sw-xswipe__content {
    width: 100vw;
    height: 100dvh;
    max-width: none;
    max-height: none;
}

.sw-xswipe.sw-xswipe--full .sw-xswipe__item {
    width: 100vw;
    height: 100dvh;
    background: #111;
}

.sw-xswipe--full .sw-xswipe__image, .sw-image--contain {
    object-fit: contain;
}

.sw-xswipe__content > * {
    backface-visibility: hidden;
}

.sw-xswipe__slider, .sw-xswipe__content {
    height: 100%;
    display: flex;
    width: 100%;
    position: relative;
}

.sw-xswipe__content {
    flex-wrap: nowrap;
    align-items: stretch;
    overflow-x: scroll;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    overscroll-behavior-y: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
}

.sw-xswipe__content::-webkit-scrollbar,
.sw-singleGallery__thumbs::-webkit-scrollbar {
    display: none;
}

.sw-hidden,
.sw-navigation,
.sw-responsive-tabletUp,
.sw-responsive-mobileUp,
.sw-navbar__primary .sw-navbar__item > .sw-navbar__link::after,
.sw-GeoMap-pin--nearby .sw-GeoMap-pinPulse,
.sw-seoHomeList .sw-title::after,
.sw-stackItem.is-filtered,
.sw-serviceEmptyHero__sheet i:not(:first-child),
.sw-serviceEmptyHero__plane,
.sw-serviceEmptyHero__bell,
.sw-personalExportCard.is-loading .sw-personalExportActions,
.sw-teamMemberCard .file-upload-handler,
.sw-articleFacts > .sw-list__item:nth-child(n+5),
.sw-singleGallery .sw-xswipe__dots,
.sw-singleHero .sw-info-bar:after,
.sw-autocomplete__close {
    display: none;
}

.sw-xswipe__fullscreen {
    top: 1rem;
    right: 1rem;
}

.sw-xswipe__action {
    position: absolute;
    display: block;
    backface-visibility: hidden;
    contain: content;
    cursor: pointer;
    margin: auto;
    padding: 0;
    filter: drop-shadow(0 1px 0 rgba(0, 0, 0, .2));
    overflow: hidden;
}

.sw-xswipe__arrow {
    position: absolute;
    inset-block: 50% auto;
    z-index: 2;
    width: 3.4rem;
    aspect-ratio: 1;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .96);
    color: #303841;
    box-shadow: 0 4px 14px rgba(25, 31, 38, .2);
    transform: translateY(-50%);
    transition: background-color .18s ease, box-shadow .18s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-xswipe__arrow:hover {
    background: var(--sw-color-white);
    box-shadow: 0 6px 18px rgba(25, 31, 38, .26);
}

.sw-xswipe__arrow--next {
    right: 1rem;
}

.sw-xswipe__arrow--prev {
    left: 1rem;
    transform: translateY(-50%) rotate(180deg);
}

.sw-xswipe__arrow svg {
    width: 1.8rem;
    aspect-ratio: 1;
    color: currentColor;
    cursor: pointer;
    margin: 0;
}

.sw-xswipe__fullscreen svg {
    font-size: 2rem;
    color: var(--sw-color-white);
    cursor: pointer;
    margin: 0;
}

.sw-xswipe__overlay {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    padding: .8rem;
    color: var(--sw-color-white);
    height: 100%;
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .4), rgba(0, 0, 0, .2) 20%, transparent);
    background-size: 100% 50%;
    background-position: bottom;
    background-repeat: no-repeat;
    backface-visibility: hidden;
    pointer-events: none;
    width: 100%;
    overflow: hidden;
}

.sw-xswipe--full .sw-xswipe__overlay {
    background-image: none;
}

.sw-xswipe__item {
    display: flex;
    contain: layout style;
    flex: 0 0 auto;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    height: 100%;
    background-color: #f5f5f5;
    width: 100%;
    position: relative;
}

.sw-xswipe__image {
    font-style: italic;
    vertical-align: middle;
    height: 100%;
    object-position: center;
    margin: auto;
    object-fit: cover;
    background: transparent;
    transition: opacity 200ms ease-in-out 150ms, transform 200ms ease-in-out 150ms;
    width: 100%;
}

.sw-xswipe__dots {
    position: absolute;
    width: fit-content;
    bottom: 5px;
    inset-inline: 0 0;
    display: flex;
    max-width: 80%;
    padding: 0;
    margin: 0 auto;
    list-style: none;
    justify-content: center;
    border-radius: 8px;
    background: #5e5e5ea6;
    overflow: hidden;
}

.sw-xswipe__dot {
    flex: 0 0 8px;
    padding: 0;
    opacity: .65;
    cursor: pointer;
    aspect-ratio: 1;
    width: 8px;
    border-radius: 4px;
    background: var(--sw-color-white);
    margin: 3px 5px;
}

.sw-xswipe__dot--active {
    background: #1c1c1c;
}

.sw-ratio {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sw-ratio > * {
    display: block;
    position: absolute;
    inset: 0;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
}

.sw-ratio:before {
    display: block;
    pointer-events: none;
    content: "";
    contain: strict;
}

.sw-ratio--16-9 {
    aspect-ratio: 16/9;
}

.sw-ratio--16-9:before {
    padding-top: calc(100% / (16 / 9));
}

img:is(.sw-imageLoading, [loading="lazy"]:not(.is-imageLoaded), .sw-image:not(.is-imageLoaded), .sw-authors--image:not(.is-imageLoaded), .sw-sbar--image:not(.is-imageLoaded), .sw-qualityAgent--image:not(.is-imageLoaded), .sw-cardBox__image:not(.is-imageLoaded)) {
    background-color: #eee;
    background-image: linear-gradient(90deg, #eee, #eee 34%, #e8e8e8 43%, #dcdcdc 50%, #e8e8e8 57%, #eee 66%, #eee);
    background-size: 180% 100%;
    animation: sw-imageLoading 1.35s linear infinite;
}

.is-imageLoaded {
    animation: none;
}

.sw-info-bar, .sw-switch--row {
    margin: 1em 0;
}

.sw-info-bar:after {
    display: block;
    content: '';
    border-bottom: 2px solid #838383;
    margin: 2px 0 1em;
}

.sw-singleGallery__thumbs {
    position: absolute;
    inset-inline: 1.6rem 1.6rem;
    z-index: 4;
    justify-content: space-between;
    gap: 1rem;
    pointer-events: none;
    display: flex;
    align-items: center;
}

.sw-singleGallery .sw-xswipe__arrow--prev {
    left: 1.6rem;
}

.sw-singleGallery .sw-xswipe__arrow--next {
    right: 1.6rem;
}

.sw-singleGallery .sw-xswipe__arrow svg, .sw-singleGallery .sw-xswipe__fullscreen svg {
    color: currentColor;
    font-size: 2.2rem;
}

.sw-singleGallery .sw-xswipe--full .sw-xswipe__fullscreen {
    position: fixed;
    top: 2rem;
    right: 2rem;
    background: rgba(255, 255, 255, .95);
}

.sw-singleGallery .sw-xswipe--full .sw-xswipe__arrow, .sw-map {
    position: fixed;
}

.sw-singleGallery .sw-xswipe--full .sw-xswipe__arrow--prev {
    left: 2rem;
}

.sw-singleGallery .sw-xswipe--full .sw-xswipe__arrow--next {
    right: 2rem;
}

.sw-singleGallery__thumb.is-active {
    border-color: var(--sw-color-accent);
}

.sw-singleGallery__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;
}

.sw-singleHero .sw-gridRow {
    align-items: center;
    gap: 1.4rem;
}

.sw-singleFacts {
    gap: 0;
    flex-wrap: wrap;
    white-space: normal;
}

.sw-singleFacts.sw-list--pipe > .sw-list__item:before {
    border-left-color: #dfe3e7;
}

.sw-singleFacts .sw-list__item item {
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: .9rem;
    min-height: 2.2rem;
    display: flex;
    align-items: center;
}

.sw-singleFacts .sw-list__item .sw-icon {
    width: 2.2rem;
    aspect-ratio: 1;
    color: #59636f;
}

.sw-singleFacts .sw-list__item strong {
    font-size: 1.8rem;
    line-height: 1;
}

.sw-singleFacts .sw-list__item::after {
    display: block;
    content: attr(aria-label);
    margin-top: .3rem;
    font-size: 1.1rem;
    line-height: 1.1;
    color: #68717d;
}

.sw-singlePrice .sw-immo--price {
    font-size: 2.4rem;
    line-height: 1.1;
}

.sw-singlePrice small {
    margin-top: .3rem;
    color: #818892;
    font-size: 1.35rem;
    font-weight: 600;
}

.sw-singleIntro {
    align-items: start;
    gap: 1.6rem;
    margin: 2.4rem 0 3rem;
    display: grid;
}

.sw-singleSavedNote__header {
    gap: 1.2rem;
    display: flex;
    align-items: center;
}

.sw-singleSavedNote__icon {
    flex: 0 0 auto;
    width: 4rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #eef7f1;
    color: var(--sw-color-brand);
}

.sw-singleSavedNote__icon .sw-icon {
    width: 1.85rem;
    aspect-ratio: 1;
}

.sw-singleSavedNote__heading {
    gap: .25rem;
    display: flex;
    flex-direction: column;
}

.sw-singleSavedNote__title {
    color: #303841;
    font-size: 1.72rem;
    font-weight: 900;
    line-height: 1.25;
}

.sw-singleSavedNote__subtitle {
    color: #7a848f;
    font-size: 1.32rem;
    font-weight: 700;
    line-height: 1.35;
}

.sw-singleSavedNote__text {
    display: block;
    margin: 0;
    color: #3d4650;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.65;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.sw-singleIntro__main, .sw-singleHighlights {
    border: 1px solid #e2e6eb;
    border-radius: 8px;
    background: var(--sw-color-white);
    box-shadow: 0 8px 22px rgba(36, 45, 55, .05);
}

.sw-singleIntro__icon, .sw-singleHighlights__icon, .sw-singleDetails__icon, .sw-singleDetailCard__icon {
    flex: 0 0 auto;
    color: var(--sw-color-brand);
    background: #eef7f1;
}

.sw-singleIntro__icon {
    width: 4rem;
    aspect-ratio: 1;
    border-radius: 50%;
}

.sw-singleIntro__icon .sw-icon {
    width: 1.9rem;
    aspect-ratio: 1;
}

.sw-singleIntro__title {
    margin: 0;
    color: #303841;
    font-size: 2.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.sw-singleIntro__location {
    gap: .6rem;
    margin: .65rem 0 0;
    color: var(--sw-color-brand);
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.35;
    display: flex;
    align-items: center;
}

.sw-singleIntro__location .sw-icon {
    width: 1.7rem;
    aspect-ratio: 1;
    flex: 0 0 auto;
}

.sw-singleHighlights {
    align-self: start;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    padding: 0 1.6rem 1.6rem;
    color: #59636f;
    display: grid;
    overflow: hidden;
}

.sw-singleHighlights__title {
    gap: .9rem;
    grid-column: 1 / -1;
    margin: 0 -1.6rem;
    min-height: 5.4rem;
    padding: 1.4rem 1.6rem;
    border-bottom: 1px solid #edf0f3;
    color: #3a434d;
    font-size: 1.55rem;
    font-weight: 900;
    line-height: 1.25;
    display: flex;
    align-items: center;
}

.sw-singleHighlights__icon, .sw-singleDetailCard__icon {
    width: 2.8rem;
    aspect-ratio: 1;
    border-radius: 8px;
}

.sw-singleHighlights__icon .sw-icon {
    width: 1.55rem;
    aspect-ratio: 1;
}

.sw-singleHighlights__item {
    min-height: 3.6rem;
    padding: .9rem 1rem .9rem 3.2rem;
    border: 1px solid #edf0f3;
    border-radius: 6px;
    background: #fff;
    color: #4d5965;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.25;
    position: relative;
}

.sw-singleHighlights__item::before {
    position: absolute;
    top: .9rem;
    left: 1rem;
    color: var(--sw-color-brand);
    content: "\2713";
    font-weight: 800;
}

.sw-singleDetails__header {
    gap: 1.4rem;
    display: flex;
    align-items: center;
}

.sw-singleDetails__icon {
    width: 4.6rem;
    aspect-ratio: 1;
    border-radius: 50%;
}

.sw-singleDetails__icon .sw-icon, .sw-archiveInsight__icon .sw-icon {
    width: 2.1rem;
    aspect-ratio: 1;
}

.sw-singleDetails__title {
    color: #303841;
    font-size: 2.2rem;
    font-weight: 900;
    line-height: 1.2;
}

.sw-singleDetails__subtitle {
    margin-top: .35rem;
    color: #7a848f;
    font-size: 1.35rem;
    line-height: 1.45;
}

.sw-singleDetailCard, .sw-singleHero {
    border: 1px solid #e2e6eb;
    border-radius: 8px;
    background: var(--sw-color-white);
    box-shadow: 0 8px 22px rgba(36, 45, 55, .05);
    overflow: hidden;
}

.sw-pageMargin > .sw-singleDetailCard {
    margin: 3rem 0;
}

.sw-singleDetailCard__title {
    gap: .9rem;
    margin: 0 auto 0 0;
    color: #3a434d;
    font-size: 1.55rem;
    font-weight: 900;
    line-height: 1.25;
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.sw-singleDetailCard__icon .sw-icon {
    width: 1.6rem;
    aspect-ratio: 1;
}

.sw-singleDetailCard__action {
    gap: .55rem;
    flex: 0 0 auto;
    color: var(--sw-color-brand);
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1;
    display: inline-flex;
    align-items: center;
}

.sw-singleDetailCard__action:hover, .sw-singleAgency__link:hover {
    color: #217e42;
    text-decoration: underline;
}

.sw-singleDetailCard__action .sw-icon {
    width: 1.35rem;
    aspect-ratio: 1;
}

.sw-singleDetailCard__body {
    padding: 1.4rem;
}

.sw-singleDetailGrid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    display: grid;
}

.sw-singleDetailGrid--compact {
    grid-template-columns: 1fr;
}

.sw-singleDetailRow__label {
    gap: .8rem;
    color: #64707d;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.25;
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.sw-singleDetailRow__label .sw-icon {
    flex: 0 0 1.55rem;
    width: 1.55rem;
    aspect-ratio: 1;
    color: #277548;
}

.sw-singleDetailValue--success {
    color: #277548;
}

.sw-singleFeatureChips {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
}

.sw-singleFeatureChip {
    min-height: 3.2rem;
    padding: .7rem 1rem;
    border: 1px solid #dfe8e2;
    border-radius: 6px;
    background: #f6faf7;
    color: #365744;
    font-size: 1.3rem;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
}

.sw-singleEnergy {
    grid-template-columns: 17rem 1fr;
    gap: 2rem;
}

.sw-singleEnergy__scale {
    gap: .35rem;
    justify-content: center;
    min-height: 13rem;
    padding: 1rem;
    display: flex;
    flex-direction: column;
}

.sw-singleEnergy__bar {
    height: 1.35rem;
    padding-left: .7rem;
    border-radius: 999px 2px 2px 999px;
    color: var(--sw-color-white);
    font-size: .9rem;
    font-weight: 900;
    line-height: 1;
    opacity: .62;
    display: flex;
    align-items: center;
}

.sw-singleEnergy__bar:nth-child(1) {
    width: 5.8rem;
    background: #20a64a;
}

.sw-singleEnergy__bar:nth-child(2) {
    width: 7.2rem;
    background: #61b947;
}

.sw-singleEnergy__bar:nth-child(3) {
    width: 8.6rem;
    background: #b3c932;
}

.sw-singleEnergy__bar:nth-child(4) {
    width: 10rem;
    background: #f4d13d;
}

.sw-singleEnergy__bar:nth-child(5) {
    width: 11.4rem;
    background: #f49a2d;
}

.sw-singleEnergy__bar:nth-child(6) {
    width: 12.8rem;
    background: #ef6231;
}

.sw-singleEnergy__bar:nth-child(7) {
    width: 14.2rem;
    background: #df2f2f;
}

.sw-singleEnergy__bar.is-active {
    opacity: 1;
    box-shadow: 0 0 0 3px rgba(245, 130, 47, .18);
}

.sw-singleEnergy__badge {
    min-width: 3rem;
    min-height: 2.8rem;
    padding: .45rem .75rem;
    border-radius: 6px;
    background: #fff1df;
    color: #f27d16;
    font-weight: 900;
}

.sw-singleMapFrame .sw-GeoMap {
    height: 100%;
    min-height: 100%;
    border-radius: 0;
    box-shadow: none;
}

.sw-section-wrapper {
    padding: 1rem;
}

.sw-popup {
    height: 100%;
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
}

.sw-popup__header {
    height: 140px;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sw-popup__image {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.sw-popup__content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    margin-top: .8rem;
    padding: .8rem;
    align-items: flex-start;
    width: 100%;
    position: relative;
}

.sw-popup__content .sw-title {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -.5px;
    margin: 0;
}

.sw-popup__content .sw-list--pipe {
    flex: 0 1 auto;
    align-items: stretch;
    max-width: 100%;
    margin-block: .8rem;
}

.sw-popup__content .sw-list--pipe .sw-list__item {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.4rem;
    color: #60687a;
}

.sw-map, .sw-map--fullscreen {
    inset: 0;
    width: 100vw;
    min-height: 100vh;
    height: 100dvh;
    max-height: none;
    z-index: 1001;
}

.sw-mapClose {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 1002;
    width: 42px;
    aspect-ratio: 1;
    padding: 0;
    border: none;
    border-radius: 3px;
    background: rgba(255, 255, 255, .96);
    color: var(--sw-color-brand);
    cursor: pointer;
}

.sw-mapClose .sw-icon {
    margin: 0;
    font-size: 14px;
}

.sw-GeoMap {
    width: var(--sw-GeoMap-width, 100%);
    height: var(--sw-GeoMap-height, 100dvh);
    margin: 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    overflow: hidden;
}

.sw-GeoMap-placeholder {
    display: block;
    min-height: 1px;
    width: 100%;
}

.sw-GeoMapFullscreenLayer {
    position: fixed;
    inset: 0;
    z-index: 10019;
    background: rgba(17, 28, 22, .34);
}

.sw-GeoMap--single.sw-map--fullscreen {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    max-height: none;
    border-radius: 0;
    z-index: 10020;
}

.sw-GeoMap-popup.leaflet-popup {
    width: 300px;
    max-width: calc(100vw - 4rem);
}

.sw-GeoMap-popup .leaflet-popup-content-wrapper {
    width: 100%;
    border: 1px solid rgba(27, 76, 44, .08);
    border-radius: 16px;
    box-shadow: 0 18px 36px rgba(23, 41, 32, .18);
    overflow: hidden;
}

.sw-GeoMap-popup .leaflet-popup-content {
    width: 100%;
    max-width: 100%;
    margin: 0;
    color: var(--sw-color-brand);
    font-size: 1.35rem;
    line-height: 1.45;
}

.sw-GeoMap-popupCard {
    width: 100%;
    background: var(--sw-color-white);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.sw-GeoMap-popupCard__media {
    display: block;
    width: 100%;
    max-width: none;
    height: 11.8rem;
    background: #eef2ef;
    overflow: hidden;
    line-height: 0;
}

.sw-GeoMap-popupCard__image {
    display: block;
    width: 100%;
    min-width: 100%;
    max-width: none;
    height: 100%;
    object-fit: cover;
}

.sw-GeoMap-popupCard__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .55rem;
    padding: 0 1.1rem 1rem;
    text-align: center;
}

.sw-GeoMap-popupCard__head {
    justify-content: center;
    margin-top: -1.55rem;
    display: flex;
    align-items: center;
}

.sw-GeoMap-popupCard__price {
    min-height: 2.8rem;
    padding: .3rem .85rem;
    border-radius: 999px;
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    font-size: 1.22rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .01em;
    display: inline-flex;
    align-items: center;
}

.sw-GeoMap-popup .sw-GeoMap-popupCard__title {
    display: block;
    margin: 0;
    color: #143720;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.16;
    text-decoration: none;
}

.sw-GeoMap-popup .sw-GeoMap-popupCard__meta {
    margin: 0;
    color: #496457;
    font-size: 1.24rem;
    line-height: 1.35;
}

.sw-GeoMap-popup .leaflet-popup-close-button {
    top: 8px;
    right: 8px;
    width: 26px;
    aspect-ratio: 1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .98);
    color: #5a6d62;
    font-size: 18px;
    line-height: 24px;
    box-shadow: 0 8px 16px rgba(23, 41, 32, .12);
}

.sw-GeoMap-popup .leaflet-popup-tip {
    box-shadow: 0 10px 18px rgba(23, 41, 32, .12);
}

.sw-GeoMap-pin {
    display: block;
    position: relative;
}

.sw-GeoMap-pinCore {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    aspect-ratio: 1;
    border: 3px solid var(--sw-color-white);
    border-radius: 999px;
    background: var(--sw-color-brand);
    box-shadow: 0 10px 22px rgba(23, 41, 32, .28);
    transform: translate(-50%, -50%);
}

.sw-GeoMap-pinPulse {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 34px;
    aspect-ratio: 1;
    border-radius: 999px;
    background: rgba(27, 76, 44, .16);
    transform: translate(-50%, -50%);
    animation: sw-GeoMap-pulse 1.8s ease-out infinite;
}

.sw-GeoMap-pin--nearby .sw-GeoMap-pinCore {
    width: 14px;
    aspect-ratio: 1;
    border-width: 2px;
    background: var(--sw-color-accent);
    box-shadow: 0 8px 18px rgba(245, 130, 47, .28);
}

.sw-GeoMapToolbar__button svg {
    width: 18px;
    aspect-ratio: 1;
    fill: currentColor;
}

.sw-GeoMapToolbar__button:hover {
    background: var(--sw-color-white);
    color: var(--sw-color-accent);
}

.sw-GeoMapToolbar__button--expand {
    font-size: 1.6rem;
}

.sw-mapStrip {
    height: 360px;
    z-index: 1;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sw-mapStrip .sw-GeoMap {
    height: 100%;
    margin: 0;
    border: unset;
    border-radius: unset;
    box-shadow: unset;
    background: #f5f5f5;
    width: 100%;
}

.sw-marker {
    width: 30px;
    aspect-ratio: 1;
    max-width: unset;
    max-height: unset;
    user-select: unset;
}

.sw-action-button {
    background: #f5f5f5;
    color: #464646;
    max-width: 194px;
    min-width: 150px;
    line-height: 18px;
    font-size: 18px;
    padding: 14px;
    font-weight: 700;
    border-radius: 3px;
    cursor: pointer;
    text-align: center;
    text-transform: capitalize;
    transition: background-color 200ms ease-in-out 150ms, color 200ms ease-in-out 150ms, border-color 200ms ease-in-out 150ms, box-shadow 200ms ease-in-out 150ms, opacity 200ms ease-in-out 150ms;
}

.sw-action-button:hover {
    background: #c7c7c7;
}

.sw-action-button--compact {
    min-width: 3em;
    min-height: 2em;
    max-width: 4em;
    height: 100%;
}

.sw-is-bookmarked {
    color: #c12400;
    background: #c7c7c7;
}

.sw-youtube--video {
    max-width: 780px;
    height: 438.75px;
    margin: 0 auto;
    border-radius: 3px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .4);
    overflow: hidden;
}

.sw-seoHomeList {
    align-self: stretch;
    display: inline-block;
    min-width: 310px;
    margin-bottom: 2em;
}

.sw-seoHomeList .sw-title {
    font-size: 1.8rem;
    line-height: 1.8rem;
    letter-spacing: .2rem;
    padding: 0 0 0 2rem;
    color: #217e42;
    margin: 0 0 1rem;
}

.sw-list {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    display: block;
    padding: 0;
    overflow: hidden;
}

.sw-list__link, .sw-footerDisclaimer .sw-link {
    color: #c7c7c7;
}

.sw-list--inline {
    list-style: none;
    flex-flow: row nowrap;
    justify-content: flex-start;
    padding-left: 0;
    white-space: nowrap;
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}

.sw-list--inline .sw-list__item {
    display: inline-flex;
    padding: 0 .8rem 0 0;
    flex: 0 0 auto;
    flex-direction: column;
    justify-content: center;
}

.sw-list--inline .sw-list__item:last-child {
    padding-right: 0;
}

.sw-list__item {
    padding-bottom: .8rem;
    list-style: none inside none;
    position: relative;
}

.sw-list__item--wrapped {
    background-color: #ddd;
    font-size: 1em;
    padding: .5em .7em;
    color: #464646;
    display: inline;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 2px;
    font-weight: 700;
    letter-spacing: 1px;
}

.sw-list--pipe .sw-list__item {
    padding: 0 .8rem;
    line-height: 1.3em;
    vertical-align: middle;
}

.sw-list--pipe > .sw-list__item:before {
    position: absolute;
    inset-block: 0 0;
    left: -1px;
    height: calc(100% - .5em);
    margin: auto;
    border-left: 1px solid #acacac;
    content: "";
}

.sw-list--pipe .sw-list__item:first-child {
    padding: 0 .8rem 0 0;
}

.sw-list--borderBottom .sw-list__item {
    padding: .8rem 0;
    border-bottom: 1px solid #c7c7c7;
}

.sw-list--borderBottom .sw-list__item:last-child {
    border-bottom: none;
}

.sw-link {
    color: #217e42;
    font-weight: 600;
    user-select: none;
}

.sw-link:hover {
    cursor: pointer;
    text-decoration: underline;
}

.sw-listMeta__item {
    display: flex;
    flex: 1 0 100%;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-bottom: .8rem;
}

.sw-listMeta__item:last-child, .sw-reservedProfilePage > .sw-reservedHeader, .sw-vpageText p:last-child, .sw-vpageDetail p:last-child {
    margin-bottom: 0;
}

.sw-listMeta__meta {
    color: #acacac;
    display: inline-flex;
    flex: 0 0 8rem;
    justify-content: flex-end;
}

.sw-listMeta__meta:after {
    display: inline-flex;
    width: 2.4rem;
    content: "";
}

.sw-listMeta__link {
    max-width: 230px;
    text-overflow: ellipsis;
    color: #464646;
    flex: 1 1 auto;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
}

.sw-history-back {
    color: #464646;
    vertical-align: text-top;
}

.sw-slider__home {
    position: relative;
    display: block;
    max-width: 1380px;
    margin: 1em auto;
    width: 94%;
    height: 280px;
}

.sw-slider__wrapper {
    display: flex;
    flex-flow: row;
    justify-content: flex-start;
    max-height: 100%;
    padding: 15px 0;
}

.sw-slider__item {
    border-radius: 12px;
    flex: 0 0 calc(100%);
    margin: 0 10px;
    box-shadow: 0 0 8px 0 #616161;
    position: relative;
    overflow: hidden;
}

.sw-slider__item img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    border-radius: 8px;
    width: 100%;
}

.sw-immo-desc--short {
    position: absolute;
    inset: 0;
    text-align: justify;
    margin: 0;
    padding: 1rem;
    background: linear-gradient(to top, rgba(0, 0, 0, .6), rgba(0, 0, 0, .4) 60%, rgba(0, 0, 0, .1));
    color: var(--sw-color-white);
    font-size: 1.1em;
}

.sw-stack {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    color: #5c5c5c;
    list-style-type: none;
    justify-content: space-between;
    overflow: hidden;
}

.sw-stackItem, .sw-accordion__label, .sw-autocomplete__list li {
    cursor: pointer;
    color: inherit;
    text-decoration: none;
    min-height: 4.8rem;
    justify-content: flex-start;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #e8e8e8;
    transition: background-color .16s ease, color .16s ease;
}

.sw-stackItem {
    padding: .8rem 1.6rem;
}

.sw-stackItem[data-action='close'], .sw-stackItem:hover, .sw-accordion__label:hover, .sw-autocomplete__list li:hover {
    background-color: #f3f5f4;
    color: var(--sw-color-brand);
}

.sw-stackItem:-ms-fullscreen, .sw-stackItem {
    height: 4.8rem;
}

.sw-stackItem.is-selected, .sw-accordion__label.is-selected {
    background-color: rgba(43, 133, 75, .12);
}

.sw-stackItem--group {
    min-height: 3.4rem;
    height: 3.4rem;
    padding: .6rem 1.6rem;
    color: var(--sw-color-text);
    font-size: 1.4rem;
    font-weight: 800;
    cursor: default;
    background: #f7f9f8;
}

.sw-select {
    --sw-dropdown-offset: .4rem;
    --sw-dropdown-shadow: 0 14px 28px rgba(31, 42, 51, .14);
    display: block;
    user-select: none;
    overflow: visible;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    color: #5c5c5c;
    width: 100%;
    position: relative;
}

.sw-rangeInput__control, .sw-select__control {
    background-color: var(--sw-color-white);
    color: var(--sw-color-control-text);
    font-size: 1.55rem;
    font-weight: 400;
    justify-content: space-between;
    max-width: 100%;
    height: var(--sw-control-height);
    padding: 0 var(--sw-control-padding-x);
    line-height: var(--sw-control-height);
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    box-shadow: var(--sw-control-shadow);
    transition: var(--sw-control-transition);
    display: flex;
    align-items: center;
    width: 100%;
    overflow: hidden;
}

.sw-rangeInput.is-open .sw-rangeInput__control, .sw-select.is-open .sw-select__control, .sw-select__control:focus {
    border-color: var(--sw-color-brand);
    box-shadow: 0 0 0 3px rgba(27, 76, 44, .12);
    outline: 0;
}

.sw-select.is-open, .sw-rangeInput.is-open {
    z-index: 1005;
}

.sw-select.is-open .sw-select__menu, .sw-rangeInput.is-open .sw-rangeInput__menu {
    z-index: 1006;
}

.sw-select__control[multiple], .sw-rangeInput__control[multiple] {
    height: auto;
    padding: 1.2rem;
    overflow: auto;
}

.sw-select.is-disabled .sw-select__control, .sw-select__control.is-disabled, .sw-select__control:disabled, .sw-rangeInput.is-disabled .sw-rangeInput__control, .sw-rangeInput__control.is-disabled, .sw-rangeInput__control:disabled {
    background-color: #f5f5f5;
    color: #acacac;
    cursor: default;
}

.sw-select__control:empty:before {
    opacity: .6;
    color: currentColor;
    content: attr(data-placeholder);
}

.sw-select.is-open .sw-select__arrow, .sw-rangeInput.is-open .sw-rangeInput__arrow, .sw-accordion__menu.is-open .sw-accordion__icon {
    transform: rotate(270deg);
}

.sw-select__menu, .sw-rangeInput__menu, .sw-autocomplete__list, .sw-dropdown {
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    background: var(--sw-color-white);
    color: #50575f;
    box-shadow: var(--sw-dropdown-shadow, 0 14px 28px rgba(31, 42, 51, .14));
    overflow-y: auto;
}

.sw-select__menu, .sw-rangeInput__menu {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    padding: 0;
    display: none;
    overflow-x: hidden;
    z-index: 1000;
    width: 100%;
}

.sw-select__menu {
    transition: max-height .3s ease;
}

.sw-select__searchWrap {
    position: sticky;
    top: 0;
    padding: .8rem;
    background: var(--sw-color-white);
    border-bottom: 1px solid var(--sw-color-border);
    z-index: 2;
}

.sw-select__search {
    width: 100%;
    min-height: 4rem;
}

.sw-modal .sw-inputLocation {
    background: var(--sw-color-white);
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
}

.sw-modal .sw-inputLocation .sw-autocomplete__container {
    display: flex;
    align-items: center;
    padding: 0 .8rem;
}

.sw-modal .sw-inputLocation .sw-autocomplete__input {
    min-height: 4.8rem;
    border: 0;
    box-shadow: none;
    background: transparent;
}

.sw-modal sw-dropdown-value.sw-select {
    z-index: 3;
}

.sw-modal sw-dropdown-value.sw-select.is-open {
    z-index: 10020;
}

.sw-modal sw-dropdown-value.sw-select.is-open .sw-select__menu {
    z-index: 10021;
}

.sw-rangeInput__control:focus {
    transition: border-color .15s ease-in-out;
    border-color: var(--sw-color-brand-control);
}

.sw-rangeInput__control > span:first-child {
    flex: 1 0 auto;
    text-overflow: ellipsis;
    overflow: hidden;
}

.sw-rangeInput__arrow, .sw-select__arrow {
    color: var(--sw-color-brand-control);
    margin-inline: 1.2rem 0;
    transform: rotate(90deg);
    transition: transform .25s;
    font-size: 1.4rem;
    pointer-events: none;
    stroke: currentColor;
    stroke-width: 1px;
}

.sw-rangeInput__inputContainer {
    display: flex;
    justify-content: center;
    padding: 1.2rem;
    border-bottom: 1px solid var(--sw-color-border-soft);
}

.sw-rangeInput__input {
    color: #5c5c5c;
    background-color: var(--sw-color-white);
    flex-grow: 1;
    flex-shrink: 1;
    height: 4rem;
    padding: 0 1.2rem;
    border: 1px solid var(--sw-color-border-soft);
    font-size: 1em;
    text-overflow: ellipsis;
    transition: border-color 250ms ease-in-out 100ms, box-shadow 250ms ease-in-out 100ms, color 250ms ease-in-out 100ms, background-color 250ms ease-in-out 100ms;
    overflow: hidden;
    min-width: 0;
}

.sw-rangeInput {
    --sw-dropdown-offset: .4rem;
    --sw-dropdown-shadow: 0 14px 28px rgba(31, 42, 51, .14);
    font-size: 1.6rem;
    font-weight: 400;
    color: #5c5c5c;
    display: block;
    max-width: 100%;
    user-select: none;
    min-width: 5em;
    position: relative;
}

.sw-rangeInput__menu-left {
    right: 0;
    left: unset;
}

.sw-rangeInput.is-open > .sw-rangeInput__control {
    color: #5c5c5c;
}

.sw-rangeInput__input:focus {
    border-color: var(--sw-color-brand-control);
    outline: 0;
}

.sw-rangeInput__input + .sw-rangeInput__input {
    margin-left: 1.2rem;
}

.sw-rangeInput__list {
    padding: 0;
    overflow-y: auto;
}

.sw-rangeInput__list--right .sw-stackItem {
    justify-content: flex-end;
}

.sw-footer {
    flex-shrink: 0;
    color: var(--sw-color-white);
    background-color: var(--sw-color-brand);
    margin: auto 0 0;
    border: 0;
    width: 100%;
    position: relative;
}

.sw-footer__inner {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    max-width: 140rem;
    margin: 0 auto;
    padding: 0 1rem;
}

.sw-footerSection--social {
    flex-grow: 0;
    order: -1;
}

.sw-footerSegment {
    font-size: 1.4rem;
    padding: 1.6rem 0 1.6rem 7.2rem;
    text-align: left;
    position: relative;
}

.sw-footerSegment__title {
    display: inline-block;
    padding-bottom: .4rem;
    font-size: 1.4rem;
    font-weight: 700;
}

.sw-footerSegment__icon {
    inset-inline: 0 auto;
    display: block;
    position: absolute;
    top: .8rem;
    font-size: 4rem;
}

.sw-footerSegment__icon use {
    fill: #217e42;
}

.sw-footerSegment__list {
    font-size: 1.4rem;
    line-height: 1.2em;
    padding-left: 7px;
}

.sw-footerTop {
    background-color: #217e42;
    color: var(--sw-color-white);
    padding: 2.4rem 0;
    background-image: url(../images/pattern-footer.png);
    background-repeat: repeat;
}

.sw-footerBottom {
    padding: 1.6rem 0;
    font-size: 1.5rem;
    text-align: center;
    overflow: hidden;
}

.sw-footerBottom .sw-footerSection {
    flex-basis: 100%;
}

.sw-footerSocial__title {
    padding-inline: 0 .8rem;
    font-weight: 500;
}

.sw-footerSocial__icon {
    color: var(--sw-color-white);
    margin-inline: .8rem 0;
    display: inline-flex;
    font-size: 2.4rem;
}

.sw-autocomplete {
    --sw-dropdown-offset: .4rem;
    --sw-dropdown-shadow: 0 14px 28px rgba(31, 42, 51, .14);
    background-color: var(--sw-color-white);
    flex-flow: column;
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
}

.sw-autocomplete__container {
    flex-flow: row wrap;
    display: flex;
    align-items: center;
    width: 100%;
}

.sw-autocomplete__container > .sw-icon:first-child {
    margin: 0 .9rem 0 1rem;
    flex: 0 0 auto;
}

.sw-autocomplete__input {
    font-weight: 600;
    margin: 0;
    display: block;
    flex: 1 1;
    height: 4rem;
    min-height: 4rem;
    padding: 0 1.2rem;
    border: none;
    outline: 0;
    color: currentColor;
    appearance: none;
    text-overflow: ellipsis;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

.sw-autocomplete__list {
    list-style: none;
    padding: .4rem 0;
    margin: 0;
    display: block;
    outline: 0;
    position: absolute;
    top: calc(100% + var(--sw-dropdown-offset, .4rem));
    contain: layout style paint;
    content-visibility: auto;
    line-height: 1.4;
    height: auto;
    max-height: 31.3rem;
    right: 0;
    left: 0;
    width: 100%;
}

.sw-autocomplete__list__relative {
    background: transparent;
    top: 2px;
    border: unset;
    border-radius: unset;
    box-shadow: unset;
    position: relative;
}

.sw-autocomplete__item {
    min-height: 4rem;
    padding: .9rem 1.4rem;
    display: flex;
    align-items: center;
    width: 100%;
}

.sw-autocomplete__list li {
    list-style: none;
    padding: 0;
    text-align: left;
}

.sw-autocomplete__list li:last-child, .sw-authorDetails__list dt:nth-last-child(2), .sw-authorDetails__list dd:last-child, .sw-authorContact .sw-cardEntity__section:last-child, .sw-accountRow:last-child {
    border-bottom: 0;
}

.sw-autocomplete__list__relative li {
    padding: 1rem;
    background: rgba(0, 0, 0, .03);
    color: #217e42;
    font-weight: 600;
}

.sw-autocomplete__list li:hover .sw-autocomplete__item {
    font-weight: 600;
}

.sw-searchBar__input {
    font-weight: 400;
    margin: 0;
    height: 4rem;
    min-height: 4rem;
    padding: 0 1.2rem;
    border: 1px solid #04040433;
    text-overflow: ellipsis;
    border-radius: 3px;
    font-size: 1em;
    display: flex;
    align-items: center;
    width: 100%;
    overflow: hidden;
}

.sw-accordion {
    background-color: #f5f5f5;
    font-size: 1.4rem;
    user-select: none;
}

.sw-accordion__menu {
    text-align: left;
    display: block;
    width: 100%;
}

.sw-accordion__subMenu {
    display: none;
    overflow: hidden;
}

.sw-accordion__label {
    height: 4.8rem;
    padding: 0 1.6rem;
    font-weight: 400;
    min-height: 4.8rem;
}

.sw-accordion__icon {
    margin-inline: auto 0;
    color: #217e42;
    transform: rotate(90deg);
    transition: transform 250ms;
    stroke: #217e42;
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-faq-item {
    border-bottom: 1px solid #acacac;
}

.sw-collapseContainer {
    padding: 1em;
}

.sw-collapse {
    display: inline-block;
    line-height: 1.6em;
    color: #464646;
    font-size: 1.2em;
    width: 100%;
    position: relative;
}

.sw-collapseTitle {
    width: 90%;
    color: var(--sw-color-brand);
}

.sw-collapseIcon {
    position: absolute;
    font-size: 1.4em;
    top: 0;
    right: 0;
    line-height: inherit;
    transition: transform .4s ease-in-out;
}

.sw-collapseIcon--close {
    transform: rotate(45deg);
    color: #d15a5a;
}

.sw-collapseHidden {
    display: none;
    line-height: 17px;
    margin: 16px 0;
    position: relative;
    overflow: hidden;
}

.sw-relatedLink__title {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
    display: block;
    margin-bottom: 1.6rem;
    padding-bottom: .8rem;
    border-bottom: 1px solid #ddd;
}

.sw-checkbox {
    flex-wrap: wrap;
    min-height: 2rem;
    line-height: 2rem;
    user-select: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    position: relative;
}

.sw-checkbox__nativeControl,
.sw-radio__nativeControl {
    display: none;
}

.sw-checkbox__control {
    margin-inline: 0 .8rem;
    display: block;
    flex-shrink: 0;
    align-self: flex-start;
    width: 2rem;
    aspect-ratio: 1;
    border: 1px solid #c7c7c7;
    background: var(--sw-color-white);
    border-radius: 3px;
    transform: scale(1);
    position: relative;
}

.sw-checkbox__control:before {
    content: "";
    height: 100%;
    background: #217e42;
    display: block;
    transform: scale(0);
    opacity: 1;
    border-radius: 50%;
    width: 100%;
}

.sw-checkbox__control:after {
    position: absolute;
    top: 50%;
    left: .4rem;
    width: .6rem;
    height: 1rem;
    transform: scaleX(-1) rotate(135deg);
    transform-origin: left top;
    border-top: 2px solid var(--sw-color-white);
    border-right: 2px solid var(--sw-color-white);
    content: "";
}

.sw-checkbox__nativeControl.is-disabled + .sw-checkbox__control, .sw-checkbox__nativeControl:checked + .sw-checkbox__control {
    border-color: #217e42;
    background-color: #217e42;
    animation: anim-check .6s ease;
}

.sw-checkbox__nativeControl.is-disabled + .sw-checkbox__control:after, .sw-checkbox__nativeControl:checked + .sw-checkbox__control:after {
    animation: anim-checkMark .6s ease forwards;
}

.sw-checkbox__nativeControl:checked + .sw-checkbox__control:before {
    transform: scale(2.2);
    opacity: 0;
    transition: opacity .6s ease, transform .6s ease;
}

.sw-checkbox__textControl {
    flex: 1 1 0;
    text-transform: capitalize;
}

.sw-multiSelect__accordion {
    user-select: none;
}

.sw-multiSelect__accordion .sw-stackItem {
    padding-left: 3.2rem;
}

.sw-textField {
    display: block;
    margin-top: 1.2em;
    line-height: 1.3em;
    text-align: justify;
    word-break: break-word;
    width: 100%;
}

.sw-searchController {
    display: flex;
    flex-wrap: wrap;
    height: 4.8rem;
    gap: 8px;
    overflow: hidden;
}

.sw-searchContract__link {
    flex: 1 1 33.3%;
    font-size: 1.4rem;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
    user-select: none;
    border-radius: 30px;
    background: rgba(255, 255, 255, .09);
    color: var(--sw-color-white);
    text-decoration: none;
}

.sw-searchContract__link.is-active, .sw-searchContract__link:active, .sw-searchContract__link:focus, .sw-searchContract__link:hover {
    background: rgb(255 255 255 / 22%);
    color: var(--sw-color-white);
    text-decoration: none;
}

.sw-searchContract__link.is-active {
    background-color: var(--sw-color-accent);
}

.sw-searchBar__mainFilters {
    display: flex;
    flex-flow: row wrap;
    background: var(--sw-color-white);
    border-radius: 6px;
    width: 100%;
    position: relative;
}

.sw-searchBar.is-active {
    display: flex;
}

.sw-searchBar__item {
    flex: 1 1 0;
    max-width: 40%;
}

.sw-searchBar__item--location > *, .sw-inputLocation {
    z-index: 4;
}

.sw-searchBar__item--location {
    max-width: 100%;
    position: relative;
}

.sw-searchBar__item--grow {
    flex-grow: 1;
}

.sw-searchBar__inlineIcon {
    margin: 0 0 0 1rem;
}

.sw-searchBar__item--location > .sw-autocomplete:not(.sw-autocompleteFull) {
    min-width: 0;
    position: static;
}

.sw-description {
    display: block;
    font-size: 2rem;
    line-height: 3rem;
    font-weight: 600;
    text-align: justify;
    text-align-last: left;
    max-width: 100%;
    width: max-content;
    margin: 0 auto;
    position: relative;
}

.sw-body {
    line-height: 1.5em;
    margin: 2rem 0;
    text-align: center;
}

.sw-pageStrip {
    padding: 4rem 0;
    overflow: hidden;
}

.sw-homeStrip--soft, .sw-vpageStrip--soft {
    background: #f4f6f5;
}

.sw-pageStrip__ads {
    min-height: 450px;
    padding: 4em 2em;
    margin: auto;
    height: 100%;
    color: var(--sw-color-white);
    width: 100%;
    position: relative;
}

.sw-pageStrip__adsImage {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    height: 100%;
    z-index: -1;
    width: 100%;
}

.sw-pageStrip__ads .sw-title {
    text-align: left;
    line-height: 1em;
    font-size: 3rem;
    font-weight: 800;
    margin: 0;
}

.sw-pageStrip__ads .sw-body {
    font-size: 1.6em;
    font-weight: 600;
    text-align: left;
}

.sw-pageStrip:not(.sw-pageStrip__ads) .sw-title::after {
    content: '';
    margin: 1.6rem auto 0;
    display: block;
    height: 2px;
    background: #acacac;
    width: 80%;
    position: relative;
}

.sw-pageStrip .sw-content {
    color: #838383;
    font-weight: 600;
}

.sw-pageStrip__content {
    margin: 0 auto;
    max-width: var(--sw-content-max);
    padding-inline: var(--sw-page-gutter-compact);
    width: 100%;
}

.sw-paragraph {
    text-align: justify;
    text-align-last: left;
    word-break: break-word;
    white-space: normal;
    overflow: hidden;
}

.sw-paragraph .sw-title {
    text-align: left;
    padding: 0 2rem;
    font-size: 2rem;
    line-height: 3rem;
    margin: 0;
}

.sw-paragraph .sw-title::after {
    margin: 1rem 0;
    width: 110%;
}

.sw-content {
    display: block;
    line-height: 1.8em;
    margin-bottom: 2rem;
    padding: 0 1rem;
    text-align: justify;
    text-align-last: left;
    word-break: break-word;
    color: #5a5a5a;
}

.sw-homeSeo {
    background: linear-gradient(180deg, #f7faf8, #eef4f1);
}

.sw-homeSeo__inner {
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
}

.sw-homeSeo__eyebrow {
    margin: 0 0 .8rem;
    color: var(--sw-color-brand);
    font-size: 1.2rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.sw-homeSeo__title.sw-title {
    width: 100%;
    margin: 0;
    color: #253142;
    font-size: 2.35rem;
    line-height: 1.14;
    text-align: left;
}

.sw-homeSeo__title.sw-title::after {
    width: 7.4rem;
    height: 3px;
    margin: 1.4rem 0 0;
    background: var(--sw-color-accent);
}

.sw-homeSeo__text {
    margin-top: 1.6rem;
    text-align: left;
}

.sw-homeSeo__text p, .sw-homeSeo__lead {
    margin: 0;
    padding: 0;
    color: #4d5965;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.65;
    text-align: left;
}

.sw-homeSeo__lead {
    color: #2f3944;
    font-size: 1.65rem;
    font-weight: 800;
}

.sw-homeSeo__links {
    display: grid;
    gap: 1rem;
}

.sw-homeSeo__item {
    display: grid;
    grid-template-columns: 4.2rem 1fr;
    gap: .25rem 1rem;
    min-height: 8.2rem;
    padding: 1.2rem;
    border: 1px solid #dfe7e2;
    border-radius: 8px;
    background: var(--sw-color-white);
    color: #253142;
    text-decoration: none;
    box-shadow: 0 8px 22px rgba(34, 43, 53, .05);
    transition: border-color .18s ease, box-shadow .18s ease;
}

.sw-homeSeo__item:hover {
    border-color: rgba(27, 76, 44, .28);
    color: #253142;
    box-shadow: 0 12px 28px rgba(34, 43, 53, .08);
}

.sw-homeSeo__icon {
    grid-row: 1 / span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.2rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgba(27, 76, 44, .1);
    color: var(--sw-color-brand);
    font-size: 1.9rem;
}

.sw-homeSeo__item strong {
    align-self: end;
    color: #253142;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.sw-homeSeo__item span:last-child {
    color: #66736b;
    font-size: 1.32rem;
    line-height: 1.38;
}

.sw-menu {
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    position: sticky;
    top: 0;
    z-index: 1000;
    height: 56px;
    width: 100%;
}

.sw-languages {
    text-align: center;
    cursor: pointer;
    line-height: 15px;
    font-size: 15px;
    border-radius: 30px;
    overflow: hidden;
}

.sw-languages-list {
    text-decoration: none;
    list-style: none;
    display: block;
    text-transform: uppercase;
    margin: 8px 0;
    padding: 7px;
    cursor: pointer;
    transition: background-color 200ms ease-in-out 150ms, color 200ms ease-in-out 150ms, opacity 200ms ease-in-out 150ms;
}

.sw-languages-list:hover {
    background: #e8e8e8;
}

.sw-languages-image {
    margin: 0 5px 0 0;
    opacity: .8;
}

.sw-languages-option {
    border: 3px solid rgb(255 255 255 / 90%);
    padding: 8px 10px;
    text-transform: uppercase;
    display: block;
    min-width: 4.2rem;
    min-height: 3.7rem;
    border-radius: 30px;
    background: rgb(255 255 255 / 10%);
    position: relative;
}

.sw-hero {
    display: flex;
    color: var(--sw-color-white);
    background-color: var(--sw-color-brand);
    min-height: 38rem;
    max-height: 54rem;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    justify-content: center;
    width: 100%;
}

.sw-hero-home {
    max-height: none;
}

.sw-hero__content {
    flex-direction: column;
    height: 40rem;
    max-width: 128rem;
    margin: auto;
    padding: 4rem 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.sw-hero__title {
    font-size: 2.4em;
    font-weight: 500;
    text-align: center;
}

.sw-hero__subtitle {
    font-size: 1.4em;
    line-height: 2em;
    text-align: center;
}

.sw-heroBody__brand {
    padding: 0 3.2rem;
    text-align: center;
    display: inline-flex;
    flex-direction: column;
    width: 100%;
}

.sw-heroBrand__navbar {
    max-height: 1.6em;
    flex-shrink: 1;
    margin: auto;
}

.sw-menu.is-logoDeferred .sw-navbar > .sw-heroBrand__navbar {
    transition: opacity .16s ease, visibility .16s ease;
}

.sw-menu.is-logoDeferred:not(.is-logoVisible) .sw-navbar > .sw-heroBrand__navbar {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.sw-heroBrand__logo {
    width: auto;
    height: 5rem;
    margin: auto;
}

.sw-heroBrand__slogan {
    font-size: 15px;
    line-height: 22px;
}

@media all and (max-width: 479.98px) {
    .sw-heroBrand__slogan {
        display: none;
    }
}

.sw-hoverable {
    padding: 2rem;
    border-radius: 3px;
    transition: box-shadow 350ms ease-in-out 150ms, background-color 350ms ease-in-out 150ms, color 350ms ease-in-out 150ms;
}

.sw-hoverable:hover {
    box-shadow: 0 0 7px 0 #c7c7c7;
}

.sw-services__container {
    width: min(100%, 124rem);
    margin: 0 auto;
}

.sw-services {
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem;
    align-items: stretch;
}

.sw-services__item {
    flex: 1 1 22rem;
    min-width: 0;
}

.sw-services__img {
    margin: 0 auto 1.2rem;
    flex-shrink: 0;
    height: 7.4rem;
    object-fit: contain;
}

.sw-services__text {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    min-width: 0;
    text-align: center;
}

.sw-services__title, .sw-cservices_title {
    font-size: 1.85rem;
    line-height: 1.2;
    margin-bottom: .5rem;
    font-weight: 700;
    color: var(--sw-color-brand);
    text-align: center;
}

.sw-services__description {
    margin: .4rem 0 1.2rem;
    color: #5c5c5c;
    font-size: 1.45rem;
    font-weight: 600;
    line-height: 1.45;
}

.sw-services__action {
    align-self: center;
    width: min(100%, 22rem);
    min-height: 4rem;
    margin-top: auto;
    padding: 0 1.4rem;
    font-weight: 700;
    background: var(--sw-color-accent);
    border-radius: 5px;
    text-transform: uppercase;
    color: var(--sw-color-white);
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sw-homeGuides .sw-pageStrip__content {
    max-width: var(--sw-wide-content-max);
    padding-inline: 1.6rem;
}

.sw-homeGuides__head {
    max-width: 760px;
    margin-bottom: 2.4rem;
}

.sw-homeGuides__title {
    margin: .6rem 0 0;
    color: #2f3944;
    font-size: 2.7rem;
    font-weight: 800;
    line-height: 1.12;
}

.sw-homeGuides__text {
    margin: 1.1rem 0 0;
    color: #53616c;
    font-size: 1.55rem;
    line-height: 1.6;
}

.sw-homeGuides__grid {
    gap: 1.2rem;
    display: grid;
}

.sw-homeGuide, .sw-vpageCard, .sw-valuationTool {
    border: 1px solid var(--sw-panel-border);
    border-radius: var(--sw-panel-radius);
    background: var(--sw-color-white);
    box-shadow: 0 14px 30px rgba(34, 43, 53, .06);
}

.sw-homeGuide {
    box-shadow: 0 10px 24px rgba(34, 43, 53, .05);
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 1.7rem;
    text-decoration: none;
}

.sw-homeGuide:hover {
    border-color: rgba(27, 76, 44, .24);
    box-shadow: 0 16px 30px rgba(27, 76, 44, .08);
}

.sw-homeGuide__label {
    color: var(--sw-color-accent);
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.sw-homeGuide__title {
    margin-top: .7rem;
    color: var(--sw-color-brand);
    font-size: 1.8rem;
    line-height: 1.2;
}

.sw-homeGuide__text {
    margin-top: .9rem;
    color: #53616c;
    font-size: 1.42rem;
    line-height: 1.5;
}

.sw-pagination {
    display: grid;
    grid-template-columns: minmax(4rem, 1fr) auto minmax(4rem, 1fr);
    align-items: center;
    margin-block: 2em 3em;
    gap: .8rem;
}

.sw-pagination__pages {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    min-width: 0;
    gap: .8rem;
}

.sw-pagination__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    color: var(--sw-color-brand);
    transition: color .35s ease-in-out, opacity .35s ease-in-out;
}

.sw-pagination__arrow.is-disabled {
    visibility: hidden;
}

.sw-GeoMap-popup .leaflet-popup-content a:hover, .sw-list__link:hover, .sw-pagination__arrow:hover {
    color: var(--sw-color-accent);
}

.sw-pagination__arrow svg {
    width: 1.8rem;
    height: 1.8rem;
}

.sw-pagination .sw-element {
    border: none;
    margin: 0;
    font-weight: 600;
    font-size: 1em;
    color: var(--sw-color-brand);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 4rem;
    height: 40px;
    line-height: 40px;
    text-align: center;
    padding: 0 1em;
    background: #e8e8e8;
    transition: background-color .35s ease-in-out, color .35s ease-in-out, box-shadow .35s ease-in-out;
    border-radius: 3px;
}

.sw-pagination__pages > strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 2.4rem;
    height: 40px;
    color: var(--sw-color-brand);
}

.sw-authors--image {
    position: absolute;
    max-width: 80%;
    max-height: 80%;
    inset: 0;
    display: block;
    margin: auto;
    padding: 10px 0;
    object-fit: cover;
    border-radius: 2px;
    transition: opacity 200ms ease-in-out 200ms, transform 200ms ease-in-out 200ms;
}

.sw-article__badge svg {
    fill: var(--sw-color-white);
    width: 24px;
    aspect-ratio: 1;
    vertical-align: bottom;
}

.sw-article__subTitle {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    max-width: 100%;
    height: 1.2em;
    line-height: 1.2em;
    text-align: left;
    font-weight: 700;
    color: #5c5c5c;
    word-break: break-word;
    text-overflow: ellipsis;
    font-size: 1em;
    overflow: hidden;
}

.sw-article__image {
    border-radius: 6px;
    overflow: hidden;
}

.sw-logo {
    height: 130px;
    width: auto;
    max-width: 80%;
    margin: 1em auto;
    box-shadow: 1px 1px 10px -3px #1c1c1c;
    transition: box-shadow .3s ease, opacity .3s ease;
    border-radius: 3px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.sw-logo--rounded {
    border-radius: 50%;
    aspect-ratio: 1;
    width: 130px;
    max-width: unset;
}

.sw-image {
    height: 100%;
    margin: auto;
    transition: opacity .3s ease;
    object-fit: cover;
    width: 100%;
}

.js-clickable, .sw-navbar__link, .sw-logo:hover {
    cursor: pointer;
}

.sw-logo:hover .sw-image {
    opacity: .92;
}

.sw-logo .arv-uploadButton {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.sw-logo .arv-uploadButton .svg-arrow-up-rounded {
    position: absolute;
    font-size: 130px;
    line-height: 130px;
    top: 0;
    left: 0;
    margin: 0;
    opacity: 0;
    transition: opacity .3s ease, color .3s ease;
    color: var(--sw-color-brand);
    width: 100%;
}

.sw-logo .arv-uploadButton:hover .svg-arrow-up-rounded {
    opacity: .8;
}

.sw-authorHeroCard {
    border-radius: 8px;
    box-shadow: 0 22px 52px rgba(34, 43, 53, .13);
    overflow: hidden;
}

.sw-authorTabs .sw-tabBar, .sw-authorTabs .sw-tabContent {
    margin-inline: var(--sw-author-tab-gutter);
}

.sw-authorTabs .sw-tab .sw-icon {
    width: 1.35rem;
    aspect-ratio: 1;
    margin: 0;
    color: #6b737c;
}

.sw-authorTabs .sw-tab[aria-selected=true] {
    color: var(--sw-color-brand);
    background: rgba(27, 76, 44, .05);
}

.sw-authorTabs .sw-tab[aria-selected=true] .sw-icon {
    color: currentColor;
}

.sw-authorOverview .sw-cardEntity__head {
    gap: .8rem;
}

.sw-authorOverview .sw-cardEntity__title {
    font-size: 2.1rem;
    line-height: 1.2;
}

.sw-authorOverview .sw-cardEntity__meta {
    gap: .55rem;
    margin-top: .85rem;
    color: #59636e;
    display: inline-flex;
    align-items: center;
}

.sw-authorOverview .sw-cardEntity__meta .sw-icon {
    width: 1.35rem;
    aspect-ratio: 1;
    margin: 0;
    color: #59636e;
}

.sw-authorActions .sw-button .sw-icon {
    width: 1.45rem;
    aspect-ratio: 1;
    margin: 0;
}

.sw-authorAddress .sw-icon {
    width: 1.55rem;
    aspect-ratio: 1;
    margin: 0;
    color: #4d5965;
}

.sw-authorAddress .sw-underline .sw-icon {
    width: 1rem;
    aspect-ratio: 1;
    color: currentColor;
}

.sw-authorAbout {
    min-height: 13rem;
}

.sw-authorAbout .sw-content {
    max-width: 86rem;
    margin: 0;
    padding-left: 1.8rem;
    color: #4a525b;
    font-size: 1.65rem;
    line-height: 1.85;
    position: relative;
}

.sw-authorAbout .sw-content::before {
    position: absolute;
    inset-block: .45rem .45rem;
    left: 0;
    width: 3px;
    border-radius: 999px;
    background: var(--sw-color-brand);
    content: "";
}

.sw-authorDetails__list {
    grid-template-columns: minmax(18rem, .34fr) 1fr;
    margin: 0;
    padding: 0;
    width: 100%;
    display: grid;
}

.sw-authorDetails__list dt, .sw-authorDetails__list dd {
    min-height: 4.4rem;
    margin: 0;
    padding: .9rem 1.2rem;
    border-bottom: 1px solid #edf0f3;
    display: flex;
    align-items: center;
}

.sw-authorDetails__list dt {
    gap: .6rem;
    background: #fafbfc;
    color: #6f7780;
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.sw-authorDetails__list dd {
    color: #3f454d;
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.sw-authorContact .sw-cardEntity__grid {
    gap: 0;
}

.sw-authorContact .sw-cardEntity__section {
    padding: 1.25rem 1.35rem;
    background: var(--sw-color-white);
    border: 0;
    border-bottom: 1px solid #edf0f3;
    border-radius: 0;
}

.sw-authorContact .sw-cardEntity__section:nth-child(odd):not(.sw-cardEntity__section--full) {
    border-right: 1px solid #edf0f3;
}

.sw-authorContact .sw-metaLabel {
    gap: .55rem;
    margin-bottom: .7rem;
    color: #7a838d;
    display: flex;
    align-items: center;
}

.sw-authorDetails__list .sw-icon, .sw-authorContact .sw-metaLabel .sw-icon {
    width: 1.35rem;
    aspect-ratio: 1;
    margin: 0;
    color: var(--sw-color-brand);
}

.sw-authorContact .sw-cardEntity__section strong {
    display: block;
    color: #3f454d;
    font-size: 1.55rem;
    line-height: 1.35;
    word-break: break-word;
}

.sw-authorSummary, .sw-reservedSearchCard + .sw-reservedSearchCard, .sw-reservedSearchCard .sw-cardEntity__foot, .sw-teamManagerActions {
    margin-top: 1.4rem;
}

.sw-jelly__bar {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    padding-top: 18px;
    gap: 10px;
    width: 100%;
    position: relative;
}

.sw-jelly__item {
    background: var(--sw-color-white);
    padding: 6px 16px;
    border-radius: 3px;
    box-shadow: 0 0 2px 0 #464646;
    flex: 1 0 auto;
    text-align: center;
}

.sw-block, .sw-article, .sw-puddle {
    display: block;
    padding: 1em;
    margin: 1rem auto;
    position: relative;
}

.sw-block, .sw-article {
    box-shadow: 0 1px 5px rgba(0, 0, 0, .2);
    border-radius: 6px;
    width: 100%;
}

.sw-article:hover, .sw-cardBox:hover {
    box-shadow: 0 0 7px 1px rgb(0 0 0 / 60%);
}

.sw-article__new {
    position: absolute;
    top: auto;
    left: auto;
    background: #ffffffd6;
    color: #c12400;
    padding: 0 5px;
    border-radius: 2px;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
}

.sw-article__content {
    display: flex;
    flex-flow: column;
    max-width: 96%;
    margin: 0 auto;
    min-height: 100%;
    width: 100%;
    position: relative;
}

.sw-article__info {
    margin: 10px 0;
    display: block;
}

.sw-articleFacts .sw-list__item .sw-icon {
    width: 1.35rem;
    aspect-ratio: 1;
    color: #59636f;
}

.sw-articleFacts.sw-list--pipe > .sw-list__item:before {
    left: 0;
    height: calc(100% - .8rem);
    border-left-color: #dfe3e7;
}

.sw-articleFacts.sw-list--pipe .sw-articleFacts__price {
    padding: 0 1.4rem 0 .4rem;
}

.sw-article__options {
    justify-content: space-between;
    height: 40px;
    vertical-align: middle;
    align-items: center;
    width: 100%;
}

.sw-articleActions .sw-button:hover {
    background: #f5f5f5;
    box-shadow: none;
}

.sw-articleActions .sw-button:not(:first-of-type):not(.sw-articleActions__contact)::before {
    position: absolute;
    inset-block: .7rem .7rem;
    left: 0;
    width: 1px;
    background: #d8d8d8;
    content: "";
}

.sw-articleActions .sw-is-bookmarked {
    background: transparent;
    color: #c12400;
}

.sw-articleActions__contact.sw-button:hover {
    background: #d97224;
    color: var(--sw-color-white);
}

.sw-article__author {
    display: flex;
    width: 5em;
    height: 100%;
    overflow: hidden;
}

.sw-xswipe--full .sw-xswipe__image, .sw-article__author img {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}

.sw-article__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    text-align: justify;
    text-align-last: left;
    max-height: 7.2rem;
    max-width: 100%;
    text-overflow: ellipsis;
    word-break: break-word;
    word-wrap: break-word;
    margin: 10px 0;
    overflow: hidden;
}

.sw-radio {
    font-size: 1.6rem;
    font-weight: 400;
    flex-wrap: wrap;
    line-height: 2rem;
    user-select: none;
}

.sw-radio__control {
    cursor: pointer;
    font-weight: 700;
    text-transform: capitalize;
    flex-grow: 1;
    transform: scale(1);
    display: flex;
    align-items: center;
    position: relative;
}

.sw-radio__nativeControl:checked + .sw-radio__control:before {
    border: .6rem solid #217e42;
    animation: anim-check .6s ease;
}

.sw-radio__control:before {
    margin-inline: 0 .8rem;
    display: block;
    flex-shrink: 0;
    align-self: flex-start;
    width: 2rem;
    aspect-ratio: 1;
    border: 1px solid #c7c7c7;
    border-radius: 100%;
    background-color: var(--sw-color-white);
    content: "";
    overflow: hidden;
}

.sw-switch--group {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-content: center;
    margin: 1em auto;
}

.sw-switch__control {
    cursor: pointer;
    user-select: none;
    appearance: none;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.4rem;
    min-width: 4rem;
    height: 3.5rem;
    padding: .2em 1.2rem;
    vertical-align: middle;
    background-color: var(--sw-color-white);
    border: 1px solid #c7c7c7;
    flex-shrink: 0;
    max-width: 100%;
    transition: background-color 200ms ease-in-out 50ms, color 200ms ease-in-out 50ms, border-color 200ms ease-in-out 50ms, opacity 200ms ease-in-out 50ms;
    position: relative;
    overflow: hidden;
}

.sw-switch__control:hover, .sw-BG__Gray {
    background-color: #f5f5f5;
}

.sw-switch__control.is-disabled, .sw-radio__nativeControl:disabled + .sw-switch__control {
    opacity: .65;
    pointer-events: none;
}

.sw-radio__nativeControl:checked + .sw-switch__control {
    background-color: #217e42;
    border: 1px solid #217e42;
    color: var(--sw-color-white);
}

.sw-search--option {
    padding: 1.6rem 1.6rem 1.2rem 0;
    width: auto;
    display: flex;
    align-items: center;
    position: relative;
}

.sw-immo--price {
    font-weight: 700;
    color: #5a5a5a;
    margin: 0;
    font-size: 18px;
}

.sw-card {
    display: block;
    margin: 3rem 0;
    border-radius: 3px;
    box-shadow: 0 1px 8px rgb(167 167 167 / 60%);
    padding: 1em;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sw-card .sw-title {
    font-size: 18px;
    font-weight: 700;
    width: 96%;
    margin: 0 auto;
    padding: 1em 0;
    text-align: left;
}

.sw-card .sw-title:after {
    display: block;
    content: '';
    border-bottom: 2px solid #acacac;
    margin: 2px 0 1em;
}

.sw-card--easy {
    margin: 2em 0;
    box-shadow: none;
}

.sw-card--easy .sw-title {
    padding: 1em 0 0;
    width: 100%;
}

.sw-card--easy .sw-title:after {
    border-bottom: 1px solid #c7c7c7;
}

.sw-row {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-width: 0 5px 1px;
    border-style: solid;
    border-color: #ddd;
    line-height: 2.2em;
    width: 100%;
}

.sw-row__name {
    padding-left: .5em;
    text-transform: uppercase;
    font-size: 1.4rem;
    font-weight: 400;
    flex: 1 1 120px;
}

.sw-row__value {
    padding-left: 1em;
    font-weight: 700;
    flex: 1 1 180px;
}

.sw-cardBox {
    display: block;
    width: 270px;
    flex: 0 0 270px;
    border-radius: 4px;
    margin: 1em;
    box-shadow: 0 0 3px 0 rgb(0 0 0 / 60%);
    overflow: hidden;
}

.sw-cardBox__title {
    font-size: 15px;
    font-weight: 700;
    padding: 1em;
    width: 100%;
}

.sw-cardBox__image {
    object-fit: cover;
    height: 170px;
    aspect-ratio: 27 / 17;
    flex-shrink: 0;
    width: 100%;
}

.sw-cardBox__body {
    padding: 0 1rem 1em;
}

.sw-labelValue {
    text-transform: capitalize;
}

.sw-color--red {
    color: #c12400;
}

.sw-BG__Green, .sw-pagination .sw-element:hover, .sw-pagination .sw-element--active {
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
}

.sw-BG__Green:hover {
    background: #217e42;
    color: var(--sw-color-white);
}

.sw-BG__Orange, .sw-vpageDarkPanel .sw-button {
    background: var(--sw-color-accent);
    color: var(--sw-color-white);
}

.sw-BG__Orange:hover, .sw-vpageDarkPanel .sw-button:hover {
    background: #d07219;
    color: var(--sw-color-white);
}

.sw-BG__Red, .sw-BG__Red:hover {
    color: var(--sw-color-white);
    background-color: #c12400;
}

.sw-BG__Orange a, .sw-BG__Red a, .sw-BG__Green a {
    color: inherit;
}

.sw-ads {
    display: block;
    max-width: 100%;
    max-height: 100%;
    border-bottom: 1px solid #acacac;
    margin: 1em;
    box-shadow: 0 0 6px 0 rgb(0 0 0 / 40%);
    position: relative;
    overflow: hidden;
}

.sw-headerBar {
    display: flex;
    justify-content: space-between;
    flex-flow: row nowrap;
    font-size: 1.8rem;
    line-height: 2rem;
    padding: 1rem;
    border-bottom: 1px solid #acacac;
    gap: 10px;
    position: relative;
}

.sw-headerBar sw-orderby {
    flex-shrink: 0;
}

.sw-page-title {
    margin: auto 0;
    vertical-align: middle;
    display: inline;
    line-height: 1.8rem;
    font-size: 1.8rem;
    letter-spacing: -.5px;
    font-weight: 600;
}

.sw-archiveSummary {
    margin: .9rem 0 1.1rem;
    padding: 1rem;
    border: 1px solid #dde3e0;
    border-radius: 8px;
    background: var(--sw-color-white);
}

.sw-archiveHero__eyebrow {
    min-height: 1.5rem;
    margin-bottom: .2rem;
    color: var(--sw-color-brand);
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
}

.sw-archiveHero__title {
    flex: 1 1 100%;
    margin: 0;
    color: #1f2d3a;
    font-size: 1.8rem;
    font-weight: 800;
    line-height: 1.15;
}

.sw-archiveHero__heading {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: .75rem;
}

.sw-archiveHero sw-orderby .sw-rangeInput__control {
    height: 4rem;
    min-height: 4rem;
    padding-inline: 1rem;
    font-size: 1.35rem;
}

.sw-archiveInsight__icon {
    flex: 0 0 3.8rem;
    width: 3.8rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgba(245, 130, 47, .12);
    color: var(--sw-color-accent);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-archiveInsight__content {
    flex: 1 1 24rem;
}

.sw-archiveInsight__title {
    margin: 0;
    color: #1f2d3a;
    font-size: 1.34rem;
    font-weight: 800;
    line-height: 1.18;
}

.sw-archiveInsight__text {
    margin: .2rem 0 0;
    color: #69737d;
    font-size: 1.08rem;
    line-height: 1.25;
}

.sw-archiveEmpty__actions .sw-button {
    min-width: 19rem;
    width: auto;
    max-width: none;
    height: 4.8rem;
    padding: 0 2rem;
    border: 1px solid var(--sw-color-brand);
    border-radius: 6px;
    font-weight: 800;
    text-decoration: none;
    line-height: 1;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sw-archiveEmpty__expand {
    color: var(--sw-color-brand);
    background: var(--sw-color-white);
    box-shadow: inset 0 0 0 1px rgba(27, 76, 44, .18);
}

.sw-archiveEmpty__expand:hover {
    border-color: var(--sw-color-brand-control);
    background: #f2f8f4;
    color: var(--sw-color-brand-control);
}

.sw-archiveEmpty h2 {
    margin: 0;
    color: #1f2d3a;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.25;
}

.sw-archiveSeo {
    display: flex;
    flex-direction: column;
    gap: 1.8rem;
    padding: 2rem;
    border: 1px solid #e1e8e4;
    background: var(--sw-color-white);
    box-shadow: 0 10px 28px rgba(34, 43, 53, .08);
}

.sw-archiveSeo__header {
    max-width: 86rem;
}

.sw-archiveSeo__title {
    margin: .35rem 0 0;
    padding: 0;
    border-bottom: 0;
    color: #263440;
    font-size: 2.35rem;
    font-weight: 800;
    line-height: 1.2;
}

.sw-archiveSeo__intro {
    max-width: 82rem;
    margin: .8rem 0 0;
    color: #61707b;
    font-size: 1.5rem;
    line-height: 1.55;
}

.sw-archiveRelatedFilters {
    display: grid;
    gap: 1rem;
    padding: 1.4rem;
    border: 1px solid #e3ebe6;
    border-radius: 7px;
    background: #f8faf9;
}

.sw-archiveRelatedFilters__title {
    margin: 0;
    color: #2f3944;
    font-size: 1.45rem;
    font-weight: 800;
    line-height: 1.35;
}

.sw-archiveRelatedFilters__links {
    display: flex;
    flex: 1 1 28rem;
    flex-wrap: wrap;
    min-width: 0;
    gap: .8rem;
}

.sw-archiveRelatedFilters__link {
    display: inline-flex;
    align-items: center;
    min-height: 3.4rem;
    padding: .7rem 1.1rem;
    border: 1px solid #dce5df;
    border-radius: 5px;
    background: var(--sw-color-white);
    color: var(--sw-color-brand);
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.sw-archiveRelatedFilters__link:hover {
    border-color: rgba(27, 76, 44, .25);
    background: #f2f8f4;
    color: var(--sw-color-brand-control);
    box-shadow: 0 8px 18px rgba(27, 76, 44, .08);
}

.sw-archiveSeo__description {
    color: #4f5d66;
    font-size: 1.5rem;
    line-height: 1.65;
}

.sw-archiveSeo__description:empty {
    display: none;
}

.sw-archiveAssist {
    display: grid;
    gap: 1.4rem;
    padding: 1.6rem;
    border: 1px solid #e1e8e4;
    border-radius: 7px;
    background: linear-gradient(180deg, #ffffff 0%, #f8faf9 100%);
}

.sw-archiveAssist__title {
    margin: .35rem 0 0;
    color: #27323a;
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1.2;
}

.sw-archiveAssist__content p {
    margin: .75rem 0 0;
    color: #5d6973;
    font-size: 1.48rem;
    line-height: 1.5;
}

.sw-archiveAssist__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.sw-archiveAssist__actions > .sw-button {
    flex: 0 0 auto;
    min-width: 14rem;
    height: var(--sw-control-height);
    max-width: none;
}

.sw-archiveAssist__divider {
    color: #77838c;
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.sw-archiveFreeSearch {
    display: flex;
    flex: 1 1 100%;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    min-width: 0;
    margin: 0;
}

.sw-archiveFreeSearch .sw-input {
    height: var(--sw-control-height);
    border-color: #d9e2dc;
    border-radius: 5px;
}

.sw-archiveFreeSearch .sw-button {
    width: 100%;
    height: var(--sw-control-height);
    max-width: none;
    margin: 0;
    min-width: 0;
}

.sw-archiveEmpty .sw-description {
    margin: .35rem 0 0;
    color: #68737d;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.45;
}

.sw-membership-menu a:hover {
    border-color: rgba(27, 76, 44, .25);
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    box-shadow: 0 10px 22px rgba(27, 76, 44, .16);
}

.sw-membership-menu .active {
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    border-color: var(--sw-color-brand);
    box-shadow: 0 10px 22px rgba(27, 76, 44, .18);
}

.sw-membership-menu__icon {
    flex: 0 0 auto;
    font-size: 1.5rem;
    line-height: 1;
}

.sw-membership-menu__label {
    display: none;
    overflow: hidden;
    min-width: 0;
    font-size: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sw-membership-menu__label::before {
    content: attr(data-short-label);
    font-size: 1.05rem;
}

.sw-membership-menu .sw-membership-menu__item--publish {
    border-color: #f5822f;
    background: #f5822f;
    color: var(--sw-color-white);
}

.sw-membership-menu .sw-membership-menu__item--publish:hover, .sw-membership-menu .sw-membership-menu__item--publish.active {
    border-color: #d96616;
    background: #d96616;
    color: var(--sw-color-white);
}

.sw-notification {
    position: absolute;
    top: .35rem;
    right: .35rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.7rem;
    height: 1.7rem;
    padding: 0 .35rem;
    color: var(--sw-color-white);
    background: #c12400;
    border: 2px solid var(--sw-color-white);
    border-radius: 999px;
    line-height: 1;
    text-align: center;
    font-size: 1rem;
    font-weight: 800;
    pointer-events: none;
}

.sw-box {
    animation: anim-messageEnter 400ms ease forwards;
    box-shadow: 0 4px 8px 0 rgba(6, 14, 18, .16), 0 8px 24px 0 rgba(6, 14, 18, .16);
    z-index: 800;
    display: flex;
    flex-direction: column;
    background-color: var(--sw-color-white);
    border-radius: .4rem;
    padding: 1.6rem;
    position: relative;
    overflow: hidden;
}

.sw-box .sw-title {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin: 0;
}

.sw-boxed {
    padding: 1em;
    margin: 1em auto;
    box-shadow: 0 0 3px 0 #acacac;
    border-radius: 3px;
}

.sw-regionsList {
    padding-top: 3em;
    max-width: 90em;
    margin: auto;
    columns: 4 250px;
    column-gap: 2em;
    width: 100%;
}

.sw-cservices_accepted {
    background: #9fffb042;
}

.sw-cservices_details {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.5;
    display: block;
    overflow: hidden;
}

.sw-cservices_body {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.sw-cservices_details--item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-bottom: 1px solid #acacac;
    margin-top: 6px;
    position: relative;
}

.sw-cservices_list--options {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
    align-items: baseline;
    gap: 8px;
}

.sw-cservicesCard.sw-cservices_accepted {
    border-left-color: var(--sw-color-brand);
    background: var(--sw-color-white);
}

.sw-cservicesCard .sw-cservices_title::after {
    content: 'Da gestire';
    flex: 0 0 auto;
    padding: .35rem .8rem;
    border-radius: 999px;
    background: rgba(245, 130, 47, .14);
    color: #a84f1b;
    font-size: 1.2rem;
    font-weight: 800;
}

.sw-cservicesCard.sw-cservices_accepted .sw-cservices_title::after {
    content: 'Accettata';
    background: rgba(27, 76, 44, .12);
    color: var(--sw-color-brand);
}

.sw-cservicesCard .sw-cservices_body h3 {
    margin: 0 0 1rem;
    color: #2f3944;
    font-size: 1.45rem;
    font-weight: 800;
    line-height: 1.25;
}

.sw-cservicesCard .sw-cservices_details {
    gap: .75rem;
    color: #4f5b64;
    font-size: 1.45rem;
    line-height: 1.45;
    display: flex;
    flex-direction: column;
}

.sw-cservicesCard .sw-cservices_details--item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.sw-cservicesCard .sw-cservices_details--item b {
    color: #2f3944;
    font-weight: 800;
}

.sw-cservicesCard .sw-cservices_list--options {
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    padding: 1.4rem 1.8rem;
    border-top: 1px solid #e3e9e5;
    background: var(--sw-color-white);
}

.sw-cservicesCard .sw-cservices_list--options .sw-button {
    width: auto;
    min-width: 11rem;
    max-width: none;
    padding: 0 1.6rem;
    border-radius: 6px;
    font-weight: 800;
}

.sw-serviceReviewForm {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
    width: min(100%, 52rem);
}

.sw-serviceReviewForm__head {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.sw-serviceReviewForm__head .sw-title {
    margin: 0;
    color: #253142;
    font-size: 2.2rem;
    line-height: 1.2;
}

.sw-serviceReviewForm__field {
    display: flex;
    flex-direction: column;
    gap: .6rem;
    color: #253142;
    font-size: 1.45rem;
    font-weight: 800;
}

.sw-serviceReviewForm__feedback {
    min-height: 1.8rem;
    margin: 0;
    font-size: 1.3rem;
}

.sw-form .sw-labelled, .sw-agencySearchForm .sw-input, .sw-reservedProfileActions .sw-flex, .sw-valuationTool #omi-entry-search, .sw-archiveNav__row, .sw-serviceReviewForm .sw-button {
    width: 100%;
}

.sw-serviceReviewRating .sw-select__menu {
    position: absolute;
    top: calc(100% + var(--sw-dropdown-offset, .4rem));
    right: 0;
    left: 0;
    z-index: 10020;
    width: 100%;
    height: auto;
    max-height: 24rem;
}

.sw-archiveRelatedFilters, .sw-agencyManageToolbar, .sw-cardEntity__head, .sw-singleHero .sw-gridRow, .sw-singleSavedNote__header, .sw-singleDetails__header {
    align-items: flex-start;
}

.sw-agencyManageToolbar .sw-cardEntity__actions .sw-button, .sw-agencySearchForm .sw-button {
    width: auto;
    max-width: none;
    min-width: 10rem;
    line-height: 1.1;
}

.sw-agencySearchForm {
    gap: 1rem;
    margin-bottom: 1.8rem;
}

.sw-agencyAdminCard {
    border-left-color: var(--sw-agency-status, #dde3e0);
}

.sw-agencySimpleCard .sw-cardEntity__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    padding: 1.2rem 1.4rem;
}

.sw-agencySimpleCard .sw-cardEntity__section {
    gap: .45rem;
    min-height: 0;
    padding: 1.1rem 1.2rem;
    background: #fbfcfb;
    display: flex;
    flex-direction: column;
}

.sw-agencySimpleCard {
    border-top: 4px solid var(--sw-color-brand);
    box-shadow: var(--sw-panel-shadow);
    overflow: hidden;
}

.sw-homeSeo__text p + p, .sw-agencySimpleCard + .sw-agencySimpleCard {
    margin-top: 1.2rem;
}

.sw-agencySimpleCard .sw-cardEntity__head {
    align-items: center;
    padding: 1.3rem 1.4rem;
    border-bottom: 1px solid #edf0f2;
    background: linear-gradient(180deg, var(--sw-color-white), #f8faf9);
}

.sw-agencySimpleCard .sw-cardEntity__title {
    color: #102033;
    font-size: 2rem;
    font-weight: 900;
}

.sw-agencySimpleCard .sw-statusPill {
    min-height: 3.2rem;
    border-color: rgba(27, 76, 44, .18);
    background: rgba(27, 76, 44, .06);
    color: var(--sw-color-brand);
}

.sw-agencySimpleCard .sw-cardEntity__section strong {
    color: #102033;
    font-size: 1.35rem;
    font-weight: 900;
}

.sw-agencySimpleCard .sw-cardEntity__section span {
    color: #4c5862;
    font-size: 1.45rem;
    overflow-wrap: anywhere;
}

.sw-agencySimpleCard .sw-cardEntity__foot {
    justify-content: flex-end;
    padding: 1rem 1.4rem;
    background: var(--sw-color-white);
}

.sw-agencySimpleCard .sw-cardEntity__actions .sw-button {
    width: auto;
    max-width: none;
    min-width: 10.8rem;
    line-height: 1.1;
}

.sw-social__icon {
    flex-shrink: 0;
    font-size: 2.4rem;
}

.sw-socialLink .sw-list__item {
    display: flex;
    padding: 1.6rem 0;
}

.sw-socialLink__text::before {
    display: inline-block;
    width: 1.6rem;
    content: "";
}

.sw-modalWrapper--black {
    background-color: rgba(0, 0, 0, .66);
}

.sw-modal.sw-modal--share {
    width: min(92vw, 42rem);
    max-width: calc(100vw - 2rem);
    max-height: calc(100dvh - 2rem);
}

.sw-modal.sw-modal--languages {
    width: min(92vw, 36rem);
    max-width: calc(100vw - 2rem);
}

@media all and (max-width: 479.98px) {
    .sw-modal.sw-modal--languages {
        width: 100vw;
        max-width: none;
    }
}

.sw-modal:last-child {
    display: flex;
    flex-direction: column;
}

.sw-modal__bottom, .sw-modal__header {
    flex-shrink: 0;
    padding: 1.5rem 5.8rem 1.5rem 2.4rem;
    min-height: 6.4rem;
    height: auto;
    border-bottom: 1px solid #e2e8e4;
    background: linear-gradient(180deg, #fff, #f7faf8);
    flex-direction: row;
    gap: 10px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sw-modal__title {
    color: #253142;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
    text-align: left;
}

.sw-modal__close {
    position: absolute;
    top: 1.4rem;
    right: 1.4rem;
    width: 3.8rem;
    aspect-ratio: 1;
    border: 1px solid transparent;
    border-radius: 50%;
    color: #53605a;
    font-size: 2.8rem;
    line-height: 1;
    z-index: 100;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.sw-modal__close:hover {
    border-color: #d5ded9;
    background: #edf4f0;
    color: var(--sw-color-brand);
}

.sw-modal__content pre, .sw-modal__content code {
    max-width: 100%;
    padding: 1.2rem;
    border: 1px solid #dfe6e2;
    border-radius: 6px;
    background: #f8faf9;
    color: #2f3944;
    font-family: Consolas, Monaco, monospace;
    font-size: 1.35rem;
    line-height: 1.55;
    overflow: auto;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.sw-modal.sw-modal--debugPanel {
    width: min(96vw, 118rem);
    max-width: calc(100vw - 2.4rem);
    max-height: min(92dvh, 92rem);
}

.sw-modal.sw-modal--debugPanel .sw-modal__content {
    padding: 0;
    background: #f6f8f7;
    overflow: auto;
}

.sw-debugPanel {
    display: flex;
    flex-direction: column;
    gap: 1.4rem;
    padding: 1.6rem;
    color: #253142;
    font-size: 1.35rem;
    line-height: 1.45;
}

.sw-debugPanel__metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.sw-debugPanel__metrics > * {
    flex: 1 1 15rem;
}

.sw-debugPanel__metric,
.sw-debugPanel__template,
.sw-debugPanel__section {
    min-width: 0;
    border: 1px solid #dfe6e2;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(34, 43, 53, .04);
}

.sw-debugPanel__metric {
    display: flex;
    flex-direction: column;
    gap: .2rem;
    padding: 1rem 1.1rem;
}

.sw-debugPanel small,
.sw-debugPanel__list dt {
    color: #66727d;
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: .04em;
    line-height: 1.2;
    text-transform: uppercase;
}

.sw-debugPanel__metric strong {
    color: #1f2a37;
    font-size: 1.8rem;
    font-weight: 900;
    line-height: 1.15;
}

.sw-debugPanel__metric span {
    color: #596571;
    font-size: 1.2rem;
}

.sw-debugPanel__template {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.1rem;
}

.sw-debugPanel__template small {
    flex: 0 0 auto;
}

.sw-modal__content .sw-debugPanel__code {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    padding: .7rem .9rem;
    font-size: 1.25rem;
    line-height: 1.4;
    white-space: nowrap;
    overflow-x: auto;
    overflow-wrap: normal;
}

.sw-debugPanel__section {
    overflow: hidden;
}

.sw-debugPanel__section summary {
    padding: 1rem 1.2rem;
    border-bottom: 1px solid #dfe6e2;
    background: #fbfdfc;
    color: #253142;
    font-weight: 900;
    cursor: pointer;
}

.sw-debugPanel__section:not([open]) summary {
    border-bottom: 0;
}

.sw-debugPanel__section pre {
    margin: 1.2rem;
}

.sw-debugPanel__tableWrap {
    overflow-x: auto;
}

.sw-debugPanel__table {
    min-width: 78rem;
    table-layout: fixed;
}

.sw-debugPanel__table th,
.sw-debugPanel__table td {
    padding: .85rem 1rem;
    border-bottom: 1px solid #edf0f3;
    color: #34404b;
    text-align: left;
    vertical-align: top;
}

.sw-debugPanel__table thead th {
    background: #f6f8f7;
    color: #66727d;
    font-size: 1.15rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.sw-debugPanel__table tbody th {
    width: 16rem;
    color: #253142;
    font-weight: 800;
}

.sw-debugPanel__table tr:last-child th,
.sw-debugPanel__table tr:last-child td {
    border-bottom: 0;
}

.sw-debugPanel__table--queryVars {
    min-width: 64rem;
}

.sw-debugPanel__table--queryVars tbody th {
    width: 20rem;
}

.sw-debugPanel__value {
    font-family: Consolas, Monaco, monospace;
    overflow-wrap: anywhere;
}

.sw-debugPanel__list {
    margin: 0;
}

.sw-debugPanel__list > div {
    display: flex;
    gap: 1rem;
    padding: .9rem 1.2rem;
    border-bottom: 1px solid #edf0f3;
}

.sw-debugPanel__list dt {
    flex: 0 0 16rem;
}

.sw-debugPanel__list dd {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
}

.sw-debugPanel__list > div:last-child {
    border-bottom: 0;
}

@media all and (max-width: 720px) {
    .sw-debugPanel {
        padding: 1rem;
        font-size: 1.25rem;
    }

    .sw-debugPanel__template {
        align-items: stretch;
    }

    .sw-debugPanel__template,
    .sw-debugPanel__list > div {
        flex-direction: column;
    }

    .sw-debugPanel__list dt {
        flex-basis: auto;
    }

    .sw-debugPanel__table {
        min-width: 68rem;
    }
}

.sw-xswipe-fullscreen-open, .sw-xswipe-fullscreen-open body, .sw-singleIntro__main, .sw-mapIsOpen, body.sw-mobileMenuOpen {
    overflow: hidden;
}

.sw-cookieBanner {
    position: relative;
    display: flex;
    flex-flow: column;
    margin: auto;
    border-radius: 3px;
    max-width: 130rem;
    width: 100%;
    color: #f5f5f5;
    background: var(--sw-color-brand);
    overflow: hidden;
}

.sw-cookieBanner__notice {
    padding: 1em;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
}

.sw-cookieBanner__actions {
    position: relative;
    display: flex;
    width: 100%;
    bottom: 0;
    padding: 1em;
    right: 0;
    background: var(--sw-color-white);
    color: #464646;
    justify-content: flex-end;
    gap: 10px;
}

.sw-cookieBanner__overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #acacac87;
    z-index: 10000;
}

.sw-cookieBanner__wrapper {
    position: absolute;
    display: flex;
    flex-flow: column;
    inset-inline: 0 0;
    width: 100%;
    bottom: 0;
    max-height: 100%;
    overflow: hidden;
    z-index: 1;
    animation: anim-zoomIn 350ms;
}

.sw-vpageFaq__group .sw-vpageSection__title {
    margin-bottom: 1.6rem;
}

.sw-lead {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 10000;
    display: flex;
    flex-flow: row;
    background: var(--sw-color-white);
    width: 100%;
}

.sw-lead--button {
    display: block;
    flex: 1 1 50%;
    font-size: 18px;
    font-weight: 700;
    line-height: 20px;
    text-decoration: none;
    height: 44px;
    border: none;
    background-color: var(--sw-color-accent);
    color: var(--sw-color-white);
    padding: 12px;
    cursor: pointer;
    text-align: center;
    border-radius: 0;
    overflow: hidden;
}

.sw-lead--button:first-child {
    border-right: solid 2px var(--sw-color-white);
}

.sw-sbar--qualityAgent {
    display: block;
    padding: 16px 0;
    width: 100%;
}

.sw-sbar--agency {
    display: flex;
    flex-flow: column wrap;
    align-items: flex-start;
    justify-content: space-evenly;
    max-width: 96%;
    padding: .5rem 0;
    margin: auto;
    width: 100%;
}

.sw-sbar--image {
    max-height: 120px;
    max-width: 250px;
    object-fit: contain;
    border-radius: 3px;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, .6);
}

.sw-qualityAgent--image {
    width: 100px;
    aspect-ratio: 1;
    display: block;
    padding: 2px;
    background: #c7c7c7;
    border-radius: 50%;
    user-select: none;
    overflow: hidden;
}

.sw-qualityAgent--info {
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-start;
}

.sw-qualityAgent--info_item {
    font-size: 14px;
    line-height: 24px;
    border-bottom: 1px solid #ddd;
    display: -webkit-box;
    width: 100%;
}

.sw-singleContact {
    border: 1px solid #e2e5e9;
    border-radius: 8px;
    box-shadow: 0 8px 22px rgba(36, 45, 55, .05);
    text-align: left;
    overflow: hidden;
}

.sw-singlePage.sw-noMargin {
    margin-top: 1rem !important;
}

.sw-singleContact .sw-sidebar__title {
    height: 5.4rem;
    line-height: 5.4rem;
    padding: 0 2.2rem;
    background: linear-gradient(90deg, #174d2d, var(--sw-color-brand));
    font-size: 1.55rem;
}

.sw-singleContact__agent {
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 1.4rem;
    width: 100%;
}

.sw-singleContact .sw-sbar--qualityAgent {
    padding: 1.45rem 1.8rem;
}

.sw-singleContact .sw-qualityAgent--image {
    width: 8rem;
    aspect-ratio: 1;
    flex: 0 0 8rem;
    padding: 0;
    border: 1px solid #e0e4e8;
    background: #f1f3f5;
    box-shadow: 0 4px 12px rgba(30, 37, 45, .12);
    object-fit: cover;
}

.sw-singleContact .sw-qualityAgent--info_item {
    display: block;
    width: auto;
    border: 0;
    color: #65707c;
    font-size: 1.35rem;
    line-height: 1.35;
}

.sw-singleContact .sw-qualityAgent--info_item:first-child {
    color: #3f4751;
    font-size: 1.55rem;
}

.sw-singleContact .sw-sbar--agency {
    max-width: none;
    padding: 1.6rem 1.8rem 1.7rem;
    border-top: 1px solid #dce1e6;
    text-align: left;
    width: 100%;
}

.sw-singleContact .sw-sbar--image {
    max-width: none;
    height: 7rem;
    max-height: none;
    padding: .75rem;
    border: 1px solid #e2e7ec;
    border-radius: 6px;
    background: #fafbfc;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75);
    width: 100%;
}

.sw-singleAgency__body {
    gap: .75rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}

.sw-singleAgency__name {
    color: #303841;
    font-size: 1.56rem;
    font-weight: 800;
    line-height: 1.12;
    text-transform: uppercase;
    overflow-wrap: break-word;
    min-width: 0;
}

.sw-singleAgency__address {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: .65rem;
    color: #6b737d;
    font-size: 1.34rem;
    line-height: 1.32;
    text-align: left;
}

.sw-singleAgency__address .sw-icon {
    flex: 0 0 1.55rem;
    width: 1.55rem;
    aspect-ratio: 1;
    margin-top: .08rem;
    color: var(--sw-color-brand);
}

.sw-singleAgency__link {
    gap: .5rem;
    width: max-content;
    max-width: 100%;
    color: var(--sw-color-brand);
    font-size: 1.34rem;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.sw-singleAgency__link .sw-icon {
    flex: 0 0 1.4rem;
    width: 1.4rem;
    aspect-ratio: 1;
}

.sw-singleContact .sw-separator {
    display: block;
    width: calc(100% - 4rem);
    height: 1px;
    margin: 0 auto;
    background: #dce1e6;
}

.sw-singleContact actions.sw-margin {
    --sw-actionBar-gap: 1rem;
    --sw-actionButton-flex: 1 1 calc(50% - .5rem);
    padding: 1.5rem 1.8rem 1.7rem;
}

.sw-singleContact .sw-contactButton {
    height: 4.6rem;
    line-height: 1;
    border-radius: 4px;
    font-size: 1.45rem;
    --sw-actionButton-gap: .7rem;
}

.sw-cardEntity__section--full, .sw-contactForm input[name="phone"], .sw-contactForm__message, .sw-contactForm__author, .sw-profileEditField--full, .sw-vpageInfoDynamicForm__full, .sw-accountRow__label {
    grid-column: 1 / -1;
}

.sw-singleContact .sw-contactButton .sw-icon, .sw-articleActions .sw-icon {
    width: 1.8rem;
    aspect-ratio: 1;
}

.sw-adminDebug {
    padding: 1.4rem 2rem;
    border-top: 1px solid #e1e5e9;
    background: #fafbfc;
}

.sw-adminDebug__button {
    max-width: none;
    justify-content: center;
    background: #eef2f5;
    color: #3f4751;
    border: 1px solid #d7dee5;
    font-weight: 800;
    width: 100%;
}

.sw-adminDebug__button:hover {
    background: #e3e9ee;
}

.sw-singleContact .sw-action-button--compact {
    flex-direction: column;
    gap: .7rem;
    max-width: none;
    min-height: 7.2rem;
    padding: 1rem .5rem;
    border: 0;
    border-right: 1px solid #e1e5e9;
    border-radius: 0;
    background: transparent;
    color: #515b66;
    font-size: 1.15rem;
    line-height: 1.2;
    text-transform: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
}

.sw-singleContact .sw-action-button--compact .sw-icon, .sw-localSeo__icon .sw-icon {
    width: 2rem;
    aspect-ratio: 1;
}

.sw-singleContact .sw-action-button--compact:hover {
    background: #e7ebef;
    color: #2f3944;
}

.sw-singleContact .sw-action-button--compact.sw-is-bookmarked {
    color: #c12400;
    background: #fff5f2;
}

.sw-singleContact .sw-action-button--compact.sw-is-bookmarked:hover {
    color: #a81f00;
    background: #ffe9e2;
}

.sw-loader {
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(28, 28, 28, .6);
    animation: fade-in 400ms ease-in;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.sw-modal > .sw-loader {
    inset: 0;
    height: auto;
    z-index: 20;
    border-radius: inherit;
}

.sw-spinner {
    width: 50px;
    aspect-ratio: 1;
    border: 4px solid transparent;
    border-top: 4px solid var(--sw-color-white);
    border-radius: 50%;
    animation: anim-spinning 800ms cubic-bezier(.51, .51, .34, 1) infinite;
    position: relative;
}

.sw-justify {
    justify-content: space-around;
    text-align: justify;
    word-break: keep-all;
}

.sw-justify-evenly {
    justify-content: space-evenly;
}

.sw-justify-start, .sw-managePostsPage .sw-article__options {
    justify-content: flex-start;
}

.sw-align-left.sw-align-left {
    text-align: left;
    text-align-last: left;
}

.sw-align-end.sw-align-end {
    vertical-align: bottom;
    align-self: end;
}

.sw-underline {
    padding-bottom: 2px;
    border-bottom: 2px solid #838383;
}

.sw-shadowBorder {
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, .75);
}

.sw-sticky {
    position: sticky;
    z-index: 2;
}

.sw-noGap {
    gap: 0;
}

.sw-margin {
    margin: 1em auto;
}

.sw-notScrollable {
    flex-shrink: 1;
    overflow-y: hidden;
}

.sw-managePostsPage > .sw-jelly__bar {
    margin-bottom: 2rem;
}

.sw-managePostsPage > hr,
.sw-myPostsPage > br,
.sw-myPostsPage > hr {
    display: none;
}

.sw-gap10 {
    gap: 10px;
}

@keyframes anim-messageEnter {
    0% {
        opacity: 0;
    }
}

@keyframes anim-messageExit {
    100% {
        opacity: 0;
    }
}

@keyframes anim-spinning {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes sw-imageLoading {
    0% {
        background-position: 120% 0;
    }
    100% {
        background-position: -120% 0;
    }
}

@keyframes anim-zoomIn {
    0% {
        transform: scale(.85, .85);
    }
    75% {
        transform: scale(1.03, 1.03);
    }
    100% {
        transform: scale(1, 1);
    }
}

@keyframes fade-in {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes sw-GeoMap-pulse {
    0% {
        transform: translate(-50%, -50%) scale(.8);
        opacity: .95;
    }
    70%, 100% {
        transform: translate(-50%, -50%) scale(1.18);
        opacity: 0;
    }
}

@keyframes anim-check {
    50% {
        transform: scale(1.2);
    }
}

@keyframes anim-checkMark {
    0% {
        width: 0;
        height: 0;
    }
    20% {
        width: .6rem;
        height: 0;
    }
    40%, to {
        width: .6rem;
        height: 1rem;
    }
}

.sw-pageIntro, .sw-emptyPanel, .sw-cardEntity {
    border: 1px solid #e5e7ea;
}

.sw-metaLabel {
    display: inline-block;
    margin-bottom: .5rem;
    color: #7b8086;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.sw-statusPill {
    min-height: 3rem;
    padding: .4rem 1rem;
    border: 1px solid #d8dde3;
    border-radius: 999px;
    background: #f5f6f7;
    color: #39424c;
    font-size: 1.25rem;
    font-weight: 700;
    white-space: nowrap;
}

.sw-textSoft {
    color: #68717a;
}

.sw-pageIntro {
    justify-content: space-between;
    gap: 1.4rem;
    padding: 1.4rem 1.8rem;
    margin-bottom: 1.2rem;
    display: flex;
    align-items: center;
}

.sw-pageIntro .sw-relatedLink__title {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 3rem;
    line-height: 1.1;
}

.sw-emptyPanel {
    padding: 1.4rem 1.8rem;
}

.sw-cardEntity {
    margin: 0 0 1rem;
    padding: 1.4rem;
    border-radius: 6px;
    background: var(--sw-color-white);
    box-shadow: 0 10px 24px rgba(34, 43, 53, .05);
}

.sw-cardEntity__head, .sw-cardEntity__foot {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.sw-cardEntity__foot {
    align-items: center;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #eceff2;
}

.sw-cardEntity__title {
    margin: 0;
    color: #2f3944;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.2;
}

.sw-cardEntity__actions, .sw-chipGroup {
    display: flex;
    flex-wrap: wrap;
}

.sw-cardEntity__actions .sw-button {
    margin: 0;
    min-height: 3rem;
    padding: .35rem 1rem;
    font-size: 1.35rem;
}

.sw-cardEntity__grid {
    grid-template-columns: 1.1fr .9fr;
    gap: .9rem;
    margin-top: 1rem;
    display: grid;
}

.sw-cardEntity__section {
    padding: .95rem 1.1rem;
    border: 1px solid #e4e7eb;
    border-radius: 5px;
    background: linear-gradient(180deg, #fcfcfd, #f6f7f8);
}

.sw-serviceReviewForm__head p, .sw-cardEntity__text, .sw-cardEntity__meta, .sw-servicePrivacyNote p {
    margin: 0;
    line-height: 1.45;
}

.sw-cardEntity__text {
    color: #39424c;
}

.sw-cardEntity__meta {
    font-size: 1.35rem;
}

.sw-chipGroup {
    gap: .5rem;
}

.sw-chipGroup .sw-list__item--wrapped {
    min-height: 2.8rem;
    margin: 0;
    padding: .2rem .9rem;
    border: 1px solid #dfe4e8;
    border-radius: 999px;
    background: var(--sw-color-white);
    color: #4d5965;
    font-size: 1.3rem;
    display: inline-flex;
    align-items: center;
}

.sw-container:has(.sw-reservedProfilePage), .sw-page:has(.sw-reservedProfilePage) {
    max-width: 1800px;
    width: 100%;
    overflow: visible;
}

.sw-reservedProfilePage {
    --sw-page-max: var(--sw-reserved-wide-max);
    gap: 1.4rem;
    display: flex;
    flex-direction: column;
}

.sw-agencyManagePage, .sw-managePostsPage, .sw-teamManagerPage {
    --sw-page-max: var(--sw-reserved-wide-max);
}

.sw-panelSurface, .sw-serviceEmptyHero, .sw-serviceActionCard, .sw-accountActionCard, .sw-serviceStats, .sw-services__item, .sw-cservicesCard {
    border: 1px solid var(--sw-panel-border);
    border-radius: var(--sw-panel-radius);
    background: var(--sw-color-white);
    box-shadow: var(--sw-panel-shadow);
}

.sw-reservedHeader {
    border-top: 4px solid var(--sw-color-brand);
    margin-bottom: 1.6rem;
    padding: 2.2rem 2.4rem;
}

.sw-authorSummary .sw-statusPill, .sw-reservedHeader .sw-statusPill, .sw-reservedSearchCard .sw-cardEntity__actions .sw-statusPill {
    border-color: rgba(27, 76, 44, .18);
    background: rgba(27, 76, 44, .06);
    color: var(--sw-color-brand);
}

.sw-reservedSearchCard, .sw-profileEditPanel, .sw-savedListCard {
    padding: 2rem;
}

.sw-reservedSearchCard.sw-savedListCard {
    padding: 1.2rem 1.4rem;
}

.sw-reservedSearchCard .sw-cardEntity__head {
    align-items: center;
    padding-bottom: 1.4rem;
    border-bottom: 1px solid #edf0f2;
}

.sw-reservedSearchCard .sw-cardEntity__title {
    font-size: 2.2rem;
}

.sw-reservedSearchCard .sw-cardEntity__grid {
    gap: 1rem;
    margin-top: 1.4rem;
}

.sw-reservedSearchCard__section {
    padding: 1.2rem 1.3rem;
    background: #f7f8f7;
}

.sw-reservedProfileCard {
    padding: 2.4rem;
}

.sw-reservedProfileActions, .sw-reservedProfileActions .sw-flex {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sw-reservedProfileActions {
    padding: 1.2rem;
    gap: 1.2rem;
}

.sw-reservedSearchCard .casab-remove-search, .sw-reservedProfileActions .sw-button, .sw-managePostsPage .sw-article__options .sw-button {
    gap: .45rem;
    max-width: none;
    margin: 0;
    line-height: 1;
}

.sw-reservedSearchCard .casab-remove-search {
    width: auto;
    min-width: 8.8rem;
    height: 3rem;
    min-height: 3rem;
    padding: 0 .95rem;
}

.sw-reservedProfileActions .sw-button {
    min-height: 4.2rem;
    padding: 0 1.4rem;
    white-space: nowrap;
    width: 100%;
    min-width: 0;
}

.sw-reservedSearchCard .casab-remove-search .sw-icon, .sw-reservedProfileActions .sw-button .sw-icon, .sw-managePostsPage .sw-article__options .sw-button .sw-icon {
    margin: 0;
    font-size: 1.45rem;
}

.sw-serviceDashboard, .sw-profileEditPage, .sw-personalExportPage, .sw-savedListPage {
    --sw-page-max: var(--sw-reserved-max);
}

.sw-iconBubble {
    border-radius: 50%;
    background: rgba(27, 76, 44, .1);
    color: var(--sw-color-brand);
}

.sw-serviceEmptyHero__art {
    width: 7.4rem;
    aspect-ratio: 1;
    font-size: 3.2rem;
}

.sw-serviceEmptyHero__title {
    margin: 0 0 1rem;
    color: #253142;
    font-size: 2.8rem;
    font-weight: 900;
}

.sw-serviceEmptyHero__cta {
    gap: .7rem;
    min-height: 4.8rem;
    margin: 2rem 0 0;
    padding: 0 1.8rem;
    border-radius: 6px;
    font-weight: 900;
}

.sw-serviceEmptyActions {
    margin-top: 2.2rem;
}

.sw-serviceEmptyActions h2 {
    margin: 0 0 1.2rem;
    color: #2f3944;
    font-size: 1.55rem;
    font-weight: 900;
}

.sw-profileEditForm, .sw-savedListPage {
    gap: 1.6rem;
    display: grid;
}

.sw-serviceEmptyActions__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem;
}

.sw-serviceEmptyActions__grid > * {
    flex: 1 1 22rem;
    min-width: 0;
}

.sw-serviceActionCard:hover {
    border-color: rgba(27, 76, 44, .22);
    box-shadow: 0 14px 30px rgba(34, 43, 53, .08);
}

.sw-serviceActionCard__icon {
    width: 5.2rem;
    aspect-ratio: 1;
    font-size: 2.4rem;
}

.sw-serviceActionCard:nth-child(2) .sw-serviceActionCard__icon {
    background: rgba(245, 130, 47, .12);
    color: #f5822f;
}

.sw-serviceActionCard__body, .sw-profileEditField {
    gap: .65rem;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sw-serviceActionCard__body strong {
    color: #2f3944;
    font-size: 1.45rem;
    font-weight: 900;
}

.sw-serviceActionCard__body span {
    color: #5f6a75;
    font-size: 1.32rem;
    line-height: 1.45;
}

.sw-serviceActionCard__body b {
    gap: .45rem;
    margin-top: .4rem;
    color: var(--sw-color-brand);
    font-size: 1.25rem;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
}

.sw-serviceActionCard:nth-child(2) .sw-serviceActionCard__body b {
    color: #d96616;
}

.sw-servicePrivacyNote .sw-iconBubble {
    width: 4.4rem;
    aspect-ratio: 1;
    font-size: 2.2rem;
}

.sw-servicePrivacyNote strong {
    color: #2f3944;
}

.sw-servicePrivacyNote a {
    gap: .45rem;
    color: var(--sw-color-brand);
    font-weight: 900;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
}

.sw-accountProfilePage {
    --sw-page-max: 1452px;
    gap: 1.4rem;
}

.sw-accountProfilePage .sw-accountAvatar--agency, .sw-accountProfilePage .sw-logo.sw-accountAvatar--agency {
    --sw-avatar-width: 17.6rem;
    --sw-avatar-height: 10.8rem;
    margin-top: 1.8rem;
    padding: 1.6rem;
    overflow: visible;
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #f8fbf9);
    box-shadow: 0 7px 16px rgba(34, 43, 53, .06);
}

.sw-accountProfilePage .sw-accountAvatar .sw-image {
    display: block;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
    width: 100%;
}

.sw-accountProfilePage .sw-accountAvatar .sw-image--contain {
    object-fit: contain;
    object-position: center;
}

.sw-accountProfilePage .sw-accountAvatar .arv-uploadButton {
    position: absolute;
    inset: auto -.2rem -.2rem auto;
    width: 4.4rem;
    height: 4.4rem;
    min-height: 0;
    aspect-ratio: 1;
    border: .3rem solid var(--sw-color-white);
    border-radius: 50%;
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
    opacity: 1;
    z-index: 3;
    cursor: pointer;
    box-shadow: 0 5px 12px rgba(27, 76, 44, .18);
    transition: background-color .18s ease, box-shadow .18s ease;
}

.sw-accountProfilePage .sw-accountAvatar .arv-uploadButton:hover {
    background: #216b3a;
    box-shadow: 0 6px 14px rgba(27, 76, 44, .20);
}

.sw-accountProfilePage .sw-accountAvatar .arv-uploadButton .sw-icon {
    margin: 0;
    font-size: 1.9rem;
}

.sw-accountHero__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.6rem;
}

.sw-accountHero__head p {
    margin: .5rem 0 0;
    color: #6a7480;
    font-size: 1.4rem;
}

.sw-accountProfilePage .sw-statusPill {
    gap: .45rem;
    min-height: 2.8rem;
    padding: .3rem .9rem;
    border: 0;
    border-radius: 999px;
    background: #dcefe4;
    color: var(--sw-color-brand);
    font-size: 1.15rem;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
}

.sw-accountRows, .sw-vpageLegalIndex nav {
    display: grid;
}

.sw-accountRow__label {
    gap: 1rem;
    color: #5f6a75;
    font-size: 1.35rem;
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.sw-accountRow__label .sw-icon {
    flex: 0 0 2.4rem;
    width: 2.4rem;
    text-align: center;
    color: #4f5d68;
    font-size: 1.75rem;
}

.sw-accountProtectCard .sw-iconBubble, .sw-accountSubscription .sw-iconBubble, .sw-accountDeleteCard .sw-iconBubble {
    width: 4.8rem;
    aspect-ratio: 1;
    font-size: 2.4rem;
}

.sw-accountProtectCard strong, .sw-accountSubscription__title, .sw-accountDeleteCard strong, .sw-accountActionCard strong {
    color: #253142;
    font-weight: 900;
}

.sw-accountProtectCard p, .sw-accountSubscription p, .sw-accountDeleteCard p, .sw-accountActionCard small {
    margin: .55rem 0 0;
    color: #5f6a75;
    font-size: 1.3rem;
    line-height: 1.45;
}

.sw-accountProtectCard .sw-button {
    gap: .6rem;
    width: auto;
    max-width: max-content;
    min-height: 4.2rem;
    margin: .8rem 0 0;
    padding: 0 1.6rem;
    border-radius: 6px;
    font-weight: 900;
}

.sw-accountSubscription {
    grid-template-columns: auto 1fr auto;
    gap: 1.6rem;
    padding: 2.4rem;
}

.sw-accountSubscription__title {
    margin-right: 1rem;
    font-size: 1.85rem;
}

.sw-accountSubscription__rows {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem 1.6rem;
    margin-top: .8rem;
}

.sw-accountSubscription__rows span {
    color: #5f6a75;
    font-size: 1.3rem;
}

.sw-accountSubscription__rows b {
    margin-right: .45rem;
    color: #253142;
}

.sw-accountSubscription > a {
    gap: .45rem;
    min-height: 4rem;
    padding: 0 1.5rem;
    border: 1px solid rgba(27, 76, 44, .32);
    border-radius: 6px;
    color: var(--sw-color-brand);
    font-weight: 900;
    white-space: nowrap;
}

.sw-accountManagePanel {
    grid-template-columns: minmax(24rem, .32fr) 1fr;
    gap: 2.6rem;
    padding: 2rem;
    display: grid;
}

.sw-accountDeleteCard {
    grid-template-columns: auto 1fr;
    align-content: start;
    gap: 1.2rem;
    padding: 2rem;
    border: 1px solid #ffd2d2;
    border-radius: 8px;
    background: #fff1f1;
    display: grid;
}

.sw-accountDeleteCard .sw-iconBubble {
    background: rgba(220, 48, 48, .1);
    color: #d72512;
}

.sw-accountDeleteCard .sw-button {
    grid-column: 1 / -1;
    width: auto;
    max-width: max-content;
    min-height: 4.1rem;
    margin: 1rem 0 0;
    padding: 0 1.5rem;
    border-radius: 6px;
    font-weight: 900;
}

.sw-accountManagePanel__content h2 {
    margin: 0 0 1.4rem;
    color: #253142;
    font-size: 1.7rem;
    font-weight: 900;
}

.sw-accountActionGrid {
    display: flex;
    flex-wrap: wrap;
    gap: 1.4rem;
}

.sw-accountActionCard {
    --sw-panel-border: #e2e7e4;
    --sw-panel-shadow: none;
    display: flex;
    align-items: center;
    flex: 1 1 19rem;
    gap: 1.3rem;
    min-height: 9.6rem;
    padding: 1.8rem;
    color: #253142;
}

.sw-accountActionCard:hover {
    border-color: rgba(27, 76, 44, .28);
    box-shadow: 0 12px 24px rgba(34, 43, 53, .07);
}

.sw-accountActionCard > .sw-icon:first-child {
    color: #3f4852;
    font-size: 2.1rem;
}

.sw-accountActionCard > .sw-icon:last-child {
    color: var(--sw-color-brand);
    font-size: 1.35rem;
}

.sw-accountActionCard span, .sw-teamField {
    gap: .45rem;
    display: grid;
    min-width: 0;
}

.sw-archiveFreeSearch .sw-input, .sw-accountActionCard small {
    margin: 0;
}

.sw-profileEditHero .sw-accountProtectCard .sw-button {
    border: 1px solid rgba(27, 76, 44, .22);
    background: var(--sw-color-white);
    color: var(--sw-color-brand);
}

.sw-profileEditHero__text {
    max-width: 68rem;
    margin: 1.2rem 0 0;
    color: #566370;
    font-size: 1.45rem;
    line-height: 1.55;
}

.sw-profileEditNotice {
    padding: 1.3rem 1.6rem;
    border: 1px solid #d8e5dd;
    border-radius: 8px;
    background: #eef7f1;
    color: var(--sw-color-brand);
    font-size: 1.4rem;
    font-weight: 800;
}

.sw-profileEditPanel, .sw-profileEditActions {
    --sw-panel-shadow: 0 12px 26px rgba(34, 43, 53, .05);
}

.sw-profileEditPanel__head {
    grid-template-columns: auto 1fr;
    align-items: start;
    gap: 1.2rem;
    margin-bottom: 1.8rem;
    display: grid;
}

.sw-profileEditPanel__head > .sw-icon {
    width: 4.4rem;
    aspect-ratio: 1;
    padding: 1.1rem;
    border-radius: 50%;
    background: rgba(27, 76, 44, .08);
    color: var(--sw-color-brand);
}

.sw-profileEditPanel__head h2 {
    margin: 0;
    color: #253142;
    font-size: 1.9rem;
    font-weight: 900;
}

.sw-profileEditPanel__head p {
    margin: .45rem 0 0;
    color: #66727d;
    font-size: 1.35rem;
    line-height: 1.45;
}

.sw-profileEditGrid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.4rem 1.6rem;
    display: grid;
}

.sw-profileEditField > span:first-child {
    color: #3f4c58;
    font-size: 1.22rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.sw-profileEditCoordinates {
    grid-template-columns: repeat(2, 1fr);
    gap: .8rem;
    display: grid;
}

.sw-profileEditActions .sw-button {
    gap: .6rem;
    width: auto;
    min-width: 16.8rem;
    max-width: none;
    height: auto;
    min-height: 5rem;
    padding: 0 1.8rem;
    overflow: visible;
    line-height: 1.2;
    white-space: nowrap;
}

.sw-profileEditActions .sw-button .sw-icon {
    width: 1.6rem;
    aspect-ratio: 1;
    margin: 0;
}

.sw-profileEditActions .sw-button span {
    display: inline-block;
}

.sw-savedListHero, .sw-savedListCard, .sw-savedListEmpty {
    --sw-panel-border: #e2e7e4;
    --sw-panel-shadow: 0 14px 30px rgba(34, 43, 53, .06);
}

.sw-savedListHero--noCta {
    background: linear-gradient(135deg, #fff, #f8fbf9);
}

.sw-pagination__arrow--next, .sw-savedListHero--noCta .sw-savedListHero__stat {
    justify-self: end;
}

.sw-savedListHero--empty {
    padding-block: 2.7rem;
}

.sw-savedListHero .sw-iconBubble, .sw-savedListCard .sw-iconBubble, .sw-savedListEmpty .sw-iconBubble {
    width: 4.4rem;
    aspect-ratio: 1;
    background: rgba(27, 76, 44, .09);
    font-size: 2.05rem;
}

.sw-reservedHeader .sw-relatedLink__title, .sw-savedListHero .sw-relatedLink__title {
    font-size: 2.8rem;
}

.sw-savedListHero p {
    max-width: 61rem;
    margin-top: .6rem;
    font-size: 1.45rem;
    line-height: 1.55;
}

.sw-savedListHero__stat {
    gap: 1rem;
    padding: 1.2rem 1.4rem;
    border-radius: 6px;
    background: #f1f7f4;
    color: var(--sw-color-brand);
    display: flex;
    align-items: center;
}

.sw-savedListHero__actions {
    display: grid;
    gap: .9rem;
    width: 100%;
}

.sw-savedListHero__stat span {
    gap: .3rem;
    display: grid;
}

.sw-savedListHero__stat strong {
    color: var(--sw-color-brand);
    font-size: 1.35rem;
    font-weight: 900;
}

.sw-savedListHero__stat small {
    color: #5f6a75;
    font-size: 1.2rem;
}

.sw-savedListHero__cta, .sw-savedListEmpty .sw-button {
    gap: .6rem;
    width: 100%;
    max-width: none;
    min-height: 4.4rem;
    margin: 0;
    padding: 0 1.5rem;
    border-radius: 6px;
    font-weight: 900;
    white-space: nowrap;
}

.sw-savedListTitle {
    margin: 0;
    color: #253142;
    font-size: 1.8rem;
    font-weight: 900;
}

.sw-savedListEmpty h2 {
    margin: .4rem 0 0;
    color: #253142;
    font-size: 2.3rem;
    font-weight: 900;
}

.sw-savedListEmpty p {
    max-width: 56rem;
    margin: 0;
    color: #5f6a75;
    font-size: 1.45rem;
    line-height: 1.55;
}

.sw-savedListEmpty .sw-button {
    margin-top: .9rem;
}

.sw-savedListCard .sw-cardEntity__title {
    margin-top: .2rem;
    font-size: 1.9rem;
    font-weight: 900;
}

.sw-savedListCard .sw-statusPill {
    gap: .4rem;
    min-height: 2.9rem;
    padding: .25rem .85rem;
    border: 0;
    background: #e9f5ee;
    font-size: 1.2rem;
}

.sw-savedListCard__status {
    margin-bottom: .5rem;
    width: fit-content;
    color: var(--sw-color-brand);
}

.sw-cardEntity__actions .sw-button.sw-BG__Red {
    min-width: 0;
    height: 2.9rem;
    min-height: 2.9rem;
    padding: .25rem .9rem;
    border-radius: 6px;
    background-color: #c12400;
    color: var(--sw-color-white);
    font-size: 1.2rem;
    font-weight: 800;
    box-shadow: none;
}

.sw-savedListCard .sw-cardEntity__actions .sw-button.sw-BG__Red {
    min-width: 9.6rem;
}

.sw-cardEntity__actions .sw-button.sw-BG__Red:hover {
    background-color: #9f1f06;
    color: var(--sw-color-white);
    box-shadow: 0 2px 7px rgba(159, 31, 6, .18);
}

.sw-savedListCard .sw-reservedSearchCard__section {
    padding: 1rem 1.1rem;
    border: 1px solid #e6e9ec;
    border-radius: 6px;
    background: #fbfcfb;
}

.sw-savedPostsPage .sw-article {
    align-items: stretch;
}

.sw-serviceQuickActions .sw-button {
    width: 100%;
    max-width: none;
    min-height: 4.4rem;
    padding: 0 1.8rem;
    border-radius: 6px;
    font-weight: 900;
}

#breadcrumbs .wpfs-breadcrumb-item, .sw-singleIntro__heading, .sw-archiveHero__copy, .sw-archiveInsight__content, .sw-accountHero__main, .sw-localSeo__body, .sw-singleContact .sw-qualityAgent--info, .sw-archiveEmpty__content, .sw-agencySearchForm label, .sw-serviceQuickActions__content {
    min-width: 0;
}

.sw-serviceQuickActions__title {
    margin: .25rem 0 .35rem;
    color: #2f3944;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.2;
}

.sw-serviceQuickActions__content p {
    margin: 0;
    color: #5f6973;
    font-size: 1.4rem;
    line-height: 1.45;
}

.sw-managePostsPage > h1 {
    margin: 0 0 1.6rem;
    color: #2f3944;
    font-size: 2.6rem;
    font-weight: 700;
}

.sw-serviceStat {
    gap: .45rem;
    padding: 1.2rem 1rem;
    border: 1px solid #e4ebe7;
    border-radius: 7px;
    background: #f8faf9;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sw-serviceStat__label {
    color: #66736d;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.sw-serviceStat__value {
    color: var(--sw-color-brand);
    font-size: 2.8rem;
    font-weight: 900;
    line-height: 1;
}

.sw-managePostsPage .sw-article {
    align-items: stretch;
    border: 1px solid var(--sw-panel-border);
    background: var(--sw-color-white);
    box-shadow: var(--sw-panel-shadow);
}

.sw-managePostsPage .sw-article__content {
    align-self: stretch;
}

.sw-savedPostsPage .sw-article__content {
    padding: 1.8rem;
}

.sw-savedPostsPage .sw-article__info {
    margin: 1.6rem 0;
}

.sw-savedPostsPage .sw-article__options, .sw-managePostsPage .sw-article__options {
    margin-top: auto;
}

.sw-savedPostsPage .sw-article__author {
    width: 7rem;
    height: 4.2rem;
    align-items: center;
}

.sw-managePostsPage .sw-article__options {
    z-index: 10;
    gap: 1rem;
    display: flex;
    justify-content: stretch;
    align-items: stretch;
    width: 100%;
    height: auto;
    padding-top: 1.4rem;
    position: relative;
}

.sw-managePostsPage .sw-article__options .sw-action-button--compact {
    flex: 0 0 5.6rem;
    z-index: 5;
    min-width: 5.6rem;
    width: 5.6rem;
    padding: 0;
    overflow: visible;
    position: relative;
}

.sw-managePostsPage .sw-article__options .sw-action-button--compact .sw-dropdown {
    position: absolute;
    top: calc(100% + .8rem);
    right: 0;
    left: auto;
    z-index: 1000;
    width: max-content;
    min-width: 16rem;
    height: auto;
    margin: 0;
    padding: .8rem;
    overflow: visible;
}

.sw-managePostsPage .sw-article__options .sw-action-button--compact .sw-dropdown .sw-button {
    min-width: 13rem;
    justify-content: flex-start;
    width: 100%;
}

.sw-managePostsPage .sw-articleStats {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    padding-top: 1.4rem;
}

.sw-managePostsPage .sw-articleStats .sw-jelly__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    min-height: 5.6rem;
    padding: .75rem .8rem;
    border: 1px solid #dbe2dd;
    border-radius: 6px;
    background: linear-gradient(180deg, #fff, #fbfdfb);
    box-shadow: none;
    color: #253142;
    flex: 1 1 9.6rem;
    min-width: 9.6rem;
    text-align: center;
}

.sw-articleStats__label {
    color: #66736b;
    font-size: 1.28rem;
    font-weight: 700;
    line-height: 1.15;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sw-articleStats__value {
    color: var(--sw-color-brand);
    font-size: 1.42rem;
    font-weight: 900;
    line-height: 1.15;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.sw-myPostsHeader, .sw-vpageStep .sw-statusPill {
    margin-bottom: 1.2rem;
}

.sw-myPostsStats {
    margin: 0 0 2rem;
    width: 100%;
}

.sw-personalExportProgress {
    gap: 1.3rem;
    width: 100%;
    display: grid;
}

.sw-personalExportProgress__head {
    justify-content: space-between;
    gap: 1rem;
    color: #2f3944;
    font-size: 1.8rem;
    display: flex;
    align-items: center;
}

.sw-personalExportProgress__head strong {
    color: #102033;
}

.sw-personalExportProgress__head .js-export-percent {
    min-width: 4.8rem;
    color: var(--sw-color-brand);
    font-weight: 800;
    text-align: right;
}

.sw-personalExportProgress__bar {
    height: 1.2rem;
    border-radius: 999px;
    background: #e7ece8;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.sw-personalExportProgress__bar > span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: var(--sw-color-brand);
    transition: width .28s ease;
}

.sw-personalExportLoader {
    min-height: 4.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-personalExportLoader .sw-spinner {
    width: 3.4rem;
    aspect-ratio: 1;
    border-width: 3px;
    border-top-color: var(--sw-color-brand);
}

.sw-personalExportActions .sw-button {
    max-width: none;
    min-width: 14rem;
}

.sw-personalExportDownload {
    min-height: 4.4rem;
    padding-inline: 2.4rem;
}

.sw-personalExportCard.is-ready {
    border-top-color: var(--sw-color-brand);
    background: linear-gradient(135deg, rgba(27, 76, 44, .06), var(--sw-color-white) 42%, rgba(245, 130, 47, .05));
}

.sw-personalExportCard.is-ready .sw-personalExportProgress__bar {
    background: rgba(27, 76, 44, .12);
}

.sw-personalExportCard.is-error {
    border-top-color: #c72610;
    background: linear-gradient(135deg, rgba(199, 38, 16, .06), var(--sw-color-white) 48%);
}

.sw-personalExportCard.is-error .sw-personalExportProgress__head .js-export-percent {
    color: #c72610;
}

.sw-personalExportCard.is-error .sw-personalExportProgress__bar > span {
    background: #c72610;
}

.sw-personalExportCard.is-idle {
    border-top-color: var(--sw-color-accent);
}

.sw-teamGrid {
    gap: 1.4rem;
    display: flex;
    flex-wrap: wrap;
}

.sw-teamGrid > * {
    flex: 1 1 26rem;
    min-width: 0;
}

.sw-teamMemberCard {
    gap: 2rem;
    padding: 2rem;
    display: grid;
}

.sw-teamMemberCard__media {
    flex-direction: column;
    gap: 1.2rem;
    display: flex;
    align-items: center;
}

.sw-teamMemberCard .sw-logo {
    width: 12rem;
    aspect-ratio: 1;
    max-width: 12rem;
    margin: 0;
    border: 1px solid #e1e6e3;
    box-shadow: 0 10px 22px rgba(34, 43, 53, .12);
}

.sw-teamMemberCard .remove-team {
    gap: .45rem;
    min-width: 11rem;
    line-height: 1;
}

.sw-teamMemberCard__fields {
    gap: 1rem;
    display: grid;
    min-width: 0;
}

.sw-teamField > span {
    color: #6a7480;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.sw-teamEmpty {
    padding: 2.6rem;
    text-align: center;
}

.sw-teamEmpty h2 {
    margin: .6rem 0 .8rem;
    color: #2f3944;
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1.15;
}

.sw-teamManagerActions .sw-button {
    max-width: none;
    min-width: 12rem;
}

.sw-virtualPage {
    display: block;
    width: 100%;
    overflow: hidden;
}

.sw-vpage {
    --sw-vpage-panel-border: #d9e1dd;
    --sw-vpage-radius: 8px;
    display: block;
    background: var(--sw-color-white);
    width: 100%;
}

.sw-vpage .sw-pageStrip {
    padding: 3.6rem 0;
}

.sw-vpage .sw-pageStrip__content {
    max-width: var(--sw-wide-content-max);
    padding-inline: var(--sw-page-gutter-compact);
}

.sw-vpageHero.sw-pageStrip {
    display: flex;
    flex-direction: column;
    min-height: 32rem;
    padding-block: 5.6rem 0;
    color: var(--sw-color-white);
    background-color: var(--sw-color-brand);
    background-image: linear-gradient(90deg, rgba(27, 76, 44, .94), rgba(27, 76, 44, .88) 48%, rgba(27, 76, 44, .76)), url(../images/vpage-hero-pattern.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    overflow: hidden;
}

.sw-vpageHero::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, 0));
    pointer-events: none;
}

.sw-vpageHero__content, .sw-vpageHero__navigation {
    z-index: 1;
    position: relative;
}

.sw-vpageHero__navigation {
    margin: auto 0 0;
    color: var(--sw-color-white);
    background: rgba(20, 55, 32, .72);
    border-top: 0;
    backdrop-filter: none;
}

.sw-vpageHero__navigation:after {
    border-bottom-color: rgba(245, 130, 47, .22);
}

.sw-vpageHero__navigation > * {
    max-width: var(--sw-wide-content-max);
    gap: .8rem;
    padding-inline: var(--sw-page-gutter-compact);
}

.sw-vpageHero__navigation .sw-history-back, .sw-vpageHero__navigation .sw-navigation, .sw-vpageHero__navigation .wpfs-breadcrumb, .sw-vpageHero__navigation .wpfs-breadcrumb-item, .sw-vpageHero__navigation .wpfs-breadcrumb a {
    color: rgba(255, 255, 255, .88);
}

.sw-vpageHero__navigation .wpfs-breadcrumb-current {
    color: var(--sw-color-white);
    font-weight: 700;
}

.sw-vpageHero__navigation .sw-navigation {
    display: block;
    width: 100%;
}

.sw-vpageHero .sw-metaLabel {
    color: rgba(255, 255, 255, .78);
}

.sw-vpageHero__content.sw-pageStrip__content {
    max-width: 920px;
}

.sw-vpageHero__title, .sw-vpageSection__title, .sw-vpageCta__title, .sw-vpageInfoContact__title {
    margin: 0;
    font-weight: 800;
    line-height: 1.15;
}

.sw-vpageHero__title {
    max-width: 860px;
    color: var(--sw-color-white);
    font-size: 2.6rem;
}

.sw-vpageHero__text, .sw-vpageCta__text, .sw-vpageInfoContact__text {
    margin: 1rem 0 0;
    color: rgba(255, 255, 255, .82);
    font-size: 1.55rem;
    line-height: 1.6;
}

.sw-vpageHero__text {
    max-width: 760px;
    margin-top: 1.6rem;
    color: rgba(255, 255, 255, .88);
    font-weight: 500;
}

.sw-vpageSection__head {
    max-width: 780px;
    margin-bottom: 2.2rem;
}

.sw-vpageSection__title {
    color: #2f3944;
    font-size: 2.6rem;
}

.sw-vpageText {
    max-width: 900px;
    color: #46515c;
    font-size: 1.7rem;
    line-height: 1.72;
}

.sw-vpageText p, .sw-vpageDetail p {
    margin: 0 0 1.6rem;
}

.sw-vpageGrid, .sw-vpageSteps, .sw-vpageInfoIntro, .sw-vpageInfoFacts, .sw-vpageInfoLocation {
    gap: 1.8rem;
    display: grid;
}

.sw-vpageCard, .sw-vpageDetail, .sw-vpageStep {
    padding: 2rem;
    background: var(--sw-color-white);
}

.sw-vpageDetail {
    border-top: 3px solid var(--sw-color-brand);
}

.sw-vpageStep {
    padding-inline: 1.8rem;
    border-left: 4px solid var(--sw-color-accent);
}

.sw-vpageCard__title, .sw-vpageStep__title, .sw-vpageDetail__title {
    margin: 0;
    color: #2f3944;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.2;
}

.sw-vpageCard__text, .sw-vpageStep__text, .sw-vpageDetail p {
    color: #53616c;
    font-size: 1.5rem;
    line-height: 1.6;
}

.sw-vpageCard__text, .sw-vpageStep__text {
    margin: 1rem 0 0;
    line-height: 1.55;
}

.sw-vpageCard__link {
    display: inline-block;
    margin-top: 1.4rem;
    color: var(--sw-color-brand);
    font-weight: 700;
}

.sw-vpageCta, .sw-serviceCta {
    color: var(--sw-color-white);
    background-color: var(--sw-color-brand);
    background-image: linear-gradient(rgba(19, 77, 43, .92), rgba(19, 77, 43, .92)), url(../images/vpage-cta-pattern.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.sw-vpageCta .sw-metaLabel, .sw-vpageDarkPanel .sw-metaLabel {
    color: rgba(255, 255, 255, .72);
}

.sw-vpageCta__inner, .sw-vpageInfoContact, .sw-serviceCta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
}

.sw-vpageCta__title, .sw-vpageInfoContact__title {
    color: var(--sw-color-white);
    font-size: 2.6rem;
}

.sw-vpageCta__text {
    max-width: 720px;
    line-height: 1.55;
}

.sw-vpageCta__actions, .sw-serviceHero__actions {
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: flex-start;
    display: flex;
    align-items: center;
    width: 100%;
}

.sw-vpageCta__whatsapp {
    gap: .65rem;
    border: 1px solid rgba(255, 255, 255, .88);
    color: #155b33;
    background: var(--sw-color-white);
}

.sw-vpageCta__whatsapp:hover {
    color: #0f4a29;
    background: #eefaf2;
}

.sw-vpageCta__whatsapp .sw-icon, .sw-vpageCta .sw-button, .sw-serviceCta .sw-button {
    flex: 0 0 auto;
    max-width: none;
}

.sw-vpageTopics {
    gap: 2rem;
    align-items: start;
    display: grid;
}

.sw-vpageTopics__list, .sw-localSeo__links {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sw-vpageTopics__list a {
    min-height: 3.6rem;
    padding: .6rem 1.1rem;
    border: 1px solid #cfd8d3;
    border-radius: 999px;
    background: var(--sw-color-white);
    color: var(--sw-color-brand);
    font-size: 1.4rem;
    font-weight: 700;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.sw-vpageTopics__list a:hover {
    border-color: rgba(212, 111, 42, .45);
    color: #a84f1b;
}

.sw-logoGrid {
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem;
}

.sw-logoTile {
    display: flex;
    flex: 1 1 16rem;
    flex-direction: column;
    gap: 1.2rem;
    margin: 0;
    padding: 1.6rem;
    border: 1px solid var(--sw-vpage-panel-border);
    border-radius: var(--sw-vpage-radius);
    background: var(--sw-color-white);
    box-shadow: 0 10px 24px rgba(34, 43, 53, .045);
    text-align: center;
    min-width: 0;
}

.sw-logoTile__media {
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.sw-logoTile__media img {
    width: auto;
    max-width: min(100%, 18rem);
    max-height: 9rem;
    object-fit: contain;
}

.sw-logoTile__link {
    align-self: end;
    color: var(--sw-color-brand);
    font-size: 1.45rem;
    font-weight: 800;
    line-height: 1.25;
}

.sw-logoTile.is-disabled {
    opacity: .65;
}

.sw-vpageFaq__group {
    max-width: 980px;
    margin: 0 auto;
}

.sw-vpageFaq .sw-collapseContainer, .sw-singleIntro {
    padding: 0;
}

.sw-vpageFaq .sw-faq-item {
    border-bottom: 1px solid #d7ddd9;
}

.sw-vpageFaq .sw-collapse {
    min-height: 6rem;
    padding: 1.2rem 0;
    display: flex;
    align-items: center;
}

.sw-vpageFaq .sw-collapseTitle {
    width: auto;
    flex: 1 1 auto;
    padding-right: 2rem;
    color: var(--sw-color-brand);
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.35;
}

.sw-vpageFaq .sw-collapseIcon {
    top: 50%;
    line-height: 1;
    transform: translateY(-50%);
}

.sw-vpageFaq .sw-collapseIcon--close {
    transform: translateY(-50%) rotate(45deg);
}

.sw-vpageFaq .sw-collapseHidden p {
    max-width: 780px;
    margin: 0 0 1.6rem;
    color: #53616c;
    font-size: 1.5rem;
    line-height: 1.65;
}

.sw-vpageLegal {
    background: #f8faf9;
}

.sw-vpageLegal .sw-pageStrip {
    padding: 1.6rem 0;
}

.sw-vpageLegalChrome.sw-pageStrip {
    min-height: 5.4rem;
    padding: 0;
    border-bottom: 1px solid #e8eeeb;
    background: rgba(255, 255, 255, .92);
    display: flex;
    align-items: center;
}

.sw-vpageLegalBack, .sw-vpageLegalBreadcrumb, .sw-vpageLegalBreadcrumb a {
    gap: .6rem;
    color: #596674;
    font-size: 1.25rem;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
}

.sw-vpageLegal__content {
    gap: 2rem;
    display: grid;
}

.sw-nav-secondary {
    border: 1px solid var(--sw-vpage-panel-border);
    border-radius: var(--sw-vpage-radius);
    background: var(--sw-color-white);
    box-shadow: 0 10px 26px rgba(34, 43, 53, .04);
    width: 100%;
    overflow: hidden;
}

.sw-nav-secondary__link .sw-icon {
    flex: 0 0 auto;
    width: 1.8rem;
    aspect-ratio: 1;
    color: currentColor;
}

.sw-nav-secondary__icon {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.sw-nav-secondary__icon circle {
    fill: currentColor;
    stroke: none;
}

.sw-nav-secondary__link::after {
    content: '';
    position: absolute;
    right: 2.2rem;
    bottom: 0;
    left: 2.2rem;
    height: 2px;
    background: transparent;
}

.sw-nav-secondary__link:hover, .sw-nav-secondary__link.is-active {
    background: linear-gradient(180deg, rgba(27, 76, 44, .05), rgba(27, 76, 44, .02));
    color: var(--sw-color-brand);
}

.sw-nav-secondary__link.is-active::after {
    background: var(--sw-color-brand);
}

.sw-vpageLegalDoc {
    border: 1px solid var(--sw-vpage-panel-border);
    border-radius: var(--sw-vpage-radius);
    background: var(--sw-color-white);
    box-shadow: 0 14px 32px rgba(34, 43, 53, .045);
    color: #4f5d68;
    counter-reset: privacy-section;
    overflow: hidden;
}

.sw-vpageLegalDoc h2, .sw-vpageLegalDoc h3 {
    font-weight: 900;
    line-height: 1.25;
}

.sw-vpageLegalDoc h3 {
    margin: 2rem 0 .8rem;
    color: var(--sw-color-brand);
    font-size: 1.75rem;
}

.sw-vpageLegalDoc p {
    margin: 0 0 1.2rem;
}

.sw-vpageLegalDoc ul, .sw-vpageLegalDoc ol {
    gap: .8rem;
    margin: 1rem 0 1.6rem;
    padding-left: 2.1rem;
    display: grid;
}

.sw-vpageLegalDoc a, .sw-vpageLegalBreadcrumb strong {
    color: var(--sw-color-brand);
    font-weight: 900;
}

.sw-vpageLegalIndex strong {
    display: block;
    margin-bottom: 1.2rem;
    color: #6f4e37;
    font-size: 1.25rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.sw-vpageLegalIndex a {
    display: block;
    padding: 1rem 2rem 1rem 2.2rem;
    border-top: 1px solid #edf1ef;
    color: #4f5b67;
    font-size: 1.22rem;
    font-weight: 800;
    line-height: 1.3;
    position: relative;
}

.sw-vpageLegalIndex a::before {
    content: '';
    position: absolute;
    top: 50%;
    left: .3rem;
    width: .55rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #d5dfda;
    transform: translateY(-50%);
}

.sw-vpageLegalIndex a:first-child::before {
    width: .9rem;
    aspect-ratio: 1;
    background: var(--sw-color-brand);
}

.sw-vpageLegalIndex a::after {
    content: '>';
    position: absolute;
    top: 50%;
    right: .2rem;
    color: #9aa5ae;
    transform: translateY(-50%);
}

.sw-vpageLegalIndex a:hover {
    color: var(--sw-color-brand);
}

.sw-vpageLegalSection:first-child {
    border-top: 0;
}

.sw-vpageLegalLayout .sw-vpageLegalDoc h2 {
    margin: 0 0 2rem;
    padding: 0 0 1.6rem;
    border: 0;
    border-bottom: 1px solid #dfe6e2;
    color: #233041;
    font-size: 2.4rem;
    font-weight: 900;
    letter-spacing: 0;
}

.sw-vpageLegalLayout .sw-vpageLegalDoc h3 {
    margin-top: 1.8rem;
}

.sw-vpageLegalLayout .sw-vpageLegalDoc p, .sw-vpageLegalLayout .sw-vpageLegalDoc li {
    color: #526071;
    font-size: 1.47rem;
    line-height: 1.75;
}

.sw-vpageLegalDoc .sw-table th, .sw-vpageLegalDoc .sw-table td {
    padding: 1rem 1.2rem;
    border: 1px solid #dfe6e2;
    color: #526071;
    text-align: left;
    vertical-align: top;
}

.sw-vpageLegalDoc .sw-table th {
    background: rgba(27, 76, 44, .08);
    color: #253142;
    font-weight: 900;
}

.sw-vpageInfoIntro {
    gap: 2.4rem;
    align-items: start;
}

.sw-vpageInfoIntro__body {
    max-width: none;
}

.sw-vpageInfo .sw-heading {
    margin: 0 0 1rem;
    color: var(--sw-color-brand);
    font-size: 2.3rem;
    font-weight: 800;
    line-height: 1.18;
}

.sw-vpageInfo .sw-heading:not(:first-of-type) {
    margin-top: 3rem;
    padding-top: 2.4rem;
    border-top: 1px solid var(--sw-vpage-panel-border);
}

.sw-vpageInfo .sw-vpageText {
    color: #384650;
    font-size: 1.62rem;
    line-height: 1.78;
}

.sw-vpageInfo .sw-vpageText .sw-metaLabel {
    display: inline-block;
    margin-bottom: 1rem;
}

.sw-vpageInfoFact {
    padding: 1.6rem;
    border: 1px solid var(--sw-vpage-panel-border);
    border-radius: var(--sw-vpage-radius);
    background: #f8faf9;
}

.sw-vpageInfoFact__value {
    color: #d46f2a;
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1;
}

.sw-vpageInfoFact__label {
    margin-top: .7rem;
    color: #52605a;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.45;
}

.sw-vpageInfoLocation, .sw-mobileStretch {
    align-items: stretch;
}

.sw-vpageDarkPanel {
    padding: 2.2rem;
    border-radius: var(--sw-vpage-radius);
    background: var(--sw-color-brand);
    color: var(--sw-color-white);
}

.sw-vpageDarkPanel .sw-heading {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
    color: var(--sw-color-white);
}

.sw-vpageDarkPanel > p {
    margin: 0 0 1.4rem;
    color: rgba(255, 255, 255, .82);
    font-size: 1.55rem;
    line-height: 1.65;
}

.sw-vpageInfoLocation__panel {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.sw-vpageInfoAddress {
    margin: .3rem 0 1.8rem;
    color: var(--sw-color-white);
    font-size: 1.75rem;
    font-style: normal;
    font-weight: 800;
    line-height: 1.42;
}

.sw-vpageInfoMap {
    padding: .8rem;
    border: 1px solid var(--sw-vpage-panel-border);
    border-radius: var(--sw-vpage-radius);
    background: var(--sw-color-white);
    box-shadow: 0 20px 40px rgba(27, 76, 44, .12);
    min-width: 0;
}

.sw-vpageInfoMap .sw-maps {
    min-height: 320px;
}

.sw-vpageInfoMap .sw-GeoMap {
    border-radius: 6px;
    box-shadow: none;
}

.sw-vpageInfoContactStrip {
    background: var(--sw-color-white);
}

.sw-vpageInfoContact {
    gap: 1.8rem;
}

.sw-vpageInfoContact__text {
    max-width: 740px;
}

.sw-serviceHero.sw-pageStrip {
    padding-bottom: 0;
}

.sw-serviceHero__content {
    gap: 4rem;
    padding-bottom: 5rem;
}

.sw-serviceHero__copy {
    max-width: 840px;
}

.sw-serviceHero__actions {
    margin-top: 2.4rem;
}

.sw-serviceHero__actions .sw-statusPill {
    border-color: rgba(255, 255, 255, .32);
    background: rgba(255, 255, 255, .12);
    color: var(--sw-color-white);
}

.sw-serviceHero__manage {
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease;
}

.sw-serviceHero__manage:hover {
    border-color: rgba(255, 255, 255, .55);
    background: rgba(255, 255, 255, .20);
    color: var(--sw-color-white);
    text-decoration: none;
}

.sw-serviceHero__asset {
    min-height: 220px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .10);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-serviceHero__asset img {
    display: block;
    width: min(190px, 80%);
    height: auto;
}

.sw-valuationTool {
    gap: 3rem;
    padding: 2rem;
}

.sw-valuationTool__copy p {
    margin: 1.2rem 0 0;
    color: #53616c;
    font-size: 1.55rem;
    line-height: 1.65;
}

.sw-valuationTool__search {
    padding: 2rem;
    border-top: 4px solid var(--sw-color-accent);
    border-left: 0;
    background: #f4f6f5;
}

.sw-valuationTool__label {
    display: block;
    margin-bottom: 1rem;
    color: #2f3944;
    font-size: 1.5rem;
    font-weight: 800;
}

.sw-valuationTool #omi-entry-search #actioner {
    top: 3px;
}

.sw-valuationTool #omi-entry-search.is-location-selected #actioner {
    display: inline-flex !important;
}

.sw-serviceCta {
    justify-content: space-between;
    gap: 2.4rem;
    padding: 2rem;
    border-left: 5px solid var(--sw-color-accent);
    color: var(--sw-color-white);
}

.sw-serviceCta .sw-metaLabel, .sw-serviceCta .sw-vpageCta__text {
    color: rgba(255, 255, 255, .82);
}

@supports (padding: env(safe-area-inset-top)) or (padding: env(safe-area-inset-right)) or (padding: env(safe-area-inset-bottom)) or (padding: env(safe-area-inset-left)) {
    .sw-lead {
        padding-bottom: env(safe-area-inset-bottom);
    }

    .sw-navbar__primary {
        padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    }
}

.sw-localSeo {
    margin-top: 2rem;
    padding: 1.6rem 1.8rem;
    overflow: hidden;
}

.sw-singleRelated {
    margin-block: 0 2rem;
    padding: 1.6rem 1.8rem;
    overflow: hidden;
}

.sw-singleRelated__intro, .sw-localSeo__intro {
    gap: .8rem;
    max-width: 86rem;
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #e3e9e6;
    display: grid;
}

.sw-singleRelated__title, .sw-localSeo__title {
    margin: 0;
    color: #2f3944;
    font-size: 2.15rem;
    font-weight: 900;
    line-height: 1.18;
}

.sw-singleRelated__intro p, .sw-localSeo__intro p {
    max-width: 78rem;
    margin: 0;
    color: #5f6a75;
    font-size: 1.45rem;
    line-height: 1.65;
}

.sw-singleRelated__carousel {
    margin-top: 1.2rem;
    position: relative;
}

.sw-singleRelated .sw-scrollableRow {
    display: flex;
    width: 100%;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    padding: .2rem 0 .9rem;
    gap: 1.4rem;
}

.sw-singleRelated .sw-cardBox {
    flex: 0 0 24rem;
    width: 24rem;
    margin: 0;
    border: 1px solid #dfe6e2;
    border-radius: 6px;
    box-shadow: 0 8px 18px rgba(34, 43, 53, .08);
    scroll-snap-align: start;
}

.sw-singleRelated .sw-cardBox__image {
    height: 13.4rem;
    background: #f4f7f5;
    object-fit: cover;
}

.sw-singleRelated .sw-cardBox__title {
    min-height: 5.4rem;
    padding: 1rem 1.2rem .4rem;
    font-size: 1.35rem;
    line-height: 1.3;
    white-space: normal;
}

.sw-singleRelated .sw-cardBox__title span {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.sw-singleRelated .sw-cardBox__body {
    padding: .6rem 1.2rem 1.2rem;
}

.sw-singleRelated .sw-cardBox__body p {
    margin: 0 0 .7rem;
}

.sw-singleRelated .sw-list--inline {
    gap: .45rem;
    white-space: normal;
}

.sw-singleRelated__arrow {
    position: absolute;
    top: 50%;
    z-index: 3;
    width: 3.8rem;
    aspect-ratio: 1;
    border: 1px solid rgba(27, 76, 44, .18);
    border-radius: 50%;
    background: rgba(255, 255, 255, .96);
    color: var(--sw-color-brand);
    box-shadow: 0 10px 22px rgba(34, 43, 53, .16);
    transform: translateY(-50%);
    transition: opacity .18s ease, background-color .18s ease, box-shadow .18s ease, border-color .18s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sw-singleRelated__arrow:hover {
    border-color: rgba(27, 76, 44, .28);
    background: var(--sw-color-white);
    box-shadow: 0 14px 28px rgba(34, 43, 53, .2);
}

.sw-singleRelated__arrow:disabled {
    opacity: 0;
    pointer-events: none;
}

.sw-singleRelated__arrow .sw-icon {
    width: 1.8rem;
    aspect-ratio: 1;
    margin: 0;
}

.sw-singleRelated__arrow--prev {
    left: .8rem;
    transform: translateY(-50%) rotate(180deg);
}

.sw-singleRelated__arrow--next {
    right: .8rem;
}

.sw-container.sw-singleSeoFooter {
    --sw-single-layout-width: calc(var(--sw-content-max) + 37rem + var(--sw-container-gap));
    --sw-single-layout-offset: min(max(var(--sw-page-gutter-compact), calc((100vw - var(--sw-single-layout-width)) / 2)), calc((var(--sw-container-max) - var(--sw-single-layout-width)) / 2));
    --sw-single-container-gutter: 1em;
    max-width: var(--sw-container-max);
    padding-top: 0;
    padding-right: max(var(--sw-page-gutter-compact), calc(var(--sw-single-layout-offset) - var(--sw-single-container-gutter)));
    padding-left: calc(var(--sw-single-layout-offset) + var(--sw-single-container-gutter));
    padding-bottom: 7rem;
    gap: 0;
}

.sw-singleSeoFooter .sw-panelSurface {
    width: 100%;
}

.sw-localSeo__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.4rem;
    margin-top: 1.2rem;
    display: grid;
}

.sw-localSeo__icon {
    width: 4.4rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgba(27, 76, 44, .09);
    color: var(--sw-color-brand);
}

.sw-localSeo__body p {
    margin: .55rem 0 1.2rem;
    color: #687480;
    font-size: 1.34rem;
    line-height: 1.5;
}

.sw-localSeo__links a:hover {
    color: var(--sw-color-brand);
    border-color: rgba(27, 76, 44, .26);
    background: rgba(27, 76, 44, .04);
    box-shadow: 0 10px 18px rgba(27, 76, 44, .08);
}

.sw-mortgageCalc__grid {
    gap: 1.2rem;
    padding: 1.4rem;
    border: 1px solid #e4e7eb;
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfbfc);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
    display: grid;
}

.sw-mortgageCalc__field {
    display: flex;
    flex-direction: column;
    gap: .8rem;
    min-width: 0;
}

.sw-mortgageCalc__label {
    color: #6b7580;
    font-size: 1.5rem;
    line-height: 1.35;
}

.sw-mortgageCalc__hint {
    width: 1.8rem;
    aspect-ratio: 1;
    border: 1px solid #adb5bd;
    border-radius: 999px;
    color: #7a838d;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1;
    cursor: help;
    flex-shrink: 0;
}

.sw-mortgageCalc__value, .sw-mortgageCalc__note {
    display: inline-block;
    color: #2b343d;
    font-size: 1.6rem;
    line-height: 1.2;
}

.sw-mortgageCalc__note {
    color: #8a929b;
}

.sw-mortgageCalc__range {
    --sw-mortgage-progress: 30%;
    height: 2.4rem;
    appearance: none;
    background: transparent;
    cursor: pointer;
    width: 100%;
}

.sw-mortgageCalc__range:focus {
    outline: none;
}

.sw-mortgageCalc__range::-webkit-slider-runnable-track {
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--sw-color-brand), var(--sw-color-brand) var(--sw-mortgage-progress), #d9dde2 var(--sw-mortgage-progress), #d9dde2);
}

.sw-mortgageCalc__range::-moz-range-track {
    height: 3px;
    border: 0;
    border-radius: 999px;
    background: #d9dde2;
}

.sw-mortgageCalc__range::-moz-range-progress {
    height: 3px;
    border: 0;
    border-radius: 999px;
    background: var(--sw-color-brand);
}

.sw-mortgageCalc__range::-webkit-slider-thumb {
    width: 1.8rem;
    aspect-ratio: 1;
    margin-top: -.75rem;
    appearance: none;
    border: 0;
    border-radius: 999px;
    background: #217e42;
    box-shadow: 0 0 0 4px rgba(33, 126, 66, .12);
}

.sw-mortgageCalc__range::-moz-range-thumb {
    width: 1.8rem;
    aspect-ratio: 1;
    border: 0;
    border-radius: 999px;
    background: #217e42;
    box-shadow: 0 0 0 4px rgba(33, 126, 66, .12);
}

.sw-mortgageCalc__results {
    margin-top: 1.6rem;
}

.sw-mortgageCalc__disclaimer {
    margin: 1rem 0 0;
    color: #6f7780;
}

.sw-modal--filters {
    width: min(94vw, 96rem);
    height: min(72rem, 86dvh);
    max-height: 86dvh;
    margin: auto;
    border-radius: 3px;
}

.sw-modal--filters .sw-searchBarFull.sw-searchBarFull {
    grid-template-columns: 1.35fr minmax(18rem, .75fr);
    align-items: stretch;
    margin: 2rem 0;
    padding: 0;
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    display: grid;
    position: relative;
    z-index: 30;
    overflow: visible;
}

.sw-modal--filters .sw-searchBar__item {
    width: auto;
    max-width: none;
    flex-basis: auto;
    min-width: 0;
    padding: 0;
    position: relative;
}

.sw-modal--filters .sw-searchBar__item--location {
    z-index: 40;
}

.sw-modal--filters .sw-searchBar__item + .sw-searchBar__item {
    border-left: 1px solid var(--sw-color-border);
}

.sw-modal--filters .sw-searchBar__item--location > .sw-autocomplete, .sw-modal--filters .sw-searchBar__item--location .sw-autocomplete__container, .sw-modal--filters .sw-searchBar__item--location .sw-autocomplete__input, .sw-modal--filters .sw-select__control {
    min-height: 4.8rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.sw-modal--filters .sw-searchBar__item--location .sw-autocomplete__list {
    z-index: 100;
}

.sw-modal--filters .sw-searchBar .sw-select__menu {
    right: 0;
    left: auto;
    width: max-content;
    min-width: min(32rem, calc(100vw - 4rem));
    max-width: calc(100vw - 4rem);
}

.sw-modal--filters .sw-searchBar .sw-select__menu .sw-stackItem {
    height: auto;
    min-height: 4.8rem;
    overflow: visible;
    white-space: normal;
}

.sw-modal--filters .sw-searchFilters--wrapper {
    position: relative;
    z-index: 1;
    display: block;
    margin: 0;
}

#breadcrumbs back, .sw-modal--filters .sw-searchFilters--value {
    flex: 0 0 auto;
}

.sw-modal--filters .sw-modal__bottom {
    justify-content: flex-end;
    box-shadow: 0 -6px 18px rgba(0, 0, 0, .08);
}

.sw-modal--filters .sw-modal__bottom .sw-button {
    min-width: 13rem;
    max-width: none;
}

.sw-vpageInfoPopup .sw-form {
    margin: 0;
    padding: 0;
    box-shadow: none;
}

.sw-vpageInfoDynamicForm {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.4rem;
    display: grid;
}

.sw-vpageInfoDynamicForm .sw-label {
    margin-bottom: .55rem;
    color: #253142;
    font-size: 1.4rem;
    font-weight: 800;
}

.sw-vpageInfoDynamicForm .sw-input, .sw-vpageInfoDynamicForm .sw-select__control {
    min-height: var(--sw-control-height);
    margin: 0;
    border-color: var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    box-shadow: var(--sw-control-shadow);
}

.sw-vpageInfoDynamicForm .sw-input:focus, .sw-vpageInfoDynamicForm .sw-select.is-open .sw-select__control {
    border-color: var(--sw-color-brand);
    box-shadow: var(--sw-focus-ring);
    outline: 0;
}

.sw-vpageInfoDynamicForm textarea.sw-input {
    min-height: 12rem;
}

.sw-vpageInfoDynamicForm__privacy {
    padding: 1.2rem 1.4rem;
    border: 1px solid #dfe7e2;
    border-radius: 5px;
    background: #f8fbf9;
}

.sw-vpageInfoDynamicForm__privacy .sw-checkbox {
    align-items: flex-start;
    gap: 1rem;
}

.sw-contactForm__input {
    max-width: none;
    height: var(--sw-control-height);
    border: 1px solid var(--sw-color-border);
    border-radius: var(--sw-radius-sm);
    background-color: var(--sw-color-white);
    color: var(--sw-color-control-text);
    box-shadow: var(--sw-control-shadow);
    font-size: 1.55rem;
    transition: var(--sw-control-transition);
    width: 100%;
}

.sw-input:focus, .sw-inputTextarea:focus, .sw-contactForm__input:focus {
    border-color: #9ab5a6;
    background-color: var(--sw-color-white);
    box-shadow: var(--sw-focus-ring);
    outline: 0;
}

.sw-contactForm__message {
    min-height: 11rem;
    height: 11rem;
    line-height: 1.45;
    resize: vertical;
}

.sw-contactForm .sw-checkbox {
    flex-wrap: nowrap;
    align-items: flex-start;
}

.sw-contactForm .sw-checkbox__control {
    margin-top: .2rem;
}

.sw-contactForm .sw-checkbox__textControl {
    color: #666;
    font-size: 1.45rem;
    line-height: 1.35;
    text-transform: none;
    min-width: 0;
}

.sw-contactForm .sw-checkbox__textControl .sw-underline {
    border-bottom-width: 1px;
    text-decoration: none;
}

.sw-contactForm__author {
    margin-top: .4rem;
    padding: 1.6rem;
    border: 1px solid #dedede;
    border-radius: 4px;
    background: var(--sw-color-white);
}

.sw-contactForm__authorTitle {
    margin: 0 0 1rem;
    color: #4b4b4b;
    font-size: 1.7rem;
    line-height: 1.25;
    text-align: center;
}

.sw-contactForm__logoLink {
    display: inline-flex;
    justify-content: center;
    width: 100%;
}

.sw-contactForm__logo {
    width: auto;
    max-width: 25rem;
    max-height: 9rem;
    object-fit: contain;
}

.sw-searchBar .sw-autocomplete__input {
    transition: border-color .2s ease, box-shadow .2s ease, color .2s ease, background-color .2s ease;
}

.sw-cservices_body block {
    flex: 0 0 100%;
}

.sw-cservices_list {
    display: block;
    border-bottom: 1px solid #acacac;
    box-shadow: 0 0 5px 0 #464646;
    position: relative;
    padding: 1em;
    margin: 2em 0;
    border-radius: 0;
}

.sw-footerSection {
    flex: 0 1 0;
    padding: .8rem;
    vertical-align: middle;
    min-width: 223px;
}

.sw-cservicesCard .sw-cservices_body block {
    padding: 1.4rem;
    border: 1px solid #e1e7e4;
    border-radius: 8px;
    background: #fbfcfb;
    min-width: 0;
    flex: none;
}

.sw-accountHero {
    align-items: start;
    gap: 3.2rem;
    padding: 4rem 3.2rem;
    display: grid;
    grid-template-columns: minmax(12rem, auto) 1fr;
}

.sw-accountProtectCard {
    gap: 1.4rem;
    padding: 2.4rem;
    border-radius: 8px;
    background: #f1f6f3;
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: auto 1fr auto;
    align-items: center;
}

.sw-menu.is-mobileMenuOpen {
    z-index: 10000;
}

.sw-navbar {
    box-sizing: border-box;
    height: inherit;
    flex-direction: row;
    user-select: none;
    margin: 0 auto;
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
    justify-content: space-between;
    gap: 0;
    padding: 0 1.2rem;
}

.sw-navbar__toggle {
    position: relative;
    z-index: 1004;
    display: inline-flex;
    flex: 0 0 4.4rem;
    width: 4.4rem;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: .45rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--sw-color-white);
}

.sw-navbar__toggle span {
    display: block;
    width: 1.8rem;
    height: 2px;
    border-radius: 99px;
    background: currentColor;
    transition: transform .22s ease, opacity .22s ease;
}

body.sw-mobileMenuOpen .sw-navbar__toggle span:nth-child(1), .sw-menu.is-mobileMenuOpen .sw-navbar__toggle span:nth-child(1) {
    transform: translateY(.65rem) rotate(45deg);
}

body.sw-mobileMenuOpen .sw-navbar__toggle span:nth-child(2), .sw-menu.is-mobileMenuOpen .sw-navbar__toggle span:nth-child(2) {
    opacity: 0;
}

body.sw-mobileMenuOpen .sw-navbar__toggle span:nth-child(3), .sw-menu.is-mobileMenuOpen .sw-navbar__toggle span:nth-child(3) {
    transform: translateY(-.65rem) rotate(-45deg);
}

.sw-navbar > .sw-heroBrand__navbar {
    order: 1;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    position: absolute;
    inset-inline: 4.8rem 10.8rem;
    z-index: 1003;
    margin: 0;
    justify-content: center;
    min-width: 0;
    overflow: hidden;
    transform: none;
}

.sw-navbar > .sw-heroBrand__navbar .sw-heroBrand__navbar {
    width: auto;
    max-width: min(100%, 15.4rem);
    max-height: 1.15em;
}

.sw-navbar__account {
    order: 3;
    z-index: 1004;
    margin-left: auto;
    padding-left: 0;
    border-left: 0;
}

.sw-navbar__account .sw-navbar__icon {
    margin-right: .35rem;
}

.sw-navbar .sw-navbar__primary {
    position: fixed;
    inset: 0;
    z-index: 1002;
    display: flex;
    flex-flow: column nowrap;
    align-items: stretch;
    justify-content: center;
    gap: .8rem;
    height: 100dvh;
    padding: 8.8rem 2.4rem 3.2rem;
    background: rgba(20, 55, 32, .72);
    backdrop-filter: blur(14px) saturate(120%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-.4rem);
    transition: opacity .14s ease, transform .16s ease, visibility 0s linear .16s;
}

body.sw-mobileMenuOpen .sw-navbar .sw-navbar__primary, .sw-menu.is-mobileMenuOpen .sw-navbar__primary {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition: opacity .14s ease, transform .16s ease, visibility 0s;
}

.sw-navbar__primary .sw-navbar__item, .sw-navbar__primary .sw-navbar__link {
    width: 100%;
    justify-content: center;
    padding: 0;
    font-size: 2.2rem;
    line-height: 1.15;
}

.sw-navbar__primary > .sw-navbar__item {
    opacity: 0;
    transform: translateY(.6rem);
    transition: opacity .14s ease, transform .16s ease;
}

body.sw-mobileMenuOpen .sw-navbar__primary > .sw-navbar__item, .sw-menu.is-mobileMenuOpen .sw-navbar__primary > .sw-navbar__item {
    opacity: 1;
    transform: translateY(0);
}

.sw-navbar__primary .sw-navbar__link {
    min-height: 5.6rem;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.sw-navbar__primary .sw-languages {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 4.6rem;
    min-height: 4.6rem;
    margin: 1.2rem auto 0;
    border: 1px solid rgba(255, 255, 255, .34);
}

.sw-articleFacts {
    display: flex;
    align-items: stretch;
    gap: 0;
    white-space: normal;
    width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow: hidden;
    padding: 0 .2rem 0 .7rem;
}

.sw-articleFacts .sw-list__item {
    min-height: 4.2rem;
    align-items: center;
    color: #4f5964;
    text-align: center;
    flex: 1 1 5.4rem;
    min-width: 0;
    padding: 0 .45rem;
}

.sw-articleFacts .sw-list__item item {
    flex-direction: row-reverse;
    min-height: 2.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    gap: .25rem;
}

.sw-articleFacts .sw-list__item strong {
    line-height: 1;
    font-size: 1.28rem;
}

.sw-articleFacts .sw-list__item:not(.sw-articleFacts__price)::after {
    display: block;
    content: attr(aria-label);
    margin-top: .3rem;
    color: #68717d;
    line-height: 1.1;
    max-width: 100%;
    overflow: hidden;
    font-size: .82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sw-articleFacts__price {
    align-items: flex-start;
    text-align: left;
    flex: 1.45 0 9.4rem;
    min-width: 9.4rem;
}

.sw-articleFacts__price .sw-immo--price {
    line-height: 1.1;
    white-space: nowrap;
    font-size: 1.48rem;
    overflow: visible;
    text-overflow: clip;
}

.sw-articleActions {
    height: 3.8rem;
    margin-top: .6rem;
    justify-content: space-between;
    gap: .25rem;
    width: 100%;
    overflow: hidden;
    container-type: inline-size;
}

.sw-articleActions__author {
    flex: 0 0 7.2rem;
    height: 3.6rem;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #d8d8d8;
    flex-basis: 6.2rem;
    min-width: 6.2rem;
    width: 6.2rem;
    margin-right: .4rem;
    padding-right: .8rem;
}

.sw-articleActions .sw-button {
    max-width: none;
    border-radius: 0;
    background: transparent;
    color: #5f6670;
    font-weight: 700;
    line-height: 1;
    box-shadow: none;
    position: relative;
    flex: 1 1 7.2rem;
    width: auto;
    min-width: 0;
    height: 3.6rem;
    padding: 0 .55rem;
    gap: .35rem;
    font-size: 1.18rem;
}

.sw-articleActions .sw-button[data-action="share"] {
    flex-basis: 8.2rem;
}

.sw-articleActions .sw-button:not(.sw-articleActions__contact) {
    flex: 0 0 3.8rem;
    width: 3.8rem;
    padding-inline: 0;
}

.sw-articleActions .sw-icon {
    aspect-ratio: 1;
    flex: 0 0 auto;
    width: 1.4rem;
}

.sw-articleActions .sw-button strong {
    position: static;
    flex: 0 0 auto;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: nowrap;
}

.sw-articleActions__contact.sw-button {
    background: var(--sw-color-accent);
    color: var(--sw-color-white);
    order: -1;
    flex: 1.15 1 9.8rem;
    min-width: 9.4rem;
    width: auto;
    margin-left: 0;
    padding: 0 .75rem;
    gap: .45rem;
    border-radius: 4px;
}

.sw-articleActions__contact.sw-button strong {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: nowrap;
}

.sw-archiveHero {
    align-items: flex-start;
    gap: 1.2rem;
    border: 0;
    background: transparent;
    box-shadow: none;
    flex-wrap: wrap;
}

.sw-archiveHero__copy {
    flex: 1 1 100%;
}

.sw-archiveHero__title, .sw-vpageLegalDoc h2, .sw-authorOverview .sw-cardEntity__title, .sw-singleIntro__title {
    font-size: 1.8rem;
}

.sw-archiveHero sw-orderby {
    margin-left: auto;
    min-width: 14.2rem;
}

.sw-archiveInsight {
    gap: .9rem;
    margin: .9rem 0 0;
    border-top: 1px solid #e7ece9;
    box-shadow: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    padding: .9rem 0 0;
}

.sw-archiveInsight__value {
    flex: 0 0 auto;
    padding: .5rem 1.05rem;
    border-radius: 999px;
    background: #eef5f1;
    color: var(--sw-color-brand);
    font-size: 1.55rem;
    line-height: 1;
    white-space: nowrap;
    margin-left: 4.7rem;
}

.sw-archiveEmpty {
    gap: 2.4rem;
    margin: 1.8rem 0 0;
    min-height: 23rem;
    border-top: 1px solid #e7ece9;
    box-shadow: none;
    padding: 2rem;
    text-align: center;
}

.sw-archiveEmpty__art {
    justify-self: center;
    width: min(100%, 24rem);
}

.sw-archiveEmpty__actions {
    gap: 1.4rem;
    margin-top: 2.4rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sw-membership-menu__icon, .sw-singleDetails__title {
    font-size: 1.9rem;
}

.sw-pagination__arrow--prev, .sw-servicePrivacyNote a {
    justify-self: start;
}

.sw-pageStrip:not(.sw-pageStrip__ads) .sw-title::after, .sw-mobileFullActions, .sw-singleFacts {
    width: 100%;
}

.sw-personalExportCard {
    gap: 2.4rem;
    border-top: 4px solid var(--sw-color-brand);
    background: linear-gradient(180deg, var(--sw-color-white), #fbfcfb);
    align-items: stretch;
}

.sw-personalExportActions {
    flex-wrap: wrap;
    gap: 1rem;
    display: flex;
    align-items: center;
    justify-content: stretch;
}

.sw-reservedPage, .sw-reservedProfilePage, .sw-managePostsPage {
    width: min(var(--sw-page-max, var(--sw-reserved-max)), calc(100% - var(--sw-page-gutter, var(--sw-page-gutter-global))));
    margin: var(--sw-page-margin, 2.4rem auto 4rem);
    --sw-page-gutter: var(--sw-page-gutter-compact);
    --sw-page-margin: 1.4rem auto 4rem;
}

.sw-reservedHeader .sw-relatedLink__title, .sw-serviceStat__value, .sw-notice--restricted .sw-notice__title {
    font-size: 2.4rem;
}

.sw-membership-menu {
    margin: auto;
    max-width: 150rem;
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: flex-start;
    width: 100%;
    padding: .8rem .7rem;
    gap: .6rem;
    overflow: hidden;
}

.sw-membership-menu a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    line-height: 1.1;
    text-align: center;
    background: var(--sw-color-white);
    color: #2f3944;
    border: 1px solid #e2e7e4;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(34, 43, 53, .06);
    transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
    overflow: hidden;
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    max-width: none;
    height: 4.6rem;
    min-height: 0;
    padding: 0 .45rem;
    border-radius: 7px;
    font-size: 1.15rem;
}

@media all and (min-width: 1280px) {
    .sw-membership-menu a {
        padding: 0 .75rem;
    }

    .sw-membership-menu__label {
        display: block;
    }
}

.sw-vpageLegalChrome__inner {
    gap: 1.6rem;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    min-height: 8.8rem;
}

.sw-vpageLegalBreadcrumb {
    width: 100%;
    justify-content: flex-start;
}

.sw-nav-secondary__list {
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
}

.sw-nav-secondary__link {
    gap: 1rem;
    padding: 0 2.2rem;
    border: 0;
    color: #4b5664;
    font-size: 1.32rem;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    position: relative;
    width: 100%;
    justify-content: flex-start;
    min-height: 5.4rem;
}

.sw-vpageLegalDoc p, .sw-vpageLegalDoc li {
    font-size: 1.42rem;
}

.sw-vpageLegalLayout {
    align-items: start;
    display: grid;
    gap: 1.4rem;
}

.sw-vpageLegalIndex {
    top: 2rem;
    border: 1px solid var(--sw-vpage-panel-border);
    border-radius: var(--sw-vpage-radius);
    background: var(--sw-color-white);
    box-shadow: 0 12px 28px rgba(34, 43, 53, .04);
    position: static;
    padding: 1.4rem;
}

.sw-vpageLegalSection {
    border-top: 1px solid #e3e8e5;
    scroll-margin-top: 2rem;
    display: grid;
    gap: 1rem;
    padding: 2.2rem 1.6rem;
}

.sw-vpageLegalSection::before {
    counter-increment: privacy-section;
    content: counter(privacy-section, decimal-leading-zero);
    color: #6ca18a;
    font-weight: 900;
    line-height: 1;
    grid-column: 1;
    grid-row: auto;
    font-size: 2.5rem;
}

.sw-vpageLegalSection > * {
    grid-column: 1;
}

.sw-vpageLegalLayout .sw-vpageLegalDoc h2, .sw-managePostsPage > h1 {
    font-size: 2.3rem;
}

.sw-vpageLegalDoc .sw-table {
    margin: 1.2rem 0 0;
    border: 1px solid #dfe6e2;
    border-collapse: collapse;
    background: var(--sw-color-white);
    font-size: 1.38rem;
    width: 100%;
    display: block;
    overflow-x: auto;
    white-space: nowrap;
}

.sw-accountHero, .sw-accountSubscription, .sw-accountManagePanel {
    gap: 1.8rem;
    padding: 1.6rem;
}

.sw-accountHero__media {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 1rem;
    justify-content: flex-start;
    min-width: 0;
}

.sw-accountProfilePage:not(.sw-profileEditPage) .sw-accountHero__media {
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.4rem;
    min-width: min(100%, 19rem);
    align-items: flex-start;
}

.sw-accountProfilePage .sw-accountAvatar, .sw-accountProfilePage .sw-logo.sw-accountAvatar {
    display: block;
    flex: 0 0 var(--sw-avatar-width);
    width: var(--sw-avatar-width);
    height: var(--sw-avatar-height);
    margin: 0;
    padding: 0;
    overflow: visible;
    border: 1px solid #e1e6e3;
    border-radius: 50%;
    background: #f7faf8;
    box-shadow: 0 8px 18px rgba(34, 43, 53, .08);
    position: relative;
    --sw-avatar-width: 12rem;
    --sw-avatar-height: 12rem;
}

.sw-accountProfilePage .sw-accountAvatar--agent {
    --sw-avatar-width: 10.8rem;
    --sw-avatar-height: 10.8rem;
}

.sw-accountHero__head h1 {
    margin: 0;
    color: #253142;
    font-weight: 900;
    line-height: 1.1;
    font-size: 2.6rem;
}

.sw-accountRow {
    column-gap: 1.6rem;
    border-bottom: 1px solid #edf0f2;
    grid-template-columns: 3.4rem auto auto 1fr;
    align-items: baseline;
    gap: .35rem .6rem;
    min-height: 0;
    padding: 1.2rem 0;
}

.sw-accountRow__value {
    color: #253142;
    font-weight: 800;
    overflow-wrap: anywhere;
    min-width: 0;
    grid-column: 2;
    font-size: 1.48rem;
    line-height: 1.35;
}

.sw-accountRow__value:last-child {
    grid-column: 2 / -1;
}

.sw-accountRow__action {
    gap: .45rem;
    color: var(--sw-color-brand);
    font-size: 1.25rem;
    font-weight: 900;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    grid-column: 3;
    justify-self: start;
    align-self: baseline;
    margin-left: .35rem;
    line-height: 1.35;
}

@media all and (max-width: 767.98px) {
    .sw-accountProfilePage {
        --sw-page-gutter: 1rem;
        gap: 1rem;
    }

    .sw-accountHero {
        grid-template-columns: 1fr;
        gap: 1.8rem;
        padding: 1.8rem 1.4rem;
    }

    .sw-accountProfilePage:not(.sw-profileEditPage) .sw-accountHero__media {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        min-width: 0;
        width: 100%;
    }

    .sw-accountProfilePage .sw-accountAvatar, .sw-accountProfilePage .sw-logo.sw-accountAvatar {
        --sw-avatar-width: 11.6rem;
        --sw-avatar-height: 11.6rem;
    }

    .sw-accountHero__main {
        width: 100%;
    }

    .sw-accountHero__head {
        justify-content: center;
        text-align: center;
        margin-bottom: 1.2rem;
    }

    .sw-accountProfilePage .sw-statusPill {
        margin-inline: auto;
    }

    .sw-accountRow {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .55rem 1rem;
        padding: 1.35rem 0;
    }

    .sw-accountRow__label,
    .sw-accountRow__value:last-child {
        grid-column: 1 / -1;
    }

    .sw-accountRow__value {
        grid-column: 1;
        min-width: 0;
        font-size: 1.46rem;
    }

    .sw-accountRow__action {
        grid-column: 2;
        justify-self: end;
        margin-left: 0;
    }

    .sw-accountProtectCard {
        grid-template-columns: auto minmax(0, 1fr);
        align-items: start;
        gap: 1.2rem;
        padding: 1.6rem;
    }

    .sw-accountProtectCard > div {
        min-width: 0;
    }

    .sw-accountProtectCard .sw-button {
        grid-column: 1 / -1;
        justify-content: center;
        width: 100%;
        max-width: none;
        margin-top: .4rem;
    }

    .sw-accountSubscription {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 1.2rem;
        padding: 1.6rem 1.4rem;
    }

    .sw-accountSubscription > div {
        min-width: 0;
    }

    .sw-accountSubscription > a {
        grid-column: 1 / -1;
        justify-content: center;
        width: 100%;
        max-width: none;
    }

    .sw-accountManagePanel {
        grid-template-columns: 1fr;
        gap: 1.4rem;
        padding: 1.2rem;
    }

    .sw-accountDeleteCard {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 1.2rem;
        padding: 1.6rem;
    }

    .sw-accountDeleteCard .sw-button {
        justify-self: stretch;
        justify-content: center;
        width: 100%;
        max-width: none;
    }

    .sw-accountManagePanel__content {
        width: 100%;
    }

    .sw-accountActionCard {
        gap: 1rem;
        min-height: 7.8rem;
        padding: 1.4rem;
    }

    .sw-accountActionCard strong,
    .sw-accountActionCard small {
        overflow-wrap: normal;
        word-break: normal;
    }

    .sw-archiveNav__content,
    .sw-archiveNav + .sw-container,
    .sw-container.sw-singleLayout,
    .sw-pageMargin {
        padding-inline: .55rem;
    }

    .sw-container.sw-singleLayout {
        padding-inline: 0;
    }

    .sw-archiveNav + .sw-container.sw-archiveLayout {
        padding-inline: 0;
    }

    .sw-container.sw-singleLayout > .sw-singlePage,
    .sw-container.sw-archiveLayout > .sw-archivePage,
    .sw-container.sw-singleSeoFooter {
        padding-inline: .45rem;
    }

    .sw-container.sw-singleLayout > .sw-singlePage > .sw-pageMargin {
        padding-inline: 0;
    }

    .sw-archiveHero,
    .sw-archiveInsight,
    .sw-article,
    .sw-singleHero,
    .sw-singleSavedNote,
    .sw-singleIntro,
    .sw-singleDetails,
    .sw-singleDetailCard,
    .sw-singleContact {
        margin-inline: 0;
    }

    .sw-archiveHero,
    .sw-archiveInsight,
    .sw-singleSavedNote,
    .sw-singleIntro__header,
    .sw-singleIntro__content,
    .sw-singleDetailCard__header {
        padding-inline: 1.1rem;
    }

    .sw-singleContact .sw-sidebar__title {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-inline: 1.1rem;
        line-height: 1.2;
        text-align: center;
    }

    .sw-singleRelated {
        margin-inline: 0;
        padding: 1.6rem 1.1rem;
    }

    .sw-singleRelated__intro {
        justify-items: center;
        text-align: center;
    }

    .sw-singleContact.sw-sidebar {
        width: calc(100% - .9rem);
        max-width: calc(100% - .9rem);
        margin-inline: auto;
    }

    .sw-article {
        padding: .8rem;
        margin-block: 1.2rem;
    }

    .sw-singleGallery .sw-xswipe__fullscreen {
        top: .8rem;
        right: .8rem;
    }

    .sw-singleGallery .sw-xswipe__arrow--prev {
        left: .8rem;
    }

    .sw-singleGallery .sw-xswipe__arrow--next {
        right: .8rem;
    }

    .sw-singleHero .sw-info-bar {
        padding-inline: .8rem;
    }
}

.sw-accountManagePanel__content {
    min-width: 0;
    padding-left: 0;
    border-left: 0;
}

.sw-mobileCompactPanel, .sw-localSeo {
    padding: 1.5rem;
}

.sw-profileEditActions {
    justify-content: flex-end;
    gap: 1rem;
    padding: 1.4rem;
    display: grid;
}

.sw-accountProtectCard, .sw-savedListHero {
    align-items: start;
}

.sw-reservedSearchCard.sw-savedListCard .sw-cardEntity__head {
    gap: 1rem;
    padding-bottom: .9rem;
    grid-template-columns: auto 1fr auto;
    align-items: center;
}

.sw-savedListHero {
    grid-template-columns: auto 1fr;
    gap: 1.4rem;
    min-height: 0;
    padding: 1.8rem;
}

.sw-savedListHero .sw-iconBubble, .sw-savedListEmpty .sw-iconBubble {
    width: 6.2rem;
    aspect-ratio: 1;
    font-size: 2.8rem;
}

.sw-savedListHero .sw-relatedLink__title, .sw-serviceEmptyHero__title {
    font-size: 2.5rem;
}

.sw-savedListHero__stat, .sw-savedListHero__cta, .sw-savedListHero__actions {
    grid-column: auto;
    width: 100%;
    justify-self: stretch;
}

.sw-mobileActionStack {
    width: 100%;
    display: grid;
    gap: .8rem;
}

.sw-mobileActionStack > * {
    width: 100%;
    justify-content: center;
}

.sw-savedListCard .sw-cardEntity__foot {
    align-items: center;
    margin-top: .8rem;
    padding-top: .8rem;
    border-top: 1px solid #edf0f2;
    display: grid;
    gap: .8rem;
}

.sw-savedListEmpty {
    justify-items: center;
    gap: 1rem;
    min-height: 23rem;
    background: linear-gradient(180deg, #fff, #fbfdfc);
    text-align: center;
    display: grid;
    padding: 3rem 1.5rem;
}

.sw-serviceEmptyHero {
    --sw-panel-border: #e2e7e4;
    grid-template-columns: auto 1fr;
    gap: 1.6rem;
    min-height: 0;
    padding: 2.4rem 1.6rem;
    text-align: left;
}

.sw-serviceEmptyHero__content p {
    margin: 0;
    color: #556170;
    line-height: 1.55;
    font-size: 1.4rem;
}

.sw-serviceActionCard {
    --sw-panel-border: #e2e7e4;
    --sw-panel-shadow: 0 10px 24px rgba(34, 43, 53, .04);
    gap: 1.4rem;
    color: #2f3944;
    grid-template-columns: 4.8rem 1fr;
    min-height: 13rem;
    padding: 1.8rem 1.5rem;
}

.sw-servicePrivacyNote {
    grid-template-columns: auto 1fr auto;
    gap: 1.4rem;
    margin-top: 2rem;
    padding: 1.7rem 2rem;
    border: 1px solid #e0e8e3;
    border-radius: 8px;
    background: linear-gradient(90deg, rgba(27, 76, 44, .07), rgba(27, 76, 44, .02));
    color: #4f5d68;
    align-items: start;
}

.sw-serviceQuickActions {
    display: grid;
    gap: 1.2rem;
    max-width: var(--sw-reserved-max);
    margin-inline: auto;
    padding: 1.6rem;
    justify-content: stretch;
}

.sw-serviceStats {
    --sw-panel-border: #dfe7e2;
    --sw-panel-shadow: 0 12px 26px rgba(34, 43, 53, .07);
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    border-top: 4px solid var(--sw-color-brand);
    display: grid;
    width: 100%;
    padding: 1rem;
}

.sw-services__item {
    --sw-panel-border: #e2e7e4;
    --sw-panel-shadow: 0 10px 24px rgba(34, 43, 53, .05);
    text-align: center;
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 1.7rem 1.5rem;
}

.sw-managePostsPage .sw-article__options .sw-button {
    flex: 1 1 0;
    width: 100%;
    min-height: 4rem;
    padding: 0 1.3rem;
    min-width: 0;
}

.sw-agencyManageToolbar {
    flex-direction: column;
}

.sw-notice--restricted {
    position: relative;
    flex-direction: column;
    border: 1px solid #dfe7e2;
    border-top: 0;
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdfc);
    box-shadow: 0 16px 34px rgba(34, 43, 53, .08);
    color: #3e4952;
    text-align: center;
    display: flex;
    align-items: center;
    overflow: hidden;
    width: calc(100% - 2rem);
    margin: 2rem auto 4rem;
    padding: 2.4rem 1.6rem;
}

.sw-cservicesCard {
    --sw-panel-border: #dde6e1;
    --sw-panel-shadow: 0 14px 30px rgba(34, 43, 53, .08);
    display: flex;
    flex-direction: column;
    border-left: 5px solid var(--sw-color-accent);
    overflow: hidden;
    margin: 0 0 1.4rem;
}

.sw-cservicesCard .sw-cservices_title {
    justify-content: space-between;
    gap: 1rem;
    margin: 0;
    border-bottom: 1px solid #e3e9e5;
    background: #f8faf9;
    color: var(--sw-color-brand);
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 1.4rem;
    font-size: 1.8rem;
}

.sw-cservicesCard .sw-cservices_body {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.4rem;
    display: grid;
    padding: 1.4rem;
}

.sw-cservicesCard .sw-cservices_details--item {
    align-items: start;
    margin: 0;
    padding: 0 0 .75rem;
    border-bottom: 1px solid #e6ebe8;
    word-break: break-word;
    display: grid;
    gap: .25rem;
}

.sw-pageIntro, .sw-cardEntity__head, .sw-cardEntity__foot {
    flex-direction: column;
    align-items: flex-start;
}

.sw-cardEntity__actions {
    align-self: center;
    gap: .8rem;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}

.sw-personalExportCard.is-loading, .sw-cservicesCard .sw-cservices_body, .sw-serviceEmptyHero, .sw-serviceStats, .sw-singleDetailGrid, .sw-singleEnergy, .sw-cardEntity__grid, .sw-localSeo__grid, .sw-vpageInfoDynamicForm, .sw-mobileSingleColumn, .sw-singleHighlights {
    grid-template-columns: 1fr;
}

.sw-cardEntity__section--full {
    grid-column: auto;
}

.sw-article {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    min-height: 250px;
    transition: 350ms ease-in-out 250ms;
    margin: 2rem 0;
}

.sw-article__title {
    display: block;
    text-align: left;
    padding: 0;
    font-weight: 700;
    color: var(--sw-color-brand);
    white-space: break-spaces;
    font-size: 1.3em;
    line-height: 1.3em;
    transition: unset;
    overflow: hidden;
    margin: 20px 0 5px;
}

.sw-hero__body {
    flex-direction: column;
    justify-content: flex-start;
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
    margin: 0;
    padding: 1em 0;
}

.sw-hero-home .sw-hero__body {
    padding-bottom: 3.2rem;
}

.sw-map:not(.sw-map--fullscreen) {
    max-height: calc(100% - 116px);
}

.sw-GeoMap--single {
    max-width: 100%;
    border: 1px solid rgba(27, 76, 44, .12);
    border-radius: 16px;
    box-shadow: 0 16px 34px rgba(23, 41, 32, .14);
    width: 100%;
    height: min(420px, 62vh);
}

.sw-GeoMapToolbar {
    position: absolute;
    top: 50%;
    z-index: 820;
    flex-direction: column;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    right: 1rem;
    gap: .7rem;
}

.sw-GeoMapToolbar__button {
    padding: 0;
    border: 0;
    background: rgba(255, 255, 255, .96);
    color: var(--sw-color-brand);
    cursor: pointer;
    box-shadow: 0 12px 24px rgba(23, 41, 32, .14);
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1;
    width: 38px;
    aspect-ratio: 1;
    border-radius: 12px;
}

.sw-searchBar {
    --sw-dropdown-offset: .6rem;
    color: #5c5c5c;
    display: none;
    flex-flow: column nowrap;
    border-radius: 0 0 3px 3px;
    width: 100%;
    position: relative;
    background-color: var(--sw-color-white);
    padding: 1.2rem;
}

.sw-searchBarFull {
    --sw-dropdown-offset: .6rem;
    display: flex;
    flex-flow: row wrap;
    padding: 0;
    color: #5c5c5c;
    width: 100%;
    position: relative;
    border: none;
}

.sw-vpageInfoFacts, .sw-heroBody__search .sw-searchBar, .sw-heroBody__search .sw-searchBar__mainFilters, .sw-heroBody__search .sw-searchBar__secondaryFilters {
    gap: 1rem;
}

.sw-heroBody__search .sw-searchBar__item--location > .sw-autocomplete {
    min-height: 4.8rem;
    border: 1px solid #cfcfcf;
    border-radius: 3px;
    background-color: var(--sw-color-white);
    position: relative;
    z-index: 12;
}

.sw-heroBody__search .sw-searchBar__item--location .sw-autocomplete__container, .sw-heroBody__search .sw-searchBar__item--location .sw-autocomplete__input {
    min-height: 4.8rem;
    border: 0;
    box-shadow: none;
}

.sw-heroBody__search .sw-searchBar__item--location .sw-autocomplete__list {
    z-index: 30;
}

.sw-searchBar__button, .sw-searchBar__item {
    padding-top: .8rem;
    flex-basis: 100%;
    width: 100%;
    max-width: 100%;
}

.sw-searchBar__button .sw-button, .sw-mobileFullActions .sw-button, .sw-mobileFullActions > a {
    width: 100%;
    max-width: none;
}

.sw-searchBar__secondaryFilters {
    display: flex;
    justify-content: flex-start;
    flex-flow: column wrap;
    max-width: 100%;
    padding-top: .8rem;
}

.sw-heroBody__search .sw-searchBar__button, .sw-heroBody__search .sw-searchBar__item, .sw-heroBody__search .sw-searchBar__secondaryFilters {
    padding-top: 0;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters {
    gap: 1rem;
    margin-top: 0;
    flex-flow: row wrap;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters > * {
    flex: 1 0 100%;
    width: 100%;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters > .sw-checkbox, .sw-heroBody__search .sw-searchBar__secondaryFilters > .sw-search--option:has(.sw-checkbox) {
    flex: 0 1 auto;
    width: auto;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters .sw-search--option {
    min-height: 2.8rem;
    padding: 0;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters .sw-rangeInput__control, .sw-heroBody__search .sw-searchBar__secondaryFilters .sw-select__control {
    color: var(--sw-color-control-text);
}

.sw-heroBody__search .sw-searchBar__secondaryFilters .sw-checkbox {
    flex-wrap: nowrap;
    width: auto;
    min-height: 4.8rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--sw-color-control-text);
    align-items: center;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters .sw-checkbox__control {
    align-self: center;
}

.sw-heroBody__search .sw-searchBar__secondaryFilters .sw-checkbox__textControl {
    flex: 0 1 auto;
}

.sw-singleIntro__content p:first-child, .sw-accountProfilePage:not(.sw-profileEditPage) .sw-accountAvatar--agency, .sw-accountProfilePage:not(.sw-profileEditPage) .sw-logo.sw-accountAvatar--agency, .sw-accountPrivacyNote, .sw-heroBody__search .sw-searchBar > .sw-searchBar__button {
    margin-top: 0;
}

.sw-localSeo__group {
    align-items: start;
    border: 1px solid #e1e8e4;
    border-radius: 8px;
    background: #fbfdfc;
    display: grid;
    gap: 1rem;
    padding: 1.4rem;
}

.sw-localSeo__heading {
    margin: 0;
    color: #2f3944;
    font-weight: 900;
    line-height: 1.25;
    font-size: 1.6rem;
}

.sw-localSeo__links a {
    border: 1px solid #d7e0dc;
    border-radius: 999px;
    background: var(--sw-color-white);
    box-shadow: 0 4px 10px rgba(34, 43, 53, .04);
    color: #4b5661;
    font-size: 1.34rem;
    font-weight: 800;
    line-height: 1.25;
    text-decoration: none;
    transition: color .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
    display: inline-flex;
    align-items: center;
    min-height: 3.2rem;
    padding: .5rem .9rem;
}

.sw-mortgageCalc__label, .sw-mortgageCalc__metaRow {
    justify-content: space-between;
    display: flex;
    align-items: center;
    gap: .8rem;
}

.sw-authorPage {
    z-index: 2;
    margin-top: -6.5rem;
}

.sw-authorPage__content {
    max-width: 112rem;
    margin: 0 auto 5rem;
    overflow: visible;
    margin-bottom: 3rem;
}

.sw-authorHeroCard__head {
    display: flex;
    justify-content: center;
    padding: 2.2rem 1.6rem 1.2rem;
}

.sw-authorLogo {
    width: min(24rem, 82%);
    height: 8.8rem;
}

.sw-authorLogo .sw-image {
    max-width: 100%;
    object-fit: contain;
    max-height: 8.8rem;
}

.sw-authorTabs {
    --sw-author-tab-gutter: 1.6rem;
}

.sw-authorTabs .sw-tabBar {
    justify-content: flex-start;
    padding: 0;
    gap: .6rem;
}

.sw-authorTabs .sw-tab {
    gap: .5rem;
    min-width: auto;
    color: #5d6570;
    font-weight: 600;
    border-radius: 4px 4px 0 0;
    height: 3.2rem;
    padding: 0 .9rem;
    font-size: 1.28rem;
    line-height: 3.2rem;
}

.sw-authorTabs .sw-tabContent {
    margin-block: 0 3rem;
    min-height: 13rem;
    padding: 2rem 0 2.2rem;
    box-shadow: none;
    border: 0;
    padding-top: 1.6rem;
}

.sw-authorActions .sw-button {
    flex: 1 1 16rem;
    gap: .55rem;
    max-width: none;
    border-radius: 5px;
    font-weight: 800;
    line-height: 1;
    width: 100%;
    min-width: 0;
    height: 4.6rem;
    min-height: 0;
    padding: 0 .8rem;
    font-size: 1.4rem;
}

.sw-authorAddress {
    flex-wrap: wrap;
    margin-top: 2.1rem;
    color: #39424c;
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    font-size: 1.4rem;
    line-height: 1.45;
}

.sw-authorAddress > strong {
    flex: 1 1 calc(100% - 2.4rem);
}

.sw-authorAddress .sw-underline {
    gap: .45rem;
    color: var(--sw-color-brand);
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    margin-left: 2.25rem;
}

.sw-modal--filters .sw-modal__content {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
    background-image: none;
    padding: 0 1.6rem 1.4rem;
}

.sw-modal--filters .sw-searchFilters--opener {
    padding: 1.6rem 0;
    min-height: 6.4rem;
}

.sw-modal--filters .sw-searchFilters--row-switch .sw-searchFilters--opener {
    align-items: flex-start;
    gap: .8rem 1.2rem;
}

.sw-modal--filters .sw-searchFilters--row-switch .sw-searchFilters--label {
    flex: 0 0 100%;
}

.sw-modal--filters .sw-searchFilters--row-switch .sw-searchFilters--value {
    flex: 1 1 100%;
    min-width: 0;
    width: 100%;
    margin-left: 0;
}

.sw-modal--filters .sw-searchFilters--row-switch .sw-searchFilters--value .sw-switch--group {
    width: 100%;
    margin: .8rem 0 0;
    gap: .8rem;
    justify-content: space-between;
    align-items: flex-start;
}

.sw-modal--filters .sw-searchFilters--row-switch .sw-searchFilters--value .sw-switch__item {
    max-width: 100%;
}

.sw-modal--filters .sw-searchFilters--row-switch .sw-searchFilters--value .sw-switch__control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: auto;
    min-height: 3.5rem;
    white-space: normal;
    text-align: center;
    line-height: 1.25;
}

.sw-modalWrapper {
    animation: sw-motion-opacity-out .25s ease-in-out;
    display: flex;
    position: fixed;
    inset: 0;
    flex-direction: column;
    min-height: 100vh;
    height: 100dvh;
    background-color: rgba(7, 21, 14, .66);
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 10000;
    touch-action: auto;
    width: 100%;
    backdrop-filter: blur(2px);
    align-items: stretch;
    justify-content: flex-start;
    padding: 0;
}

.sw-modal {
    display: none;
    flex: 0 0 auto;
    background-color: var(--sw-color-white);
    z-index: 1;
    animation: fade-in 200ms ease-in-out;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(27, 76, 44, .14);
    box-shadow: 0 26px 70px rgba(11, 23, 16, .32);
    width: 100vw;
    max-width: none;
    height: 100dvh;
    max-height: 100dvh;
    margin: 0;
    border-radius: 0;
}

.sw-modal__content {
    padding: 2.4rem;
    overflow-x: hidden;
    overflow-y: auto;
    background: var(--sw-color-white);
    overscroll-behavior-y: contain;
    width: 100%;
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
}

.sw-modal__bottom {
    justify-content: flex-end;
    padding: 1.4rem 2.4rem;
    border-top: 1px solid #e8eeeb;
    border-bottom: 0;
    background: #f7faf8;
    position: sticky;
    bottom: 0;
    z-index: 3;
    margin-top: auto;
    padding-bottom: max(1.4rem, env(safe-area-inset-bottom));
}

.sw-contactForm {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.4rem 1.6rem;
    margin: 0;
    border: 1px solid #e2e2e2;
    border-radius: 4px;
    background-color: #fafafa;
    box-shadow: none;
    width: 100%;
    display: grid;
    padding: 1.4rem;
}

.sw-singleGallery {
    background: #eef1f3;
    overflow: hidden;
    border-radius: 0;
}

.sw-singleGallery__thumbs {
    inset-block: auto 1.2rem;
    right: auto;
    justify-content: flex-start;
    max-width: calc(100% - 3.2rem);
    overflow-x: auto;
    scrollbar-width: none;
    display: none;
}

.sw-singleGallery .sw-xswipe__fullscreen {
    z-index: 5;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    color: #303841;
    box-shadow: 0 6px 18px rgba(25, 31, 38, .14);
    display: flex;
    align-items: center;
    justify-content: center;
    top: 1rem;
    right: 1rem;
    width: 3.8rem;
    aspect-ratio: 1;
}

.sw-singleGallery__thumb {
    flex: 0 0 9.2rem;
    padding: .2rem;
    border: 2px solid rgba(255, 255, 255, .76);
    border-radius: 5px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 4px 14px rgba(25, 31, 38, .2);
    cursor: pointer;
    pointer-events: auto;
    overflow: hidden;
    flex-basis: 7.2rem;
    width: 7.2rem;
    height: 4.6rem;
}

.sw-singleGallery .sw-xswipe__arrow {
    inset-block: 50% auto;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .94);
    color: #303841;
    transform: translateY(-50%);
    box-shadow: 0 5px 18px rgba(25, 31, 38, .18);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.8rem;
    aspect-ratio: 1;
}

.sw-singleGallery .sw-xswipe__arrow--prev {
    transform: translateY(-50%) rotate(180deg);
}

.sw-singleHero .sw-info-bar {
    margin: 0;
    border-bottom: 1px solid #e1e4e8;
    padding: 1.2rem;
}

.sw-singleFacts .sw-list__item {
    min-height: 4.8rem;
    align-items: flex-start;
    color: #4f5964;
    min-width: 7.8rem;
    padding: 0 1rem;
}

.sw-singlePrice {
    display: flex;
    flex-direction: column;
    color: #535c67;
    white-space: nowrap;
    width: 100%;
    align-items: flex-start;
    margin-left: 0;
    text-align: left;
}

.sw-singleSavedNote {
    gap: 1.35rem;
    border: 1px solid #dfe6e2;
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdfc);
    box-shadow: 0 10px 26px rgba(36, 45, 55, .06);
    display: grid;
    margin: 1.8rem 0 1.4rem;
    padding: 1.3rem;
}

.sw-singleSavedNote__body {
    border: 1px solid #e6ebe8;
    border-left: 4px solid var(--sw-color-brand);
    border-radius: 8px;
    background: var(--sw-color-white);
    padding: 1.35rem 1.45rem;
}

.sw-singleIntro__header {
    gap: 1.3rem;
    border-bottom: 1px solid #edf0f3;
    display: flex;
    align-items: flex-start;
    padding: 1.4rem;
}

.sw-singleIntro__content {
    color: #59636f;
    font-size: 1.55rem;
    line-height: 1.75;
    margin-inline: auto;
    padding: 1.6rem;
    max-width: none;
}

.sw-singleDetails {
    gap: 1.6rem;
    display: grid;
    margin: 2.2rem 0;
}

.sw-singleDetailCard__header {
    justify-content: space-between;
    gap: 1.2rem;
    min-height: 5.4rem;
    padding: 1.4rem 1.6rem;
    border-bottom: 1px solid #edf0f3;
    display: flex;
    text-align: left;
    align-items: flex-start;
    flex-direction: column;
}

.sw-singleDetailRow {
    padding: 1.2rem 1.3rem;
    border: 1px solid #edf0f3;
    border-radius: 6px;
    background: #fff;
    gap: .8rem;
    min-height: 0;
}

.sw-singleDetailRow__value {
    color: #303841;
    font-size: 1.35rem;
    font-weight: 900;
    line-height: 1.25;
    overflow-wrap: anywhere;
    min-width: 0;
    max-width: none;
    text-align: left;
}

.sw-singleMapFrame {
    border: 1px solid #e2e6eb;
    border-radius: 8px;
    background: #eef1f3;
    overflow: hidden;
    height: 26rem;
}

.sw-singleAgency {
    width: 100%;
    align-items: center;
    border: 1px solid #edf0f3;
    border-radius: 8px;
    background: #fff;
    grid-template-columns: 9.8rem 1fr;
    gap: 1.2rem;
    padding: 1rem;
}

.sw-singleContact .sw-sidebar__actions {
    gap: 0;
    padding: 0;
    border-top: 1px solid #e1e5e9;
    background: #f8f9fa;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.sw-title {
    display: block;
    font-weight: 600;
    text-align: center;
    max-width: 100%;
    width: max-content;
    margin: 2rem auto;
    position: relative;
    font-size: 2.4rem;
    line-height: 3rem;
}

.sw-heroBody__search {
    display: flex;
    flex-flow: column;
    background-color: rgb(0 0 0 / 10%);
    max-width: 64rem;
    margin-top: 2rem;
    padding: 1rem 1.6rem;
    gap: 10px;
    width: 100%;
    padding-inline: .9rem;
    backdrop-filter: none;
}

.sw-autocompleteFull {
    position: fixed;
    inset: 0;
    width: 100vw;
    max-width: none;
    min-height: 100vh;
    height: 100dvh;
    margin: 0;
    z-index: 10020;
    border: none;
    border-radius: 0;
    overflow-y: auto;
}

body.sw-autocompleteFullOpen {
    overflow: hidden;
}

.sw-autocompleteFull .sw-autocomplete__list {
    box-shadow: none;
    position: relative;
    top: 0;
    border: none;
    border-radius: 0;
    max-height: none;
    padding: .6rem 0;
}

.sw-autocompleteFull .sw-autocomplete__list li {
    padding: 0;
    border-bottom-color: #e8e8e8;
}

.sw-autocompleteFull .sw-autocomplete__item {
    min-height: 4.4rem;
    padding: 1rem 1.4rem;
}

.sw-autocompleteFull .sw-autocomplete__container {
    border-bottom: 1px solid #217e42;
    margin: 0 auto 1em;
    max-width: 24em;
    height: 3em;
    flex-shrink: 0;
}

.sw-autocompleteFull .sw-autocomplete__close {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 4.8rem;
    flex-shrink: 0;
    padding: 0 1.6rem;
    font-weight: 600;
    cursor: pointer;
    overflow: hidden;
    background: rgba(0, 0, 0, .06);
}

.sw-archiveNav .sw-button__optionalText, .sw-articleActions .sw-button:not(.sw-articleActions__contact) strong, .sw-responsive-phoneUp, .sw-article__author {
    display: none;
}

.sw-authorActions {
    justify-content: stretch;
    margin-top: 1.6rem;
    padding-top: 1.6rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    width: 100%;
    align-items: stretch;
}

.sw-rangeInput__menu .sw-dialog__header, .sw-select__menu .sw-dialog__header {
    min-height: 5.6rem;
    padding: 0 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sw-rangeInput__menu .sw-dialog__header .sw-title, .sw-select__menu .sw-dialog__header .sw-title {
    width: 100%;
    text-align: center;
}

.sw-rangeInput__menu .sw-dialog__header .sw-dialog__back, .sw-select__menu .sw-dialog__header .sw-dialog__back {
    inset-block: 0 0;
    left: 0;
    min-width: 9.6rem;
    min-height: 5.6rem;
    padding: 0 1.4rem;
    align-items: center;
    justify-content: center;
    line-height: 1;
    z-index: 1;
}

@media (prefers-reduced-motion: reduce) {
    img:is(.sw-imageLoading, [loading="lazy"]:not(.is-imageLoaded), .sw-image:not(.is-imageLoaded), .sw-authors--image:not(.is-imageLoaded), .sw-sbar--image:not(.is-imageLoaded), .sw-qualityAgent--image:not(.is-imageLoaded), .sw-cardBox__image:not(.is-imageLoaded)) {
        animation: none;
    }
}

@media all and (min-width: 480px) {
    .sw-title {
        font-size: 3rem;
        line-height: 4rem;
    }

    .sw-archiveSummary {
        margin: 1.2rem 0 1.6rem;
        padding: 1.2rem;
    }

    .sw-archiveHero__eyebrow {
        min-height: 1.8rem;
        margin-bottom: .25rem;
        font-size: 1.25rem;
    }

    .sw-archiveHero__title {
        font-size: 2rem;
        line-height: 1.2;
    }

    .sw-archiveHero__heading {
        display: grid;
        grid-template-columns: 1fr auto;
        align-items: center;
        gap: 1rem 1.2rem;
    }

    .sw-archiveHero sw-orderby {
        min-width: 16rem;
    }

    .sw-archiveHero sw-orderby .sw-rangeInput__control {
        height: var(--sw-control-height);
        min-height: var(--sw-control-height);
        padding-inline: var(--sw-control-padding-x);
        font-size: 1.55rem;
    }

    .sw-archiveInsight {
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 1rem;
        margin-top: 1.2rem;
        padding: 1rem 1.2rem 0;
    }

    .sw-archiveInsight__icon {
        margin-left: 0;
        flex-basis: 4.4rem;
        width: 4.4rem;
    }

    .sw-archiveInsight__title {
        font-size: 1.55rem;
        line-height: 1.25;
    }

    .sw-archiveInsight__text {
        font-size: 1.25rem;
        line-height: 1.35;
    }

    .sw-archiveInsight__value {
        justify-self: end;
        margin-left: 0;
        padding: .65rem 1.4rem;
        font-size: 1.9rem;
    }

    .sw-articleFacts .sw-list__item {
        min-height: 4.8rem;
        padding: 0 .8rem;
    }

    .sw-articleFacts .sw-list__item item {
        gap: .4rem;
    }

    .sw-articleFacts .sw-list__item .sw-icon {
        width: 1.8rem;
    }

    .sw-articleFacts .sw-list__item strong {
        font-size: 1.55rem;
    }

    .sw-articleFacts .sw-list__item:not(.sw-articleFacts__price)::after {
        font-size: .95rem;
    }

    .sw-articleFacts__price .sw-immo--price {
        font-size: 1.75rem;
    }

    .sw-articleActions .sw-button:not(.sw-articleActions__contact) {
        flex: 1 1 7.2rem;
        width: auto;
        padding-inline: .55rem;
    }

    .sw-responsive-phoneUp, .sw-articleActions .sw-button:not(.sw-articleActions__contact) strong {
        display: block;
    }

    .sw-articleActions__contact.sw-button {
        order: 0;
        margin-left: .15rem;
    }

    .sw-heroBody__search {
        backdrop-filter: blur(3px);
    }

    .sw-navbar > .sw-heroBrand__navbar {
        inset-inline: 5.4rem 9.8rem;
    }

    .sw-navbar > .sw-heroBrand__navbar .sw-heroBrand__navbar {
        max-width: min(100%, 17rem);
        max-height: 1.28em;
    }

    .sw-agencySearchForm.sw-agencySearchForm {
        grid-template-columns: 1fr auto;
    }

    .sw-agencySearchForm .sw-button {
        width: auto;
        min-width: 12rem;
    }

    .sw-notFoundCard {
        grid-template-columns: 5.6rem 1fr 2rem;
        min-height: 10rem;
        padding: 1.8rem;
    }

    .sw-notFoundCard__icon {
        width: 5rem;
    }

    .sw-container {
        padding: 0 1rem 2em;
    }

    .sw-select.is-open .sw-select__menu {
        border-color: var(--sw-color-border);
    }

    .sw-dropdown {
        position: absolute;
        box-shadow: 0 2px 8px 1px rgba(0, 0, 0, .4);
        width: 280px;
        height: auto;
    }

    .sw-select__menu {
        position: absolute;
        max-height: 29rem;
        height: auto;
        top: calc(100% + var(--sw-dropdown-offset, .4rem));
    }

    .sw-rangeInput__menu {
        position: absolute;
        max-height: 30rem;
        height: auto;
        top: calc(100% + var(--sw-dropdown-offset, .4rem));
        min-width: 21em;
        z-index: 1;
    }

    .sw-autocompleteFull {
        position: relative;
        inset: auto;
        min-height: 0;
        height: auto;
        z-index: auto;
        overflow: visible;
    }

    .sw-rangeInput__menu [data-mobile], .sw-select__menu [data-mobile], .sw-lead, .sw-autocompleteFull .sw-autocomplete__close {
        display: none;
    }

    .sw-autocompleteFull .sw-autocomplete__container {
        max-width: none;
        height: auto;
        margin: 0;
        border-bottom: 0;
    }

    .sw-autocompleteFull .sw-autocomplete__list {
        position: absolute;
        top: calc(100% + var(--sw-dropdown-offset, .4rem));
        right: 0;
        left: 0;
        z-index: 20;
        max-height: 31.3rem;
        border: 1px solid var(--sw-color-border);
        border-radius: var(--sw-radius-sm);
        box-shadow: var(--sw-dropdown-shadow, 0 14px 28px rgba(31, 42, 51, .14));
        background: var(--sw-color-white);
        padding: .4rem 0;
    }

    .sw-sbar--qualityAgent {
        margin: auto;
        max-width: 320px;
    }

    .sw-cookieBanner__wrapper {
        bottom: 1em;
    }

    .sw-slider__item {
        flex: 0 0 calc(50% - 10px);
    }
}

@media all and (min-width: 768px) {
    .sw-reservedPage, .sw-managePostsPage {
        --sw-page-gutter: var(--sw-page-gutter-global);
        --sw-page-margin: 2.4rem auto 4rem;
    }

    .sw-archiveNav #search-form .sw-searchBar__item {
        min-width: 0;
    }

    .sw-archiveNav #search-form .sw-select__control > span:first-child, .sw-archiveNav #search-form .sw-rangeInput__control > span:first-child {
        min-width: 0;
        flex: 1 1 auto;
    }

    .sw-archiveNav #search-form .sw-select__arrow, .sw-archiveNav #search-form .sw-rangeInput__arrow {
        flex: 0 0 auto;
    }

    .sw-archiveNav__row--tools {
        gap: .8rem 1.2rem;
        flex-wrap: nowrap;
    }

    .sw-archiveNav .sw-tabBar {
        --sw-actionButton-padding: 0 .7rem;
        flex: 0 1 auto;
        width: auto;
        max-width: 100%;
    }

    .sw-archiveNav .sw-breadcrumb {
        flex: 1 1 28rem;
        justify-content: flex-end;
        width: auto;
        min-width: 0;
        max-width: 100%;
        margin-left: auto;
        padding-top: 0;
        white-space: nowrap;
        overflow: hidden;
    }

    .sw-archiveNav .sw-breadcrumb .wpfs-breadcrumb {
        flex-wrap: nowrap;
        justify-content: flex-end;
        min-width: 0;
        overflow: hidden;
    }

    .sw-archiveNav .wpfs-breadcrumb-item {
        min-width: max-content;
        overflow: visible;
    }

    .sw-archiveNav .wpfs-breadcrumb-item:has(.wpfs-breadcrumb-current) {
        flex: 1 1 auto;
        min-width: 0;
        overflow: hidden;
    }

    .sw-archiveNav .wpfs-breadcrumb-current {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .sw-pageIntro, .sw-cardEntity__head, .sw-cardEntity__foot {
        flex-direction: row;
        align-items: center;
    }

    .sw-serviceQuickActions .sw-button {
        width: auto;
        min-width: 18rem;
    }

    .sw-homeSeo__title.sw-title {
        font-size: 3rem;
    }

    .sw-cardEntity__grid {
        grid-template-columns: 1.1fr .9fr;
    }

    .sw-cardEntity__section--full {
        grid-column: 1 / -1;
    }

    .sw-agencyManageToolbar {
        flex-direction: row;
    }

    .sw-accountHero, .sw-accountSubscription, .sw-accountManagePanel {
        gap: 2.6rem;
        padding: 2.4rem;
    }

    .sw-accountProfilePage:not(.sw-profileEditPage) .sw-accountHero {
        gap: 4.4rem;
    }

    .sw-accountSubscription {
        grid-template-columns: auto 1fr auto;
    }

    .sw-accountManagePanel {
        grid-template-columns: minmax(24rem, .32fr) 1fr;
    }

    .sw-articleFacts {
        flex-wrap: wrap;
        overflow: visible;
    }

    .sw-articleFacts .sw-list__item {
        flex: 1 1 8.4rem;
        min-width: 7.8rem;
        padding: 0 1.4rem;
    }

    .sw-articleFacts .sw-list__item item {
        gap: .7rem;
    }

    .sw-articleFacts .sw-list__item strong {
        font-size: 1.7rem;
    }

    .sw-articleFacts .sw-list__item:not(.sw-articleFacts__price)::after {
        font-size: 1.05rem;
    }

    .sw-articleFacts__price {
        gap: 0;
        overflow-x: auto;
    }

    .sw-articleFacts__price .sw-immo--price {
        width: 7.2rem;
        min-width: 7.2rem;
        margin-right: 1rem;
        padding-right: 1rem;
    }

    .sw-articleActions {
        flex: 1 1 auto;
        padding: 0 1.25rem;
        gap: .55rem;
        min-width: 0;
    }

    .sw-articleActions .sw-button {
        flex: 1 1 0;
        margin-left: 0;
        font-size: 1.35rem;
    }

    .sw-articleActions .sw-icon {
        width: 1.55rem;
    }

    .sw-articleActions__contact.sw-button {
        flex: 1.25 1 11rem;
        min-width: 11rem;
        margin-left: .4rem;
        border-radius: 4px;
    }

    .sw-archiveHero {
        align-items: flex-end;
        flex-wrap: nowrap;
        gap: 1.6rem;
    }

    .sw-archiveHero__title, .sw-singleDetails__title {
        font-size: 2.2rem;
    }

    .sw-archiveHero__heading {
        align-items: center;
        gap: 1.6rem;
    }

    .sw-archiveHero sw-orderby, .sw-savedPostsPage .sw-article__options .sw-button {
        margin-left: auto;
    }

    .sw-archiveHero__heading sw-orderby {
        align-self: center;
        margin-top: 0;
    }

    .sw-archiveSeo {
        padding: 2.4rem;
    }

    .sw-archiveRelatedFilters {
        grid-template-columns: minmax(18rem, .42fr) 1fr;
        align-items: center;
    }

    .sw-archiveAssist {
        grid-template-columns: .9fr 1.35fr;
        align-items: center;
        padding: 1.8rem;
    }

    .sw-archiveFreeSearch {
        flex: 1 1 34rem;
        flex-direction: row;
        align-items: center;
        flex-wrap: wrap;
        gap: 1.2rem;
    }

    .sw-archiveFreeSearch .sw-input {
        flex: 1 1 34rem;
        min-width: 28rem;
    }

    .sw-archiveFreeSearch .sw-button {
        flex: 0 0 14rem;
        width: auto;
    }

    .sw-archiveInsight {
        padding: 1.2rem 1.2rem 0;
        align-items: center;
    }

    .sw-archiveEmpty {
        grid-template-columns: minmax(18rem, .9fr) 1.7fr;
        padding: 2.4rem 0 0;
    }

    .sw-archiveEmpty__art {
        width: min(100%, 28rem);
    }

    .sw-modal__bottom {
        position: relative;
        bottom: auto;
        z-index: auto;
        margin-top: 0;
    }

    .sw-mobileActionStack > *, .sw-mobileFullActions, .sw-notFoundSearch__button, .sw-vpageHero__navigation .sw-navigation {
        width: auto;
    }

    .sw-personalExportCard {
        grid-template-columns: 1fr auto;
    }

    .sw-personalExportActions, .sw-cardEntity__actions, .sw-notFoundHero__art {
        flex: 1 1 0;
        min-height: 4.8rem;
        min-width: 0;
        font-size: 1.15rem;
    }

    .sw-vpageLegalChrome__inner {
        min-height: 6.4rem;
    }

    .sw-nav-secondary__list {
        grid-template-columns: repeat(3, 1fr);
        display: grid;
    }

    .sw-nav-secondary__link {
        min-height: 6.4rem;
        width: 100%;
    }

    .sw-vpageLegalLayout {
        grid-template-columns: 28rem 1fr;
        gap: 2rem;
    }

    .sw-vpageLegalIndex {
        grid-row: 1 / span 20;
    }

    .sw-vpageLegalSection {
        grid-template-columns: 5.4rem 1fr 4.4rem;
        gap: 0 2.2rem;
        padding: 3.2rem;
    }

    .sw-vpageLegalSection > * {
        grid-column: 2;
    }

    .sw-vpageLegalLayout .sw-vpageLegalDoc h2 {
        font-size: 2.4rem;
    }

    .sw-accountHero__media {
        justify-content: center;
        min-width: min(100%, 31rem);
    }

    .sw-accountProfilePage:not(.sw-profileEditPage) .sw-accountHero__media, .sw-singleHero .sw-gridRow, .sw-singleSavedNote__header, .sw-singleDetails__header, .sw-singleDetailCard__header {
        align-items: center;
    }

    .sw-accountProfilePage .sw-accountAvatar, .sw-accountProfilePage .sw-logo.sw-accountAvatar {
        --sw-avatar-width: 14.6rem;
        --sw-avatar-height: 14.6rem;
    }

    .sw-accountProfilePage .sw-accountAvatar--agent {
        --sw-avatar-width: 12.8rem;
        --sw-avatar-height: 12.8rem;
    }

    .sw-accountHero__head h1, .sw-homeGuides__title {
        font-size: 3.2rem;
    }

    .sw-accountRow {
        grid-template-columns: 18rem 1fr minmax(8rem, auto);
        min-height: 5.2rem;
    }

    .sw-accountRow__value {
        font-size: 1.45rem;
    }

    .sw-accountRow__action {
        justify-self: end;
    }

    .sw-accountManagePanel__content {
        padding-left: 2.6rem;
        border-left: 1px solid #e5e9e7;
    }

    .sw-profileEditActions {
        display: flex;
    }

    .sw-savedListPage {
        gap: 2rem;
    }

    .sw-savedListHero {
        grid-template-columns: auto 1fr minmax(22rem, auto);
        gap: 2rem;
        padding: 2.4rem;
    }

    .sw-savedListHero__actions {
        align-self: center;
        justify-self: end;
        width: min(100%, 24rem);
    }

    .sw-savedListEmpty {
        padding: 3.2rem 2rem;
    }

    .sw-serviceEmptyHero {
        gap: 2rem;
        min-height: 16rem;
        padding: 3rem;
    }

    .sw-serviceEmptyHero__title, .sw-serviceStat__value {
        font-size: 2.8rem;
    }

    .sw-serviceActionCard {
        grid-template-columns: 5.2rem 1fr;
        min-height: 13.8rem;
        padding: 2.3rem 2rem;
    }

    .sw-serviceQuickActions {
        grid-template-columns: 1fr auto;
        align-items: center;
        padding: 1.6rem 1.8rem;
        max-width: 100%;
    }

    .sw-managePostsPage > h1, .sw-localSeo__title {
        grid-template-columns: 1fr auto;
        justify-items: stretch;
        min-height: 4.2rem;
        padding: .8rem 1rem;
    }

    .sw-serviceStats {
        grid-template-columns: repeat(3, 1fr);
        width: 100%;
        max-width: 100%;
        gap: 1rem;
        padding: 1rem;
    }

    .sw-serviceStat {
        grid-template-columns: 1fr auto;
        justify-items: stretch;
        align-items: center;
        min-height: 4.2rem;
        padding: .8rem 1rem;
        text-align: left;
    }

    .sw-services__item {
        min-height: 29rem;
        padding: 2rem 1.8rem;
    }

    .sw-notice--restricted {
        width: min(100% - 3.2rem, 720px);
        margin: 3rem auto 5rem;
        padding: 3.2rem;
    }

    .sw-notice--restricted .sw-notice__title {
        font-size: 2.7rem;
    }

    .sw-cservicesCard .sw-cservices_title {
        padding: 1.6rem 1.8rem;
        font-size: 2rem;
        align-items: center;
    }

    .sw-cservicesCard .sw-cservices_body {
        grid-template-columns: repeat(2, 1fr);
        padding: 1.8rem;
    }

    .sw-homeSeo__links, .sw-teamMemberCard__fields, .sw-vpageGrid--cards {
        grid-template-columns: repeat(2, 1fr);
    }

    .sw-cservicesCard .sw-cservices_details--item {
        grid-template-columns: minmax(130px, .42fr) 1fr;
        gap: 1rem;
    }

    .sw-article {
        margin: 2.5rem auto;
    }

    .sw-article__title {
        margin: 0;
    }

    .sw-hero__body {
        padding: 3.2rem 0 4.8rem;
    }

    .sw-GeoMap--single {
        width: 100%;
        aspect-ratio: auto;
        border-radius: 14px;
    }

    .sw-GeoMapToolbar {
        right: 1.6rem;
        gap: .8rem;
    }

    .sw-GeoMapToolbar__button {
        width: 42px;
        border-radius: 14px;
    }

    .sw-searchBarFull {
        border-radius: 0;
        border: 1px solid #217e42;
    }

    .sw-localSeo {
        padding: 2.2rem;
    }

    .sw-localSeo__group {
        grid-template-columns: 4.4rem 1fr;
        gap: 1.4rem;
        padding: 1.8rem;
    }

    .sw-localSeo__heading {
        font-size: 1.72rem;
    }

    .sw-localSeo__links a {
        min-height: 3.6rem;
        padding: .55rem 1rem;
    }

    .sw-authorPage {
        margin-top: -9.6rem;
    }

    .sw-authorPage__content {
        margin: 0 auto 5rem;
    }

    .sw-authorHeroCard__head {
        padding: 2.9rem 2rem 1.6rem;
    }

    .sw-authorLogo {
        width: min(30rem, 78%);
        height: 11rem;
    }

    .sw-authorLogo .sw-image {
        max-height: 11rem;
    }

    .sw-authorTabs {
        --sw-author-tab-gutter: 3rem;
    }

    .sw-authorTabs .sw-tabContent {
        padding: 2rem 0 2.2rem;
    }

    .sw-authorOverview .sw-cardEntity__title {
        font-size: 2.1rem;
    }

    .sw-authorActions .sw-button {
        height: 4.4rem;
        font-size: 1.45rem;
    }

    .sw-authorAddress {
        gap: .9rem;
        font-size: 1.45rem;
        align-items: center;
    }

    .sw-authorAddress .sw-underline {
        margin-left: .2rem;
    }

    .sw-modal--filters .sw-modal__content {
        padding: 0 2.4rem 1.6rem;
    }

    .sw-modal--filters .sw-searchFilters--opener {
        min-height: 7.2rem;
    }

    .sw-modalWrapper {
        flex-basis: auto;
        flex-grow: 1;
        flex-shrink: 1;
    }

    .sw-modal__content {
        flex-basis: auto;
        flex-grow: 1;
        flex-shrink: 1;
        min-height: 0;
    }

    .sw-cservicesCard, .sw-contactForm {
        padding: 1.8rem;
    }

    .sw-singleGallery {
        border-radius: 8px 8px 0 0;
    }

    .sw-singleGallery .sw-xswipe__fullscreen {
        top: 1.6rem;
        right: 1.6rem;
        width: 4.2rem;
    }

    .sw-singleGallery__thumb {
        width: 9.2rem;
        height: 5.8rem;
    }

    .sw-singleGallery__thumbs {
        display: flex;
    }

    .sw-singleGallery .sw-xswipe__arrow {
        width: 4.6rem;
    }

    .sw-singleHero .sw-info-bar {
        padding: 1.4rem 1.8rem;
    }

    .sw-singleHero .sw-gridRow {
        flex-wrap: nowrap;
    }

    .sw-archiveHero__copy, .sw-archiveHero__title, .sw-singleFacts {
        flex: 1 1 auto;
        min-width: 0;
    }

    .sw-singleFacts .sw-list__item {
        min-width: 9.2rem;
        padding: 0 1.6rem;
    }

    .sw-singlePrice {
        flex: 0 0 auto;
        width: auto;
        align-items: flex-end;
        margin-left: auto;
        text-align: right;
    }

    .sw-singleSavedNote {
        margin: 2.4rem 0 1.8rem;
        padding: 1.6rem;
    }

    .sw-singleIntro__header {
        padding: 1.6rem 1.8rem;
        align-items: center;
    }

    .sw-singleIntro__title {
        font-size: 2.45rem;
    }

    .sw-singleIntro__content {
        padding: 2.4rem 2.8rem;
        max-width: 92rem;
    }

    .sw-singleDetails {
        margin: 3rem 0;
    }

    .sw-singleDetailRow {
        grid-template-columns: 1fr auto;
        gap: 1.2rem;
        min-height: 5.2rem;
    }

    .sw-singleDetailRow__value {
        max-width: 22rem;
        text-align: right;
    }

    .sw-singleMapFrame {
        height: 38rem;
    }

    .sw-singleAgency {
        grid-template-columns: 11.8rem 1fr;
        gap: 1.6rem;
        padding: 1.2rem;
    }

    .sw-notFoundPage {
        width: min(100% - 3.2rem, 96rem);
        padding: 3.2rem 0 4rem;
    }

    .sw-notFoundHero {
        grid-template-columns: minmax(28rem, .9fr) minmax(34rem, 1fr);
        gap: 3.2rem;
    }

    .sw-notFoundIllustration {
        width: min(56rem, 100%);
    }

    .sw-notFoundHero__content {
        max-width: 64rem;
    }

    .sw-notFoundHero__content h1 {
        font-size: clamp(3.2rem, 3.4vw, 4.8rem);
        line-height: 1.04;
    }

    .sw-notFoundActions {
        display: flex;
        flex-direction: row;
        gap: 1.4rem;
    }

    .sw-notFoundButton {
        width: auto;
        min-height: 5rem;
    }

    .sw-notFoundSearch {
        padding: 2.2rem 2.4rem 2.6rem;
    }

    .sw-notFoundSearch__row {
        flex-direction: row;
        gap: 1.2rem;
    }

    .sw-notFoundExplore {
        margin-top: 4.6rem;
    }

    .sw-notFoundCards {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.6rem;
    }

    .sw-mortgageCalc__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.4rem 1.8rem;
        padding: 1.8rem;
    }

    .sw-container {
        padding: 0 1em 2em;
    }

    .sw-headerBar {
        padding: 1em;
    }

    .sw-article__content {
        max-width: unset;
        padding-left: 1em;
        width: 60%;
    }

    .sw-list__item:after {
        content: attr(aria-label);
        color: #5c5c5c;
    }

    .sw-sbar--agency {
        width: 50%;
    }

    .sw-footerDisclaimer {
        display: inline-flex;
    }

    .sw-article__image {
        width: 40%;
    }

    .sw-heroBody__search {
        max-width: 116rem;
        width: calc(100% - 2.4rem);
        margin-inline: auto;
        padding-inline: 0;
        padding-top: 1.6rem;
        border-radius: 3px;
    }

    .sw-heroBody__search .sw-searchController {
        padding-inline: 1rem;
    }

    .sw-heroBody__search .sw-searchBar {
        gap: 0;
        padding: 0;
        background: transparent;
    }

    .sw-heroBody__search .sw-searchBar__mainFilters {
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 0;
        min-height: 5.2rem;
        width: calc(100% - 2rem);
        margin-inline: 1rem;
        border-radius: 4px;
        background: var(--sw-color-white);
    }

    .sw-heroBody__search .sw-searchBar__item {
        flex: 1 1 0;
        width: auto;
        max-width: 40%;
        padding: 0;
        position: relative;
    }

    .sw-heroBody__search .sw-searchBar__item--location {
        flex: 1.45 1 0;
        max-width: none;
    }

    .sw-heroBody__search .sw-searchBar__button {
        flex: 0 0 10rem;
        width: auto;
        max-width: none;
        padding: .8rem;
        white-space: nowrap;
    }

    .sw-responsive-mobileUp, .sw-navigation, .sw-heroBody__search .sw-searchBar__button.sw-responsive-tabletUp {
        display: block;
    }

    .sw-heroBody__search .sw-searchBar__button .sw-button {
        height: 100%;
        min-height: 3.6rem;
        border-radius: 3px;
    }

    .sw-heroBody__search .sw-searchBar__item--location > .sw-autocomplete {
        position: relative;
        inset: auto;
        z-index: 12;
        width: 100%;
        min-height: 0;
        height: auto;
        border: 0;
        border-radius: 0;
        background: transparent;
        overflow: visible;
    }

    .sw-heroBody__search .sw-searchBar__item--location .sw-autocomplete__container, .sw-heroBody__search .sw-searchBar__item--location .sw-autocomplete__input {
        min-height: 5.2rem;
    }

    .sw-heroBody__search .sw-searchBar__item .sw-select__control, .sw-heroBody__search .sw-searchBar__item .sw-rangeInput__control {
        min-height: 5.2rem;
        height: 5.2rem;
        padding: 0 1.6rem;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .sw-heroBody__search .sw-searchBar__item .sw-select__control > span:first-child, .sw-heroBody__search .sw-searchBar__item .sw-rangeInput__control > span:first-child {
        flex: 1 1 auto;
        text-align: left;
    }

    .sw-heroBody__search .sw-autocomplete__container > .sw-icon:first-child {
        margin-inline: 1.2rem 1.4rem;
    }

    .sw-responsive-mobileDown, .sw-heroBody__search .sw-autocompleteFull .sw-autocomplete__close {
        display: none;
    }

    .sw-heroBody__search .sw-autocompleteFull .sw-autocomplete__container {
        max-width: none;
        height: auto;
        margin: 0;
        border-bottom: 0;
    }

    .sw-heroBody__search .sw-autocompleteFull .sw-autocomplete__list {
        position: absolute;
        top: calc(100% + var(--sw-dropdown-offset, .6rem));
        right: 0;
        left: 0;
        z-index: 20;
        max-height: 31.3rem;
        border: 1px solid var(--sw-color-border);
        border-radius: var(--sw-radius-sm);
        box-shadow: var(--sw-dropdown-shadow, 0 14px 28px rgba(31, 42, 51, .14));
        background: var(--sw-color-white);
        padding: .4rem 0;
    }

    .sw-searchContract__link {
        flex: 0 1 auto;
    }

    .sw-searchBar__secondaryFilters {
        flex: 1 0 100%;
        flex-direction: row;
        align-items: center;
        order: 4;
        width: 100%;
        min-height: .8rem;
        margin-top: .5rem;
        gap: 2.2rem;
    }

    .sw-heroBody__search .sw-searchBar__secondaryFilters {
        margin-top: .5rem;
    }

    .sw-heroBody__search .sw-searchBar__secondaryFilters .sw-rangeInput__control, .sw-heroBody__search .sw-searchBar__secondaryFilters .sw-select__control {
        color: var(--sw-color-white);
    }

    .sw-heroBody__search .sw-searchBar__secondaryFilters .sw-rangeInput.is-open .sw-rangeInput__control, .sw-heroBody__search .sw-searchBar__secondaryFilters .sw-select.is-open .sw-select__control {
        background-color: var(--sw-color-white);
        color: var(--sw-color-control-text);
    }

    .sw-heroBody__search .sw-searchBar__secondaryFilters .sw-checkbox {
        width: auto;
        min-height: 2.6rem;
        padding: 0;
        border: 0;
        background: transparent;
        color: var(--sw-color-white);
    }

    .sw-searchBar__secondaryFilters > * {
        width: auto;
        color: var(--sw-color-white);
    }

    .sw-heroBody__search .sw-searchBar__secondaryFilters > * {
        flex: 0 1 auto;
        width: auto;
    }

    .sw-search--option, .sw-heroBody__search .sw-search--option {
        min-height: 0;
        padding: 0 1rem;
    }

    .sw-rangeInput:not(.is-open):not(.not-ghost) > .sw-searchBar__ghostLabel, .sw-select:not(.is-open):not(.not-ghost) > .sw-searchBar__ghostLabel {
        border-color: transparent;
        background-color: transparent;
    }

    .sw-rangeInput:not(.is-open):not(.not-ghost) > .sw-searchBar__ghostLabel .sw-rangeInput__arrow, .sw-select:not(.is-open):not(.not-ghost) > .sw-searchBar__ghostLabel .sw-select__arrow {
        color: currentColor;
    }

    .sw-searchBar__button .sw-button {
        width: 100%;
    }

    .sw-searchBar .sw-rangeInput__menu .sw-stackItem, .sw-searchBar .sw-select__menu .sw-stackItem {
        min-width: 12rem;
        white-space: nowrap;
    }

    .sw-searchBar__item ~ .sw-searchBar__item:before {
        position: absolute;
        inset-block: 0 0;
        left: 0;
        border-left: 1px solid #c7c7c7;
        content: "";
    }

    .sw-heroBody__search .sw-searchBar__item ~ .sw-searchBar__item:before {
        content: none;
    }

    .sw-heroBody__search .sw-searchBar__item--location::after {
        position: absolute;
        inset-block: .9rem .9rem;
        right: 0;
        z-index: 13;
        border-left: 1px solid #d2d2d2;
        content: "";
        pointer-events: none;
    }

    .sw-hero-home {
        background-image: linear-gradient(var(--sw-color-brand), var(--sw-color-brand) 50%, transparent), url(../images/illustration-home.svg);
        background-position: bottom center;
        background-repeat: no-repeat;
    }

    .sw-heroBrand__slogan {
        width: 100%;
        fill: currentcolor;
        font-weight: 500;
        display: block;
        margin: 5px 0 10px;
    }

    .sw-heroBrand__logo {
        height: 5.8rem;
    }

    .sw-pageStrip {
        padding: 6.4rem 0;
    }

    .sw-homeGuides .sw-pageStrip__content {
        padding-inline: var(--sw-page-gutter-compact);
    }

    .sw-homeGuides__grid {
        grid-template-columns: repeat(2, 1fr);
        width: 100%;
        border-radius: 8px;
    }

    .sw-modal {
        max-height: min(88dvh, 78rem);
        margin: auto;
        border: 1px solid rgba(27, 76, 44, .14);
        width: min(92vw, 72rem);
        max-width: calc(100vw - 4rem);
        height: auto;
        border-radius: 8px;
        box-shadow: 0 26px 70px rgba(11, 23, 16, .32);
    }

    .sw-modal__title {
        font-size: 2rem;
    }

    .sw-modal__bottom, .sw-modal__header {
        --sw-page-margin: 3.2rem auto 5rem;
        gap: 2rem;
    }

    .sw-slider__item {
        flex: 0 0 calc(33.33% - 15px);
    }

    .sw-reservedProfilePage {
        --sw-page-gutter: var(--sw-page-gutter-global);
        --sw-page-margin: 3.2rem auto 5rem;
        gap: 2rem;
    }

    .sw-reservedProfileActions {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 1.6rem 2rem;
    }

    .sw-reservedProfileActions .sw-flex {
        flex-direction: row;
        justify-content: flex-end;
    }

    .sw-reservedProfileActions .sw-button {
        width: auto;
        min-width: 12.8rem;
    }

    .sw-teamMemberCard {
        grid-template-columns: 16rem 1fr;
        align-items: center;
        padding: 2.4rem;
    }

    .sw-teamManagerActions {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .sw-vpage .sw-pageStrip {
        padding: 5.6rem 0;
    }

    .sw-vpage .sw-pageStrip__content {
        padding-inline: 2rem;
    }

    .sw-vpageHero__navigation > * {
        gap: 0;
        padding-inline: 2rem;
    }

    .sw-vpageHero.sw-pageStrip {
        padding-block: 9rem 0;
        min-height: 38rem;
    }

    .sw-vpageHero__title {
        font-size: 4.2rem;
        line-height: 1.05;
    }

    .sw-vpageSection__title, .sw-vpageCta__title {
        font-size: 3rem;
        line-height: 1.14;
    }

    .sw-vpageHero__text, .sw-vpageFaq .sw-collapseTitle {
        font-size: 1.8rem;
    }

    .sw-vpageCta__text {
        font-size: 1.6rem;
    }

    .sw-vpageGrid--details, .sw-vpageSteps {
        grid-template-columns: repeat(3, 1fr);
    }

    .sw-vpageTopics {
        grid-template-columns: .7fr 1.3fr;
    }

    .sw-logoGrid {
        gap: 2rem;
    }

    .sw-cardEntity__actions, .sw-vpageCta__actions {
        width: auto;
        justify-content: flex-end;
    }

    .sw-vpageInfoIntro {
        grid-template-columns: 1fr minmax(260px, 330px);
        gap: 4rem;
    }

    .sw-vpageInfoFacts {
        position: sticky;
        top: 9rem;
    }

    .sw-vpageInfoLocation {
        grid-template-columns: minmax(260px, .46fr) 1fr;
        gap: 2.2rem;
    }

    .sw-vpageDarkPanel, .sw-serviceCta {
        padding: 3rem;
    }

    .sw-vpageInfoContact, .sw-vpageCta__inner, .sw-serviceCta {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .sw-vpageInfoContact .sw-button {
        flex: 0 0 auto;
        max-width: none;
    }

    .sw-serviceHero__content {
        grid-template-columns: 1fr 260px;
        padding-bottom: 7rem;
    }

    .sw-valuationTool {
        grid-template-columns: .95fr minmax(320px, 1.05fr);
        padding: 3rem;
    }

    .sw-valuationTool__search {
        border-top: 0;
        border-left: 4px solid var(--sw-color-accent);
    }
}

@media all and (min-width: 1024px) {
    .sw-responsive-tabletUp:not(.sw-searchBar) {
        display: block;
    }

    .sw-searchBar.sw-responsive-tabletUp.is-active {
        display: flex;
    }

    .sw-homeSeo__inner {
        gap: .6rem;
        padding: 1rem;
    }

    .sw-services {
        gap: 1.8rem;
    }

    .sw-cservices_list {
        padding: 1em 2em;
        border-radius: 3px;
        margin-bottom: 2em;
    }

    .sw-footerSection {
        flex: 0 1 0;
    }

    .sw-accountHero {
        grid-template-columns: minmax(20rem, auto) 1fr minmax(24rem, .34fr);
        gap: 5.8rem;
    }

    .sw-navbar {
        justify-content: flex-start;
        gap: 1.4rem;
        padding: 0 .8rem;
    }

    .sw-navbar__toggle {
        display: none;
    }

    .sw-navbar > .sw-heroBrand__navbar {
        position: static;
        inset: auto;
        z-index: auto;
        margin: 0 1.6rem 0 0;
        justify-content: flex-start;
        min-width: auto;
        overflow: visible;
    }

    .sw-navbar__account {
        margin-left: 1.2rem;
        padding-left: 1.2rem;
        border-left: 1px solid rgba(255, 255, 255, .34);
    }

    .sw-navbar .sw-navbar__primary {
        position: static;
        inset: auto;
        z-index: auto;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: flex-start;
        gap: 0;
        height: inherit;
        margin-left: auto;
        padding: 0;
        background: transparent;
        backdrop-filter: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
        transition: none;
    }

    .sw-navbar__primary .sw-navbar__item, .sw-navbar__primary .sw-navbar__link {
        width: auto;
        justify-content: flex-start;
        padding: .6rem;
        font-size: 1.4rem;
        line-height: inherit;
    }

    .sw-navbar__primary > .sw-navbar__item {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .sw-navbar__primary .sw-navbar__link {
        min-height: 0;
        border-bottom: 0;
    }

    .sw-navbar__primary .sw-navbar__item > .sw-navbar__link::after {
        display: block;
    }

    .sw-navbar__primary .sw-languages {
        min-width: 0;
        min-height: 0;
        margin: 0;
        border: 0;
    }

    .sw-grid {
        padding: 0 2.4rem;
    }

    .sw-xswipe--full .sw-xswipe__slider {
        overflow: hidden;
    }

    .sw-slider__item {
        flex: 0 0 calc(25% - 18px);
    }
}

@media all and (min-width: 1200px) {
    .sw-notFoundPage {
        width: min(150rem, calc(100% - 5.6rem));
        padding-top: 4.8rem;
    }

    .sw-notFoundHero {
        grid-template-columns: minmax(34rem, .92fr) minmax(36rem, .98fr);
        gap: clamp(4rem, 7vw, 10rem);
        min-height: 46rem;
    }

    .sw-notFoundCards {
        grid-template-columns: repeat(4, 1fr);
    }

    .sw-footerBottom .sw-footerSection {
        flex: 0 1 auto;
    }

    .sw-sbar--qualityAgent {
        border-bottom: 2px solid #b9b9b9;
    }

    .sw-page {
        flex: 1 1 0;
    }

    .sw-sidebar {
        display: block;
        flex: 0 0 var(--sw-sidebar-width);
        position: sticky;
        top: 60px;
        margin: 10px 0;
    }

    .sw-archive--sidebar {
        top: 204px;
    }

    .sw-singleContact.sw-sidebar {
        flex-basis: 37rem;
        max-width: 37rem;
        margin: 1rem 0 3rem 0;
    }

    .sw-footerSection--social {
        order: unset;
    }

    .sw-footerBottom {
        font-size: 1.4rem;
        font-weight: 400;
        line-height: 1.2em;
        text-align: left;
    }

    .sw-footerDisclaimer {
        font-size: 1.4rem;
    }

    .sw-container.sw-singleLayout {
        padding-bottom: 0;
    }
}
