@charset "UTF-8";

/*Обнуление*/

* {
  padding: 0;
  margin: 0;
  border: 0;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

nav,
footer,
header,
aside {
  display: block;
}

html,
body {
  height: 100%;
  width: 100%;
  font-size: 100%;
  line-height: 1;
  font-size: 14px;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

input,
button,
textarea {
  font-family: inherit;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*--------------------*/

body {
  height: 100%;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
}

body.scroll-off {
  overflow: hidden;
}

.wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

::-webkit-scrollbar {
  width: 0px;
}

::-webkit-scrollbar-track {
  background: #fff;
}

::-webkit-scrollbar-thumb {
  background-color: #121212;
  border: 0px solid #121212;
}

main {
  flex: 1 1 auto;
}

section {
  position: relative;
}

picture {
  display: block;
  width: 100%;
  height: 100%;
}

img {
  width: 100%;
  height: 100%;
}

ul {
  padding-left: 0;
}

.container {
  position: relative;
  z-index: 2;
}

.form-control {
  padding: 13px 22px;
  font-weight: 400;
  font-size: 16px;
}

.header {
  z-index: 3;
  position: fixed;
  top: -100%;
  left: 0;
  width: 100%;
  display: flex;
  align-items: flex-start;
  padding: 35px 0;
  background-color: #0000004f;
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  transition: all 0.3s ease;
  overflow: hidden;
}

.header.active {
  top: 0;
}

.header.activeMenu {
  height: 100% !important;
}

.header.activeMenu .tab-menu:before {
  opacity: 0.8;
}

.header__submenu {
  margin-top: 20px;
  position: fixed;
  z-index: 3;
  top: 110px;
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: calc(100vh - 110px);
  display: flex;
  padding-bottom: 150px;
}

.header__submenu-content {
  width: 100%;
  height: 100%;
  padding-left: 100px;
  padding-top: 50px;
  color: #fff;
}

.header__submenu-content ul {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.header__submenu-content ul li a {
  font-size: 20px;
  font-weight: 500;
}

.header__submenu .tab-menu {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  height: 100%;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: relative;
}

.header__submenu .tab-menu li a {
  display: flex;
}

.header__submenu .tab-menu svg {
  margin-left: 10px;
  width: 20px;
  height: 20px;
  display: block;
  transform: rotate(0deg) !important;
}

.header__submenu .tab-menu svg path {
  fill: #fff;
}

.header__submenu .tab-menu:before {
  content: "";
  height: 80%;
  width: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -20px;
  opacity: 0;
  transition: all 0.3s ease;
}

.header__submenu .tab-menu li a {
  font-weight: 700;
  font-size: 22px;
}

.header__menu {
  display: flex;
  height: 100%;
  align-items: center;
}

.header__menu li {
  margin-right: 28px;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  transition: all 0.3s ease;
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.header__menu li.active:before {
  width: 100%;
}

.header__menu li:before {
  content: "";
  width: 0;
  height: 1px;
  bottom: 0;
  position: absolute;
  left: auto;
  right: 0;
  z-index: -1;
  transition: width 0.5s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  background: #fff;
}

.header__menu li:hover:before {
  width: 100%;
  left: 0;
  right: auto;
}

.header__menu li a svg {
  transition: all 0.3s ease;
}

.header__menu li.active a svg {
  transform: rotate(180deg);
}

.header__menu li a {
  color: #fff;
}

.header__utilites {
  display: flex;
  justify-content: space-between;
}

.header__langswitch {
  display: flex;
  align-items: center;
  font-size: 16px;
  margin-right: 20px;
}

.header__langswitch a,
.header__langswitch span {
  color: #fff;
}

.header__cart {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.header__cart-count {
  position: absolute;
  bottom: 2px;
  right: 2.2px;
  color: red;
  font-weight: 700;
  font-size: 8px;
}

img {
  -o-object-fit: cover;
     object-fit: cover;
}

.home {
  height: 100vh;
}

.home__title h1 {
  font-weight: 900;
  font-size: 48px;
  line-height: 40px;
  color: #fff;
  text-transform: uppercase;
}

.home__title p {
  margin: 15px 0;
  color: #fff;
  text-transform: lowercase;
  font-size: 16px;
  font-weight: 400;
}

.home__search input {
  padding-right: 105px;
}

.home__search > a#estateyard-main-search-btn {
  position: absolute;
  display: flex;
  top: 50%;
  transform: translateY(-50%);
  right: 13px;
  height: calc(100% - 13px);
  background: #36494C;
  border-radius: 5px;
  padding: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  align-items: center;
}

.home__stats {
  display: flex;
  justify-content: center;
  background: rgba(66, 84, 87, 0.3);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 20px;
  margin-top: 50px;
  margin-bottom: 70px;
}

.home__item {
  margin-right: 20px;
  padding: 22px 0;
  text-align: center;
  background: rgba(139, 126, 116, 0.3);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  max-width: 160px;
  max-height: 160px;
  width: 100%;
  height: 100%;
}

.home__item:last-child {
  margin-right: 0;
}

.home__item h3,
.home__item span {
  color: #fff;
}

.home__item h3 {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
}

.home__item span {
  font-weight: 700;
  font-size: 64px;
  line-height: 96px;
}

.title h2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  text-transform: uppercase;
  color: #fff;
}

.background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.swiper-pagination {
  bottom: -30px !important;
}

.swiper-pagination-bullet {
  background-color: #fff;
  opacity: 0.7;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  transform: scale(1.15);
}

.reviews {
  position: relative;
  height: 100vh;
  padding: 50px 0;
}

.reviews__item {
  max-width: 360px;
  max-height: 360px;
  height: 100%;
  width: 100%;
  background: rgba(1, 20, 32, 0.8);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 25px 40px;
}

.reviews__clientName {
  margin-top: 8px;
  margin-bottom: 14px;
}

.reviews__clientName h3 {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}

.reviews__text {
  width: 100%;
  max-height: 94px;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  margin-bottom: 18px;
}

.reviews__text p {
  width: 100%;
  font-weight: 400;
  font-size: 15px;
  letter-spacing: 0.02em;
  line-height: 22px;
  color: #fff;
}

.reviews__stars {
  width: 100%;
  display: flex;
  justify-content: flex-start;
}

.reviews__link {
  display: block;
  padding: 10px;
  background: #102029;
  border: 2px solid #102029;
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  color: #fff;
  text-transform: uppercase;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  margin-top: 77px;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  border-radius: 5px;
  transition: all 0.3s ease;
}

.reviews__link:hover {
  color: #fff;
  transform: scale(1.05);
}

.reviews__more {
  display: block;
  margin-top: 25px;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: #fff;
  transition: all 0.3s ease;
}

.reviews__more:hover {
  transform: scale(1.05);
  color: #fff;
}

.hotoffers {
  padding: 50px 0;
  height: 100vh;
}

.cardprod__item {
  max-width: 360px;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
  border-radius: 30px;
  padding: 25px;
  display: flex;
  flex-direction: column;
}

.cardprod__image {
  margin-bottom: 12px;
}

.cardprod__image img {
  height: 216px;
  border-radius: 20px;
}

.cardprod__reduce {
  position: absolute;
  top: 10px;
  left: 10px;
  color: #fff;
  font-weight: 700;
  line-height: 18px;
  background-color: #AB0000;
  border-radius: 15px;
  padding: 5px 20px;
}

.cardprod__like {
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.cardprod__like.active svg path {
  fill: #AB0000;
}

.cardprod__header {
  flex: 1 1 auto;
}

.cardprod__price p {
  font-weight: 700;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  margin-bottom: 0;
}

.cardprod__price strike {
  color: rgba(255, 255, 255, 0.7);
  font-weight: 400;
  font-size: 14px;
  line-height: 21px;
}

.cardprod__info {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cardprod__info-item {
  display: flex;
  align-items: flex-start;
  margin-right: 12px;
}

.cardprod__info-item:last-child {
  margin-right: 0;
}

.cardprod__info-item svg {
  margin-right: 5px;
}

.cardprod__info-item span {
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
}

.cardprod__address {
  margin-top: 24px;
  color: #fff;
  font-size: 15px;
  line-height: 22px;
  font-weight: 400;
  text-decoration: underline;
}

.cardprod__link {
  display: block;
  margin-top: 70px;
  color: #fff;
  transition: all 0.3s ease;
}

.cardprod__link:hover {
  color: #fff;
  transform: scale(1.05);
}

.swiper-slide {
  display: flex;
  justify-content: center;
}

.swiper-button-prev {
  left: -30px;
}

.swiper-button-prev:after {
  display: none;
}

.swiper-button-next {
  right: -30px;
}

.swiper-button-next:after {
  display: none;
}

.footer {
  position: relative;
  padding: 100px 0;
}

.footer__title {
  margin-bottom: 10px;
}

.footer__title h4 {
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
}

.footer__socials {
  display: flex;
}

.footer__socials-item {
  margin-right: 8px;
}

.footer__socials-item:last-child {
  margin-right: 0;
}

.footer__logo {
  margin-top: 50px;
}

.footer__list ul li {
  margin-bottom: 10px;
}

.footer__list ul li a {
  transition: all 0.3s ease;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.8);
}

.footer__list ul li a:hover {
  color: #fff;
}

.footer__list ul li svg {
  margin-right: 10px;
}

.footer__list ul li:last-child {
  margin-bottom: 0;
}

.footer__partner {
  padding-top: 100px;
}

.footer__partner-logo {
  margin-top: 10px;
  margin-right: 45px;
}

.footer__partner-logo:last-child {
  margin-right: 0;
}

.footer__cpry {
  position: relative;
  background-color: #000;
  text-align: center;
  padding: 40px 0;
}

.footer__cpry p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 0;
}

.about {
  padding-top: 100px;
}

.about__title {
  padding: 100px 0;
}

.about__title h1 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  color: #fff;
}

.about__img img {
  border-radius: 40px;
}

.about__item {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  padding: 80px 0;
  margin-bottom: 80px;
}

.about__item:nth-child(2n) .row {
  flex-direction: row-reverse;
}

.about__item:last-child {
  margin-bottom: 0;
}

.about__item-title {
  margin-bottom: 50px;
}

.about__item-title h2 {
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  color: #fff;
}

.about__item-desc p {
  font-weight: 400;
  font-size: 16px;
  text-align: justify;
  color: #fff;
  line-height: 24px;
}

.advantages {
  padding: 80px 0;
}

.advantages h2 {
  margin-bottom: 40px;
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  color: #fff;
}

.advantages__item {
  padding: 50px;
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  text-align: center;
  margin-bottom: 10px;
}

.advantages__text {
  margin-top: 30px;
}

.advantages__text p {
  font-weight: 700;
  color: #fff;
  font-size: 16px;
  line-height: 24px;
}

.about-partners {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  padding: 100px 0;
}

.about-partners h2 {
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  color: #fff;
  margin-bottom: 70px;
}

.about-partners__wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}

.about-partners__item {
  margin-right: 50px;
}

.about-partners__item:last-child {
  margin-right: 0;
}

.contact {
  padding-top: 100px;
}

.contact__title {
  padding: 80px 0;
}

.contact__title h1 {
  color: #fff;
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
}

.contact__info {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 70px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.contact__info-schedule {
  margin-right: 25px;
  position: relative;
}

.contact__info-schedule::after {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: -12.5px;
}

.contact__info-schedule:last-child {
  margin-right: 0;
}

.contact__info-schedule:last-child:after {
  display: none;
}

.contact__info-schedule p {
  margin-bottom: 0;
}

.contact__info-schedule span {
  font-size: 15px;
  font-weight: 400;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.7);
}

.contact__info ul li {
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  color: #fff;
}

.contact__info ul li svg {
  margin-right: 25px;
}

.contact__info ul li a {
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
  color: #fff;
  display: flex;
  align-items: center;
}

.contact__form {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 33px 60px;
}

.contact__form-title {
  text-align: center;
  margin-bottom: 20px;
}

.contact__form-title h2 {
  color: #fff;
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
}

.contact__form input {
  border-radius: 15px;
  margin-bottom: 10px;
}

.contact__form textarea {
  border-radius: 15px;
  min-height: 160px;
  margin-bottom: 20px;
}

.contact__form button {
  background: #286122;
  border-radius: 15px;
  padding: 18px 0;
  max-width: 261px;
  width: 100%;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  margin: 0px auto;
  display: block;
}

.map {
  margin-top: 50px;
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
}

.map__wrapper {
  padding: 50px 0;
}

.map iframe {
  border-radius: 30px;
}

.portfolio {
  padding: 100px 0;
}

.portfolio .background {
  filter: brightness(0.3);
}

.portfolio__title {
  padding: 80px 0;
  text-align: center;
}

.portfolio__title h2 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 0;
}

.portfolio__tab {
  background: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
  border-radius: 30px;
  padding: 28px 35px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.portfolio__tab a {
  transition: all 0.3s ease;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  padding: 10px;
  background-color: #fff;
  border-radius: 15px;
}

.portfolio__tab a:hover {
  transform: scale(1.05);
}

.portfolio__item {
  padding: 30px;
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  display: flex;
  justify-content: center;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  width: 100%;
  margin-bottom: 40px;
}

.portfolio__item img {
  max-width: 300px;
  max-height: 300px;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 15px;
}

.pagination {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0px auto;
  display: flex;
  align-items: center;
  margin-top: 10px;
}

.pagination > div {
  margin-right: 20px;
}

.pagination > div:last-child {
  margin-right: 0;
}

.pagination a {
  display: block;
  transition: all 0.3s ease;
}

.pagination a:hover {
  transform: scale(1.09);
}

.pagination__pages {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.pagination__pages a {
  margin-right: 20px;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(1.41769px);
          backdrop-filter: blur(1.41769px);
  border-radius: 10px;
  font-weight: 700;
  color: #000;
  font-size: 14px;
  line-height: 21px;
}

.pagination__pages a.active {
  font-size: 20px;
  line-height: 30px;
  width: 50px;
  height: 50px;
}

.pagination__pages a:last-child {
  margin-right: 0;
}

.reviews-form {
  padding-top: 100px;
}

.reviews-form__title {
  padding: 100px 0;
}

.reviews-form__title h1 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  color: #fff;
}

.reviews-form__content {
  padding: 50px 60px;
  background: rgba(0, 0, 0, 0.65);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
}

.reviews-form__content button {
  padding: 15px 0;
  max-width: 376px;
  width: 100%;
  margin: 0 auto;
  background: #286122;
  border-radius: 15px;
  color: #fff;
  font-weight: 700;
}

.reviews-form__content-stars {
  display: flex;
  justify-content: center;
  margin: 15px 0;
  padding-bottom: 20px;
}

.reviews-form__content-stars svg {
  width: 20px;
  height: 20px;
  cursor: pointer;
  margin: 0px 5px;
  transition: all 0.3s ease;
}

.reviews-form__content-stars svg.active path {
  fill: #fff;
}

.reviews-form__content-stars svg.hovered path {
  fill: #fff;
}

.reviews-form__content-stars svg path {
  transition: all 0.3s ease;
  stroke: #fff;
  fill: transparent;
}

.reviews-form__content-stars svg:hover path {
  fill: #fff;
}

.reviews-form__content input,
.reviews-form__content textarea {
  border-radius: 15px;
}

.reviews-form__content input {
  margin-bottom: 10px;
}

.reviews-form__content textarea {
  min-height: 150px;
}

.reviews-form__text {
  margin-top: 30px;
  margin-bottom: 60px;
}

.reviews-form__text p {
  line-height: 25px;
  font-size: 16px;
  font-weight: 400;
  color: #fff;
}

.reviews-content {
  padding-bottom: 60px;
}

.reviews-content__item {
  background: rgba(31, 38, 42, 0.65);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  display: flex;
  justify-content: space-between;
  padding: 50px 70px;
}

.reviews-content__title {
  text-align: center;
  margin: 50px 0;
}

.reviews-content__title h2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #fff;
  text-transform: uppercase;
}

.reviews-content__title h3 {
  text-align: left;
  font-weight: 700;
  font-size: 20px;
  line-height: 30px;
  text-transform: uppercase;
  color: #fff;
}

.reviews-content__logo img {
  max-width: 156px;
}

.reviews-content__text p {
  font-weight: 400;
  font-size: 15px;
  line-height: 22px;
  color: #fff;
}

.reviews-content__image img {
  border-radius: 30px;
}

.reviews-content .swiper-button-prev svg path,
.reviews-content .swiper-button-next svg path {
  fill: #fff;
}

.reviews-content .reviews__item {
  margin: 20px 0;
}

.prodlist {
  z-index: 0;
  padding-bottom: 100px;
}

.prodlist .cardprod__reduce {
  z-index: 3;
  background-color: #286122;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.prodlist .cardprod__item {
  margin: 20px auto;
}

.prodlist .cardprod__like {
  z-index: 3;
}

.prodlist .swiper-button-next {
  right: 10px;
}

.prodlist .swiper-button-prev {
  left: 10px;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

.filter {
  padding-top: 100px;
  position: relative;
}

.filter__content {
  margin-top: 80px;
  margin-bottom: 60px;
  background: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
  border-radius: 30px;
  display: flex;
  justify-content: space-between;
  padding: 32px 60px;
}

.filter__line {
  height: 100%;
  width: 1px;
  background-color: #fff;
  margin: 0px 35px;
}

.filter__left select {
  padding: 5px 10px;
  cursor: pointer;
  border-radius: 15px;
  margin-left: 30px;
  font-size: 14px;
}

.filter__left,
.filter__right {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.filter__right button {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.9);
  padding: 2px 10px;
  border-radius: 15px;
  font-size: 14px;
}

.filter__right button.active svg {
  transform: rotate(180deg);
}

.filter__right button svg {
  margin-left: 20px;
  width: 10px;
  height: 10px;
  transition: all 0.3s ease;
}

.filter__right .filter__wrapper {
  display: flex;
  flex-direction: column;
  padding: 40px 60px;
  justify-content: flex-start;
}

.filter__right .filter__modal {
  display: none;
  position: absolute;
  top: 130px;
  right: 0;
  background: rgba(0, 0, 0, 0.7);
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
  border-radius: 30px;
  max-width: 60%;
  width: 100%;
  z-index: 999;
}

.filter__right .filter__modal-title {
  margin-bottom: 25px;
  margin-top: 25px;
}

.filter__right .filter__modal-title h3 {
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
}

.filter__right .filter__modal-header {
  margin-bottom: 20px;
}

.filter__right .filter__modal-header h4 {
  font-weight: 700;
  font-size: 20px;
  line-height: 36px;
  color: #fff;
  text-transform: uppercase;
}

.filter__right .filter__modal-body {
  display: flex;
  justify-content: space-between;
  min-height: 380px;
  max-height: 380px;
  height: 100%;
  overflow: auto;
}

.filter__right .filter__modal-body__radio {
  display: flex;
  justify-content: space-between;
}

.filter__right .filter__modal-body__radio label span {
  background-color: #fff;
  border-radius: 15px;
  padding: 15px 0;
  display: block;
  width: 105px;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0px 0px 10px rgba(255, 255, 255, 0.3);
  cursor: pointer;
  font-weight: 600;
}

.filter__right .filter__modal-body__radio label input {
  position: absolute;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.filter__right .filter__modal-body__radio label input:checked + span {
  background-color: #dec7c7;
}

.filter__right .filter__modal-body__range {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.filter__right .filter__modal-body__range label input {
  max-width: 106px;
  width: 100%;
  padding: 10px 15px 10px 15px;
  text-align: center;
  border-radius: 15px;
}

.filter__right .filter__modal-body__range .line {
  width: 10px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.filter__right .filter__modal-footer button {
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  padding: 10px 20px;
  background: #286122;
  box-shadow: 0px 0px 10px rgba(40, 97, 34, 0.5);
  border-radius: 15px;
  transition: all 0.3s ease;
}

.filter__right .filter__modal-footer button:hover {
  background: #5daf56;
}

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

.filter__sort h3 {
  display: block;
  min-width: 121px;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 0;
}

.filter__title h2 {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  color: #fff;
  margin-bottom: 0;
}

.product-page {
  padding-top: 100px;
  padding-bottom: 100px;
}

.product-page__title {
  padding-top: 80px;
  padding-bottom: 60px;
}

.product-page__title h1 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  text-transform: uppercase;
  color: #fff;
}

.product-page__section {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 60px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}

.product-page__text p {
  font-weight: 400;
  font-size: 16px;
  text-align: justify;
  color: #fff;
  line-height: 24px;
}

.product-page__text h2 {
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  color: #fff;
  margin-bottom: 20px;
}

.product-page__text a {
  display: inline-block;
  margin-top: 25px;
  background: #286122;
  border-radius: 15px;
  color: #fff;
  padding: 10px 20px;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
}

.product-page__text ul li {
  position: relative;
  color: #fff;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  text-align: justify;
  padding-left: 10px;
}

.product-page__text ul li:before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: 8px;
  left: -10px;
  background-color: #fff;
  border-radius: 50%;
}

.product-page__text hr {
  margin: 13px 0;
  width: 100%;
  background-color: #fff;
}

.product-page__image {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 50px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}

.product-page__slider-title {
  margin-top: 100px;
  margin-bottom: 50px;
}

.product-page__slider-title h4 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #fff;
}

.product-page__swiper-item {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 25px;
  text-align: center;
}

.product-page__swiper-item img {
  max-height: 275px;
  height: 100%;
  border-radius: 15px;
}

.product-page__swiper-item picture {
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

.product-page__swiper-item h5 {
  margin-top: 25px;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  color: rgba(255, 255, 255, 0.7);
}

.product-page__swiper-item p {
  font-weight: 400;
  font-size: 14px;
  line-height: 24px;
  color: #fff;
}

.product-page img {
  height: 100%;
  border-radius: 30px;
}

.vacancies {
  padding-top: 100px;
}

.vacancies__title {
  padding-top: 80px;
  padding-bottom: 60px;
}

.vacancies__title h1 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  text-transform: uppercase;
  color: #fff;
}

.vacancies__item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background: linear-gradient(90deg, rgba(18, 18, 18, 0.7) -1.55%, rgba(18, 18, 18, 0) 86.76%);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 30px;
  margin-bottom: 60px;
}

.vacancies__item img {
  width: 300px;
  height: 300px;
  border-radius: 30px;
  margin-right: 52px;
}

.vacancies__item h2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #fff;
  margin-bottom: 30px;
}

