/******************************************************
* 1. BOOTSTRAP
******************************************************/
*, ::after, ::before {box-sizing: border-box;}html {font-family: sans-serif;line-height: 1.15;-webkit-text-size-adjust: 100%;-webkit-tap-highlight-color: transparent;}article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {display: block;}body {margin: 0;font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-size: 1rem;font-weight: 400;line-height: 1.5;color: #212529;text-align: left;background-color: #fff;}[tabindex="-1"]:focus {outline: 0 !important;}hr {box-sizing: content-box;height: 0;overflow: visible;}h1, h2, h3, h4, h5, h6 {margin-top: 0;margin-bottom: 0.5rem;}p {margin-top: 0;margin-bottom: 1rem;}abbr[data-original-title], abbr[title] {text-decoration: underline;-webkit-text-decoration: underline dotted;text-decoration: underline dotted;cursor: help;border-bottom: 0;-webkit-text-decoration-skip-ink: none;text-decoration-skip-ink: none;}address {margin-bottom: 1rem;font-style: normal;line-height: inherit;}dl, ol, ul {margin-top: 0;margin-bottom: 1rem;}ol ol, ol ul, ul ol, ul ul {margin-bottom: 0;}dt {font-weight: 700;}dd {margin-bottom: 0.5rem;margin-left: 0;}blockquote {margin: 0 0 1rem;}b, strong {font-weight: bolder;}small {font-size: 80%;}a {color: #007bff;text-decoration: none;background-color: transparent;}a:hover {color: #0056b3;text-decoration: underline;}a:not([href]):not([tabindex]) {color: inherit;text-decoration: none;}a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {color: inherit;text-decoration: none;}a:not([href]):not([tabindex]):focus {outline: 0;}code, kbd, pre, samp {font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-size: 1em;}pre {margin-top: 0;margin-bottom: 1rem;overflow: auto;}figure {margin: 0 0 1rem;}img {vertical-align: middle;border-style: none;}svg {overflow: hidden;vertical-align: middle;}table {border-collapse: collapse;}caption {padding-top: 0.75rem;padding-bottom: 0.75rem;color: #6c757d;text-align: left;caption-side: bottom;}th {text-align: inherit;}label {display: inline-block;margin-bottom: 0.5rem;}button {border-radius: 0;}button:focus {outline: 1px dotted;outline: 5px auto -webkit-focus-ring-color;}button, input, optgroup, select, textarea {margin: 0;font-family: inherit;font-size: inherit;line-height: inherit;}button, input {overflow: visible;}button, select {text-transform: none;}select {word-wrap: normal;}[type="button"], [type="reset"], [type="submit"], button {-webkit-appearance: button;}[type="button"]:not(:disabled), [type="reset"]:not(:disabled), [type="submit"]:not(:disabled), button:not(:disabled) {cursor: pointer;}[type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner, button::-moz-focus-inner {padding: 0;border-style: none;}input[type="checkbox"], input[type="radio"] {box-sizing: border-box;padding: 0;}input[type="date"], input[type="datetime-local"], input[type="month"], input[type="time"] {-webkit-appearance: listbox;}textarea {overflow: auto;resize: vertical;}[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {height: auto;}[type="search"] {outline-offset: -2px;-webkit-appearance: none;}[type="search"]::-webkit-search-decoration {-webkit-appearance: none;}::-webkit-file-upload-button {font: inherit;-webkit-appearance: button;}output {display: inline-block;}summary {display: list-item;cursor: pointer;}template {display: none;}[hidden] {display: none !important;}.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {margin-bottom: 0.5rem;font-weight: 500;line-height: 1.2;}.h1, h1 {font-size: 2.5rem;}.h2, h2 {font-size: 2rem;}.h3, h3 {font-size: 1.75rem;}.h4, h4 {font-size: 1.5rem;}.h5, h5 {font-size: 1.25rem;}.h6, h6 {font-size: 1rem;}.container {width: 100%;padding-right: 15px;padding-left: 15px;margin-right: auto;margin-left: auto;}@media (min-width: 576px) {.container {max-width: 540px;}}@media (min-width: 768px) {.container {max-width: 720px;}}@media (min-width: 992px) {.container {max-width: 960px;}}@media (min-width: 1200px) {.container {max-width: 1140px;}}.row {display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;margin-right: -15px;margin-left: -15px;}.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {position: relative;width: 100%;padding-right: 15px;padding-left: 15px;}.col {-ms-flex-preferred-size: 0;flex-basis: 0;-ms-flex-positive: 1;flex-grow: 1;max-width: 100%;}.col-auto {-ms-flex: 0 0 auto;flex: 0 0 auto;width: auto;max-width: 100%;}.col-1 {-ms-flex: 0 0 8.333333%;flex: 0 0 8.333333%;max-width: 8.333333%;}.col-2 {-ms-flex: 0 0 16.666667%;flex: 0 0 16.666667%;max-width: 16.666667%;}.col-3 {-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;}.col-4 {-ms-flex: 0 0 33.333333%;flex: 0 0 33.333333%;max-width: 33.333333%;}.col-5 {-ms-flex: 0 0 41.666667%;flex: 0 0 41.666667%;max-width: 41.666667%;}.col-6 {-ms-flex: 0 0 50%;flex: 0 0 50%;max-width: 50%;}.col-7 {-ms-flex: 0 0 58.333333%;flex: 0 0 58.333333%;max-width: 58.333333%;}.col-8 {-ms-flex: 0 0 66.666667%;flex: 0 0 66.666667%;max-width: 66.666667%;}.col-9 {-ms-flex: 0 0 75%;flex: 0 0 75%;max-width: 75%;}.col-10 {-ms-flex: 0 0 83.333333%;flex: 0 0 83.333333%;max-width: 83.333333%;}.col-11 {-ms-flex: 0 0 91.666667%;flex: 0 0 91.666667%;max-width: 91.666667%;}.col-12 {-ms-flex: 0 0 100%;flex: 0 0 100%;max-width: 100%;}@media (min-width: 576px) {.col-sm {-ms-flex-preferred-size: 0;flex-basis: 0;-ms-flex-positive: 1;flex-grow: 1;max-width: 100%;}.col-sm-auto {-ms-flex: 0 0 auto;flex: 0 0 auto;width: auto;max-width: 100%;}.col-sm-1 {-ms-flex: 0 0 8.333333%;flex: 0 0 8.333333%;max-width: 8.333333%;}.col-sm-2 {-ms-flex: 0 0 16.666667%;flex: 0 0 16.666667%;max-width: 16.666667%;}.col-sm-3 {-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;}.col-sm-4 {-ms-flex: 0 0 33.333333%;flex: 0 0 33.333333%;max-width: 33.333333%;}.col-sm-5 {-ms-flex: 0 0 41.666667%;flex: 0 0 41.666667%;max-width: 41.666667%;}.col-sm-6 {-ms-flex: 0 0 50%;flex: 0 0 50%;max-width: 50%;}.col-sm-7 {-ms-flex: 0 0 58.333333%;flex: 0 0 58.333333%;max-width: 58.333333%;}.col-sm-8 {-ms-flex: 0 0 66.666667%;flex: 0 0 66.666667%;max-width: 66.666667%;}.col-sm-9 {-ms-flex: 0 0 75%;flex: 0 0 75%;max-width: 75%;}.col-sm-10 {-ms-flex: 0 0 83.333333%;flex: 0 0 83.333333%;max-width: 83.333333%;}.col-sm-11 {-ms-flex: 0 0 91.666667%;flex: 0 0 91.666667%;max-width: 91.666667%;}.col-sm-12 {-ms-flex: 0 0 100%;flex: 0 0 100%;max-width: 100%;}}@media (min-width: 768px) {.col-md {-ms-flex-preferred-size: 0;flex-basis: 0;-ms-flex-positive: 1;flex-grow: 1;max-width: 100%;}.col-md-auto {-ms-flex: 0 0 auto;flex: 0 0 auto;width: auto;max-width: 100%;}.col-md-1 {-ms-flex: 0 0 8.333333%;flex: 0 0 8.333333%;max-width: 8.333333%;}.col-md-2 {-ms-flex: 0 0 16.666667%;flex: 0 0 16.666667%;max-width: 16.666667%;}.col-md-3 {-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;}.col-md-4 {-ms-flex: 0 0 33.333333%;flex: 0 0 33.333333%;max-width: 33.333333%;}.col-md-5 {-ms-flex: 0 0 41.666667%;flex: 0 0 41.666667%;max-width: 41.666667%;}.col-md-6 {-ms-flex: 0 0 50%;flex: 0 0 50%;max-width: 50%;}.col-md-7 {-ms-flex: 0 0 58.333333%;flex: 0 0 58.333333%;max-width: 58.333333%;}.col-md-8 {-ms-flex: 0 0 66.666667%;flex: 0 0 66.666667%;max-width: 66.666667%;}.col-md-9 {-ms-flex: 0 0 75%;flex: 0 0 75%;max-width: 75%;}.col-md-10 {-ms-flex: 0 0 83.333333%;flex: 0 0 83.333333%;max-width: 83.333333%;}.col-md-11 {-ms-flex: 0 0 91.666667%;flex: 0 0 91.666667%;max-width: 91.666667%;}.col-md-12 {-ms-flex: 0 0 100%;flex: 0 0 100%;max-width: 100%;}}@media (min-width: 992px) {.col-lg {-ms-flex-preferred-size: 0;flex-basis: 0;-ms-flex-positive: 1;flex-grow: 1;max-width: 100%;}.col-lg-auto {-ms-flex: 0 0 auto;flex: 0 0 auto;width: auto;max-width: 100%;}.col-lg-1 {-ms-flex: 0 0 8.333333%;flex: 0 0 8.333333%;max-width: 8.333333%;}.col-lg-2 {-ms-flex: 0 0 16.666667%;flex: 0 0 16.666667%;max-width: 16.666667%;}.col-lg-3 {-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;}.col-lg-4 {-ms-flex: 0 0 33.333333%;flex: 0 0 33.333333%;max-width: 33.333333%;}.col-lg-5 {-ms-flex: 0 0 41.666667%;flex: 0 0 41.666667%;max-width: 41.666667%;}.col-lg-6 {-ms-flex: 0 0 50%;flex: 0 0 50%;max-width: 50%;}.col-lg-7 {-ms-flex: 0 0 58.333333%;flex: 0 0 58.333333%;max-width: 58.333333%;}.col-lg-8 {-ms-flex: 0 0 66.666667%;flex: 0 0 66.666667%;max-width: 66.666667%;}.col-lg-9 {-ms-flex: 0 0 75%;flex: 0 0 75%;max-width: 75%;}.col-lg-10 {-ms-flex: 0 0 83.333333%;flex: 0 0 83.333333%;max-width: 83.333333%;}.col-lg-11 {-ms-flex: 0 0 91.666667%;flex: 0 0 91.666667%;max-width: 91.666667%;}.col-lg-12 {-ms-flex: 0 0 100%;flex: 0 0 100%;max-width: 100%;}}@media (min-width: 1200px) {.col-xl {-ms-flex-preferred-size: 0;flex-basis: 0;-ms-flex-positive: 1;flex-grow: 1;max-width: 100%;}.col-xl-auto {-ms-flex: 0 0 auto;flex: 0 0 auto;width: auto;max-width: 100%;}.col-xl-1 {-ms-flex: 0 0 8.333333%;flex: 0 0 8.333333%;max-width: 8.333333%;}.col-xl-2 {-ms-flex: 0 0 16.666667%;flex: 0 0 16.666667%;max-width: 16.666667%;}.col-xl-3 {-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;}.col-xl-4 {-ms-flex: 0 0 33.333333%;flex: 0 0 33.333333%;max-width: 33.333333%;}.col-xl-5 {-ms-flex: 0 0 41.666667%;flex: 0 0 41.666667%;max-width: 41.666667%;}.col-xl-6 {-ms-flex: 0 0 50%;flex: 0 0 50%;max-width: 50%;}.col-xl-7 {-ms-flex: 0 0 58.333333%;flex: 0 0 58.333333%;max-width: 58.333333%;}.col-xl-8 {-ms-flex: 0 0 66.666667%;flex: 0 0 66.666667%;max-width: 66.666667%;}.col-xl-9 {-ms-flex: 0 0 75%;flex: 0 0 75%;max-width: 75%;}.col-xl-10 {-ms-flex: 0 0 83.333333%;flex: 0 0 83.333333%;max-width: 83.333333%;}.col-xl-11 {-ms-flex: 0 0 91.666667%;flex: 0 0 91.666667%;max-width: 91.666667%;}.col-xl-12 {-ms-flex: 0 0 100%;flex: 0 0 100%;max-width: 100%;}}.text-left {text-align: left !important;}.text-right {text-align: right !important;}.text-center {text-align: center !important;}


.row {
    margin-right: -1.1em;
    margin-left: -1.1em;
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
    padding-right: 1.1em;
    padding-left: 1.1em;
}

/**
 * Swiper 8.1.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 16, 2022
 */
 
@font-face {
    font-family: swiper-icons;
    src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-android .swiper-slide,.swiper-wrapper {
    transform: translate3d(0px,0,0)
}

.swiper-pointer-events {
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform,height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0,0,0,.15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper::before {
    content: '';
    flex-shrink: 0;
    order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start:var(--swiper-centered-offset-before)}

.swiper-centered.swiper-horizontal>.swiper-wrapper: :before {
    height:100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start:var(--swiper-centered-offset-before)}

.swiper-centered.swiper-vertical>.swiper-wrapper: :before {
    width:100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/ 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color,var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next:after,.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none!important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev,.swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after {
    content: 'prev'
}

.swiper-button-next,.swiper-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after {
    content: 'next'
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0,0,0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
    height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
    display: inline-block;
    border-radius: 50%;
    background: var(--swiper-pagination-bullet-inactive-color,#000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none!important
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color,var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px,-50%,0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap,6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform,.2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap,4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform,.2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform,.2s right
}

.swiper-pagination-progressbar {
    background: rgba(0,0,0,.25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color,var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0,0,0,.1)
}

.swiper-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0,0,0,.5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color,var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: '';
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px)
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform,opacity,height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

/******************************************************
* 3. FONTS
******************************************************/

/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTUPjIg1_i6t8kCHKm459WxZcgvz-PZwnCo.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTUPjIg1_i6t8kCHKm459WxZcgvz_PZw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTURjIg1_i6t8kCHKm45_c5H3g3D_u50.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTURjIg1_i6t8kCHKm45_c5H3gnD_g.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTURjIg1_i6t8kCHKm45_ZpC3g3D_u50.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTURjIg1_i6t8kCHKm45_ZpC3gnD_g.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTURjIg1_i6t8kCHKm45_bZF3g3D_u50.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v18/JTURjIg1_i6t8kCHKm45_bZF3gnD_g.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9WXV0poK5.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9WXx0poK5.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9WXZ0poK5.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9WXh0pg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Hw0aXpsog.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Hw9aXpsog.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Hw3aXpsog.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Hw5aXo.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/******************************************************
* 4. BASE
******************************************************/
body{
    font-family: "Montserrat", sans-serif;
    font-size:14px;
    font-weight:400;
    margin: 0;
    padding: 0;
	color: #000;
}

h1{
    font-size: 1.8em;
}
h2{
    font-size: 1.65em;
}
h3{
    font-size: 1.5em;
}
h4{
    font-size: 1.3em;
}
h5{
    font-size: 1.1em;
}
h1,h2,h3,h4,h5,h6{
    font-weight: 500;
}

img{
    max-width: 100%;
    height: auto;
}

p:last-child{
    margin-bottom: 0;
}

blockquote {
    padding: 1em;
    color: #212529;
    border-radius: 0;
    border-left: 4px solid #D62128;
    font-weight: 500;
    background: #FFF3CD;
    margin-bottom: 1.5em;
    font-size: 0.9em;
}

.alert.alert-warning {
    background: #FFF3CD;
    padding: 1em;
}

@media (min-width: 1300px){
    .container {
        max-width: 1920px;
        padding: 0px 5.25em;
    }
}


.flex {
    display: flex;
}
.items-center {
    align-items: center;
}

.justify-between{
    justify-content: space-between;
}

.justify-end{
    justify-content: flex-end;
}

.uppercase{
    text-transform: uppercase;
}

@media(min-width: 992px){
    .xs-only{
        display: none;
    }
}



/******************************************************
* 5. HEADER
******************************************************/

.col-12.col-md-12.site-header-col {
    padding-top: 0.75em;
    padding-bottom: 0.75em;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.logo-header{
    width: 4em;
}

.logo-header a {
    text-align: center;
    display: table;
    text-decoration: none;
    color: rgb(28, 27, 27);
}
.logo-header a svg {
    width: 4em;
    height: auto;
    display: block;
    margin: 0 auto;
}
.header-site-name {
    color: rgb(28, 27, 27);
    text-decoration: none;
    line-height: 1;
    margin-top: 0.2em;
}

.header-site-name > span:nth-child(1) {
    font-weight: 300;
    line-height: 1;
    font-size: 16px;
    font-size: 1.05em;
}
.header-site-name > span:nth-child(2) {
    color: rgb(231, 41, 61);
    font-weight: 700;
    display: block;
    font-size: 19px;
    font-size: 1.25em;
    line-height: 1;
    text-transform: uppercase;
}


nav#header-nav ul {
    display: flex;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0;
}
nav#header-nav > ul > li {
    margin-right: 1.25em;
}
nav#header-nav > ul > li:last-child {
    margin-right: 0;
}
nav#header-nav > ul > li > a {
    color: #000;
    text-decoration: none;
    font-size: 1.2em;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
    padding-top: 0.5em
}

nav#header-nav > ul > li > a span {
    font-weight: 600;
}