.vacancies__item p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 60px;
}

.vacancies__item a {
  border-radius: 15px;
  background: #286122;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  padding: 10px 20px;
  transition: all 0.3s ease;
  border: 1px solid #286122;
}

.vacancies__item a:hover {
  background-color: transparent;
  color: #fff;
  border: 1px solid #fff;
}

.vacancies__item picture {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(0);
    opacity: 0;
  }

  8% {
    -webkit-transform: scale(0);
    opacity: 0;
  }

  15% {
    -webkit-transform: scale(0.1);
    opacity: 0.5;
  }

  30% {
    -webkit-transform: scale(0.5);
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(0);
    opacity: 0;
  }

  8% {
    -webkit-transform: scale(0);
    opacity: 0;
  }

  15% {
    -webkit-transform: scale(0.1);
    opacity: 0.5;
  }

  30% {
    -webkit-transform: scale(0.5);
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(1);
  }
}

.contact-us {
  cursor: pointer;
  z-index: 10;
  position: fixed;
  bottom: 50px;
  right: 40px;
  background: rgba(36, 255, 0, 0.2);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  padding: 12px;
  border-radius: 50%;
}

.contact-us__social {
  cursor: pointer;
  z-index: 10;
  position: fixed;
  bottom: 0px;
  right: 0px;
  background: rgba(0, 0, 0, 0.2);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  padding: 12px;
  border-radius: 50%;
  z-index: 0;
  opacity: 0;
  visibility: hidden;
  transform: rotate(-360deg);
  transition: all 0.6s ease;
}

.contact-us.active div.pulsator {
  opacity: 0;
  visibility: hidden;
}

.contact-us.active .contact-us__social {
  opacity: 1;
  visibility: visible;
  transform: rotate(0);
}

.contact-us.active .contact-us__telegram {
  bottom: 100px;
  right: 0;
}

.contact-us.active .contact-us__whatsapp {
  bottom: 200px;
  right: 0;
}

.contact-us.active .contact-us__viber {
  bottom: 300px;
  right: 0;
}

.contact-us svg {
  width: 36px;
  height: 36px;
}

.contact-us div.pulsator {
  border: 10px solid rgba(36, 255, 0, 0.2);
  background: transparent;
  border-radius: 360px;
  height: 120px;
  width: 120px;
  -webkit-animation: pulse 1.5s ease-out;
  animation: pulse 2.5s ease-out;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  position: absolute;
  top: -42px;
  left: -42px;
  z-index: 1;
  opacity: 0;
  content: "";
  transition: all 0.3s ease;
}

.has-image[data-image-fit=contain] .fancybox__image {
  border-radius: 30px;
}

#slider-round {
  height: 10px;
}

#slider-round .noUi-connect {
  background-color: #504e4e;
}

#slider-round .noUi-touch-area {
  background: #39A08E;
  border-radius: 50%;
  border: none;
}

#slider-round .noUi-marker-horizontal.noUi-marker {
  display: none;
}

.noUi-target {
  border: none !important;
}

.noUi-handle {
  border: 1px solid #39A08E;
  box-shadow: none;
  background-color: transparent;
}

.noUi-handle:after,
.noUi-handle:before {
  display: none;
}

#slider-round .noUi-handle {
  height: 18px;
  width: 18px;
  top: -5px;
  right: -9px;
  /* half the width */
  border-radius: 9px;
}

.product {
  padding-top: 100px;
}

.product .background {
  filter: brightness(0.4);
}

.product-header {
  padding: 50px 0;
}

.product-header__wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 25px 50px;
}

.product-header__wrapper h2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #fff;
  margin-bottom: 7px;
}

.product-header__wrapper h3 {
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
}

.product .contact {
  padding-top: 50px;
}

.product-main__img {
  position: relative;
}

.product-main__img img {
  border-radius: 30px;
  height: 650px;
}

.product-main__img span {
  position: absolute;
  top: 25px;
  right: 25px;
  font-weight: 700;
  font-size: 12px;
  line-height: 18px;
  color: #FFFFFF;
  padding: 5px 20px;
  background: #286122;
  border-radius: 15px;
}

.product-main__price {
  padding-bottom: 30px;
  border-bottom: 1px solid #fff;
  margin-bottom: 20px;
}

.product-main__price h3 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #FFFFFF;
  margin-bottom: 0;
}

.product-main__info {
  margin-bottom: 40px;
  padding: 50px;
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  height: 650px;
  overflow: auto;
}

.product-main__info-badge {
  background: #FFFFFF;
  border-radius: 15px;
  padding: 15px 20px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

.product-main__info-badge img {
  width: 90px;
  height: 90px;
  border-radius: 15px;
}

.product-main__info-badge picture {
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

.product-main__info-header {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
}

.product-main__info-header h4 {
  font-weight: 700;
  font-size: 20px;
  line-height: 30px;
  color: #000;
  margin-left: 10px;
  margin-bottom: 0;
}

.product-main__info-job {
  margin-bottom: 5px;
}

.product-main__info-job p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: rgba(0, 0, 0, 0.9);
}

.product-main__info-footer a {
  font-weight: 700;
  font-size: 20px;
  line-height: 30px;
  color: #173713;
}

.product-main__properties {
  padding-bottom: 10px;
  border-bottom: 1px solid #fff;
}

.product-main__properties p:first-child {
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  color: #FFFFFF;
}

.product-main__properties p:last-child {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #FFFFFF;
}

.product-gallery {
  margin-bottom: 40px;
}

.product-gallery__wrapper {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 20px 30px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  overflow: hidden;
}

.product-gallery__wrapper > div {
  padding: 10px 0;
  overflow: auto;
}

.product-gallery__wrapper > div::-webkit-scrollbar {
  width: 0px;
  height: 10px;
}

.product-gallery__wrapper > div::-webkit-scrollbar-track {
  background: #fff;
}

.product-gallery__wrapper > div::-webkit-scrollbar-thumb {
  background-color: #121212;
  border: 0px solid #121212;
}

.product-gallery a {
  display: block;
  margin: 0px 15px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.product-gallery a img {
  width: 110px;
  height: 110px;
  border-radius: 15px;
}

.product-about {
  margin-bottom: 40px;
}

.product-about__wrapper {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 40px 50px;
}

.product-about__title {
  margin-bottom: 30px;
}

.product-about__title h4 {
  color: #fff;
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
}

.product-about__points {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 30px;
  border-bottom: 1px solid #fff;
  margin-bottom: 30px;
}

.product-about__desc h5 {
  font-weight: 700;
  font-size: 24px;
  line-height: 36px;
  color: #FFFFFF;
  margin-bottom: 25px;
}

.product-about__desc p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  text-align: justify;
  color: #fff;
}

.product-about__item {
  display: flex;
  align-items: center;
  width: 200px;
  margin-bottom: 10px;
}

.product-about__item:last-child {
  margin-bottom: 0;
}

.product-about__item svg {
  max-width: 20px;
  max-height: 20px;
  min-width: 20px;
  min-height: 20px;
  margin-right: 10px;
}

.product-about__item p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 0;
}

.product-about hr {
  width: 100%;
  background-color: #FFF;
  height: 2px;
  margin: 10px 0;
}

.product-about__parameters {
  margin-top: 10px;
}

.product-about__parameter {
  display: flex;
  justify-content: space-between;
}

.product-about__parameter p {
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  font-weight: 400;
  max-width: 300px;
  text-align: right;
}