nav#header-nav > ul > li.active:hover > a span{
    font-weight: 800;
}
nav#header-nav > ul > li.active a span {
    color: #E7293D;
    font-weight: 800;
    border-bottom: 1px solid #E7293D;
}

nav#header-nav > ul > li > a span:after {
    content: attr(data-title);
    overflow: hidden;
    user-select: none;
    pointer-events: none;
    font-weight: 600;
    height: 0;
    opacity: 0;
    z-index: -1;
    display: block;
}
nav#header-nav > ul > li:hover > a {
    color: #E7293D;
}
nav#header-nav > ul > li:hover > a span{
    font-weight: 600;
}

.header-btns {
    width: 4em;
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
    justify-content: flex-end;
}
.header-btns a {
    text-decoration: none;
}

a#wishlist-header-link {
    position: relative;
    color: #000;
    text-decoration: none;
}
span#wishlist-header-count.show-count {
    position: absolute;
    top: -0.7em;
    right: -0.7em;
    width: 1.5em;
    height: 1.5em;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 100%;
    filter: drop-shadow(2px 4px 6px #999);
    font-weight: 500;
    font-size: 0.7em;
}


.header-search-form-wrapper {
    background: #E7293D;
    padding: 0.75em 0;
}
form.header-search-form {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.header-search-form-item {
    margin-right: 3em;
    align-items: center;
    display: inline-flex;
}
.header-search-form-item:last-child {
    margin-right: 0;
}
.header-search-form-item > button {
    background: transparent;
    padding: 0;
    margin: 0;
    border: none;
    outline: none !important;
    color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 1.2em;
}
.header-search-form-item > button:after {
    content: attr(data-title);
    overflow: hidden;
    user-select: none;
    pointer-events: none;
    font-weight: 600;
    height: 0;
    opacity: 0;
    z-index: -1;
    display: block;
}
.header-search-form-item > button:hover {
    border-bottom: 1px solid #fff;
    font-weight: 600;
}

.header-search-form-item > button.header-search-btn {
    background: #fff;
    color: #E7293D;
    padding: 0.45em;
    line-height: 1;
    min-width: 7em;
    text-transform: none;
    box-shadow: 0px 3px 6px #00000029;
    font-size: 1.35em;
    border-bottom: none;
}

.header-login-link {
    margin-left: 1em;
}

/* prodile menu*/
div#user-menu-wrapper-header {
    position: relative;
}
button#user-menu-trigger-header {
    padding: 0;
    margin: 0;
    background: transparent;
    border: none;
}

div#user-menu-wrapper-header {
    position: relative;
    padding-bottom: 1em;
    margin-bottom: -1em;
    padding-left: 1em;
    /* margin-left: -1em; */
}
div#user-menu-header {
    position: absolute;
    background: #fff;
    top: 100%;
    right: 0;
    min-width: 10em;
    border-radius: 10px;
    filter: drop-shadow(2px 4px 6px black);
    opacity: 0;
    z-index: -1;
    pointer-events: none;
    visibility: hidden;

    padding: 1em;
}

div#user-menu-header a {
    display: table;
    color: #000;
    text-decoration: none;
}

div#user-menu-header a {
    display: table;
    color: #000;
    text-decoration: none;
    margin-bottom: 0.5em;
}

a.logout-link {
    margin-bottom: 0 !important;
}
div#user-menu-header a:last-child {
    margin-bottom: 0;
}