.product-about__parameter p.bold {
  font-weight: 700;
}

.product-calculator__logo {
  margin-bottom: 40px;
}

.product-calculator .month {
  margin-left: 5px;
}

.product-calculator__body {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 50px 45px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.product-calculator__body-form label {
  padding: 10px 20px;
  width: 100%;
  background: #FFFFFF;
  border-radius: 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 20px;
}

.product-calculator__body-form label span {
  margin-bottom: 0;
  font-weight: 400;
  font-size: 11px;
  line-height: 16px;
  color: rgba(0, 0, 0, 0.7);
}

.product-calculator__body-form label p {
  margin-bottom: 0;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #000000;
}

.product-calculator__body-form a {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: block;
  margin-top: 50px;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  padding: 18px 50px;
  background: #39A08E;
  border: 1px solid #39A08E;
  border-radius: 15px;
  transition: all 0.3s ease;
}

.product-calculator__body-form a:hover {
  background-color: #fff;
  color: #39A08E;
}

.product-calculator__info-card {
  margin-bottom: 40px;
  padding: 25px;
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
}

.product-calculator__info-card img {
  border-radius: 30px;
}

.product-calculator__slogan {
  background: rgba(18, 18, 18, 0.7);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  padding: 45px;
  text-align: center;
}

.product-calculator__slogan p {
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  margin-bottom: 20px;
}

.product-offers {
  position: relative;
  padding: 100px 0;
}

.product-offers__title {
  margin-bottom: 60px;
}

.product-offers__title h2 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  text-transform: uppercase;
  color: #FFFFFF;
}

.cv {
  padding-top: 50px;
}

.cv__title {
  padding: 50px 0;
}

.cv__title h1 {
  font-weight: 700;
  font-size: 36px;
  line-height: 54px;
  color: #fff;
  text-transform: uppercase;
}

.cv__wrapper {
  padding: 50px;
  background: linear-gradient(90deg, rgba(18, 18, 18, 0.7) -1.55%, rgba(18, 18, 18, 0) 86.76%);
  -webkit-backdrop-filter: blur(4.5px);
          backdrop-filter: blur(4.5px);
  border-radius: 30px;
  margin-bottom: 100px;
}

.cv__img {
  width: 100%;
}

.cv__img picture {
  max-width: 300px;
}

.cv__img img {
  max-width: 300px;
  max-height: 300px;
  width: 100%;
  height: 100%;
  border-radius: 15px;
}

.cv__job {
  margin-bottom: 30px;
}

.cv__job h2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #fff;
}

.cv__desc p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
}

.cv__point-title {
  margin-top: 60px;
  margin-bottom: 40px;
}

.cv__point-title h3 {
  font-weight: 700;
  font-size: 20px;
  color: #fff;
  line-height: 30px;
}

.cv__points li {
  position: relative;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 20px;
  padding-left: 10px;
}

.cv__points li:before {
  content: "";
  position: absolute;
  top: 10px;
  left: -10px;
  width: 5px;
  height: 5px;
  background-color: #fff;
  border-radius: 50%;
}

.cv__footer a {
  font-weight: 600;
  display: inline;
  color: rgba(255, 255, 255, 0.8);
}

.cv__footer p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.8);
}

.cv__form-title {
  margin-bottom: 50px;
  text-align: center;
}

.cv__form-title h2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: #fff;
}

.cv .form-file {
  position: absolute;
  top: 0;
  right: 0;
  visibility: hidden;
}

.cv .file__wrapper {
  position: absolute;
  top: 15px;
  right: 20px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.cv .file__wrapper span {
  padding: 5px 10px;
  color: #fff;
  font-weight: 400;
  font-size: 14px;
  background: #696969;
  border-radius: 15px;
  line-height: 21px;
  transition: all 0.3s ease;
}

.cv .file__wrapper span:hover {
  background: #8f8d8d;
}

.mobile,
.mobile768 {
  display: none;
}

.desktop {
  display: block !important;
}

@media screen and (max-width: 1300px) {
  .portfolio__tab {
    flex-wrap: wrap;
    justify-content: center;
  }

  .portfolio__tab a {
    max-width: 200px;
    width: 100%;
    text-align: center;
    margin: 10px;
  }
}

@media screen and (max-width: 992px) {
  .cv__job h2 {
    margin-top: 50px;
  }

  .product-calculator__info {
    margin-top: 40px;
  }

  .product-main__img img {
    margin-bottom: 40px;
  }

  .product-page__text {
    margin-bottom: 30px;
  }

  .filter__right .filter__modal {
    max-width: 100%;
    top: 180px;
    background: rgba(0, 0, 0, 0.9);
  }

  .contact__form {
    margin-top: 20px;
  }

  .desktop {
    display: none !important;
  }

  .mobile {
    display: flex;
  }

  .header .row {
    display: flex;
    justify-content: space-between;
  }

  .header__menu-mobile {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    -webkit-backdrop-filter: blur(7.5px);
            backdrop-filter: blur(7.5px);
    z-index: 3;
    display: none;
  }

  .header__menu-mobile ul.header__menu {
    margin-top: 50px;
    display: flex;
    flex-direction: column;
    overflow: auto;
    height: 70vh;
  }

  .header__menu-mobile ul.header__menu li {
    margin: 10px auto;
  }

  .header__menu-mobile ul.header__menu li a {
    font-size: 24px;
    display: flex;
    align-items: center;
  }

  .header__menu-mobile ul.header__menu li a svg {
    margin-left: 10px;
    width: 10px;
    height: 10px;
  }

  .header__exit svg {
    width: 40px;
    height: 40px;
  }

  .header__exit svg path {
    fill: #fff;
  }

  .header .header__menu li:before,
  .header .header__submenu .tab-menu:before {
    display: none;
  }

  .header__submenu {
    position: static;
    transform: translateX(0%);
    padding-bottom: 0;
    height: auto;
    margin-top: 0;
  }

  .header__submenu .tab-menu {
    margin-top: 0;
  }

  .header__menu-mobile ul.header__menu li a {
    justify-content: center;
    font-weight: 700;
  }

  .header__menu .withSubMenu ul {
    padding-left: 20px;
    display: none;
    margin: 20px 0;
    padding-bottom: 20px;
    border-bottom: 1px solid #ffffffc7;
  }

  .header__submenu .tab-menu li a {
    font-weight: 400 !important;
  }

  .header__menu li:before {
    display: none;
  }

  .header__menu-mobile ul.header__menu li {
    transition: all 0.3s ease;
  }

  .header__menu-mobile ul.header__menu li a {
    transition: all 0.3s ease;
  }

  .header__menu-mobile ul.header__menu li a.active svg {
    transform: rotate(180deg) !important;
  }

  .header__burger {
    position: absolute;
    display: flex;
    justify-content: center;
    z-index: 4;
    cursor: pointer;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    top: 50%;
    left: 50%;
    transform: translateY(-50%);
  }

  .header__burger-wrapper {
    position: relative;
    width: 20px;
    height: 20px;
  }

  .header__burger-wrapper:before {
    content: "";
    width: 100%;
    height: 2px;
    position: absolute;
    top: 2px;
    left: 0;
    background-color: #fff;
  }

  .header__burger-wrapper:after {
    content: "";
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #fff;
  }

  .header__burger span {
    position: absolute;
    top: 9px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
  }

  .header__logo svg {
    width: 100px;
  }

  .home__stats {
    flex-wrap: wrap;
  }

  .home__item,
  .home__item:last-child {
    margin: 10px;
  }

  .footer .row > div {
    margin-top: 20px;
  }

  .header__menu {
    align-items: flex-start;
  }

  .header__menu-mobile ul.header__menu li a {
    justify-content: flex-start;
  }

  .header__menu-mobile ul.header__menu li {
    margin: 10px 0;
  }

  .filter__content {
    flex-direction: column;
  }

  .filter__right button {
    margin-top: 20px;
    margin-left: auto;
  }

  .filter__left select {
    margin-left: 0;
  }

  .filter__sort h3 {
    padding-right: 30px;
  }

  .filter__line {
    height: 20px;
  }
}

@media screen and (max-width: 768px) {
  .cv {
    padding-top: 0;
  }

  .mobile768 {
    display: block;
  }

  .product-about__parameter {
    flex-direction: column;
  }

  .product-about__parameter p {
    text-align: left;
  }

  .filter__modal-header {
    position: relative;
  }

  .filter__modal-header-exit {
    width: 20px;
    height: 20px;
    position: absolute;
    top: 10px;
    right: 20px;
  }

  .filter__modal-header-exit span {
    display: block;
    position: relative;
    width: 20px;
    height: 20px;
  }

  .filter__modal-header-exit span:before,
  .filter__modal-header-exit span:after {
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    border-radius: 15px;
  }

  .filter__modal-header-exit span:before {
    top: 9px;
    transform: rotate(-45deg);
  }

  .filter__modal-header-exit span:after {
    bottom: 9px;
    transform: rotate(45deg);
  }

  .vacancies__item {
    flex-direction: column;
  }

  .vacancies__item img {
    margin-right: 0;
    margin-bottom: 20px;
  }

  .filter {
    position: static;
  }

  .filter__right .filter__modal {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
  }

  .filter__sort {
    flex-direction: column;
    align-items: flex-start;
  }

  .reviews-content .reviews__item {
    margin: 20px auto;
  }

  .header {
    padding: 15px 0;
  }

  .home__title h1 {
    font-size: 36px;
  }

  .home__title p,
  .home__item h3 {
    font-size: 14px;
  }

  .form-control {
    padding: 10px 20px;
  }

  .home__item span {
    font-size: 54px;
  }

  .home__stats {
    margin-bottom: 0;
  }

  .swiper-button-next {
    right: 10px;
  }

  .swiper-button-prev {
    left: 10px;
  }

  .title h2 {
    font-size: 22px;
  }

  .home {
    height: auto;
    padding-top: 200px;
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 576px) {
  .cv__wrapper {
    border-radius: 0;
  }

  .cv__title {
    padding: 25px 0;
  }

  .cv__form-title h2 {
    font-size: 28px;
    line-height: 36px;
  }

  .cv__title h1 {
    font-size: 28px;
  }

  .cv__job h2 {
    margin-top: 25px;
    font-size: 26px;
  }

  .cv__desc p {
    font-size: 14px;
  }

  .cv__point-title {
    margin-top: 30px;
    margin-bottom: 40px;
  }

  .cv__point-title h3 {
    font-size: 18px;
  }

  .cv__points li {
    margin-bottom: 10px;
  }

  .cv__img img,
  .cv__img picture {
    max-width: 100%;
  }

  .product-header__wrapper h2 {
    font-size: 28px;
    line-height: 36px;
  }

  .product-about__wrapper {
    margin: 0px 5px;
  }

  .product-header {
    padding: 25px 0;
  }

  .product-main__price h3 {
    font-size: 26px;
  }

  .product-main__price {
    padding-bottom: 15px;
  }

  .product-about__desc h5 {
    margin-bottom: 12px;
  }

  .product-about__desc p {
    font-size: 14px;
    line-height: 22px;
  }

  .product-calculator__slogan p {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .product-offers__title h2 {
    text-align: center;
  }

  .product-offers__title {
    margin-bottom: 30px;
  }

  .product-offers {
    padding-top: 50px;
  }

  .product-offers__title h2 {
    font-size: 32px;
  }

  .product-gallery__wrapper {
    padding: 10px 15px;
  }

  .vacancies__item h2 {
    font-size: 28px;
  }

  .vacancies__item picture {
    width: 100%;
  }

  .vacancies__item img {
    max-width: 250px;
    max-height: 250px;
    width: 100%;
    height: 100%;
  }

  .vacancies__item p,
  .vacancies__item a {
    font-size: 14px;
    margin-bottom: 15px;
  }

  .vacancies__item a {
    margin-top: 20px;
  }

  .product-page__text h2 {
    font-size: 20px;
    line-height: 24px;
  }

  .product-page__text ul li {
    font-size: 14px;
  }

  .product-page__title {
    padding-top: 40px;
    padding-bottom: 30px;
  }

  .product-page__section {
    padding: 30px 20px;
    margin-bottom: 20px;
  }

  .product-page__title h1 {
    font-size: 28px;
  }

  .filter__content {
    margin-top: 40px;
    margin-bottom: 30px;
  }

  .filter__left {
    flex-direction: column;
  }

  .filter__line {
    width: 100%;
    height: 1px;
    margin-bottom: 15px;
  }

  .filter__sort {
    align-items: center;
  }

  .filter__sort h3 {
    padding-right: 0;
  }

  .filter__right button {
    width: 100%;
    position: relative;
  }

  .filter__right button svg {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
  }

  .filter__right button.active svg {
    transform: rotate(180deg) translateY(4px);
  }

  .reviews-form__title {
    padding: 50px 0;
  }

  .reviews-form__title h1,
  .reviews-content__title h2 {
    font-size: 26px;
    line-height: 30px;
  }

  .reviews-content__text {
    max-height: 100px;
    overflow: auto;
    margin-bottom: 20px;
  }

  .reviews-content__title {
    margin: 25px 0;
  }

  .footer__partner > div {
    display: flex;
    flex-wrap: wrap;
  }

  .footer__cpry p {
    font-size: 12px;
    padding: 0px 10px;
  }

  .header__langswitch {
    margin-right: 15px;
  }

  .about-partners__wrapper {
    flex-wrap: wrap;
  }

  .about-partners__item {
    margin: 20px 10px;
  }

  .about-partners__item svg {
    width: 100px;
  }

  .about__title h1 {
    margin-left: 15px;
  }

  .about__title {
    padding: 50px 0;
  }

  .about__item-title h2 {
    font-size: 18px;
    line-height: 24px;
  }

  .about__item {
    margin-bottom: 40px;
    padding: 40px 0;
  }

  .about-partners h2 {
    margin-bottom: 35px;
    font-size: 18px;
  }

  .about-partners {
    padding: 50px 0;
  }

  .contact__info-wrapper {
    flex-direction: column;
  }

  .contact__info-wrapper svg,
  .contact__info-wrapper .contact__info-schedule::after {
    display: none;
  }

  .contact__info-wrapper .contact__info-schedule {
    margin: 0;
    text-align: center;
  }

  .contact__info ul li svg {
    width: 20px;
  }

  .contact__info {
    padding: 20px;
  }

  .contact__info ul li {
    display: flex;
    justify-content: center;
    font-size: 14px;
  }

  .contact__info ul li a {
    font-size: 14px;
  }

  .contact__info ul li span {
    font-size: 12px;
  }

  .portfolio__title {
    padding: 40px 0;
  }

  .portfolio__title h2 {
    font-size: 26px;
  }

  .portfolio__tab a {
    font-size: 14px;
    max-width: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 18px;
  }
}

@media screen and (max-width: 450px) {
  .filter__modal-body__radio {
    flex-direction: column;
  }

  .filter__modal-body__radio > label {
    margin-bottom: 15px;
  }

  .filter__right .filter__modal-body__range .line {
    display: none;
  }

  .filter__modal-body__range {
    flex-direction: column;
  }

  .filter__modal-body__range > label {
    margin-bottom: 15%;
  }

  .hotoffers__item {
    max-width: 260px;
  }

  .hotoffers__header > div {
    flex-direction: column;
  }

  .hotoffers__info {
    margin-top: 20px;
  }

  .header__logo svg {
    width: 70px;
  }

  .header__langswitch {
    font-size: 14px;
  }

  .header__cart svg {
    width: 20px;
  }

  .header__cart-count {
    font-size: 6px;
  }

  .home__item span {
    font-size: 36px;
  }

  .home__item {
    max-width: 100px;
  }
}

@media screen and (min-height: 800px) {
  .home {
    padding-top: 200px;
  }

  .home .container {
    justify-content: center !important;
  }

  .reviews,
  .hotoffers {
    display: flex;
    align-items: center;
  }
}

@media screen and (max-height: 700px) {
  .home,
  .reviews,
  .hotoffers {
    height: auto;
  }

  .home {
    padding: 200px 0;
  }
}
/* EstateYard: category title stays white for every dynamic category */
#estateyard-category-title {
    color: #fff !important;
}


/* EstateYard dynamic main property gallery */
.product-main__img { position: relative; overflow: hidden; }
.ey-main-slider { position: relative; width: 100%; height: 100%; min-height: 520px; overflow: hidden; border-radius: inherit; background:#171815; }
.ey-main-slides { position:absolute; inset:0; }
.ey-main-slide { position:absolute; inset:0; opacity:0; pointer-events:none; transition:opacity .32s ease; }
.ey-main-slide.active { opacity:1; pointer-events:auto; }
.ey-main-slide img { width:100%; height:100%; object-fit:cover; display:block; }
.ey-slider-arrow {
  position:absolute; top:50%; transform:translateY(-50%); z-index:5;
  width:46px; height:46px; border:0; border-radius:50%;
  background:rgba(12,13,12,.62); color:white; font-size:34px; line-height:1;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  backdrop-filter:blur(6px);
}
.ey-slider-arrow:hover { background:rgba(12,13,12,.82); }
.ey-slider-arrow.prev { left:18px; }
.ey-slider-arrow.next { right:18px; }
.ey-slider-dots {
  position:absolute; z-index:5; left:50%; bottom:17px; transform:translateX(-50%);
  display:flex; gap:7px; align-items:center;
}
.ey-slider-dots button {
  width:8px; height:8px; padding:0; border:0; border-radius:50%;
  background:rgba(255,255,255,.52); cursor:pointer;
}
.ey-slider-dots button.active { width:22px; border-radius:999px; background:#fff; }
.ey-slider-count {
  position:absolute; z-index:5; right:17px; bottom:14px;
  padding:7px 10px; border-radius:999px; background:rgba(12,13,12,.62);
  color:#fff; font-size:12px; font-weight:600; backdrop-filter:blur(6px);
}
.ey-listing-badge {
  position:absolute; z-index:5; left:18px; top:18px;
  background:rgba(17,19,15,.78); color:white; padding:8px 12px;
  border-radius:999px; font-size:11px; font-weight:700; letter-spacing:.08em;
}
@media (max-width: 991px) {
  .ey-main-slider { min-height: 430px; }
}
@media (max-width: 575px) {
  .ey-main-slider { min-height: 350px; }
  .ey-slider-arrow { width:40px; height:40px; }
}

/* Dynamic property agent */
.ey-property-agent{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;color:#171815}
.ey-agent-copy{display:flex;flex-direction:column;align-items:flex-start}
.ey-agent-copy strong{font-size:17px;line-height:1.2;margin-bottom:4px}
.ey-agent-copy span{font-size:13px;margin-bottom:10px;color:#31332e}
.ey-agent-copy a{font-size:22px;font-weight:800;color:#1e4f1d;text-decoration:none}
.ey-property-agent img{width:86px;height:86px;object-fit:cover;border-radius:15px}

/* EstateYard logo click alignment */
.header__logo{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:42px !important;
  height:66px !important;
  padding:0 !important;
  margin:0 !important;
  position:relative;
  z-index:20;
  cursor:pointer;
}
.header__logo svg{
  display:block;
  width:42px !important;
  height:66px !important;
  margin:0 !important;
  pointer-events:none;
}


/* EstateYard nested real-estate submenu: opens only after click */
@media (min-width: 993px){
  .header__submenu .header__submenu-content{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:opacity .18s ease, visibility .18s ease;
  }

  .header__submenu.ey-realestate-open .header__submenu-content{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
}


/* EstateYard cadastral services page */
.ey-cadastral-page{
  position:relative;
  min-height:100vh;
  padding:150px 0 90px;
  overflow:hidden;
}
.ey-cadastral-page>.background{
  position:absolute;
  inset:0;
  z-index:-2;
}
.ey-cadastral-page>.background picture,
.ey-cadastral-page>.background img{
  width:100%;
  height:100%;
  display:block;
}
.ey-cadastral-page>.background img{
  object-fit:cover;
  position:fixed;
  inset:0;
}
.ey-cadastral-page:before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(8,10,8,.72);
  z-index:-1;
}
.ey-cadastral-wrap{position:relative;z-index:1}
.ey-cadastral-hero{
  max-width:860px;
  padding:55px 0 60px;
  color:#fff;
}
.ey-cadastral-kicker{
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  margin-bottom:18px;
  opacity:.72;
}
.ey-cadastral-hero h1{
  color:#fff;
  font-size:64px;
  line-height:1;
  margin:0 0 24px;
  text-transform:uppercase;
}
.ey-cadastral-hero p{
  max-width:760px;
  color:#fff;
  font-size:19px;
  line-height:1.65;
  opacity:.92;
  margin-bottom:30px;
}
.ey-cadastral-cta,
.ey-cadastral-bottom a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 26px;
  border:1px solid rgba(255,255,255,.75);
  color:#fff;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  text-decoration:none;
  transition:.2s ease;
}
.ey-cadastral-cta:hover,
.ey-cadastral-bottom a:hover{
  background:#fff;
  color:#111;
}
.ey-cadastral-grid{margin-top:15px}
.ey-cadastral-grid>[class*="col-"]{
  display:flex;
  margin-bottom:24px;
}
.ey-cadastral-card{
  width:100%;
  min-height:250px;
  padding:30px;
  background:rgba(255,255,255,.94);
  color:#171815;
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(5px);
  transition:transform .2s ease, background .2s ease;
}
.ey-cadastral-card:hover{
  transform:translateY(-4px);
  background:#fff;
}
.ey-cadastral-card>span{
  display:block;
  font-size:12px;
  letter-spacing:.15em;
  opacity:.45;
  margin-bottom:34px;
}
.ey-cadastral-card h3{
  font-size:22px;
  line-height:1.2;
  margin:0 0 15px;
}
.ey-cadastral-card p{
  margin:0;
  font-size:15px;
  line-height:1.6;
  color:#4a4d47;
}
.ey-cadastral-bottom{
  margin-top:35px;
  padding:38px 42px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  border:1px solid rgba(255,255,255,.35);
  color:#fff;
  background:rgba(10,12,10,.5);
}
.ey-cadastral-bottom span{
  display:block;
  opacity:.7;
  font-size:13px;
  margin-bottom:8px;
}
.ey-cadastral-bottom h2{
  color:#fff;
  margin:0;
  font-size:28px;
}
@media (max-width: 991px){
  .ey-cadastral-page{padding-top:110px}
  .ey-cadastral-hero h1{font-size:46px}
  .ey-cadastral-bottom{align-items:flex-start;flex-direction:column}
}
@media (max-width: 575px){
  .ey-cadastral-page{padding-top:95px}
  .ey-cadastral-hero{padding:35px 0 40px}
  .ey-cadastral-hero h1{font-size:36px}
  .ey-cadastral-hero p{font-size:16px}
  .ey-cadastral-card{min-height:auto;padding:24px}
  .ey-cadastral-bottom{padding:28px 24px}
  .ey-cadastral-bottom h2{font-size:23px}
}


/* Cadastral service cards - rounded translucent gray rectangles with symbolic icons */
.ey-cadastral-grid>[class*="col-"]{
  margin-bottom:20px;
}
.ey-cadastral-card{
  position:relative;
  min-height:225px;
  padding:28px 30px;
  border-radius:22px;
  background:rgba(118, 122, 116, .50);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  overflow:hidden;
  transform:none;
}
.ey-cadastral-card:hover{
  transform:translateY(-3px);
  background:rgba(118, 122, 116, .62);
}
.ey-cadastral-card>span{
  position:absolute;
  top:22px;
  right:24px;
  margin:0;
  color:rgba(255,255,255,.55);
  font-size:12px;
  letter-spacing:.14em;
}
.ey-cadastral-icon{
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:22px;
  border-radius:16px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
}
.ey-cadastral-icon svg{
  width:34px;
  height:34px;
  fill:none;
  stroke:#fff;
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ey-cadastral-card h3{
  color:#fff;
  margin-bottom:12px;
}
.ey-cadastral-card p{
  color:rgba(255,255,255,.80);
}
@media (max-width: 575px){
  .ey-cadastral-card{
    border-radius:18px;
    padding:24px;
  }
}


/* EstateYard lead form status */
.ey-lead-status{
  margin-top:14px;
  min-height:20px;
  font-size:14px;
  line-height:1.45;
}
.ey-lead-status.is-success{color:#d8f4d4}
.ey-lead-status.is-error{color:#ffd1d1}
#consultatie button[disabled]{
  opacity:.65;
  cursor:wait;
}


/* EstateYard - Servicii juridice imobiliare */
.ey-legal-page .cv__title h1{
  text-transform:none;
}
.ey-legal-intro{
  margin-bottom:34px;
}
.ey-legal-grid{
  margin-top:10px;
}
.ey-legal-grid>[class*="col-"]{
  margin-bottom:20px;
}
.ey-legal-card{
  height:100%;
  min-height:205px;
  padding:28px 30px;
  border-radius:22px;
  background:rgba(118,122,116,.50);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:transform .18s ease, background .18s ease;
}
.ey-legal-card:hover{
  transform:translateY(-3px);
  background:rgba(118,122,116,.62);
}
.ey-legal-card h3{
  margin:0 0 12px;
  color:#fff;
  font-size:22px;
  line-height:1.25;
}
.ey-legal-card p{
  margin:0;
  color:rgba(255,255,255,.82);
  line-height:1.65;
}
.ey-legal-cta{
  margin:36px 0 70px;
  padding:34px 36px;
  border-radius:22px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
}
.ey-legal-cta h2{
  color:#fff;
  margin-bottom:12px;
}
.ey-legal-cta p{
  color:rgba(255,255,255,.82);
  margin-bottom:24px;
}
.ey-legal-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 28px;
  border-radius:4px;
  background:#fff;
  color:#111 !important;
  text-decoration:none !important;
  font-weight:600;
  transition:opacity .18s ease;
}
.ey-legal-btn:hover{
  opacity:.85;
}
@media (max-width: 767px){
  .ey-legal-card{
    min-height:auto;
    padding:24px;
    border-radius:18px;
  }
  .ey-legal-cta{
    padding:26px 24px;
    border-radius:18px;
  }
}


/* EstateYard - Premium legal page visual (no photo assets) */
.ey-legal-page{
  position:relative;
  z-index:2;
}
.product > .ey-legal-background{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 14% 15%, rgba(255,255,255,.09), transparent 30%),
    radial-gradient(circle at 82% 20%, rgba(180,154,104,.12), transparent 28%),
    linear-gradient(135deg, #111311 0%, #1b1e1a 48%, #0d0f0d 100%);
}
.product > .ey-legal-background img,
.product > .ey-legal-background picture{
  display:none !important;
}
.ey-legal-background__glow{
  position:absolute;
  width:520px;
  height:520px;
  right:-140px;
  top:80px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.05);
  box-shadow:
    0 0 0 90px rgba(255,255,255,.018),
    0 0 0 180px rgba(255,255,255,.012);
}
.ey-legal-background__lines{
  position:absolute;
  inset:0;
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:68px 68px;
  -webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,.8), transparent 70%);
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.8), transparent 70%);
}

.ey-legal-page .cv__wrapper{
  position:relative;
  padding:48px;
  overflow:hidden;
  background:
    linear-gradient(115deg, rgba(22,25,22,.94), rgba(42,45,40,.74));
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 28px 70px rgba(0,0,0,.28);
}
.ey-legal-page .cv__wrapper:after{
  content:"";
  position:absolute;
  width:280px;
  height:280px;
  right:-80px;
  bottom:-130px;
  border-radius:50%;
  border:1px solid rgba(185,158,105,.20);
}

.ey-legal-visual{
  position:relative;
  min-height:390px;
  max-width:470px;
  margin:0 auto;
  border-radius:28px;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 76% 23%, rgba(198,170,113,.20), transparent 27%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    0 22px 50px rgba(0,0,0,.30);
}
.ey-legal-visual:before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:22px;
  pointer-events:none;
}
.ey-legal-visual__halo{
  position:absolute;
  width:220px;
  height:220px;
  right:-45px;
  top:-25px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(194,166,110,.22), rgba(194,166,110,0) 70%);
}