@media(min-width: 992px){
    div#user-menu-wrapper-header:hover div#user-menu-header {
        opacity: 1;
        z-index: 9;
        pointer-events: all;
        visibility: visible;
    }
}
@media(max-width: 991px){
    div#user-menu-wrapper-header {
        margin-left: 0.5em;
    }
    button#user-menu-trigger-header {
        width: 2em;
        height: 2em;
        flex: 0 0 2em;
        display: flex;
        align-items: center;
        justify-content: center;
        outline: none !important;
    }
    button#user-menu-trigger-header svg {
        width: 100%;
        height: 100%;
    }

    .user-menu-opened div#user-menu-wrapper-header div#user-menu-header {
        opacity: 1;
        z-index: 9;
        pointer-events: all;
        visibility: visible;
    }

    div#user-menu-header a {
        width: auto !important;
        height: auto;
        white-space: nowrap;
        padding-left: 0 !important;
        margin-left: 0;
    }
}


/**/
a#wishlist-header-link {
    margin-left: 1.35em;
}

div#user-messages {
    padding-left: 1.5em;
    position: relative;
    padding-bottom: 1em;
    margin-bottom: -1em;
}
button.user-messages-icon-wrapper {
    width: 1.35em;
    height: 1.35em;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    background: transparent;
    border: none;
}
span#user-messages-count {
    display: inline-flex !important;
    position: absolute;
    top: -0.75em;
    right: -0.75em;
    background: #fff;
    width: 1.35em;
    height: 1.35em;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    /* transform: scale(0.9); */
    color: #000;
    font-size: 0.75em;
    filter: drop-shadow(2px 4px 6px #999);
    font-weight: 500;
}
.user-messages-count-0 {
    display: none;
}

.user_messages_inbox {
    position: absolute;
    top: 100%;
    right: 0;
    width: 20em;
    background: #fff;
    padding: 1em;
    max-height: 20em;
    overflow: auto;
    display: none;
    border-radius: 10px;
    filter: drop-shadow(1px 2px 4px #999);
}

.user_messages_inbox .user-message {
    display: flex;
    justify-content: space-between;
    align-items: self-start;
    margin-bottom: 1em;
    font-size: 0.9em;
    padding: 0.5em;
    background: #F1F4EF;
    border-radius: 10px;
}
.user_messages_inbox .user-message:last-child{
    border-bottom: none;
    margin-bottom: 0;
}
.user_messages_inbox .user-message button.user-message-remove-btn {
    padding: 0;
    margin: 0;
    border: none;
    background: transparent;
    font-size: 2em;
    line-height: 1;
    margin-left: 0.51em;
}

.user_messages_inbox .user-message button.user-message-remove-btn > *{
    pointer-events: none;
}


.user-message.message-type-publish {
    background: #4cb40e;
    color: #fff;
}

.user-message.message-type-publish {
    background: #4cb40e;
    color: #fff;
}

.user-message.message-type-delete,
.user-message.message-type-unpromote,
.user-message.message-type-unpublish {
    background: #a31010;
    color: #fff;
}
.user-message.message-type-unpublish{
    background: #CB6915;
}

.user-message.message-type-promote {
    background: #296108;
    background: #17a2b8;
    color: #fff;
}

.user-message.message-type-message_sent{
    color: #fff;
    background: #17A2B8;
}


.user-message.message-type-message_sent button.user-message-remove-btn,
.user-message.message-type-delete button.user-message-remove-btn,
.user-message.message-type-unpromote button.user-message-remove-btn,
.user-message.message-type-promote button.user-message-remove-btn,
.user-message.message-type-unpublish button.user-message-remove-btn,
.user-message.message-type-publish button.user-message-remove-btn {
    color: #fff;
}

@media(min-width:991px){
    div#user-messages:hover .user_messages_inbox {
        display: block !important;
    }
}


/**/
form.header-search-form .select-like-label {
    border: none;
    padding: 0;
    margin: 0;
    color: #fff;
    cursor: pointer;
    padding-bottom: 1.4em;
    margin-bottom: -1.4em;
}
form.header-search-form span.select-like-icon {
    display: none;
}
form.header-search-form span.select-like-text button {
    background: transparent;
    padding: 0;
    margin: 0;
    border: none;
    outline: none !important;
    color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 1.2em;
    border: none !important;
    border-bottom: 1px solid transparent !important;
    cursor: pointer !important;
}
form.header-search-form span.select-like-text button:after{
    content: attr(data-title);
    overflow: hidden;
    user-select: none;
    pointer-events: none;
    font-weight: 600;
    height: 0;
    opacity: 0;
    z-index: -1;
    display: block;
}
form.header-search-form .select-like-label span.select-like-text {
    display: flex
;
}
form.header-search-form .select-like-label:hover > span.select-like-text button.select-like-text-title {
    border-bottom: 1px solid #fff !important;
    font-weight: 600;
}

/* SEARCH */
.more-filters-opened aside#header-aside {
    position: fixed;
    z-index: 999;
    margin: 0 auto;
    background: #ffffffbd;
    background: #00000094;
    height: calc(100dvh);
    width: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.more-filters-opened .header-search-form-wrapper {
    background: transparent;
    padding: 0;
}

.more-filters-opened #header-aside .container {
    max-width: 50em;
    padding: 0;
}


.more-filters-opened #header-aside form#header-search-form {
    background: #fff;
    padding: 2em;
    border-radius: 20px;
    /* filter: drop-shadow(2px 4px 6px #ccc); */
    align-items: self-start;
    max-height: calc(100dvh - 5em);
    overflow: auto;
}

.more-filters-opened #header-aside form.header-search-form {
    flex-wrap: wrap;
}


.more-filters-opened #header-aside .header-search-form-item {
    margin-right: 0em;
    width: 50%;
    min-width: 50%;
    flex: 0 0 50%;
    margin-bottom: 2em;
    order: 999;
}

.more-filters-opened #header-aside #header-search-form-item-offer_types{
    order: 0;
}
.more-filters-opened #header-aside #header-search-form-item-cities {
    order: 1;
}
.more-filters-opened #header-aside #header-search-form-item-neighborhoods {
    order: 2;
}
.more-filters-opened #header-aside #header-search-form-item-property_types {
    order : 3;
}

.more-filters-opened #header-aside .estate-page-search-form-item {
    width: 100%;
}
.more-filters-opened #header-aside div#page-search_neighborhoods.disabled .select-like-options-wrapper {
    display: block;
}
.more-filters-opened #header-aside form.header-search-form span.select-like-text button {
    color: #000;
    pointer-events: none;
    cursor: auto !important;
    font-weight: 500 !important;
}
.more-filters-opened #header-aside .select-like-options-wrapper {
    position: relative;
    top: unset;
    width: 100%;
    left: unset;
    transform: none;
    opacity: 1;
    visibility: visible;
    z-index: 9;
    pointer-events: all;
    padding-left: 0;
    border: none;
}

.more-filters-opened #header-aside #header-search-item-more-filters-wrapper,
.more-filters-opened #header-aside div#page-search_neighborhoods.disabled .select-like-options-search {
    display: none;
}


.more-filters-opened #header-aside div#header-search-item-more-header-search-btn {
    margin-bottom: 0;
    margin: 0 auto;
    width: 100%;
    min-width: 100%;
    text-align: center;
    justify-content: center;
}

.more-filters-opened #header-aside button#header-search-form-close {
    position: absolute;
    display: flex !important;
    top: -0.5em;
    right: 0.3em;
    width: 2em;
    height: 2em;
    background: #E7293D;
    z-index: 9;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    color: #fff;
    border: none;
    padding: 0;
    margin: 0;
}

.more-filters-opened #header-aside button#header-search-form-close > *{
    pointer-events: none;
}

.more-filters-opened #header-aside .select-like-option {
    display: table;
}
.more-filters-opened #header-aside .header-search-form-item {
    flex-wrap: wrap;
}
.more-filters-opened #header-aside .label-like {
    width: 100%;
}
.more-filters-opened #header-aside .select-like-options-search {
    padding-right: 2em;
}

.more-filters-opened #header-aside div#header-search-form-item-more-search-fields {
    display: flex !important;
    width: 100%;
    min-width: 100%;
    flex-wrap: wrap;
}


/**/
.more-filters-opened #header-aside div#header-search-item-more-header-search-btn {
    margin-bottom: 0;
    margin: 0 auto;
    width: 100%;
    min-width: 100%;
    text-align: center;
    justify-content: center;
}

body.more-filters-opened div#header-search-item-more-header-search-btn {
    position: sticky;
    bottom: 0;
    z-index: 9;
    background: linear-gradient(0deg, #fff, transparent);
}
body.more-filters-opened div#header-search-item-more-header-search-btn:before {
    content: "";
    position: absolute;
    top: 100%;
    width: 100%;
    height: 100%;
    background: #fff;
}
body.more-filters-opened div#header-search-item-more-header-search-btn button.header-search-btn {
    z-index: 9;
}
/**/

#header-search-form-item-page-search_rooms,
#header-search-form-item-page-search_n_bedrooms,
#header-search-form-item-page-search_n_bathrooms{
    width: 33.333% !important;
    min-width: 33.333% !important;
    flex: 0 0 33.333% !important;
        margin-top: 1em;
    margin-bottom: 3em !important;
}

div#header-search-form-item-others,
div#header-search-form-item-degree_of_completion,
div#header-search-form-item-furnished,
div#header-search-form-item-building_material {
    width: 100% !important;
    min-width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
}

div#header-search-form-item-others .select-like-options,
div#header-search-form-item-degree_of_completion .select-like-options,
div#header-search-form-item-furnished .select-like-options,
div#header-search-form-item-building_material .select-like-options {
    display: flex;
    flex-wrap: wrap;
}

div#header-search-form-item-furnished .select-like-options{
    gap: 1em;
}

div#header-search-form-item-others .select-like-option,
div#header-search-form-item-degree_of_completion .select-like-option,
div#header-search-form-item-building_material .select-like-option {
    width: 33.333%;
    max-width: 33.333%;
}

.swiper.estates_carousel {
    min-width: 100%;
}
/* .page-search_cities-wrapper label input {
    position: absolute;
    opacity: 0;
    visibility: hidden;
} */
/**/
div#page-search_regions.disabled .select-like-label,
div#page-search_neighborhoods.disabled .select-like-label {
    cursor: not-allowed !important;
}
div#page-search_regions.disabled .select-like-options-wrapper,
div#page-search_neighborhoods.disabled .select-like-options-wrapper {
    display: none;
}


header#main-header {
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 999;
}
body.page-srolled header#main-header{
    box-shadow: 0px 1px 5px #eee;
}
/******************************************************
* WELCOME
******************************************************/
.welcome-wrapper {
    position: relative;
    width: 100%;
    padding-top: 33%;
}
img.background-welcome-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.welcome-container-wrapper {
    background: #ffffffab;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.welcome-container-wrapper h1 {
    color: #E7293D;
    font-size: 2.5em;
    text-transform: uppercase;
    font-weight: 800;
    line-height: 1.4;
}


.section-margin-bottom {
    margin-bottom: 7em;
}
.section-margin-bottom-plus-one{
    margin-bottom: 8em;
}
.section-margin-bottom-small{
    margin-bottom: 4em;
}
.section-margin-bottom-extra-small{
    margin-bottom: 2em;
}