.ey-law-book{
  position:absolute;
  left:34px;
  top:45px;
  width:205px;
  height:128px;
  padding:20px 22px;
  border-radius:6px 13px 13px 6px;
  background:
    linear-gradient(90deg, rgba(255,255,255,.10), transparent 5%),
    linear-gradient(145deg,#232722,#111411);
  border:1px solid rgba(210,184,130,.34);
  box-shadow:0 20px 32px rgba(0,0,0,.36);
  transform:rotate(-3deg);
  color:#e3c88d;
}
.ey-law-book:before{
  content:"";
  position:absolute;
  left:13px;
  top:0;
  bottom:0;
  width:1px;
  background:rgba(227,200,141,.30);
}
.ey-law-book__eyebrow{
  display:block;
  font-size:9px;
  letter-spacing:.22em;
  margin:0 0 10px 6px;
  color:rgba(255,255,255,.52);
}
.ey-law-book strong{
  display:block;
  margin-left:6px;
  font-family:Georgia, "Times New Roman", serif;
  font-size:29px;
  line-height:1;
  font-weight:500;
  letter-spacing:.04em;
}
.ey-law-book > span:last-child{
  display:block;
  margin:12px 0 0 6px;
  font-size:9px;
  letter-spacing:.16em;
  color:rgba(255,255,255,.55);
}

.ey-law-paper{
  position:absolute;
  width:150px;
  height:185px;
  right:40px;
  bottom:53px;
  border-radius:7px;
  background:#e8e5db;
  box-shadow:0 20px 36px rgba(0,0,0,.30);
}
.ey-law-paper--back{
  right:56px;
  bottom:63px;
  transform:rotate(8deg);
  opacity:.62;
}
.ey-law-paper--front{
  transform:rotate(2deg);
  padding:33px 22px;
}
.ey-law-paper span{
  display:block;
  height:5px;
  margin-bottom:15px;
  border-radius:4px;
  background:rgba(25,29,25,.18);
}
.ey-law-paper span:nth-child(3){width:76%}
.ey-law-paper span:nth-child(4){width:88%}
.ey-law-paper__seal{
  position:absolute;
  right:17px;
  bottom:18px;
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:2px solid rgba(114,89,43,.50);
  color:rgba(114,89,43,.75);
  font:700 11px/1 Georgia,serif;
  letter-spacing:.05em;
}

.ey-law-scales{
  position:absolute;
  width:166px;
  height:auto;
  right:14px;
  top:22px;
  color:#d3b473;
  filter:drop-shadow(0 12px 10px rgba(0,0,0,.25));
}
.ey-law-gavel{
  position:absolute;
  width:160px;
  height:auto;
  left:26px;
  bottom:28px;
  color:#b8975a;
  transform:rotate(-8deg);
  filter:drop-shadow(0 14px 10px rgba(0,0,0,.27));
}
.ey-legal-visual__label{
  position:absolute;
  left:34px;
  bottom:20px;
  font-size:8px;
  letter-spacing:.22em;
  color:rgba(255,255,255,.42);
}

.ey-legal-page .cv__job h2{
  font-size:34px;
  line-height:1.28;
  letter-spacing:-.02em;
}
.ey-legal-page .cv__desc p{
  color:rgba(255,255,255,.76);
  font-size:16px;
  line-height:1.75;
}
.ey-legal-page .cv__title{
  padding-bottom:34px;
}
.ey-legal-page .cv__title h1{
  font-size:42px;
  letter-spacing:-.02em;
}
.ey-legal-card{
  position:relative;
  overflow:hidden;
}
.ey-legal-card:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:72px;
  height:2px;
  background:rgba(211,180,115,.72);
}
.ey-legal-card h3{
  font-size:21px;
  letter-spacing:-.01em;
}

@media (max-width: 991px){
  .ey-legal-page .cv__wrapper{
    padding:32px;
  }
  .ey-legal-visual{
    max-width:520px;
    margin-bottom:38px;
  }
}
@media (max-width: 575px){
  .ey-legal-page .cv__wrapper{
    padding:20px;
    border-radius:22px;
  }
  .ey-legal-page .cv__title h1{
    font-size:32px;
    line-height:1.18;
  }
  .ey-legal-page .cv__job h2{
    font-size:26px;
  }
  .ey-legal-visual{
    min-height:335px;
    border-radius:22px;
  }
  .ey-law-book{
    left:20px;
    top:35px;
    width:182px;
    height:115px;
  }
  .ey-law-book strong{
    font-size:25px;
  }
  .ey-law-scales{
    width:140px;
    right:5px;
  }
  .ey-law-paper{
    width:130px;
    height:165px;
    right:22px;
    bottom:43px;
  }
  .ey-law-paper--back{
    right:36px;
    bottom:54px;
  }
  .ey-law-gavel{
    width:135px;
    left:13px;
    bottom:28px;
  }
}


/* EstateYard homepage search suggestions */
.home__search{
  z-index:30;
}
.ey-search-suggestions{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 10px);
  display:none;
  overflow:hidden;
  border-radius:18px;
  background:rgba(18,20,18,.96);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 24px 60px rgba(0,0,0,.38);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  text-align:left;
}
.ey-search-suggestions.is-open{
  display:block;
}
.ey-search-suggestions__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 18px 11px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.56);
  font-size:11px;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.ey-search-suggestions__head strong{
  color:#fff;
  font-weight:600;
}
.ey-search-suggestion{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:76px;
  padding:10px 14px;
  color:#fff !important;
  text-decoration:none !important;
  border-bottom:1px solid rgba(255,255,255,.07);
  transition:background .16s ease;
}
.ey-search-suggestion:hover{
  background:rgba(255,255,255,.07);
}
.ey-search-suggestion img{
  width:68px;
  height:54px;
  flex:0 0 68px;
  object-fit:cover;
  border-radius:10px;
  background:#2b2e2a;
}
.ey-search-suggestion__body{
  min-width:0;
  flex:1;
}
.ey-search-suggestion__body strong{
  display:block;
  overflow:hidden;
  color:#fff;
  font-size:14px;
  font-weight:600;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ey-search-suggestion__body small{
  display:block;
  overflow:hidden;
  margin-top:5px;
  color:rgba(255,255,255,.55);
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ey-search-suggestion__price{
  flex:0 0 auto;
  color:#fff;
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
}
.ey-search-suggestions__all,
.ey-search-suggestions__category{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 18px;
  color:#fff !important;
  text-decoration:none !important;
  font-size:13px;
  font-weight:600;
  background:rgba(255,255,255,.045);
}
.ey-search-suggestions__all:hover,
.ey-search-suggestions__category:hover{
  background:rgba(255,255,255,.09);
}
.ey-search-suggestions__loading,
.ey-search-suggestions__empty{
  padding:18px;
  color:rgba(255,255,255,.66);
  font-size:13px;
}
@media (max-width: 767px){
  .ey-search-suggestions{
    left:-10px;
    right:-10px;
    max-height:62vh;
    overflow-y:auto;
    border-radius:15px;
  }
  .ey-search-suggestion{
    min-height:70px;
    padding:9px 11px;
  }
  .ey-search-suggestion img{
    width:58px;
    height:48px;
    flex-basis:58px;
  }
  .ey-search-suggestion__price{
    font-size:12px;
  }
}


/* EstateYard: readable autocomplete dropdown */
.ey-search-suggestions{
  top:calc(100% + 12px);
  z-index:999;
  max-height:440px;
  overflow-y:auto;
  overflow-x:hidden;
}

.ey-search-suggestions a{
  position:static !important;
  top:auto !important;
  right:auto !important;
  height:auto !important;
  transform:none !important;
  text-transform:none !important;
}

.ey-search-suggestion{
  width:100%;
  box-sizing:border-box;
}

.ey-search-suggestions__all,
.ey-search-suggestions__category{
  position:sticky !important;
  bottom:0;
  z-index:2;
  min-height:48px;
  background:rgba(28,31,28,.98);
}

@media (max-width: 991px){
  .ey-search-suggestions{
    max-height:380px;
  }
}


/* EstateYard - readable property card typography */
.products__item .products__item-name,
.products__item .products__item-name a,
.products__item .product__name,
.products__item .product__name a,
.products__item h3,
.products__item h3 a,
.products__item .title,
.products__item .title a{
  color:rgba(255,255,255,.88) !important;
  opacity:1 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.28);
}

.products__item .products__item-desc,
.products__item .product__desc,
.products__item .description,
.products__item p{
  color:rgba(255,255,255,.72) !important;
  opacity:1 !important;
}

.products__item .products__item-price,
.products__item .product__price{
  color:#fff !important;
  opacity:1 !important;
}

.products__item .products__item-location,
.products__item .products__item-location a,
.products__item .product__location,
.products__item .product__location a,
.products__item .address,
.products__item .address a{
  color:rgba(255,255,255,.94) !important;
  opacity:1 !important;
}

/* Dynamic EstateYard property cards */
.ey-property-card .ey-property-title,
.ey-property-card .ey-property-title a,
.ey-property-card [data-property-title]{
  color:rgba(255,255,255,.88) !important;
  opacity:1 !important;
  font-weight:500;
}
.ey-property-card .ey-property-location,
.ey-property-card .ey-property-location a{
  color:rgba(255,255,255,.94) !important;
  opacity:1 !important;
}


/* EstateYard - property title under price: pure white */
.products__item .products__item-name,
.products__item .products__item-name a,
.products__item .product__name,
.products__item .product__name a,
.products__item h3,
.products__item h3 a,
.products__item .title,
.products__item .title a,
.ey-property-card .ey-property-title,
.ey-property-card .ey-property-title a,
.ey-property-card [data-property-title]{
  color:#fff !important;
  opacity:1 !important;
}


/* EstateYard - dynamic property title directly under price */
.cardprod__item .cardprod__header h3,
.cardprod__item .cardprod__header h3 a{
  color:#fff !important;
  opacity:1 !important;
  font-weight:500 !important;
  text-shadow:none !important;
}


/* EstateYard - functional MAIB mortgage calculator */
.product-calculator__body-form .ey-calc-rate-label{
  min-height:64px;
}
.ey-calc-rate-wrap{
  display:flex;
  align-items:center;
  gap:4px;
}
.ey-calc-rate-wrap input{
  width:86px;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  color:#000;
  font:inherit;
  font-size:16px;
  line-height:24px;
}
.ey-calc-rate-wrap span{
  margin:0 !important;
  color:#000 !important;
  font-size:16px !important;
  line-height:24px !important;
}
.ey-maib-calc-btn{
  width:max-content;
  display:block;
  margin-top:50px;
  padding:18px 50px;
  border:1px solid #39A08E;
  border-radius:15px;
  background:#39A08E;
  color:#fff;
  font-weight:700;
  font-size:16px;
  line-height:24px;
  cursor:pointer;
  transition:all .3s ease;
}
.ey-maib-calc-btn:hover{
  background:#fff;
  color:#39A08E;
}
.ey-maib-results{
  margin-top:28px;
  padding:24px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);
  color:#fff;
}
.ey-maib-results__main{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding-bottom:18px;
  margin-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.ey-maib-results__main span,
.ey-maib-results__grid span{
  display:block;
  color:rgba(255,255,255,.66);
  font-size:12px;
  line-height:1.4;
}
.ey-maib-results__main strong{
  color:#fff;
  font-size:30px;
  line-height:1;
  white-space:nowrap;
}
.ey-maib-results__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.ey-maib-results__grid > div{
  padding:14px 16px;
  border-radius:14px;
  background:rgba(0,0,0,.18);
}
.ey-maib-results__grid strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:17px;
}
.ey-maib-results__note{
  margin:18px 0 0 !important;
  color:rgba(255,255,255,.52) !important;
  font-size:11px !important;
  line-height:1.55 !important;
}
@media (max-width:575px){
  .ey-maib-calc-btn{
    width:100%;
    margin-top:32px;
    padding:16px 24px;
  }
  .ey-maib-results__main{
    display:block;
  }
  .ey-maib-results__main strong{
    display:block;
    margin-top:8px;
    font-size:26px;
  }
  .ey-maib-results__grid{
    grid-template-columns:1fr;
  }
}


/* EstateYard - conditional MAIB calculator visibility */
#ey-maib-calculator-section[hidden]{
  display:none !important;
}


/* EstateYard - MAIB own contribution + current offer */
.ey-maib-contribution-label{
  align-items:baseline;
  gap:14px;
}
.ey-maib-contribution-label p{
  margin:0 !important;
}
#ey-maib-contribution-percent{
  padding:3px 9px;
  border-radius:999px;
  background:rgba(57,160,142,.15);
  color:#39A08E !important;
  font-weight:700;
  font-size:13px;
}
.ey-maib-current-info{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:34px;
}
.ey-maib-current-info>div{
  padding:16px 18px;
  border-radius:14px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
}
.ey-maib-current-info span{
  display:block;
  margin-bottom:5px;
  color:rgba(255,255,255,.56);
  font-size:11px;
  line-height:1.35;
}
.ey-maib-current-info strong{
  display:block;
  color:#fff;
  font-size:14px;
  line-height:1.35;
}
.ey-maib-results__grid{
  grid-template-columns:repeat(3,1fr);
}
.ey-maib-calc-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
}
@media (max-width:767px){
  .ey-maib-current-info{
    grid-template-columns:1fr;
  }
  .ey-maib-results__grid{
    grid-template-columns:1fr;
  }
}


/* EstateYard - compact premium MAIB calculator */
#ey-maib-calculator-section{
  padding-top:42px !important;
  padding-bottom:42px !important;
}

#ey-maib-calculator-section .product-calculator__wrapper{
  max-width:980px;
  margin:0 auto;
}

#ey-maib-calculator-section .product-calculator__body{
  padding:28px 32px !important;
  border-radius:22px;
}

#ey-maib-calculator-section .product-calculator__body-title{
  margin-bottom:24px !important;
}

#ey-maib-calculator-section .product-calculator__body-title h2,
#ey-maib-calculator-section .product-calculator__title h2{
  font-size:28px !important;
  line-height:1.2 !important;
}

#ey-maib-calculator-section .product-calculator__body-form .row{
  row-gap:8px;
}

#ey-maib-calculator-section .product-calculator__body-form label{
  margin-bottom:8px !important;
}

#ey-maib-calculator-section .product-calculator__body-form label > span{
  font-size:12px !important;
  line-height:1.3 !important;
}

#ey-maib-calculator-section .product-calculator__body-form label p,
#ey-maib-calculator-section .product-calculator__body-form label input{
  font-size:15px !important;
}

#ey-maib-calculator-section .mt-5{
  margin-top:1.6rem !important;
}

#ey-maib-calculator-section .pt-2{
  padding-top:.2rem !important;
}

#ey-maib-calculator-section .slider-styled{
  margin-top:8px;
  margin-bottom:4px;
}

#ey-maib-calculator-section .noUi-pips{
  font-size:9px !important;
}

#ey-maib-calculator-section .noUi-value{
  font-size:9px !important;
}

#ey-maib-calculator-section .noUi-marker-horizontal.noUi-marker{
  height:5px !important;
}

#ey-maib-calculator-section .ey-maib-current-info{
  gap:9px;
  margin-top:22px;
}

#ey-maib-calculator-section .ey-maib-current-info>div{
  padding:12px 14px;
  border-radius:12px;
}

#ey-maib-calculator-section .ey-maib-current-info span{
  font-size:10px;
}

#ey-maib-calculator-section .ey-maib-current-info strong{
  font-size:13px;
}

#ey-maib-calculator-section .ey-maib-calc-btn{
  margin-top:20px;
  padding:13px 28px;
  border-radius:12px;
  font-size:14px;
}

#ey-maib-calculator-section .ey-maib-results{
  margin-top:20px;
  padding:18px;
  border-radius:16px;
}

#ey-maib-calculator-section .ey-maib-results__main{
  padding-bottom:14px;
  margin-bottom:14px;
}

#ey-maib-calculator-section .ey-maib-results__main strong{
  font-size:24px;
}

#ey-maib-calculator-section .ey-maib-results__grid{
  gap:10px;
}

#ey-maib-calculator-section .ey-maib-results__grid>div{
  padding:11px 13px;
  border-radius:11px;
}

#ey-maib-calculator-section .ey-maib-results__grid strong{
  font-size:15px;
}

#ey-maib-calculator-section .ey-maib-results__note{
  margin-top:13px !important;
  font-size:10px !important;
}