.col-section-header {
    margin-bottom: 2.5em;
    padding: 0 2.2em;
}
.col-section-header h2 {
    margin: 0;
    text-transform: uppercase;
    font-weight: 700;
    color: #E7293D;
    font-size: 2.3em;
}
/******************************************************
* ESTATES LIST
******************************************************/

.pagination-wrapper nav ul.pagination {
    display: flex;
    list-style: none;
    justify-content: center;
    margin-top: 2em;
    font-size: 1.2em;
    padding: 0;
}
.pagination-wrapper nav ul.pagination a, 
.pagination-wrapper nav ul.pagination span {
    display: table;
    margin: 0 0.5em;
    text-decoration: none;
    color: #000;
}

.pagination-wrapper nav ul.pagination li.pagination-previous,
.pagination-wrapper nav ul.pagination li.pagination-next {
    font-size: 1.2em;
    line-height: 1;
}
.pagination-wrapper nav ul.pagination li.active span {
    color: #CB6915;
    font-weight: 600;
}

section#estates-page-header {
    padding: 2em 0;
    border-bottom: 1px solid #D6D6D6;
}

.col-12.col-breadcrumbs nav {
    padding-left: 8em;
    margin-bottom: 0.5em;
}
ol.breadcrumb {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}
ol.breadcrumb a {
    color: #000;
    text-decoration: none;
}
span.breadcrumb-arrow {
    margin: 0 0.25em;
    margin-right: 0.35em;
}

.col-12.col-estate-page-title h1 {
    margin: 0;
    text-transform: uppercase;
    font-weight: 700;
    color: #E7293D;
    font-size: 2.3em;
}

/* Page Search */
.col-12.col-estate-page-search {
    margin-top: 2em;
}
form.estate-page-search-form {
    display: flex;
    justify-content: space-between;
}
.label-like {
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 0.35em;
}

.select-like {
    position: relative;
}
.select-like-label {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #888282;
    position: relative;
    padding-right: 2.5em;
}
.select-like-label * {
    pointer-events: none;
}

span.select-like-icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 2em;
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
}
span.select-like-icon svg {
    width: 100%;
    height: 100%;
}


.select-like-options-wrapper {
    position: absolute;
    top: 100%;
    width: 20em;
    background: #fff;
    z-index: 9;
    border: 1px solid #ddd;
    left: 50%;
    transform: translateX(-50%);
    padding: 1em;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
}

.select-like.opened .select-like-options-wrapper {
    opacity: 1;
    visibility: visible;
    z-index: 9;
    pointer-events: all;
}

.select-like-options-search {
    margin-bottom: 0.75em;
}
.select-like-options-search input {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #888282;
    outline: none;
    width: 100%;
}
.select-like-options {
    max-height: 20em;
    overflow: auto;
}

.select-like-option {
    margin-bottom: 0.5em;
    display: flex;
    align-items: center;
}
.select-like-option.hidden {
    display: none;
}
.select-like-option:last-child {
    margin-bottom: 0;
}
.select-like-option label {
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
}
.select-like-option input {
    width: 1.2em;
    height: 1.2em;
    flex: 0 0 1.2em;
    margin-right: 0.5em;
}


.page-search-range {
    display: flex;
    align-items: center;
    gap: 0.5em;
}
.range-to,
.range-from {
    width: 7em;
}
.range-sifix {
    font-weight: 600;
    color: #E7293D;
    font-size: 1.2em;
}
.page-search-range input {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #888282;
    outline: none;
    width: 100%;
}


.estate-page-search-form-item button {
    border: none;
    padding: 0.4em 1.5em;
    line-height: 1;
    color: #fff;
    outline: none;
    background: #E7293D;
    font-weight: 600;
    letter-spacing: 1px;
    font-size: 1.3em;
    margin-top: -0.2em;
}
/**/

.container-filters{
    padding-top: 2em !important;
}

span.filter-info-icon {
    width: 2.35em;
    height: 2.35em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
span.filter-info-icon svg {
    width: 100%;
    height: 100%;
}
span.filters-info-text {
    line-height: 1.2;
    font-size: 1.1em;
    font-weight: 500;
    margin-left: 0.35em;
}
.container-filters .sort label {
    color: #E7293D;
    font-weight: 600;
    font-size: 1.1em;
    display: block;
    line-height: 1;
    margin: 0;
    text-align: right;
}
select#filter-sort {
    background: #F4F4F4;
    border: none;
    font-weight: 500;
    padding: 0.5em;
    padding-left: 0.751em;
    margin-top: 0.35em;
    outline: none !important;
}

.container-filters select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;

    /* Custom arrow */
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2724%27%20height%3D%2724%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M7%2010L12%2015%27%20stroke%3D%27%23E7293D%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M12%2015L17%2010%27%20stroke%3D%27%23E7293D%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0px center !important;
    background-size: 2em !important;
    padding-right: 2em !important;
}

.container-filters .col-section-filters {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.row-bigger-margin {
    margin-right: -2.2em;
    margin-left: -2.2em;
}

.estate-grid-card-col {
    margin-bottom: 3.5em;
}
.estate-grid-card-wrapper {
    padding: 0 1em;
}

.estate-grid-card-image-wrapper {
    position: relative;
    width: 100%;
    padding-top: 60%;
    margin-bottom: 1em;
}
.estate-grid-card-image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

button.estate-grid-card-next-image,
button.estate-grid-card-prev-image {
    position: absolute;
    top: calc(50% - 1em);
    left: -2em;
    width: 2em;
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    padding: 0;
    outline: none;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
    transition: 0.35s;
}
button.estate-grid-card-next-image {
    left: unset;
    right: -2em;
}

button.estate-grid-card-next-image svg,
button.estate-grid-card-prev-image svg {
    width: 100%;
    height: 100%;
}
button.estate-grid-card-prev-image svg {
    transform: rotate(180deg);
}

.estate-grid-card-wrapper:hover button.estate-grid-card-next-image,
.estate-grid-card-wrapper:hover button.estate-grid-card-prev-image {
    opacity: 1;
    visibility: visible;
    z-index: 9;
    pointer-events: all;
}

.image-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
    gap: 6px;
    position: absolute;
    bottom: 1em;
    width: 100%;
    left: 0;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
}

.estate-grid-card-wrapper:hover .image-dots{
    opacity: 1;
    visibility: visible;
    z-index: 9;
    pointer-events: none;
}

.image-dots span {
    width: 10px;
    height: 10px;
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.3s;
    transform: scale(0.7);
}

.image-dots span.active {
    background-color: #E7293D;
    transform: scale(1);
}


.estate-grid-card-content {
    padding: 0 1em;
}

.estate-grid-card-wrapper .estate-grid-card-content h2,
.estate-grid-card-wrapper .estate-grid-card-content h3 {
    font-size: 1.3em;
    font-weight: 700;
} 
.estate-grid-card-wrapper .estate-grid-card-content h2 a, 
.estate-grid-card-wrapper .estate-grid-card-content h3 a{
    color: #000;
    text-decoration: none;
}

.icon {
    margin-bottom: 0.75em;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    min-height: 3em;
}
span.icon-svg-wrapper {
    display: inline-flex;
    width: 2.5em;
    height: 2.5em;
    align-items: center;
    justify-content: center;
    margin-right: 0.5em;
}
span.icon-svg-wrapper.map-icon-wrapper {
    width: 2.3em;
    height: 2.3em;
}
span.icon-svg-wrapper svg {
    width: 100%;
    height: 100%;
}
span.icon-text {
    font-weight: 600;
    font-size: 1.1em;
    width: calc(100% - 3em);
    line-height: 1;
}

span.icon-text.icon-text-label {
    font-weight: 500;
    width: 100%;
    min-width: 100%;
    flex: 0 0 100%;
}
span.icon-text.icon-text-price {
    display: block;
    color: #E7293D;
    font-size: 1.4em;
    font-weight: 700;
    width: 100%;
    line-height: 1;
    margin-top: 0.5em;
}


.estate-listing-icons-wrapper .icon {
    margin-bottom: 0.5em;
}
.icon.icon-view-estate {
    margin: 0;
    margin-top: -0.5em;
}
.icon.icon-view-estate a {
    display: flex;
    align-items: center;
    margin: 0;
    color: #000;
    text-decoration: none;
}

.estates_carousel:not(.swiper-initialized) .swiper-wrapper .swiper-slide{
    width: 33.333%;
}


.swiper.estates_carousel{
    padding-bottom: 1.5em;
    margin-bottom: -1.5em;
}

.swiper-slide .estate-grid-card-col {
    width: 100%;
    min-width: 100%;
    flex: 0 0 100%;
    margin: 0;
}

.swiper-footer {
    height: 0.35em;
    margin-top: 0.5em;
    padding: 0 2.2em;
}
.swiper-scrollbar-wapper {
    height: 100%;
}
.swiper-scrollbar {
    height: 100%;
    background: #F2F2F2;
    opacity: 1 !important;
}
.swiper-scrollbar-drag {
    background: #E7293D;
}


.listing-add-to-wishlist-wrapper {
    position: absolute;
    top: 1em;
    right: 1em;
    z-index: -1;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: 0.35s;
}
button.listing-add-to-wishlist-btn {
    padding: 0;
    margin: 0;
    border: none;
    background: #fff;
    outline: none;
    border-radius: 100%;
    width: 2em;
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
}
button.listing-add-to-wishlist-btn svg {
    width: 65%;
    height: 65%;
}
button.listing-add-to-wishlist-btn svg path{
    fill: #000
}
button.listing-add-to-wishlist-btn.added svg path {
    fill: #E7293D;
}

.estate-grid-card-wrapper:hover .listing-add-to-wishlist-wrapper {
    z-index: 1;
    pointer-events: all;
    opacity: 1;
    visibility: visible;
}


.estates-listing-description-extention.hidden-desc {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.6s ease, opacity 0.6s ease;
    opacity: 0;
}

.estates-listing-description-extention:not(.hidden-desc) {
    max-height: 10000px; /* adjust to fit your content */
    opacity: 1;
}

button.read-more {
    padding: 0;
    margin-left: 0.25em;
    border: none;
    background: transparent;
    color: #E7293D;
    text-decoration: underline;
    outline: none !important;
}
/******************************************************
* SERVICEs LIST
******************************************************/
section#services-grid {
    margin-bottom: 5em;
}
.service-grid-card-col {
    margin-bottom: 2em;
}
.service-grid-card-wrapper {
    display: table;
    margin: 0 auto;
    padding: 1em;
    background: #fff;
}
.service-grid-card-image-wrapper {
    max-width: 12em;
    margin: 0 auto;
    margin-bottom: 1.5em;
}
.service-grid-card-content {
    max-width: 22em;
    margin: 0 auto;
}
.service-grid-card-content h3 {
    font-weight: 700;
    color: #E7293D;
    font-size: 1.8em;
}
.service-grid-card-content h3 a{
    color: #E7293D;
    text-decoration: none;
}
.service-grid-card-desc {
    font-size: 1.1em;
    font-weight: 500;
}