@media (min-width: 992px){
  #ey-maib-calculator-section .product-calculator__body-form .col-lg-12{
    max-width:100%;
  }

  #ey-maib-calculator-section .ey-maib-current-info{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 767px){
  #ey-maib-calculator-section{
    padding-top:28px !important;
    padding-bottom:28px !important;
  }

  #ey-maib-calculator-section .product-calculator__body{
    padding:20px 18px !important;
    border-radius:18px;
  }

  #ey-maib-calculator-section .product-calculator__body-title h2,
  #ey-maib-calculator-section .product-calculator__title h2{
    font-size:23px !important;
  }

  #ey-maib-calculator-section .ey-maib-calc-btn{
    margin-top:16px;
  }
}


/* EstateYard - extra compact MAIB calculator */
#ey-maib-calculator-section{
  padding-top:24px !important;
  padding-bottom:28px !important;
}
#ey-maib-calculator-section .product-calculator__wrapper{
  max-width:780px !important;
}
#ey-maib-calculator-section .product-calculator__body{
  padding:20px 24px !important;
  border-radius:18px !important;
}
#ey-maib-calculator-section .product-calculator__body-title{
  margin-bottom:14px !important;
}
#ey-maib-calculator-section .product-calculator__body-title h2,
#ey-maib-calculator-section .product-calculator__title h2{
  font-size:22px !important;
}
#ey-maib-calculator-section .product-calculator__body-form label{
  margin-bottom:4px !important;
}
#ey-maib-calculator-section .product-calculator__body-form label > span{
  font-size:10px !important;
}
#ey-maib-calculator-section .product-calculator__body-form label p,
#ey-maib-calculator-section .product-calculator__body-form label input{
  font-size:13px !important;
  line-height:18px !important;
}
#ey-maib-calculator-section .mt-4{
  margin-top:.8rem !important;
}
#ey-maib-calculator-section .mt-5{
  margin-top:1rem !important;
}
#ey-maib-calculator-section .slider-styled{
  margin-top:4px !important;
  margin-bottom:0 !important;
}
#ey-maib-calculator-section .noUi-pips{
  font-size:8px !important;
}
#ey-maib-calculator-section .ey-maib-current-info{
  margin-top:14px !important;
  gap:7px !important;
}
#ey-maib-calculator-section .ey-maib-current-info>div{
  padding:9px 10px !important;
  border-radius:10px !important;
}
#ey-maib-calculator-section .ey-maib-current-info span{
  font-size:9px !important;
}
#ey-maib-calculator-section .ey-maib-current-info strong{
  font-size:11px !important;
}
#ey-maib-calculator-section .ey-maib-calc-btn{
  margin-top:12px !important;
  padding:10px 22px !important;
  border-radius:10px !important;
  font-size:12px !important;
  line-height:18px !important;
}
#ey-maib-calculator-section .ey-maib-results{
  margin-top:12px !important;
  padding:13px !important;
  border-radius:13px !important;
}
#ey-maib-calculator-section .ey-maib-results__main{
  padding-bottom:9px !important;
  margin-bottom:9px !important;
}
#ey-maib-calculator-section .ey-maib-results__main strong{
  font-size:20px !important;
}
#ey-maib-calculator-section .ey-maib-results__grid{
  gap:7px !important;
}
#ey-maib-calculator-section .ey-maib-results__grid>div{
  padding:8px 9px !important;
}
#ey-maib-calculator-section .ey-maib-results__grid span{
  font-size:9px !important;
}
#ey-maib-calculator-section .ey-maib-results__grid strong{
  font-size:12px !important;
}
#ey-maib-calculator-section .ey-maib-results__note{
  margin-top:9px !important;
  font-size:9px !important;
}

@media (max-width:767px){
  #ey-maib-calculator-section .product-calculator__wrapper{
    max-width:100% !important;
  }
  #ey-maib-calculator-section .product-calculator__body{
    padding:16px !important;
  }
}


/* EstateYard - functional animated category pagination */
.prodlist .row{
  transition:opacity .18s ease, transform .18s ease;
}
.prodlist .row.ey-page-leaving{
  opacity:0;
  transform:translateY(10px);
}
.prodlist .row.ey-page-entering .ey-page-card{
  opacity:0;
  transform:translateY(16px);
}
.prodlist .row .ey-page-card{
  opacity:1;
  transform:translateY(0);
  transition:
    opacity .34s ease calc(var(--ey-card-index, 0) * 45ms),
    transform .34s cubic-bezier(.22,.61,.36,1) calc(var(--ey-card-index, 0) * 45ms);
}

.prodlist .pagination{
  align-items:center;
  justify-content:center;
  gap:12px;
}
.prodlist .pagination__pages{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}
.prodlist .pagination__item{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:38px;
  padding:0 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:#fff !important;
  text-decoration:none;
  transition:transform .2s ease, background .2s ease, border-color .2s ease;
}
.prodlist .pagination__item:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.10);
}
.prodlist .pagination__item.active{
  background:#fff;
  border-color:#fff;
  color:#1c1f1c !important;
  transform:scale(1.05);
}
.prodlist .pagination__ellipsis{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:38px;
  color:rgba(255,255,255,.58);
}
.prodlist .pagination__back a,
.prodlist .pagination__next a{
  display:flex;
  align-items:center;
  justify-content:center;
  transition:opacity .2s ease, transform .2s ease;
}
.prodlist .pagination__back a:not(.ey-disabled):hover,
.prodlist .pagination__next a:not(.ey-disabled):hover{
  transform:scale(1.12);
}
.prodlist .pagination a.ey-disabled{
  opacity:.28;
  pointer-events:none;
}

@media (prefers-reduced-motion: reduce){
  .prodlist .row,
  .prodlist .row .ey-page-card{
    transition:none !important;
  }
  html{
    scroll-behavior:auto !important;
  }
}

@media (max-width:575px){
  .prodlist .pagination{
    gap:7px;
  }
  .prodlist .pagination__pages{
    gap:5px;
  }
  .prodlist .pagination__item{
    min-width:34px;
    height:34px;
    padding:0 8px;
    border-radius:10px;
    font-size:13px;
  }
}


/* EstateYard - property selection cart */
.header__cart-count{
  min-width:16px;
  height:16px;
  padding:0 4px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  font-size:9px !important;
  line-height:1;
}

.ey-cart-card-btn{
  position:absolute;
  right:12px;
  bottom:12px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:7px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.30);
  border-radius:999px;
  background:rgba(17,20,18,.76);
  color:#fff;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:11px;
  font-weight:700;
  cursor:pointer;
  transition:all .2s ease;
}
.ey-cart-card-btn:hover{
  background:#fff;
  color:#1c1f1c;
  transform:translateY(-2px);
}
.ey-cart-card-btn.is-added{
  background:#fff;
  color:#1c1f1c;
}
.ey-cart-card-btn>span:first-child{
  font-size:17px;
  line-height:1;
}

.ey-cart-detail-btn{
  width:100%;
  margin-top:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 16px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:all .2s ease;
}
.ey-cart-detail-btn:hover,
.ey-cart-detail-btn.is-added{
  background:#fff;
  color:#1c1f1c;
}
.ey-cart-detail-btn>span:first-child{
  font-size:18px;
}