.pages-page .col-12.col-breadcrumbs nav {
    padding-left: 0em;
    margin-bottom: 0.5em;
}
@media(min-width:1200px){
    .pages-page .estate-contacts,
    .services-page .estate-contacts {
        position: sticky;
        top: 10em;
    }
}
@media(max-width:767px){
    .pages-page .estate-contacts,
    .services-page .estate-contacts {
        margin-top: 3em;
    }
}

.page-content h2 {
    margin-bottom: 1em;
    font-weight: 600;
}
/****************************************************
* CONTACTS
******************************************************/

.contact-info {
    display: flex;
    margin-bottom: 1.5em;
    align-items: center;
}

span.contact-icon-wrapper {
    width: 2.35em;
    height: 2.35em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 1em;
    /* background: #CB6915; */
    /* padding: 3px; */
    /* border-radius: 4px; */
}
span.contact-icon-wrapper svg {
    width: 100%;
    height: 100%;
}
span.contact-info-wrapper b {
    display: block;
}
span.contact-info-wrapper a {
    color: #000;
}

@media(min-width:1200px){
    .contacts-page label.contact-phone {
        width: 48%;
        float: left;
    }
    .contacts-page label.contact-email {
        width: 48%;
        float: right;
    }
}

.guest-inner-wrapper {
    background: #FAFAFA;
    box-shadow: none;
}

/******************************************************
* NEWSLETTERS
******************************************************/
.newsletters-wrapper {
    background: #F4F4F4;
    padding: 3em 0;
}
.newsletters-wrapper .col-section-content {
    padding-right: 3em;
}
.newsletters-wrapper h2 {
    font-weight: 700;
    color: #E7293D;
    font-size: 2.5em;
    padding-right: 3em;
}
.newsletters-wrapper .newsletters-description {
    font-size: 1.2em;
    margin-top: 1.3em;
}


.newsletters-wrapper .col-section-form .fields-wrapper label {
    width: 100%;
}
.newsletters-wrapper .col-section-form  .fields-wrapper label input  {
    width: 100%;
    background: #fff;
    padding: 0.71em;
    line-height: 1;
    border: none;
    outline: none;
    font-weight: 500;
    font-size: 1.3em;
}
.newsletters-wrapper .col-section-form  .form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1em;
}
.newsletters-wrapper .col-section-form  .form-footer label.flexed {
    margin: 0;
    font-size: 1.1em;
    display: flex;
    align-items: center;
}
.newsletters-wrapper .col-section-form  .form-footer label.flexed input {
    width: 1.2em;
    height: 1.2em;
    margin: 0;
    margin-right: 0.35em;
}
.newsletters-wrapper .col-section-form  .form-footer label.flexed a  {
    color: #000;
    text-decoration: underline;
}

button.button.button-primary {
    padding: 0;
    margin: 0;
    border: 3px solid #E7293D;
    color: #E7293D;
    font-weight: 700;
    font-size: 1.2em;
    padding: 0.5em 1.5em;
    border-radius: 26px;
}

/******************************************************
* SINGLE ESTATE PAGE
******************************************************/
body.single-estate-page section#estates-page-header {
    border-bottom: none;
}
body.single-estate-page .col-12.col-breadcrumbs nav {
    margin: 0;
}
.row.row-big-margin {
    margin-left: -2.2em;
    margin-right: -2.2em;
}


div#estate-gallery {
    width: 57%;
    min-width: 57%;
    flex: 0 0 57%;
}
.g-item {
    position: relative;
    width: 100%;
    padding-top: 60%;
}
.g-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pr-gallery .swiper-button-next:after, 
.pr-gallery .swiper-button-prev:after {
    color: #E7293D;
    font-weight: 600;
    font-size: 2em;
}

.slideshow-swipper-nav-wapper {
    margin-top: 1em;
    margin-left: -0.5em;
    margin-right: -0.5em;
}
.slideshow-swipper-nav-wapper.gal-items-1{
    display: none;
}
.img-gall-wapper.img-gall-wapper-small {
    position: relative;
    width: calc(100% - 1em);
    padding-top: 60%;
    margin-left: 0.5em;
}
.img-gall-wapper.img-gall-wapper-small img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.slideshow-swipper-nav-wapper .swiper-slide{
    opacity: 0.5;
}
.slideshow-swipper-nav-wapper .swiper-slide.swiper-slide-thumb-active.swiper-slide-visible:not(.swiper-slide-duplicate-active) {
    opacity: 1;
}


.col-12.col-lg-6.col-estate-info {
    max-width: 43%;
    width: 43%;
    flex: 0 0 43%;
    padding-left: 2.2em;
}

.estate-title-wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1em;
}
.estate-title-wrapper h1 {
    font-size: 2em;
    font-weight: 600;
    margin: 0;
}
.estate-title-wrapper form.listing-add-to-wishlist-form {
    margin-left: 0.5em;
}
.estate-title-wrapper button.listing-add-to-wishlist-btn {
    width: 3em;
    height: 3em;
    filter: drop-shadow(1px 2px 2px #999);
}

#estate-page-summary .estate-price-wrapper {
    display: flex;
    align-items: center;
}

#estate-page-summary span.estate-price {
    font-size: 2em;
    font-weight: 700;
    color: #E7293D;
    margin-right: 0.51em;
    line-height: 1;
}
#estate-page-summary span.estate-price-per-m2 {
    font-weight: 500;
}

.estate-data-infos {
    display: flex;
    flex-wrap: wrap;
    margin-top: 1.5em;
    padding-top: 1.5em;
    border-top: 1px solid #ddd;
}
.estate-data-info {
    width: 50%;
    min-width: 50%;
    flex: 0 0 50%;
    margin-bottom: 0.7em;
}
.estate-data-info-label {
    text-transform: uppercase;
    padding-right:0.25em
}
.estate-data-info span.icon-text {
    font-weight: 500;
}

.estate-data-infos-group {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.estate-data-infos-group .estate-data-info {
    width: 33.333%;
    min-width: 33.333%;
    flex: 0 0 33.333%;
}

.estate-description > h2 {
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 0.75em;
}
.estate-description b {
    font-weight: 600;
}


.estate-contacts h2 {
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 0.75em;
}

.estate-author {
    margin-bottom: 0.75em;
}
.estate-author b {
    font-weight: 600;
}

.estate-author a  {
    color: #E7293D;
    font-weight: 600;
}



.estate-contacts form {
    background: #FAFAFA;
    padding: 1.5em;
    border-radius: 16px;
}
.estate-contacts label {
    margin-bottom: 1.5em;
    width: 100%;
}
.estate-contacts input, .estate-contacts textarea {
    width: 100%;
    border: 1px solid #ddd;
    padding: 0.25em 0.5em;
}

.estate-gdpr-submit label {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1;
    font-size: 0.9em;
    font-weight: 500;
}

.estate-gdpr-submit label input {
    width: 1.2em;
    height: 1.2em;
    margin-right: 0.35em;
    flex: 0 0 1.2em;
}
.estate-gdpr-submit label span{
    margin-right: 0.35em;
}
.estate-gdpr-submit label a  {
    color: #E7293D;
}
.estate-gdpr-submit  button{
    width: 100%;
    background: #E7293D;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    border: none;
    padding: 0.751em 0.5em;
    line-height: 1;
    border-radius: 16px;
}

.estate-contacts .contact-info-text {
    margin-bottom: 1em;
    background: #FAFAFA;
    padding: 1.5em;
    border-radius: 16px;
    font-weight: 500;
}
button#get-phone-offer {
    border: none;
    padding: 0;
    margin: 0;
    background: transparent;
    outline: none;
}
button#get-phone-offer:hover {
    text-decoration: underline;
    outline: none;
}

.col-12.col-md-5.col-lg-4.col-section-contacts.no-description {
    width: 100%;
    min-width: 100%;
    flex: 0 0 100%;
}


.no-description .estate-contacts > h2 {
    text-align: center;
}
.no-description .col-contacts-data {
    justify-content: center;
}

@media(max-width:767px){
    .estate-contacts .col-section-contacts .col-contacts-data{
        flex-wrap: wrap;
        gap: 1em !important;
    }
}
@media(min-width:767px) and (max-width:1200px){
    .col-12.col-md-5.col-lg-4.col-section-contacts:not(.no-description) .col-contacts-data{
        flex-wrap: wrap;
        gap: 1em !important;
    }
}

@media(min-width:1250px){
    .col-12.col-md-5.col-lg-4.col-section-contacts.no-description {
        width: 80%;
        min-width: 80%;
        flex: 0 0 80%;
        margin: 0 auto;
    }

    .col-section-contacts.no-description .estate-contacts label.contact-name {
        width: 48%;
        max-width: 48%;
        float: left;
    }

    .col-section-contacts.no-description .estate-contacts label.contact-phone {
        width: 48%;
        max-width: 48%;
        float: right;
    }

    .col-section-contacts.no-description .estate-gdpr-submit {
        display: flex;
        align-items: center;
    }
    .col-section-contacts.no-description .estate-gdpr-submit label {
        margin: 0;
    }
}

.swiper.calculators_carousel  {
    padding: 0 2.2em;
}
.swiper.calculators_carousel .swiper-slide {
    padding: 0 0.5em;
}
.swiper.calculators_carousel  .swiper-button-prev:after, 
.swiper.calculators_carousel  .swiper-button-next:after {
    font-size: 2em !important;
    font-weight: 600;
    color: #E7293D;
}
.swiper.calculators_carousel .swiper-button-prev,
.swiper.calculators_carousel .swiper-button-next{
    left: 0;
    top: 0;
    height: 100%;
    background: #fff;
    margin: 0;
    opacity: 1;
}
.swiper.calculators_carousel  .swiper-button-next{
    left: unset;
    right: 0;
}

.swiper.calculators_carousel  .swiper-slide {
    height: auto;
}
/* .swiper-button-prev.swiper-button-disabled {

} */

button.calculator-swiper-wrapper {
    background: transparent;
    padding: 0;
    margin: 0;
    border: none;
    outline: none;
    width: 100%;
    height: 100%;
    min-height: 100%;
}
.calculator-swiper {
    background: #FAFAFA;
    padding: 1em;
    padding-top: 3em;
    padding-bottom: 2em;
    border-radius: 18px;
    text-align: center;
    height: 100%;
}
.calculator-swiper-icon {
    width: 6em;
    height: 6em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    margin-bottom: 1.5em;
}
.calculator-swiper-icon svg {
    width: 100%;
    height: 100%;
}

.calculator-swiper h3 {
    font-size: 1.1em;
    margin: 0;
}


button.calculator-swiper-wrapper * {
    pointer-events: none;
    user-select: none;
}
.calculator-swiper-wrapper.active-calculator .calculator-swiper {
    background: #F0F0F0;
}
.hide-section {
    display: none;
}

section#consultation-section .estate-contacts h2, 
.calculator-section h2 {
    font-weight: 600;
    border-bottom: 3px solid #E7293D;
    font-size: 1.5em;
    padding-bottom: 0.25em;
    margin-bottom: 1em;
}

#consultation-section .estate-contacts #contact-form select{
    width: 100%;
    border: 1px solid #ddd;
    padding: 0.25em 0.5em;
}

.loan-field {
    background: #FAFAFA;
    margin-bottom: 5px;
    padding: 0.75em;
}
.loan-field label {
    width: 100%;
    min-width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
}
.loan-field label > div:last-child {
    min-width: 45%;
    width: 45%;
}
.loan-field p {
    font-size: 0.8em;
    margin-top: 0.5em;
    color: #555;
}
.loan-field .flexed.with-suffix {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.loan-field .suffix {
    width: 2.5em;
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
}
.loan-field .flexed.with-suffix.with-big-prefix .suffix {
    width: 3em;
}

.loan-field input[type=number] {
    width: 100%;
    border: 1px solid #eee;
    padding: 0.25em 0.5em;
    outline: none;
}
.loan-field input[type=range] {
    width: 100%;
}
.loan-field input[type=range]{
	-webkit-appearance: none;
    width: 100%;
    height: 12px;
    background: #EFEFEF;
    border-radius: 8px;
    border: 1px solid #ddd
    
}
.loan-field input[type=range]::-webkit-slider-thumb {
  	-webkit-appearance: none;
  	appearance: none;
  	width: 20px;
  	height: 20px;
  	background: #555;
  	cursor: pointer;
  	border-radius: 100%;
  	border:6px solid #E7293D;
}



.calculator-section .response {
    margin-top: 1em;
}
.calculator-section .loan-response-data {
    font-weight: 500;
    padding: 0.75em;
    border-bottom: 1px solid #ddd;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.calculator-section .loan-response-data > div:last-child {
    font-weight: 600;
    font-size: 1.1em;
}
.calculator-section .loan-response-disclaimer {
    padding: 0.75em;
}


.loan-field select {
    background: #fff;
    outline: none !important;
    border: 1px solid #eee;
    padding: 0.25em 0.5em;
}

.loan-field select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;

    /* Custom arrow */
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2724%27%20height%3D%2724%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M7%2010L12%2015%27%20stroke%3D%27%23E7293D%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M12%2015L17%2010%27%20stroke%3D%27%23E7293D%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0px center !important;
    background-size: 2em !important;
    padding-right: 2em !important;
}

.load-response-error {
    background: #E7293D;
    font-weight: 500;
    padding: 0.75em;
    color: #fff;
}


.col-12.col-services-links span,
.col-12.col-services-links a {
    color: #000;
    font-weight: 500;
    display: table;
    margin-bottom: 0.75em;
    font-size: 1.5em;
}
.col-12.col-services-links a:hover {
    color: #E7293D !important;
}
.col-12.col-services-links a.view-all-services {
    font-size: 1.2em !important;
    color: #E7293D !important;
}
#services-links img.services-bg {
    position: absolute;
    width: 42%;
    height: auto;
    bottom: 0;
    z-index: -1;
    left: 50%;
    transform: translateX(-50%);
}

/******************************************************
* Insurances
******************************************************/
.insurance-item {
    margin-bottom: 3em;
}
.insurance-item-image-wrapper > a {
    display: block;
    width: 100%;
    padding-top: 80%;
    position: relative;
    margin-bottom: 1em;
    border-radius: 8px;
    overflow: hidden;
}
.insurance-item-image-wrapper > a > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.insurance-item-image-wrapper h3 {
    font-size: 1.5em;
    font-weight: 500;
}
.insurance-item-image-wrapper h3 a {
    color: inherit;
    text-decoration: none;
}

@media(max-width:992px){
    .page-insurances-template .col-12.col-md-8.col-lg-8.col-content {
        order: 0;
    }
    .page-insurances-template .col-12.col-md-4.col-lg-4.col-sidebar {
        order: 3;
    }
    .page-insurances-template .col-12.col-md-12.col-lg-12.col-insurances {
        order: 2;
        margin-top: 4em !important;
    }
}

/******************************************************
* My Offers
******************************************************/
.fixed.inset-0.overflow-y-auto.px-4.py-6.sm\:px-0.z-50 {
    z-index: 999;
}


.col-12.profile-breadcrumbs.col-breadcrumbs nav,
.my-offers .col-12.col-breadcrumbs nav {
    padding-left: 0em;
    margin-bottom: 0.5em;
}

section#offers-add-offer {
    margin: 3em 0;
}

form.offer-form {
    background: #FAFAFA;
    padding: 1.5em;
    border-radius: 16px;
    position: relative;
}

form.ajax-form.newsletters-form{
    position: relative;
}

form.ajax-form.newsletters-form .loader,
form.offer-form .loader{
    display: none;
}

form.ajax-form.newsletters-form.loading .loader{
    display: flex;
    align-items: center;
    justify-content: center;
}

form.ajax-form.newsletters-form.loading .loader,
form.offer-form.loading .loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    /* align-items: center; */
    justify-content: center;
    background: #ffffffde;
    z-index: 9;
}

form.ajax-form.newsletters-form.loading .loader{
    background: #f4f4f4d4;
}

form.ajax-form.newsletters-form.loading .loader svg,
form.offer-form.loading .loader svg {
    animation: spin 1s linear infinite;
}

form.offer-form.loading .loader svg {
    position: sticky;
    top: 10em;
}

/* spin animation */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.row-margin-bottom,
form.offer-form .form-item {
    margin-bottom: 2.5em;
}
form.offer-form .form-item:last-child {
    margin-bottom: 0 !important;
}

div#form-item-offer_type span.label-like {
    margin-bottom: 0 !important;
    margin-right: 1em;
}

.flex.flexed-labels {
    align-items: center;
}
.flex.flexed-labels label {
    margin-bottom: 0;
    margin-right: 1em;
}


.row.hidden {
    display: none;
}
form.offer-form  .label-like {
    text-transform: uppercase;
    font-weight: 500;
    margin-bottom: 0.5em;
    display: block;
}

form.offer-form .form-item select {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #000;
    outline: none;
    width: 100%;
}

div#form-item-exposition .select-like-options {
    display: flex;
    gap: 1em;
    margin: 0;
    align-items: center;
}
div#form-item-exposition .select-like-option {
    margin: 0 !important;
}

.offer-form span.text-red-500 {
    color: red;
}

.offer-form .submit-button button {
    width: 100%;
    background: #E7293D;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    border: none;
    padding: 0.751em 0.5em;
    line-height: 1;
    border-radius: 16px;
}

.offer-form #description {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #888282;
    outline: none;
    width: 100%;
}

/* Images */
label#label-images {
    margin: 0;
    position: relative;
    min-height: 15em;
    border: 1px solid #D9E2D2;
    border-radius: 8px;
    padding: 0.51em;
    cursor: pointer;
        width: 100%;
    background: #fff;
}
input#images {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}
div#images-before-drop {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 1em);
    text-align: center;
    pointer-events: none;
    user-select: none;
    text-transform: none;
}
span.icon-upload {
    width: 2em;
    height: 2em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1em;
}
span.icon-upload svg {
    width: 100%;
    height: 100%;
}

div#images-before-drop.hidden {
    display: none;
}

div#images-after-drop {
    display: flex;
    flex-wrap: wrap;
}
.image-item {
    width: 25%;
    height: 9em;
    position: relative;
}
.image-item-wrapper {
    position: absolute;
    top: 0.5em;
    left: 0.5em;
    width: calc(100% - 1em);
    height: calc(100% - 1em);
    border-radius: 8px;
    overflow: hidden;
}
button.image-item-remove {
    position: absolute;
    top: 0.5em;
    right: 0.5em;
    width: 1.5em;
    height: 1.5em;
    display: flex;
    z-index: 9;
    background: #000;
    color: #fff;
    border: none;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
}
.image-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.image-item .loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffffcc;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
}
.image-item.img-uploading .loader {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 99 !important;
    pointer-events: all !important;
}
.image-item.img-uploading .loader svg {
    animation: spin 1s linear infinite;
}
.image-item.img-uploading .loader {
    display: flex;
}

/*images*/
div#images-before-drop.hidden {
    display: none;
}

div#images-after-drop {
    display: flex;
    flex-wrap: wrap;
}
.image-item {
    width: 25%;
    height: 9em;
    position: relative;
}
.image-item-wrapper {
    position: absolute;
    top: 0.5em;
    left: 0.5em;
    width: calc(100% - 1em);
    height: calc(100% - 1em);
    border-radius: 8px;
    overflow: hidden;
}
button.image-item-remove {
    position: absolute;
    top: 0.5em;
    right: 0.5em;
    width: 1.5em;
    height: 1.5em;
    display: flex;
    z-index: 9;
    background: #000;
    color: #fff;
    border: none;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
}
.image-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.image-item .loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffffcc;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
}
.image-item.img-uploading .loader {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 99 !important;
    pointer-events: all !important;
}
.image-item.img-uploading .loader svg {
    animation: spin 1s linear infinite;
}

.alert.alert-danger.image-uploade-error {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1em;
}
.alert.alert-danger.image-uploade-error:first-child{
    margin-top: 1em;
}
.alert.alert-danger.image-uploade-error:last-child{
    margin-bottom: 0;
}

.alert.alert-danger.image-uploade-error button {
    padding: 0;
    margin: 0;
    margin-left: 1em;
    border: none;
    background: transparent;
    font-size: 2em;
    line-height: 1;
}

input#search-in-neighborhood {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #888282;
    outline: none;
    width: 100%;
    margin-bottom: 1em;
}
div#neighborhood-options-no-search-results > span {
    color: #E7293D;
    margin-bottom: 1em;
    display: block;
    font-weight: 500;
}

/* user add offer messages */
.user-header-info {
    align-items: center;
    gap: 1.5em;
}
.user-header-info .user-credits {
    font-weight: 700;
}
.user-header-info .btn-bordered:hover {
    background: #f4f4f4;
}

.user-offer-adding-message {
    color: #004085;
    background-color: #cce5ff;
    border-color: #b8daff;
    position: relative;
    padding: 0.5em 1em;
    margin-bottom: 1.1em;
    border: 1px solid transparent;
    border-radius: .25rem;
    font-weight: 500;
}

button.publish-my-offer {
    display: inline-block;
    background: #17A2B8;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    text-align: center;
    text-decoration: none;
}



.alert.alert-danger span.w-5.h-5.flex.items-center.mr-2 {
    margin-right: 0.5em;
}