.ey-cart-backdrop{
  position:fixed;
  inset:0;
  z-index:9998;
  background:rgba(0,0,0,.58);
  opacity:0;
  visibility:hidden;
  transition:opacity .28s ease, visibility .28s ease;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.ey-cart-drawer{
  position:fixed;
  top:0;
  right:0;
  z-index:9999;
  width:min(460px,100%);
  height:100dvh;
  background:#171a18;
  color:#fff;
  transform:translateX(102%);
  transition:transform .34s cubic-bezier(.22,.61,.36,1);
  box-shadow:-22px 0 60px rgba(0,0,0,.36);
  display:flex;
  flex-direction:column;
}
body.ey-cart-open{
  overflow:hidden;
}
body.ey-cart-open .ey-cart-backdrop{
  opacity:1;
  visibility:visible;
}
body.ey-cart-open .ey-cart-drawer{
  transform:translateX(0);
}
.ey-cart-drawer__header{
  padding:22px 24px 18px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ey-cart-drawer__header span{
  display:block;
  margin-bottom:3px;
  color:rgba(255,255,255,.45);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.ey-cart-drawer__header h3{
  margin:0;
  color:#fff;
  font-size:22px;
}
.ey-cart-close{
  width:36px;
  height:36px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  background:transparent;
  color:#fff;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.ey-cart-drawer__body{
  flex:1;
  overflow:auto;
  padding:18px 24px 28px;
}
.ey-cart-summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:12px;
}
.ey-cart-summary span{
  color:rgba(255,255,255,.62);
  font-size:11px;
}
.ey-cart-summary button{
  padding:0;
  border:0;
  background:none;
  color:rgba(255,255,255,.62);
  font-size:11px;
  text-decoration:underline;
  cursor:pointer;
}
.ey-cart-item{
  position:relative;
  display:grid;
  grid-template-columns:78px 1fr 26px;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ey-cart-item__image{
  width:78px;
  height:72px;
  overflow:hidden;
  border-radius:10px;
  background:rgba(255,255,255,.05);
}
.ey-cart-item__image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.ey-cart-item__copy{
  min-width:0;
}
.ey-cart-item__copy a{
  color:#fff;
  text-decoration:none;
}
.ey-cart-item__copy strong{
  display:block;
  margin-bottom:4px;
  font-size:13px;
  line-height:1.25;
}
.ey-cart-item__copy span{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:rgba(255,255,255,.52);
  font-size:10px;
}
.ey-cart-item__copy b{
  display:block;
  margin-top:6px;
  color:#fff;
  font-size:12px;
}
.ey-cart-remove{
  width:24px;
  height:24px;
  border:0;
  background:transparent;
  color:rgba(255,255,255,.46);
  font-size:20px;
  cursor:pointer;
}
.ey-cart-empty{
  padding:54px 18px;
  text-align:center;
  border:1px dashed rgba(255,255,255,.12);
  border-radius:16px;
}
.ey-cart-empty strong{
  display:block;
  margin-bottom:6px;
  font-size:17px;
}
.ey-cart-empty p{
  margin:0 0 16px;
  color:rgba(255,255,255,.54);
  font-size:12px;
}
.ey-cart-empty a{
  display:inline-flex;
  padding:10px 14px;
  border-radius:10px;
  background:#fff;
  color:#1c1f1c;
  text-decoration:none;
  font-size:12px;
  font-weight:700;
}
.ey-cart-form{
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.08);
}
.ey-cart-form h4{
  margin:0 0 4px;
  font-size:17px;
}
.ey-cart-form>p{
  margin:0 0 16px;
  color:rgba(255,255,255,.54);
  font-size:11px;
}
.ey-cart-form label{
  display:block;
  margin-bottom:10px;
}
.ey-cart-form label span{
  display:block;
  margin-bottom:5px;
  color:rgba(255,255,255,.54);
  font-size:10px;
}
.ey-cart-form input,
.ey-cart-form textarea{
  width:100%;
  box-sizing:border-box;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  outline:none;
  background:rgba(255,255,255,.05);
  color:#fff;
  font:inherit;
  font-size:12px;
}
.ey-cart-form textarea{
  resize:vertical;
}
.ey-cart-submit{
  width:100%;
  padding:12px 14px;
  border:0;
  border-radius:10px;
  background:#fff;
  color:#171a18;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.ey-cart-submit:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.ey-cart-status{
  min-height:18px;
  margin-top:8px;
  font-size:10px;
}
.ey-cart-status.is-success{ color:#93e2ad; }
.ey-cart-status.is-error{ color:#ff9d9d; }

.ey-cart-toast{
  position:fixed;
  left:50%;
  bottom:24px;
  z-index:10000;
  transform:translate(-50%,20px);
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  color:#171a18;
  font-size:11px;
  font-weight:700;
  opacity:0;
  pointer-events:none;
  transition:all .22s ease;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
}
.ey-cart-toast.is-visible{
  opacity:1;
  transform:translate(-50%,0);
}

@media (max-width:575px){
  .ey-cart-card-btn{
    right:9px;
    bottom:9px;
    padding:8px 10px;
  }
  .ey-cart-btn-label{
    font-size:10px;
  }
  .ey-cart-drawer__header,
  .ey-cart-drawer__body{
    padding-left:18px;
    padding-right:18px;
  }
}


/* EstateYard cart Telegram feedback */
#ey-cart-status{
  display:block !important;
  min-height:20px !important;
  margin-top:10px !important;
}
#ey-cart-status.is-success{ color:#9fe3b2 !important; }
#ey-cart-status.is-error{ color:#ff9f9f !important; }

/* EstateYard - dynamic hot offers */
#estateyard-hot-offers-wrapper .cardprod__header h3,
#estateyard-hot-offers-wrapper .cardprod__address{color:#fff!important;opacity:1!important}
.ey-hot-loading,.ey-hot-empty{min-height:180px;display:flex!important;align-items:center;justify-content:center;color:#fff;text-align:center}
.ey-hot-offer-admin-toggle{font-weight:700}


/* EstateYard - homepage recommended properties */
.ey-featured-properties{
  position:relative;
  padding:72px 0 58px;
  background:#111411;
  overflow:hidden;
}
.ey-featured-properties .title h2{
  color:#fff!important;
}
#estateyard-featured-wrapper .cardprod__header h3,
#estateyard-featured-wrapper .cardprod__address{
  color:#fff!important;
  opacity:1!important;
}
.ey-featured-loading,
.ey-featured-empty{
  min-height:180px;
  display:flex!important;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-align:center;
}
.ey-featured-properties .swiper-pagination{
  position:relative;
  margin-top:18px;
}
@media(max-width:767px){
  .ey-featured-properties{padding:48px 0 38px}
}


/* EstateYard functional filters */
#estateyard-filter-form input[type="number"]{
  appearance:textfield;
}
#estateyard-filter-form input[type="number"]::-webkit-outer-spin-button,
#estateyard-filter-form input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}


/* EstateYard performance tuning */
:root{
  --ey-fast: 140ms;
  --ey-medium: 220ms;
}

html{ scroll-behavior:auto !important; }

.cardprod__item,
.cardprod__image img,
.header__submenu,
.ey-cart-drawer,
.ey-cart-backdrop,
.filter__modal{
  transition-duration:var(--ey-fast) !important;
}

.ey-page-entering .ey-page-card{ animation-duration:180ms !important; }
.ey-page-leaving .ey-page-card{ animation-duration:100ms !important; }

.header__submenu,
.ey-cart-drawer,
.filter__modal{
  will-change:auto !important;
}

@media (max-width: 992px){
  .header__submenu,
  .filter__modal,
  .ey-cart-drawer{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:1ms !important;
    animation-iteration-count:1 !important;
    transition-duration:1ms !important;
    scroll-behavior:auto !important;
  }
}




/* EstateYard soft & fast transitions */
:root{
  --ey-soft-fast: 120ms;
  --ey-soft-medium: 170ms;
  --ey-soft-ease: cubic-bezier(.2,.7,.2,1);
}

.cardprod__item,
.cardprod__image img,
.header__submenu,
.ey-cart-drawer,
.ey-cart-backdrop,
.filter__modal,
.buttonFilterOpener,
.ey-search-suggestions,
.ey-search-suggestion{
  transition-duration:var(--ey-soft-fast) !important;
  transition-timing-function:var(--ey-soft-ease) !important;
  transition-delay:0ms !important;
}

.header a,
.footer a{
  transition-duration:90ms !important;
  transition-timing-function:ease-out !important;
}

.ey-page-entering .ey-page-card{
  animation-duration:150ms !important;
  animation-delay:0ms !important;
  animation-timing-function:var(--ey-soft-ease) !important;
}

.ey-page-leaving .ey-page-card{
  animation-duration:90ms !important;
  animation-delay:0ms !important;
  animation-timing-function:ease-out !important;
}

.swiper-wrapper{
  transition-timing-function:var(--ey-soft-ease) !important;
}

main.product{
  transition:opacity 100ms ease-out !important;
}

@media (max-width:992px){
  .header__submenu,
  .filter__modal,
  .ey-cart-drawer{
    transition-duration:100ms !important;
  }
}


/* EstateYard Private Investment Club */
.ey-invest{
  background:#0b0d0c;
  color:#fff;
}
.ey-invest .container{
  position:relative;
  z-index:2;
}
.ey-invest-hero{
  position:relative;
  overflow:hidden;
  min-height:720px;
  padding:170px 0 110px;
  background:
    radial-gradient(circle at 82% 22%,rgba(64,193,172,.10),transparent 28%),
    linear-gradient(180deg,#0d100f 0%,#090b0a 100%);
}
.ey-invest-glow{
  position:absolute;
  width:520px;
  height:520px;
  border-radius:50%;
  filter:blur(100px);
  opacity:.18;
  pointer-events:none;
}
.ey-invest-glow--one{
  right:-180px;
  top:60px;
  background:#40c1ac;
}
.ey-invest-glow--two{
  left:-260px;
  bottom:-300px;
  background:#6f796f;
}
.ey-invest-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:70px;
  align-items:center;
}
.ey-invest-kicker{
  margin-bottom:24px;
  color:#40c1ac;
  font-size:12px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.ey-invest-hero h1{
  max-width:820px;
  margin:0;
  color:#fff;
  font-size:clamp(48px,6vw,88px);
  font-weight:500;
  line-height:.98;
  letter-spacing:-.045em;
}
.ey-invest-hero__copy > p{
  max-width:720px;
  margin:32px 0 0;
  color:rgba(255,255,255,.68);
  font-size:18px;
  line-height:1.75;
}
.ey-invest-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:42px;
}
.ey-invest-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 28px;
  border-radius:999px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.06em;
  text-decoration:none!important;
  transition:transform .15s ease,background .15s ease,border-color .15s ease!important;
}
.ey-invest-btn:hover{transform:translateY(-1px)}
.ey-invest-btn--primary{
  background:#40c1ac;
  color:#07110f!important;
}
.ey-invest-btn--ghost{
  border:1px solid rgba(255,255,255,.16);
  color:#fff!important;
  background:rgba(255,255,255,.025);
}
.ey-invest-note{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:30px;
  color:rgba(255,255,255,.48);
  font-size:12px;
  line-height:1.6;
}
.ey-invest-dot{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#40c1ac;
  box-shadow:0 0 0 5px rgba(64,193,172,.08);
}
.ey-invest-card{
  padding:32px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:0 24px 70px rgba(0,0,0,.24);
}
.ey-invest-card--hero{
  padding:38px;
  backdrop-filter:blur(18px);
}
.ey-invest-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:40px;
}
.ey-invest-card__top span{
  color:rgba(255,255,255,.42);
  font-size:10px;
  letter-spacing:.18em;
}
.ey-invest-card__top strong{
  color:#40c1ac;
  font-size:12px;
}
.ey-invest-card h3{
  margin:0 0 24px;
  color:#fff;
  font-size:28px;
  font-weight:500;
}
.ey-invest-card p,
.ey-invest-card li{
  color:rgba(255,255,255,.62);
  font-size:14px;
  line-height:1.7;
}
.ey-invest-card ul{
  display:grid;
  gap:15px;
  margin:0;
  padding:0;
  list-style:none;
}
.ey-invest-card li{
  position:relative;
  padding-left:20px;
}
.ey-invest-card li:before{
  content:'';
  position:absolute;
  left:0;
  top:.7em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#40c1ac;
}
.ey-invest-section{
  padding:110px 0;
  background:#0b0d0c;
}
.ey-invest-section--dark{
  background:#080a09;
}
.ey-invest-section__head{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:80px;
  align-items:end;
  margin-bottom:64px;
}
.ey-invest-section__head h2,
.ey-invest-quote h2,
.ey-invest-apply__copy h2{
  margin:0;
  color:#fff;
  font-size:clamp(38px,4.5vw,64px);
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.035em;
}
.ey-invest-section__head > p,
.ey-invest-quote > p,
.ey-invest-apply__copy > p{
  margin:0;
  color:rgba(255,255,255,.58);
  font-size:16px;
  line-height:1.75;
}
.ey-invest-steps,
.ey-invest-grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.ey-invest-step{
  padding:34px 0 0;
  border-top:1px solid rgba(255,255,255,.12);
}
.ey-invest-step > span{
  color:#40c1ac;
  font-size:12px;
  font-weight:700;
}
.ey-invest-step h3{
  margin:20px 0 12px;
  color:#fff;
  font-size:24px;
  font-weight:500;
}
.ey-invest-step p{
  max-width:360px;
  margin:0;
  color:rgba(255,255,255,.54);
  line-height:1.7;
}
.ey-invest-quote{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:70px;
  align-items:end;
  padding:50px 0;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.ey-invest-apply{
  padding-top:130px;
  padding-bottom:140px;
  background:
    radial-gradient(circle at 15% 30%,rgba(64,193,172,.08),transparent 25%),
    #090b0a;
}
.ey-invest-apply__grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:80px;
  align-items:start;
}
.ey-invest-filter-list{
  display:grid;
  gap:18px;
  margin-top:42px;
}
.ey-invest-filter-list > div{
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.ey-invest-filter-list span{
  color:#40c1ac;
  font-size:11px;
  font-weight:700;
}
.ey-invest-filter-list p{
  margin:0;
  color:rgba(255,255,255,.62);
  font-size:14px;
}
.ey-invest-form{
  display:grid;
  gap:18px;
  padding:38px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:28px;
  background:rgba(255,255,255,.035);
}
.ey-invest-form__row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.ey-invest-form label{
  display:grid;
  gap:9px;
  margin:0;
}
.ey-invest-form label > span{
  color:rgba(255,255,255,.62);
  font-size:12px;
}
.ey-invest-form input,
.ey-invest-form select,
.ey-invest-form textarea{
  width:100%;
  min-height:52px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:14px;
  outline:none;
  background:#111412;
  color:#fff;
  font:inherit;
  transition:border-color .14s ease,background .14s ease!important;
}
.ey-invest-form textarea{
  min-height:130px;
  resize:vertical;
}
.ey-invest-form input:focus,
.ey-invest-form select:focus,
.ey-invest-form textarea:focus{
  border-color:#40c1ac;
  background:#131714;
}
.ey-invest-consent{
  grid-template-columns:auto 1fr!important;
  align-items:start;
  gap:10px!important;
}
.ey-invest-consent input{
  width:18px!important;
  min-height:18px!important;
  margin-top:1px;
  accent-color:#40c1ac;
}
.ey-invest-submit{
  min-height:56px;
  border:0;
  border-radius:999px;
  background:#40c1ac;
  color:#07110f;
  font-weight:800;
  cursor:pointer;
}
.ey-invest-submit:disabled{
  opacity:.65;
  cursor:default;
}
.ey-invest-status{
  min-height:20px;
  color:rgba(255,255,255,.52);
  font-size:12px;
  line-height:1.5;
}
.ey-invest-status.is-success{color:#82d6a2}
.ey-invest-status.is-error{color:#ff9f9f}

@media(max-width:991px){
  .ey-invest-hero{padding:140px 0 80px;min-height:auto}
  .ey-invest-hero__grid,
  .ey-invest-section__head,
  .ey-invest-quote,
  .ey-invest-apply__grid{
    grid-template-columns:1fr;
    gap:42px;
  }
  .ey-invest-steps,
  .ey-invest-grid-3{
    grid-template-columns:1fr;
  }
}
@media(max-width:600px){
  .ey-invest-hero h1{font-size:45px}
  .ey-invest-section{padding:78px 0}
  .ey-invest-card,.ey-invest-form{padding:24px}
  .ey-invest-form__row{grid-template-columns:1fr}
  .ey-invest-actions{display:grid}
  .ey-invest-btn{width:100%}
}




/* EstateYard mobile menu & general responsive fix */
@media (max-width: 992px){
  html,body{
    max-width:100%;
    overflow-x:hidden;
  }

  body.scroll-off{
    overflow:hidden!important;
  }

  .container{
    width:100%;
    max-width:100%;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  /* Main fixed header */
  .header{
    z-index:10000!important;
    padding:14px 0!important;
  }

  .header .header__logo svg{
    width:48px!important;
    height:auto!important;
  }

  .header__burger{
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
  }

  .header__burger-wrapper{
    width:28px!important;
    height:22px!important;
  }

  /* Full-screen mobile drawer: opaque so the underlying header/logo never doubles */
  .header__menu-mobile{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    z-index:20000!important;
    display:none;
    overflow:hidden!important;
    background:#060807!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  .header__menu-mobile > .container{
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    padding-top:calc(env(safe-area-inset-top, 0px) + 14px)!important;
    padding-bottom:calc(env(safe-area-inset-bottom, 0px) + 14px)!important;
  }

  .header__menu-mobile > .container > .row.py-5{
    flex:0 0 auto;
    min-height:72px;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    align-items:center!important;
  }

  .header__menu-mobile .header__logo{
    display:flex!important;
    align-items:center;
    width:max-content;
  }

  .header__menu-mobile .header__logo svg{
    width:48px!important;
    height:auto!important;
    max-height:66px!important;
  }

  .header__exit{
    width:44px!important;
    height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto;
    cursor:pointer;
    position:relative!important;
    top:auto!important;
    right:auto!important;
  }

  .header__exit svg{
    width:30px!important;
    height:30px!important;
  }

  .header__exit svg path{
    fill:#fff!important;
  }

  /* The row containing the navigation fills the rest of the screen */
  .header__menu-mobile > .container > .row:last-child{
    flex:1 1 auto;
    min-height:0;
    overflow:hidden;
    margin:0!important;
  }

  .header__menu-mobile > .container > .row:last-child > .col-12{
    height:100%;
    padding:0!important;
  }

  .header__menu-mobile ul.header__menu{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    margin:18px 0 0!important;
    padding:0 0 40px!important;
    display:block!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
  }

  .header__menu-mobile ul.header__menu > li{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid rgba(255,255,255,.07);
  }

  .header__menu-mobile ul.header__menu > li > a{
    width:100%!important;
    min-height:64px;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:14px 4px!important;
    color:#fff!important;
    font-size:28px!important;
    line-height:1.15!important;
    font-weight:700!important;
    text-decoration:none!important;
  }

  .header__menu-mobile .withSubMenu > a svg{
    width:12px!important;
    height:12px!important;
    flex:0 0 12px;
    margin-left:14px!important;
    transition:transform .14s ease!important;
  }

  .header__menu-mobile .withSubMenu > a.active svg{
    transform:rotate(180deg)!important;
  }

  /* Accordion submenus */
  .header__menu-mobile .header__submenu{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    transform:none!important;
    margin:0!important;
    padding:0 0 10px 14px!important;
    display:none;
    overflow:visible!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .header__menu-mobile .header__submenu .tab-menu,
  .header__menu-mobile .header__submenu > ul{
    position:static!important;
    width:100%!important;
    height:auto!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  .header__menu-mobile .header__submenu li{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  .header__menu-mobile .header__submenu li > a{
    width:100%!important;
    min-height:48px;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:10px 4px!important;
    color:rgba(255,255,255,.78)!important;
    font-size:18px!important;
    line-height:1.3!important;
    font-weight:500!important;
    white-space:normal!important;
  }

  .header__menu-mobile .header__submenu .withSubMenu > .header__submenu{
    margin:2px 0 6px!important;
    padding-left:14px!important;
    border-left:1px solid rgba(64,193,172,.28)!important;
  }

  .header__menu-mobile .header__submenu .withSubMenu > .header__submenu a{
    min-height:42px!important;
    color:rgba(255,255,255,.62)!important;
    font-size:16px!important;
    font-weight:400!important;
  }

  .ey-mobile-invest-link > a{
    color:#40c1ac!important;
  }

  /* General mobile content fixes */
  h1,h2,h3,h4{
    overflow-wrap:anywhere;
  }

  .filter__modal{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    max-height:none!important;
    overflow-y:auto!important;
    border-radius:0!important;
    padding:90px 18px 24px!important;
    z-index:12000!important;
  }

  .ey-cart-drawer{
    width:min(92vw,420px)!important;
    max-width:92vw!important;
  }

  .ey-search-suggestions{
    left:0!important;
    right:0!important;
    width:100%!important;
    max-height:60vh!important;
  }

  .ey-invest-hero{
    padding-top:120px!important;
  }

  .ey-invest-hero__grid,
  .ey-invest-section__head,
  .ey-invest-quote,
  .ey-invest-apply__grid{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }

  .ey-invest-steps,
  .ey-invest-grid-3{
    grid-template-columns:1fr!important;
  }

  .ey-invest-form__row{
    grid-template-columns:1fr!important;
  }

  .product-main__price{
    flex-wrap:wrap!important;
    gap:14px;
  }

  .footer .row{
    row-gap:28px;
  }
}

@media (max-width: 600px){
  .container{
    padding-left:15px!important;
    padding-right:15px!important;
  }

  .header__menu-mobile ul.header__menu > li > a{
    min-height:58px;
    font-size:25px!important;
  }

  .ey-invest-hero h1{
    font-size:40px!important;
    line-height:1.02!important;
  }

  .ey-invest-section__head h2,
  .ey-invest-quote h2,
  .ey-invest-apply__copy h2{
    font-size:34px!important;
  }

  .ey-invest-section{
    padding:68px 0!important;
  }

  .ey-invest-card,
  .ey-invest-form{
    padding:22px!important;
  }

  .ey-main-slide img{
    min-height:280px!important;
    max-height:58vh!important;
    object-fit:cover!important;
  }
}


/* EstateYard property image loading optimization */
.cardprod__image,
.ey-main-slide,
.product-main__img{
  background:#121514!important;
}

.cardprod__image{
  overflow:hidden;
  aspect-ratio:5 / 3;
}

.cardprod__image .ey-property-img,
.ey-main-slide .ey-property-img{
  opacity:0;
  transform:scale(1.008);
  transition:opacity .18s ease, transform .24s ease!important;
  background:#121514;
}

.cardprod__image .ey-property-img.is-loaded,
.ey-main-slide .ey-property-img.is-loaded{
  opacity:1;
  transform:scale(1);
}

.cardprod__image::before,
.ey-main-slide::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(100deg,#121514 20%,#1b201e 42%,#121514 64%);
  background-size:220% 100%;
  animation:eyImageSkeleton 1.15s linear infinite;
  pointer-events:none;
}

.cardprod__image:has(.ey-property-img.is-loaded)::before,
.ey-main-slide:has(.ey-property-img.is-loaded)::before{
  display:none;
}

.cardprod__image .ey-property-img,
.ey-main-slide .ey-property-img,
.cardprod__reduce,
.ey-cart-card-btn,
.ey-listing-badge,
.ey-slider-arrow,
.ey-slider-dots,
.ey-slider-count{
  position:relative;
  z-index:1;
}

@keyframes eyImageSkeleton{
  from{background-position:100% 0}
  to{background-position:-100% 0}
}

@media (prefers-reduced-motion:reduce){
  .cardprod__image::before,
  .ey-main-slide::before{animation:none}
}

@media (max-width:600px){
  .cardprod__image{
    aspect-ratio:16 / 10;
  }
}


/* EstateYard product visual polish: gallery + advantages */
.product-main__img{
  border-radius:30px!important;
  overflow:hidden!important;
  background:rgba(18,18,18,.72)!important;
  isolation:isolate;
}

.product-main__img .ey-main-slider,
.product-main__img .ey-main-slides,
.product-main__img .ey-main-slide{
  border-radius:inherit!important;
  overflow:hidden!important;
}

.product-main__img .ey-main-slider{
  position:relative;
  width:100%;
  height:650px;
  background:#121514;
}

.product-main__img .ey-main-slides{
  position:relative;
  width:100%;
  height:100%;
}

.product-main__img .ey-main-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.product-main__img .ey-main-slide img{
  width:100%!important;
  height:100%!important;
  border-radius:0!important;
  object-fit:cover!important;
  display:block;
}

/* Advantages are consistent cards, not loose text */
.product-about__points{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  padding-bottom:30px!important;
  border-bottom:1px solid rgba(255,255,255,.45)!important;
  margin-bottom:30px!important;
}

.product-about__item{
  width:100%!important;
  min-width:0!important;
  min-height:76px;
  margin:0!important;
  padding:14px 16px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(255,255,255,.035);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}

.product-about__item .ey-advantage-icon{
  width:42px;
  height:42px;
  min-width:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  font-size:22px;
  line-height:1;
}

.product-about__item p{
  margin:0!important;
  min-width:0;
  color:#fff!important;
  font-size:15px!important;
  font-weight:500!important;
  line-height:1.35!important;
  text-align:left!important;
  overflow-wrap:anywhere;
}

.product-about__item > svg{
  display:none!important;
}

@media (max-width:1199px){
  .product-about__points{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media (max-width:767px){
  .product-main__img,
  .product-main__img .ey-main-slider{
    border-radius:22px!important;
  }

  .product-main__img .ey-main-slider{
    height:420px!important;
  }

  .product-about__wrapper{
    padding:28px 20px!important;
    border-radius:22px!important;
  }

  .product-about__points{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .product-about__item{
    min-height:72px;
    padding:12px!important;
    border-radius:14px;
  }

  .product-about__item .ey-advantage-icon{
    width:38px;
    height:38px;
    min-width:38px;
    font-size:20px;
  }

  .product-about__item p{
    font-size:14px!important;
  }
}

@media (max-width:430px){
  .product-about__points{
    grid-template-columns:1fr!important;
  }

  .product-main__img .ey-main-slider{
    height:340px!important;
  }
}


/* EstateYard property preview card image rounding fix */
.cardprod__item{
  overflow:hidden!important;
}

.cardprod__image{
  position:relative!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#121514!important;
  isolation:isolate;
}

.cardprod__image > img,
.cardprod__image .ey-property-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  border-radius:0!important;
  object-fit:cover!important;
}

.cardprod__image::before{
  border-radius:inherit!important;
}

.cardprod__image .cardprod__reduce,
.cardprod__image .ey-cart-card-btn,
.cardprod__image .cardprod__like{
  z-index:2!important;
}

@media (max-width: 767px){
  .cardprod__image{
    border-radius:18px!important;
  }
}




/* Product gallery: remove only the backing panel behind the property photo */
.product-main__img,
.product-main__img .ey-main-slider,
.product-main__img .ey-main-slides,
.product-main__img .ey-main-slide{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

.product-main__img::before,
.product-main__img::after,
.product-main__img .ey-main-slider::before,
.product-main__img .ey-main-slider::after,
.product-main__img .ey-main-slide::before,
.product-main__img .ey-main-slide::after{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Keep the same rounded clipping for the actual property image */
.product-main__img{
  border-radius:30px!important;
  overflow:hidden!important;
}

.product-main__img .ey-main-slide,
.product-main__img .ey-main-slide img{
  border-radius:inherit!important;
}

@media (max-width:767px){
  .product-main__img{
    border-radius:22px!important;
  }
}


/* Investment Club submit hard fix */
#estateyard-investment-form,
#estateyard-investment-form .ey-invest-submit{
  position:relative!important;
}
#estateyard-investment-form .ey-invest-submit{
  z-index:50!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
#estateyard-investment-form::before,
#estateyard-investment-form::after{
  pointer-events:none!important;
}

/* Restore the principal product-page background; keep only gallery backing transparent */
main.product > .background{display:block!important;}
.product-main__img,
.product-main__img .ey-main-slider,
.product-main__img .ey-main-slides,
.product-main__img .ey-main-slide{
  background:transparent!important;
  background-image:none!important;
}
.product-main__img{overflow:hidden!important;border-radius:30px!important;}
@media(max-width:767px){.product-main__img{border-radius:22px!important;}}


/* Property card surface/area visibility */
.cardprod__item .cardprod__text p,
.cardprod__item .cardprod__text span,
.cardprod__item .cardprod__info p,
.cardprod__item .cardprod__info span,
.cardprod__item .ey-property-area,
.cardprod__item [data-property-area]{
  color:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Specifically the muted last line under location */
.cardprod__item .cardprod__text > *:last-child,
.cardprod__item .cardprod__info > *:last-child{
  color:#ffffff!important;
  opacity:1!important;
}


/* Exact property-card meta line: surface / rooms / land area */
.cardprod__header .ey-property-meta,
.cardprod__header .ey-property-meta__item{
  color:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
  -webkit-text-fill-color:#ffffff!important;
}

.cardprod__header .ey-property-meta__item{
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:500!important;
}


/* EstateYard property map */
.ey-property-map-section{
  padding:34px 0 58px;
}
.ey-property-map-section[hidden]{
  display:none!important;
}
.ey-property-map-card{
  padding:28px;
  border-radius:28px;
  background:rgba(16,19,18,.92);
  border:1px solid rgba(255,255,255,.10);
  overflow:hidden;
}
.ey-property-map-copy{
  margin-bottom:20px;
}
.ey-property-map-kicker{
  margin:0 0 5px;
  color:#40c1ac;
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
}
.ey-property-map-copy h3{
  margin:0;
  color:#fff;
  font-size:28px;
  font-weight:600;
}
.ey-property-map-copy #ey-property-map-address{
  margin:7px 0 0;
  color:rgba(255,255,255,.68);
  font-size:15px;
}
.ey-property-map{
  width:100%;
  height:430px;
  border-radius:20px;
  overflow:hidden;
  background:#1a1d1b;
  z-index:1;
}
.ey-property-map .leaflet-control-attribution{
  font-size:10px;
}
@media(max-width:767px){
  .ey-property-map-section{padding:24px 0 40px;}
  .ey-property-map-card{padding:16px;border-radius:22px;}
  .ey-property-map{height:330px;border-radius:16px;}
  .ey-property-map-copy h3{font-size:22px;}
}

/* EstateYard partner — PRIVÉ DRIVE */
.footer__partner .d-flex.align-items-center{
  gap:22px;
  flex-wrap:wrap;
}
.footer__partner-logo--privedrive{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity:.82;
  transition:opacity .2s ease, transform .2s ease;
}
.footer__partner-logo--privedrive:hover{
  opacity:1;
  transform:translateY(-1px);
}
.footer__partner-logo--privedrive img{
  display:block;
  width:138px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
@media(max-width:767px){
  .footer__partner-logo--privedrive img{width:124px;}
}


/* EstateYard — footer partners: one continuous, aligned row */
.footer__partner{
  width:100%;
}
.footer__partner .d-flex.align-items-center{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:34px!important;
  width:100%!important;
  max-width:none!important;
}
.footer__partner-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:170px!important;
  height:82px!important;
  min-width:170px!important;
  padding:8px 12px!important;
  margin:0!important;
  border:0!important;
}
.footer__partner-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:150px!important;
  max-height:64px!important;
  object-fit:contain!important;
  object-position:center!important;
}
.footer__partner-logo--privedrive img{
  width:100%!important;
  height:100%!important;
  max-width:150px!important;
  max-height:64px!important;
}
@media(max-width:767px){
  .footer__partner{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    padding-bottom:6px;
  }
  .footer__partner .d-flex.align-items-center{
    flex-wrap:nowrap!important;
    gap:18px!important;
    width:max-content!important;
  }
  .footer__partner-logo{
    width:135px!important;
    height:68px!important;
    min-width:135px!important;
    padding:6px 8px!important;
  }
  .footer__partner-logo img,
  .footer__partner-logo--privedrive img{
    max-width:120px!important;
    max-height:52px!important;
  }
}


/* EstateYard — final partner logo alignment */
.footer__partner .d-flex.align-items-center{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:38px!important;
}
.footer__partner-logo{
  width:180px!important;
  height:90px!important;
  min-width:180px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
}
.footer__partner-logo img{
  width:160px!important;
  height:72px!important;
  max-width:160px!important;
  max-height:72px!important;
  object-fit:contain!important;
  object-position:center!important;
}
/* PRIVÉ DRIVE is visually narrow, so enlarge its artwork inside the same box */
.footer__partner-logo--privedrive img{
  width:172px!important;
  max-width:172px!important;
  height:76px!important;
  max-height:76px!important;
}
/* GEOCAD artwork is also optically smaller than MAIB */
.footer__partner-logo:last-child img{
  width:172px!important;
  max-width:172px!important;
  height:76px!important;
  max-height:76px!important;
}
@media(max-width:767px){
  .footer__partner .d-flex.align-items-center{
    gap:20px!important;
    width:max-content!important;
  }
  .footer__partner-logo{
    width:145px!important;
    height:74px!important;
    min-width:145px!important;
  }
  .footer__partner-logo img{
    width:130px!important;
    max-width:130px!important;
    height:58px!important;
    max-height:58px!important;
  }
  .footer__partner-logo--privedrive img,
  .footer__partner-logo:last-child img{
    width:138px!important;
    max-width:138px!important;
    height:62px!important;
    max-height:62px!important;
  }
}


/* FINAL FIX: PRIVE DRIVE visible size — source image tightly cropped */
.footer__partner-logo--privedrive{
  width:180px!important;
  height:90px!important;
  min-width:180px!important;
  overflow:visible!important;
}
.footer__partner-logo--privedrive img{
  display:block!important;
  width:165px!important;
  height:72px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  opacity:1!important;
  transform:none!important;
}
@media(max-width:767px){
  .footer__partner-logo--privedrive{
    width:145px!important;
    height:74px!important;
    min-width:145px!important;
  }
  .footer__partner-logo--privedrive img{
    width:134px!important;
    height:60px!important;
  }
}


/* FINAL: PRIVÉ DRIVE same visual scale as MAIB / GEOCAD */
.footer__partner-logo--privedrive{
  width:180px!important;
  height:90px!important;
  min-width:180px!important;
  padding:0!important;
}
.footer__partner-logo--privedrive img{
  width:175px!important;
  height:auto!important;
  max-width:175px!important;
  max-height:78px!important;
  object-fit:contain!important;
  opacity:1!important;
}
@media(max-width:767px){
  .footer__partner-logo--privedrive{
    width:145px!important;
    min-width:145px!important;
    height:74px!important;
  }
  .footer__partner-logo--privedrive img{
    width:140px!important;
    max-width:140px!important;
    max-height:64px!important;
  }
}


/* EstateYard contact widget clickability fix */
.contact-us { z-index: 2147483000 !important; }
.contact-us .position-relative { overflow: visible !important; }
.contact-us__social {
  z-index: 2147483001 !important;
  pointer-events: auto !important;
  touch-action: manipulation;
}
.contact-us.active .contact-us__social {
  pointer-events: auto !important;
}

/* Homepage partner logos move in a continuous, clickable loop. */
.footer__partners-viewport{width:100%;overflow:hidden}
.footer__partners-track{display:flex;width:max-content;animation:ey-partners-scroll 24s linear infinite}
.footer__partner .footer__partners-group.d-flex.align-items-center{display:flex!important;flex:0 0 auto;width:max-content!important;max-width:none!important;gap:38px!important;padding-right:38px}
.footer__partners-viewport:hover .footer__partners-track,
.footer__partners-viewport:focus-within .footer__partners-track{animation-play-state:paused}
@keyframes ey-partners-scroll{to{transform:translateX(-50%)}}
@media(max-width:767px){
  .footer__partner--marquee{overflow-x:hidden!important}
  .footer__partner .footer__partners-group.d-flex.align-items-center{gap:20px!important;padding-right:20px}
  .footer__partners-track{animation-duration:18s}
}
@media(prefers-reduced-motion:reduce){
  .footer__partners-track{animation:none}
  .footer__partners-viewport{overflow-x:auto}
}

/* EstateYard agent card fix — preserve property details below agent */
.product-main__info-badge .ey-agent-copy{display:flex;flex-direction:column;justify-content:center;height:100%;}
.product-main__info-badge .ey-agent-copy strong{font-size:20px;line-height:1.05;color:#111;}
.product-main__info-badge .ey-agent-copy span{font-size:15px;line-height:1.25;color:#333;}
.product-main__info-badge .ey-agent-copy a{font-size:24px;font-weight:700;line-height:1.1;color:#23652d;text-decoration:none;}
.product-main__info-badge .ey-agent-photo{max-width:100%;width:96px;height:96px;object-fit:cover;border-radius:12px;display:block;}

/* About page partner logos */
.about-partners__link { display: inline-flex; align-items: center; justify-content: center; width: 213px; min-height: 107px; }
.about-partners__link img { display: block; width: 100%; max-height: 107px; object-fit: contain; }
@media (max-width: 767px) { .about-partners__link { width: 150px; min-height: 85px; } .about-partners__link img { max-height: 85px; } }