/*packages*/
.packages-pop-up div#pop-up-title {
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 1em;
}

.custom-user-package {
    margin-bottom: 2em;
}
.custom-user-package > p {
    margin-top: -0.5em;
}

.custom-user-package form {
    display: flex;
    gap: 1em;
    align-items: center;
}
.custom-user-package input[type="number"] {
    border: 1px solid #BDBDBD;
    padding: 0.5em;
    line-height: 1;
    color: #888282;
    outline: none;
    width: 100%;
    border-radius: 8px;
}
.custom-user-package button {
    background: #E7293D;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    border: none;
    padding: 0.751em 0.5em;
    line-height: 1;
    border-radius: 8px;
}

a.package-item {
    display: block;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 1em;
    padding: 1em;
    color: #000;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 1em;
}
a.package-item:hover {
    background: #f4f4f4;
}

button#close-pop-up > * {
    pointer-events: none;
}

@media(max-width:767px){
    body.my-offers.my-offers-page .col-estate-page-title.with-link.with-user-credits {
        flex-wrap: wrap;
    }

    body.my-offers.my-offers-page .col-estate-page-title.with-link.with-user-credits .flex.user-header-info {
        flex-wrap: wrap;
        margin-top: 2em;
        gap: 1em;
    }

    body.my-offers.my-offers-page .col-estate-page-title.with-link.with-user-credits .flex.user-header-info .user-credits {
        width: 100%;
        min-width: 100%;
    }

    body.my-offers.my-offers-page .col-estate-page-title.with-link.with-user-credits .flex.user-header-info .btn-bordered{
        width: calc(50% - 0.75em);
        text-align: center;
        font-size: 90%;
    }

    body.my-offers.my-offers-page .col-12.col-table-wrapper {
        overflow: auto;
    }

    .custom-user-package form {
        flex-wrap: wrap;
        gap: 0;
    }
    .custom-user-package form label:last-child {
        width: 100%;
    }
    .custom-user-package form label:last-child span.label-like {
        display: none;
    }
    .custom-user-package form button {
        width: 100%;
        text-align: center;
    }

    a.package-item {
        gap: 1.5em;
    }
    .packages-pop-up span.plw {
        display: block;
    }
}

.promote-offer-button {
    display: block;
    background: #CB6915;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    width: 100%;
    margin-bottom: 0.5em;
}

/* Orders */
.my-offers.my-offers-page .row.my-offers-filters-row{

    .row-filters.estate-page-search-form {
        display: flex;
        justify-content: flex-end;
    }
    .filter-item-wrapper {
        text-transform: uppercase;
        font-weight: 500;
        margin-bottom: 0.35em;
        padding: 0 1.1em;
    }
    .filter-item-wrapper.input-item-wrapper .input-filter,
    .filter-item-wrapper.select-item-wrapper select{
        line-height: 1;
        color: rgb(136, 130, 130);
        width: 100%;
        border-width: 1px;
        border-style: solid;
        border-color: rgb(189, 189, 189);
        border-image: initial;
        padding: 0.5em;
        outline: none;
    }
    .row-filters.estate-page-search-form label {
        display: block;
        margin-bottom: 0.5rem;
        width: 100%;
    }

    button#submit-my-offers-filter {
        border: none;
        padding: 0.4em 1.5em;
        line-height: 1;
        color: #fff;
        outline: none;
        background: #E7293D;
        font-weight: 600;
        letter-spacing: 1px;
        font-size: 1.3em;
    }
}


/*alerts*/
.input-note {
    font-size: 0.8em;
    font-weight: 300;
    margin-top: 0.25em;
}

.alert.alert-message {
    color: #004085;
    background-color: #cce5ff;
    border-color: #b8daff;
    padding: 1em;
    border-radius: 10px;
    font-weight: 500;
}
.alert.alert-success {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
    padding: 1em;
    border-radius: 10px;
    font-weight: 500;
}
.alert.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
    padding: 1em;
    border-radius: 10px;
    font-weight: 500;
}
span.alert-icon-wrapper {
    width: 1.35em;
    height: 1.35em;
    flex: 0 0 1.35em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1em;
}
span.alert-icon-wrapper svg {
    width: 100%;
    height: 100%;
}

button.remove-alert {
    width: 1.35em;
    height: 1.35em;
    flex: 0 0 1.35em;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    margin-left: 1em;
}
button.remove-alert svg {
    width: 100%;
    height: 100%;
}



/* Search */
label.ws-f-keyword {
    margin: 0;
    flex-grow: 1;
    text-transform: uppercase;
}
label.ws-f-keyword input {
    width: 100%;
    border: none;
    padding: 0.75em;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    text-transform: uppercase;
    outline: none;
}


.ws-f-right-side {
    display: flex;
    justify-content: space-between;
    background: #D9E2D2;
    border-radius: 10px;
}

.ws-f-location-wrapper-focused .ws-f-right-side {
    border-bottom-left-radius: 0px;
}

label.ws-f-location {
    margin: 0;
    flex-grow: 1;
    display: flex;
    align-items: center;
}


.ws-f-location-icon-wrapper {
    width: 1.35em;
    height: 1.35em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 0.5em;
    margin-right: 0.25em;
}

label.ws-f-location input {
    border: none;
    padding: 0.75em;
    padding-left: 0em;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    background: #fff;
    outline: none;
    width: 100%;
}
label.ws-f-location input::-webkit-input-placeholder { /* WebKit browsers */
    text-transform: uppercase;
}
label.ws-f-location input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    text-transform: uppercase;
}
label.ws-f-location input::-moz-placeholder { /* Mozilla Firefox 19+ */
    text-transform: uppercase;
}
label.ws-f-location input:-ms-input-placeholder { /* Internet Explorer 10+ */
    text-transform: uppercase;
}
label.ws-f-location input::placeholder { /* Recent browsers */
    text-transform: uppercase;
}

label.ws-f-location.ws-f-location-selected button#clear-location-btn {
    display: flex !important;
    position: absolute;
    right: 0.5em;
    padding: 0;
    margin: 0;
    background: #fff;
    border: none;
    top: 50%;
    transform: translateY(-50%);
    width: 1.35em;
    height: 1.35em;
}
label.ws-f-location.ws-f-location-selected button#clear-location-btn svg {
    pointer-events: none;
}

button#ws-f-more-fields {
    border: none;
    padding: 0.25em;
    background: transparent;
    margin: 0 0.5em;
    outline: none;
    display: inline-flex;
    align-items: center;

    opacity: 0;
    pointer-events: none;
}
button#ws-f-more-fields svg {
    width: 1em;
    height: 1em;
}
button#ws-f-submit {
    background: #232C1C;
    color: #fff;
    border-radius: 10px;
    border: none;
    outline: none;
    margin: 0;
    padding: 0.5em 2em;
    margin-right: -1px;
    text-transform: uppercase;
    min-width: 9em;
    transform: 0.35s;
}
button#ws-f-submit:hover {
    background: #303c27;
}


.ws-f-location-wrapper-focused input#location {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}


button.ws-f-location-region-city.all-cities {
    pointer-events: none;
    user-select: none;
}

div#ws-f-location-wrapper {
    position: relative;
    background: #fff;
}

div#ws-f-location-cities,
div#ws-f-location-regions {
    position: absolute;
    top: calc(100%);
    width: 100%;
    background: #fff;
    max-height: 20em;
    overflow: auto;
    text-align: left;
    padding: 2px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 4px;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

div#ws-f-location-cities.opened,
div#ws-f-location-regions.opened {
    z-index: 99;
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

div#ws-f-location-cities::-webkit-scrollbar,
div#ws-f-location-regions::-webkit-scrollbar {
    width: 12px;
}

div#ws-f-location-cities::-webkit-scrollbar-track,
div#ws-f-location-regions::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
    border-radius: 10px;
}

div#ws-f-location-cities::-webkit-scrollbar-thumb,
div#ws-f-location-regions::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
    background: #232C1C;
}

button.ws-f-location-region-city,
button.ws-f-location-region-btn {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    border: none;
    background: #f4f4f4;
    padding: 0.751em 0.75em;
    padding-right: 0.5em;
    border-bottom: 1px solid #fff;
    font-size: 1.1em;
    line-height: 1;
    text-align: left;
}
button.ws-f-location-region-city .full-width {
    margin-top: 0.25em;
    font-weight: 300;
}
.ws-f-location-region:last-child button.ws-f-location-region-btn {
    border-bottom: none;
}

button.ws-f-location-back-to-region-btn {
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    border-bottom: 1px solid #fff;
    display: flex;
    align-items: center;
    padding: 0.751em 0.751em;
    line-height: 1;
}
button.ws-f-location-back-to-region-btn > * {
    pointer-events: none;
}
span.ws-f-location-back-to-region-btn-icon {
    width: 2em;
    height: 2em;
    display: inline-flex;
    align-items: center;
    margin-top: -0.5em;
    margin-bottom: -0.5em;
    margin-right: -0.5em;
}
span.ws-f-location-back-to-region-btn-icon svg {
    transform: rotate(90deg);
    margin-left: -0.5em;
    width: 100%;
    height: 100%;
}

button.ws-f-location-region-city.all-cities {
    flex-wrap: wrap;
}
button.ws-f-location-region-city.all-cities > div {
    margin-bottom: 0.325em;
    width: 100%;
}

body.ws-f-location-cities-opened div#ws-f-location-regions {
    display: none;
}

button.ws-f-location-region-btn > * {
    pointer-events: none;
}
span.ws-f-location-region-btn-icon {
    width: 1.5em;
    height: 1.5em;
    flex: 0 0 1.5em;
    display: flex;
    align-items: center;
    justify-content: center;
}
span.ws-f-location-region-btn-icon svg {
    transform: rotate(-90deg);
}
span.ws-f-location-region-btn-icon svg path {
    stroke-width: 1.5px;
}


/* alert pop up */

aside#pop-up.opened {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #232c1cd1;
    z-index: 999;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

div#pop-up-wapper {
    background: #fff;
    padding: 1.3em;
    border-radius: 10px;
    max-width: 35em;
}

div#pop-up-wapper {
    background: #fff;
    padding: 1.3em;
    border-radius: 10px;
}
aside#pop-up.error-color {
    color: #b70606;
}

div#pop-up-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1em;
    font-size: 1.3em;
    color: #232C1C;
    font-weight: 500;
}
button#close-pop-up {
    padding: 0;
    margin: 0;
    background: transparent;
    border: none;
    font-size: 1.5em;
    line-height: 1;
    margin-left: 1em;
}

button#close-pop-up-footer {
    border: 1px solid #555;
    padding: 0.65em 1.3em;
    border-radius: 8px;
    text-transform: uppercase;
    font-weight: 500;
    text-decoration: none;
    font-size: 0.95em;
    transition: 0.35s;
    text-align: center;
    display: inline-block;
    line-height: 1;
    background: transparent;
    min-width: 7em;
}
button#close-pop-up-footer:hover {
    background: #f1f1f1;
}

button#delete-offer {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #ad0e0e;
    padding: 0.65em 1em;
    border-radius: 8px;
    text-transform: uppercase;
    font-weight: 500;
    text-decoration: none;
    font-size: 0.95em;
    line-height: 1;
    border: none;
    min-width: 7em;
    margin-left: 1em;
}
button#delete-offer:hover{
    background: #880b0b
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.alert-pop-up div#pop-up-wapper {
    position: relative;
}
.alert-pop-up div#pop-up-header{
    margin: 0;
    flex-wrap: wrap;
    justify-content: center;
}
.alert-pop-up .alert-icon-wrapper {
    width: 3em;
    height: 3em;
    margin: 0 auto;
    border-radius: 100%;
   
    padding: 0.75em;
    margin-bottom: 0.5em;
    align-items: center;
    justify-content: center;
}

.alert-pop-up.warning-pop-up .alert-icon-wrapper.alert-warning{
    display: flex !important;
}
.alert-pop-up.success-pop-up .alert-icon-wrapper.alert-success{
    display: flex !important;
}

.alert-pop-up .alert-icon-wrapper.alert-warning {
    background: #F8D7DA;
}

.alert-pop-up .alert-icon-wrapper.alert-success {
    background: #97ff97;
}

.alert-pop-up .loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffffcc;
    border-radius: 10px;

    z-index: -1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.alert-pop-up.ajaxing .loader{
    z-index: 9;
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}
.alert-pop-up.ajaxing .loader svg,
.alert-pop-up.ajaxing .loader svg {
   animation: spin 1s linear infinite;
}

.alert-pop-up div#pop-up-title{
    width: 100%;
    text-align: center;
}
.alert-pop-up button#close-pop-up {
    position: absolute;
    top: 0;
    right: 0.5em;
    outline: none;
}


ul.selected-offers-for-delete-ul {
    margin-top: 1em;
    margin-bottom: 1.5em;
    max-height: calc(100dvh - 20em);
    overflow: auto;
}


.options-wapper.options-wrapper-multiple {
    display: flex;
    flex-wrap: wrap;
}
.options-wapper.options-wrapper-multiple label {
    width: 50%;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 1em;
}
.options-wapper.options-wrapper-multiple label input {
    width: 1.3em;
    height: 1.3em;
    margin-right: 0.25em;
}


/*tables*/
table {
    width: 100%;
}

thead th {
    padding: 0.75em;
    border-bottom: 1px solid;
    background: #F4F4F4;
}
tbody td {
    padding: 0.75em;
    border-bottom: 1px solid;
}

@media(max-width:1300px){
    .col-table-my-offers{
        overflow: auto;
    }
}

.admin-offer-td-image {
    width: 9em;
    height: 9em;
    display: flex;
    align-items: center;
    justify-content: center;
}
.admin-offer-td-image img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}


a.item-show {
    display: block;
    background: gray;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    text-align: center;
    text-decoration: none;
}
button.top-offer {
    display: block;
    background: #17A2B8;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    width: 100%;
}

button.recommended-offer {
    display: block;
    background: #639963;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    width: 100%;
}

button.delete-item {
    display: block;
    background: #E7293D;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    width: 100%;
}


.col-12.col-estate-page-title.with-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.btn-bordered {
    padding: 0;
    margin: 0;
    border: 3px solid #E7293D;
    color: #E7293D;
    font-weight: 700;
    font-size: 1em;
    padding: 0.5em 1.5em;
    border-radius: 26px;
    text-decoration: none;
    background: transparent;
    outline: none;
}
.btn-bordered:hover {
    color: #E7293D;
    text-decoration: none;
}
a.item-edit {
    display: block;
    background: #17A2B8;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    width: 100%;
    text-align: center;
    text-decoration: none;
}


span.table-text-price,
span.table-text-price-bgn {
    font-size: 1.1em;
    font-weight: 500;
}

span.status-draft {
    display: inline-block;
    background: gray;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    text-align: center;
    text-decoration: none;
    text-align: center;
    min-width: 13em;
}
span.status-published {
    display: inline-block;
    background: #639963;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 5px;
    white-space: nowrap;
    font-weight: 600;
    font-size: 90%;
    margin-bottom: 0.5em;
    text-align: center;
    min-width: 13em;
}

.text-red-500.text-sm.error-message {
    color: red;
    font-size: 90%;
}



table#building_apartments-table {
    font-size: 1.2em;
    font-weight: 500;
}
/* body.archive-estates.archive-estates-offer-types-3 .estate-page-search-form-item.page-search_property-type-wrapper {
    display: none;
} */


form.like-ajax {
    position: relative;
}
form.like-ajax .loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fafafae8;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
    display: none;
}
form.like-ajax.loading .loader{
    opacity: 1;
    visibility: visible;
    z-index: 9;
    pointer-events: all;
    display: flex;
}
form.like-ajax.loading .loader svg {
    animation: spin 1s linear infinite;
}

/******************************************************
* FOOTER
******************************************************/
.main-footer {
    background: #F4F4F4;
    padding-top: 3em;
}

.main-footer .col-sections-footer {
    display: flex;
    justify-content: space-between;
}

.footer-logo {
    width: 28%;
}
.footer-logo a {
    display: inline-flex;
    align-items: flex-end;
    margin-bottom: 1em;
    text-decoration: none;
}
.footer-logo a .header-site-name {
    margin-top: 0;
    font-size: 1.1em;
    margin-left: 0.5em;
}
.footer-description {
    font-size: 0.9em;
    font-weight: 500;
}

.footer-menu-label {
    font-size: 1.3em;
    font-weight: 700;
    text-transform: uppercase;
    color: #E7293D;
    margin-bottom: 0.75em;
}
.footer-menu ul {
    padding: 0;
    margin: 0;
    list-style: none;
}
.footer-menu ul li {
    margin-bottom: 0.5em;
}
.footer-menu ul li:last-child {
    margin-bottom: 0em;
}
.footer-menu ul a {
    color: #000;
    text-decoration: none;
    font-weight: 500;
    font-size: 1.1em;
}

.footer-socia-links {
    width: 20%;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.footer-socia-links-label{
    text-align: right;
    margin-bottom: 0.5em;
    font-weight: 500;
    font-size: 1.1em;
}
.social-links {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.social-links a {
    text-decoration: none;
    margin-left: 0.5em;
}
span.icon-wrapper {
    width: 2em;
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #E7293D;
    border-radius: 100%;
}
span.icon-wrapper svg {
    width: 65%;
    height: 65%;
    flex: 0 0 65%;
}

.bottom-footer {
    background: #E7293D;
    text-align: center;
    color: #fff;
    padding: 0.5em;
    margin-top: 3em;
}
/******************************************************
* DISPLAYS FONT-SIZE
******************************************************/

@media(min-width:1200px) and (max-width:1298px){
    body {
        font-size: 12.5px;
    }
}

@media(min-width:1299px) and (max-width:1364px){
    body {
        font-size: 12.5px;
    }
}

@media(min-width:1365px) and (max-width:1438px){
    body {
        font-size: 12.75px;
    }
}

@media (min-width:1439px){
    body {
        font-size: 13.5px;
    }
}

@media (min-width:1500px){
    body {
        font-size: 14px;
    }
}

@media (min-width:1560px){
}

@media (min-width:1579px){
    body {
        font-size: 15px;
    }
}

@media (min-width:1599px){
    body {
        font-size: 15px;
    }
}

@media (min-width:1649px){
    body {
        font-size: 15.5px;
    }
}

@media (min-width:1679px){
    body {
        font-size: 17px;
    }
}
@media (min-width:1779px){
    body {
        font-size: 17.5px;
    }
}
@media (min-width:1879px){
    body {
        font-size: 18px;
    }
	.container {
        max-width: 2560px;
        padding: 0px 8.35em;
    }
}
@media (min-width:2079px){
    body {
        font-size: 20.5px;
    }
}

@media (min-width:2360px){
    body {
        font-size: 23px;
    }
}

/****************************************************************
* animation element
*****************************************************************/
.pswp__img {
    object-fit: contain !important;
}

.overflow-hidden,
section.section.check-section {
    overflow: hidden;
}
.animation-element {
  opacity: 0;
  position: relative;
}

/*animation element sliding right*/
.animation-element.slide-right {
  opacity: 0;
  -moz-transition: all 1000ms linear;
  -webkit-transition: all 1000ms linear;
  -o-transition: all 1000ms linear;
  transition: all 1000ms linear;
  -moz-transform: translate3d(200px, 0px, 0px);
  -webkit-transform: translate3d(200px, 0px, 0px);
  -o-transform: translate(200px, 0px);
  -ms-transform: translate(200px, 0px);
  transform: translate3d(200px, 0px, 0px);
}

.animation-element.slide-right.in-view {
  opacity: 1;
  -moz-transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate3d(0px, 0px, 0px);
}


/*animation element sliding left*/

.animation-element.slide-left {
  opacity: 0;
  -moz-transition: all 1000ms linear;
  -webkit-transition: all 1000ms linear;
  -o-transition: all 1000ms linear;
  transition: all 1000ms linear;
  -moz-transform: translate3d(-200px, 0px, 0px);
  -webkit-transform: translate3d(-200px, 0px, 0px);
  -o-transform: translate(-200px, 0px);
  -ms-transform: translate(-200px, 0px);
  transform: translate3d(-200px, 0px, 0px);
}

.animation-element.slide-left.in-view {
  opacity: 1;
  -moz-transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate3d(0px, 0px, 0px);
}

/*animation slide-down*/
.animation-element.slide-down.disable-in-view.in-view,
.animation-element.slide-down{
    transition: 1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(-25%);
    -ms-transform: translateY(-25%);
    transform: translateY(-25%);
}
.animation-element.slide-down.pro-100{
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}

.animation-element.slide-down.in-view {
    opacity: 1;
    transition: 1s;
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
    -o-transform: matrix(1, 0, 0, 1, 0, 0);
    -ms-transform: matrix(1, 0, 0, 1, 0, 0);
    transform: matrix(1, 0, 0, 1, 0, 0);
}
.anm-d-4{
    animation-delay: 2s;
}

/*animation show slow*/
.animation-element.show-slow.disable-in-view.in-view,
.animation-element.show-slow,
.animation-element.show-slow-big{
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    visibility:hidden;
    opacity: 0;
    -webkit-transform: translateY(25%);
    -ms-transform: translateY(25%);
    transform: translateY(25%);
    transition:1s;
}

.animation-element.show-slow.in-view {
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    visibility: visible;
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
    transition:1s;
}

.animation-element.show-slow-big.in-view {
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    visibility: visible;
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
    transition:1.4s;
}