    :root{--blue-top:#4645c0;--blue-mid:#2e2db6;--blue-bottom:#060695;--white:#fff;}
    @font-face{font-family:Montserrat;src:url("/assets/fonts/Montserrat-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
    @font-face{font-family:Montserrat;src:url("/assets/fonts/Montserrat-Medium.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
    @font-face{font-family:Montserrat;src:url("/assets/fonts/Montserrat-SemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
    @font-face{font-family:Montserrat;src:url("/assets/fonts/Montserrat-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}

    :root{
      --blue:#060695;
      --blue-2:#1118c9;
      --blue-soft:#3f3fab;
      --lav:#dcd9ff;
      --lav-2:#f1f0ff;
      --ink:#151568;
      --muted:#696ab2;
      --white:#fff;
      --line:rgba(63,63,171,.34);
      --grad:linear-gradient(90deg,#7ca5d8 0%,#0606b7 100%);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--blue)}
    body{margin:0;min-width:320px;font-family:Montserrat,Arial,sans-serif;color:#fff;background:var(--blue);overflow-x:hidden}
    a{color:inherit;text-decoration:none}
    button,input{font-family:inherit}

    .mobile-topbar{position:fixed;top:24px;left:64px;right:64px;z-index:1001;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 18px;border-radius:18px;background:linear-gradient(180deg, rgba(6,6,149,.58), rgba(6,6,149,.36));box-shadow:0 16px 42px rgba(6,6,149,.26);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
    .mobile-logo{display:flex;align-items:center;flex:0 0 auto}.mobile-logo svg{display:block;width:118px;height:auto;filter:drop-shadow(0 2px 8px rgba(0,0,80,.28))}
    .mobile-topbar__actions{display:flex;align-items:center;gap:28px;margin-left:auto}.mobile-phone{font-size:20px;line-height:1;color:#fff;font-weight:400;white-space:nowrap;text-shadow:0 2px 10px rgba(0,0,80,.38)}
    .mobile-burger{display:flex;align-items:center;justify-content:center;width:42px;height:28px;border:0;border-radius:10px;background:rgba(255,255,255,.08);cursor:pointer}.mobile-burger svg{display:block;width:32px;height:auto}
    body.mobile-menu-open .mobile-topbar{opacity:0;pointer-events:none}.mobile-menu{position:fixed;inset:0;z-index:99990;display:block;opacity:0;pointer-events:none;transition:opacity .28s ease}.mobile-menu__backdrop{position:absolute;inset:0;background:transparent}.mobile-menu__panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,74vw);border-left:1px solid rgba(255,255,255,.35);background:linear-gradient(180deg,rgba(6,6,149,.23),rgba(6,6,149,.14));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 14px 28px rgba(6,6,149,.10), inset 1px 0 0 rgba(255,255,255,.08);transform:translateX(104%);transition:transform .36s cubic-bezier(.2,.8,.2,1)}
    body.mobile-menu-open .mobile-menu{opacity:1;pointer-events:auto}body.mobile-menu-open .mobile-menu__panel{transform:translateX(0)}body.mobile-menu-open{overflow:hidden}.mobile-menu__close{position:fixed;top:8px;right:calc(min(420px,74vw) + 10px);z-index:100000;width:22px;height:22px;padding:0;border:0;background:transparent;cursor:pointer}.mobile-menu__close svg{width:22px;height:22px}.mobile-menu__list{position:relative;z-index:2;display:flex;flex-direction:column;gap:31px;margin:0;padding:22px 24px 36px 28px;list-style:none}.mobile-menu__list a{display:block;color:#fff;font-size:13px;line-height:1.15;letter-spacing:2.1px;white-space:nowrap;text-decoration:none;text-transform:none;transition:opacity .2s ease,transform .2s ease}.mobile-menu__list a:hover{opacity:.72;transform:translateX(4px)}

    .catalog-page{position:relative;min-height:100vh;padding-top:118px;background:radial-gradient(circle at 18% 8%, rgba(105,130,217,.36), transparent 28%),linear-gradient(180deg,#2636a5 0%,#060695 42%,#070796 100%)}
    .catalog-shell{width:min(100%,1280px);margin:0 auto;padding:0 48px 72px}.crumbs{margin:0 0 10px;color:rgba(255,255,255,.72);font-size:13px;letter-spacing:.04em;text-transform:lowercase}.catalog-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:28px}.catalog-title{margin:0;font-size:44px;line-height:1.02;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#fff}.catalog-subtitle{max-width:410px;margin:0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.35}.toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 64px;gap:18px;margin-bottom:24px}.filter-open,.sort-open{height:42px;border:0;border-radius:8px;background:#fff;color:var(--blue);font-size:16px;font-weight:500;letter-spacing:.08em;cursor:pointer;display:flex;align-items:center;justify-content:center}.filter-open{gap:16px;text-transform:lowercase}.filter-open svg,.sort-open svg{width:24px;height:24px}.active-chips{display:flex;flex-wrap:wrap;gap:10px;margin:-4px 0 28px}.chip{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 14px;border:1px solid rgba(255,255,255,.44);border-radius:999px;color:#fff;background:rgba(255,255,255,.08);font-size:12px}.chip button{width:16px;height:16px;border:0;background:transparent;color:#fff;cursor:pointer;font-size:16px;line-height:1}
    .deal-switch{display:inline-flex;gap:6px;padding:5px;margin-bottom:20px;border-radius:11px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22)}.deal-switch__btn{height:38px;padding:0 26px;border:0;border-radius:7px;background:transparent;color:rgba(255,255,255,.82);font-size:14px;font-weight:500;letter-spacing:.04em;cursor:pointer;transition:background .2s ease,color .2s ease}.deal-switch__btn.is-active{background:#fff;color:var(--blue)}
    .catalog-layout{display:grid;grid-template-columns:292px minmax(0,1fr);gap:26px;align-items:start}.desktop-filter{position:sticky;top:98px;padding:22px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(16px)}.desktop-filter h2{margin:0 0 20px;font-size:20px;text-transform:uppercase;letter-spacing:.06em}.filter-group{margin-bottom:22px}.filter-label{display:block;margin-bottom:9px;color:rgba(255,255,255,.78);font-size:12px;letter-spacing:.06em;text-transform:uppercase}.field{width:100%;height:38px;border:1px solid rgba(255,255,255,.34);border-radius:8px;background:rgba(255,255,255,.08);color:#fff;padding:0 12px;font-size:13px;outline:none}.field::placeholder{color:rgba(255,255,255,.55)}.range-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.range-line{position:relative;height:3px;margin:12px 4px 0;background:rgba(255,255,255,.35);border-radius:99px}.range-line:before{content:"";position:absolute;left:10%;right:22%;height:3px;background:#fff;border-radius:99px}.range-line i{position:absolute;top:50%;width:14px;height:8px;border-radius:4px;background:#fff;transform:translateY(-50%)}.range-line i:first-child{left:8%}.range-line i:last-child{right:20%}.segmented{display:flex;flex-wrap:wrap;gap:8px}.seg{height:30px;padding:0 12px;border:1px solid rgba(255,255,255,.45);border-radius:7px;background:transparent;color:#fff;font-size:12px;cursor:pointer}.seg.is-active{background:rgba(255,255,255,.9);color:var(--blue)}.filter-apply{width:100%;height:42px;border:0;border-radius:8px;background:#fff;color:var(--blue);font-weight:600;cursor:pointer}.filter-reset{width:100%;height:32px;margin-top:10px;border:0;background:transparent;color:rgba(255,255,255,.72);cursor:pointer}

    .results-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.results-count{font-size:15px;color:rgba(255,255,255,.82)}.desktop-sort{height:34px;min-width:220px;border:1px solid rgba(255,255,255,.38);border-radius:8px;background:rgba(255,255,255,.08);color:#fff;padding:0 12px;outline:none}.desktop-sort option{color:#111}.cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-card{overflow:hidden;border-radius:0 0 12px 12px;background:linear-gradient(180deg,#f7f6ff 0%,#e8e6ff 100%);color:var(--blue);box-shadow:0 18px 40px rgba(0,0,80,.18)}.project-link{display:block}.project-img{position:relative;height:252px;overflow:hidden;background:#1b237f}.project-img-dots{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;display:flex;gap:6px}.project-img-dots span{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.4)}.project-img-dots span.is-active{background:#fff}.project-img img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.95) contrast(.94)}.project-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(6,6,149,.18))}.project-body{padding:28px 28px 30px}.project-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:8px}.project-name{margin:0;font-size:33px;line-height:.95;font-weight:700;letter-spacing:.05em}.metro{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:18px;white-space:nowrap}.metro-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.55em;height:1.55em;border-radius:50%;background:var(--blue);color:#fff}.metro-icon-letter{font-weight:700;font-size:0.62em;line-height:1}.metro-text{overflow:hidden;text-overflow:ellipsis}.district{margin:0 0 18px;font-size:24px;letter-spacing:.08em}.project-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 32px;min-width:0}.project-meta>span{min-width:0}.meta-label{display:block;color:#817fc3;font-size:14px;line-height:1.1;letter-spacing:.08em}.meta-value{display:block;margin-top:5px;font-size:26px;line-height:1.15;font-weight:700;letter-spacing:.1em;overflow-wrap:break-word;word-break:break-word}.load-more{display:flex;align-items:center;justify-content:center;width:100%;height:56px;margin-top:36px;border:1px solid rgba(255,255,255,.74);border-radius:10px;background:transparent;color:#fff;font-size:18px;letter-spacing:.17em;cursor:pointer}.load-more:hover{background:rgba(255,255,255,.08)}

    .project-img img{position:absolute !important;inset:0;display:none !important;}
    .project-img img.is-active{display:block !important;}
    .gallery-arrow{
      position:absolute;top:50%;transform:translateY(-50%);
      width:32px;height:32px;border-radius:50%;border:0;
      background:rgba(6,6,149,.55);color:#fff;font-size:20px;line-height:1;
      display:flex;align-items:center;justify-content:center;
      cursor:pointer;z-index:5;opacity:0;
      transition:opacity .2s ease,background .2s ease;
    }
    .project-img.has-gallery:hover .gallery-arrow{opacity:1;}
    .gallery-arrow:hover{background:rgba(6,6,149,.85);}
    .gallery-prev{left:12px;}
    .gallery-next{right:12px;}
    .gallery-dots{
      position:absolute;left:0;right:0;bottom:10px;
      display:flex;align-items:center;justify-content:center;gap:6px;z-index:5;
    }
    .gallery-dot{
      width:6px;height:6px;border-radius:50%;
      background:rgba(255,255,255,.55);cursor:pointer;
      transition:background .2s ease,transform .2s ease;
    }
    .gallery-dot.is-active{background:#fff;transform:scale(1.35);}
    @media (max-width:1100px){
      .project-img.has-gallery .gallery-arrow{opacity:1;}
    }

    .catalog-note{margin-top:58px;padding:30px 34px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.84)}.catalog-note h2{margin:0 0 10px;font-size:25px}.catalog-note p{margin:0;font-size:14px;line-height:1.55;max-width:900px}

    .modal{position:fixed;inset:0;z-index:2000;display:none;align-items:flex-start;justify-content:center;padding:88px 24px 24px;background:rgba(4,4,74,.66);backdrop-filter:blur(10px)}.modal.is-open{display:flex}.modal-panel{width:min(100%,760px);max-height:calc(100vh - 112px);overflow:auto;padding:24px 28px;border-radius:18px;background:#fff;color:var(--blue);box-shadow:0 28px 80px rgba(0,0,0,.28)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.modal-head h2{margin:0;font-size:28px;line-height:1;text-transform:none}.close{width:30px;height:30px;border:0;background:transparent;color:var(--blue);cursor:pointer;padding:0}.close svg{width:100%;height:100%}.modal .filter-label{color:#7776b8}.modal .field{border-color:var(--blue);color:var(--blue);background:#fff}.modal .field::placeholder{color:#8887c8}.modal .seg{border-color:var(--blue);color:var(--blue);background:#fff}.modal .seg.is-active{background:var(--lav);color:var(--blue);border-color:var(--lav)}.modal .range-line{background:#c7c6e9}.modal .range-line:before,.modal .range-line i{background:var(--blue)}.modal-action{width:100%;height:50px;border:0;border-radius:8px;background:var(--grad);color:#fff;font-size:18px;letter-spacing:.04em;cursor:pointer}.sort-options{display:grid;gap:16px;margin:24px 0 48px}.sort-option{height:48px;border:1px solid var(--blue);border-radius:8px;background:#fff;color:#7776b8;text-align:left;padding:0 20px;font-size:15px;cursor:pointer}.sort-option.is-active{border-color:transparent;background:linear-gradient(90deg,#c7c4ff 0%,#fff 100%);color:#6e6dc0}.mobile-only{display:none}

    .design-block{--scale-x:1;--scale-y:1;position:relative;}
    .design-canvas{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;}
    .footer-block{position:relative;overflow:hidden;}
    .footer-canvas{position:relative;width:min(100%,1180px);margin:0 auto;}
.footer-block{height:703px;
  margin-top:0;
  background:linear-gradient(180deg,var(--blue-top) 0%,var(--blue-mid) 52%,var(--blue-bottom) 100%);}
.footer-canvas{height:703px;
  background:linear-gradient(180deg,var(--blue-top) 0%,var(--blue-mid) 52%,var(--blue-bottom) 100%);}
.footer-canvas h2, .footer-canvas h3, .footer-canvas p{margin:0;}
.footer-pattern{position:absolute;
  left:calc(-42px * var(--scale-x));
  bottom:calc(38px * var(--scale-y));
  width:calc(870px * var(--scale-x));
  height:calc(80px * var(--scale-y));
  fill:#02028f;
  opacity:.25;
  pointer-events:none;}
.footer-claim{position:absolute;
  left:calc(33px * var(--scale-x));
  top:calc(57px * var(--scale-y));
  width:calc(360px * var(--scale-x));}
.footer-claim h2{font-size:calc(20px * var(--scale-y));
  line-height:1.07;
  font-weight:400;
  letter-spacing:0;
  text-transform:uppercase;}
.footer-button{display:inline-flex;
  align-items:center;
  justify-content:center;
  width:calc(148px * var(--scale-x));
  height:calc(44px * var(--scale-y));
  margin-top:calc(24px * var(--scale-y));
  border:1px solid rgba(255,255,255,.92);
  border-radius:calc(5px * var(--scale-y));
  font-size:calc(16px * var(--scale-y));
  line-height:1;
  font-weight:400;}
.reviews{position:absolute;
  left:calc(34px * var(--scale-x));
  top:calc(249px * var(--scale-y));
  width:calc(260px * var(--scale-x));}
.reviews h3{margin-bottom:calc(22px * var(--scale-y));
  font-size:calc(17px * var(--scale-y));
  line-height:1.2;
  font-weight:400;
  letter-spacing:.01em;}
.footer-address{position:absolute;
  left:calc(34px * var(--scale-x));
  top:calc(516px * var(--scale-y));
  width:calc(280px * var(--scale-x));
  font-style:normal;
  font-size:calc(14px * var(--scale-y));
  line-height:1.1;
  letter-spacing:.01em;}
.footer-nav{position:absolute;
  color:var(--white);}
.footer-nav h3, .socials h3{margin-bottom:calc(14px * var(--scale-y));
  font-size:calc(17px * var(--scale-y));
  line-height:1.15;
  font-weight:400;}
.footer-nav a{display:block;
  margin-bottom:calc(10px * var(--scale-y));
  color:rgba(255,255,255,.78);
  font-size:calc(15px * var(--scale-y));
  line-height:1.08;
  font-weight:400;}
.footer-services{left:calc(398px * var(--scale-x));
  top:calc(53px * var(--scale-y));
  width:calc(168px * var(--scale-x));}
.footer-company{left:calc(606px * var(--scale-x));
  top:calc(53px * var(--scale-y));
  width:calc(125px * var(--scale-x));}
.socials{position:absolute;
  left:calc(398px * var(--scale-x));
  top:calc(288px * var(--scale-y));
  width:calc(140px * var(--scale-x));}
.social-grid{display:grid;
  grid-template-columns:repeat(3,calc(36px * var(--scale-y)));
  gap:calc(10px * var(--scale-y)) calc(10px * var(--scale-y));
  margin-top:calc(18px * var(--scale-y));}
.social-grid a{display:grid;
  place-items:center;
  width:calc(36px * var(--scale-y));
  height:calc(36px * var(--scale-y));
  border:1px solid rgba(255,255,255,.56);
  border-radius:50%;
  background:rgba(255,255,255,.10);
  color:#fff;
  transition:background .22s ease,border-color .22s ease,transform .22s ease;}
.social-grid a:hover{background:rgba(255,255,255,.24);
  border-color:rgba(255,255,255,.92);
  transform:translateY(calc(-2px * var(--scale-y)));}
.socials .social-grid a:not(.m-show){width:calc(40px * var(--scale-y));
  height:calc(40px * var(--scale-y));}
.socials .social-grid a:not(.m-show) svg{width:calc(21px * var(--scale-y));
  height:calc(21px * var(--scale-y));}
.socials .social-grid a:not(.m-show) .social-letter{font-size:calc(14px * var(--scale-y));}
.social-grid svg{display:block;
  width:calc(19px * var(--scale-y));
  height:calc(19px * var(--scale-y));
  fill:currentColor;}
.social-grid .icon-stroke{fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;}
.social-grid .social-letter{display:block;
  margin:0;
  font-size:calc(13px * var(--scale-y));
  line-height:1;
  font-weight:700;
  letter-spacing:-.04em;
  color:#fff;}
.social-grid .social-letter-wide{font-size:calc(10px * var(--scale-y));
  letter-spacing:-.06em;}
.social-grid .social-letter-avito{font-size:calc(8.4px * var(--scale-y));
  letter-spacing:-.08em;}
.social-grid .social-logo-img{display:block;
  width:calc(20px * var(--scale-y));
  height:calc(20px * var(--scale-y));
  object-fit:contain;}
.social-classifieds-label{display:block;
  flex-basis:100%;
  width:100%;
  margin:14px 0 4px;
  font-size:calc(17px * var(--scale-y));
  line-height:1.15;
  color:var(--white);
  font-weight:400;}
.social-grid .social-dots{position:relative;
  width:calc(18px * var(--scale-y));
  height:calc(18px * var(--scale-y));}
.social-grid .social-dots:before, .social-grid .social-dots:after, .social-grid .social-dots i:before, .social-grid .social-dots i:after{content:"";
  position:absolute;
  width:calc(7px * var(--scale-y));
  height:calc(7px * var(--scale-y));
  border-radius:50%;
  background:#fff;}
.social-grid .social-dots:before{left:0;
  top:0;}
.social-grid .social-dots:after{right:0;
  top:0;}
.social-grid .social-dots i:before{left:0;
  bottom:0;}
.social-grid .social-dots i:after{right:0;
  bottom:0;}
.footer-phone{position:absolute;
  font-size:calc(18px * var(--scale-y));
  line-height:1;
  letter-spacing:.015em;
  font-weight:500;
  white-space:nowrap;}
.footer-phone-main{left:calc(371px * var(--scale-x));
  top:calc(535px * var(--scale-y));}
.free-call{position:absolute;
  left:calc(548px * var(--scale-x));
  top:calc(515px * var(--scale-y));
  width:calc(195px * var(--scale-x));
  color:rgba(255,255,255,.88);
  font-size:calc(10px * var(--scale-y));
  line-height:1;
  letter-spacing:.01em;}
.footer-phone-right{left:calc(597px * var(--scale-x));
  top:calc(535px * var(--scale-y));}

    @media (max-width:1100px){.catalog-layout{grid-template-columns:1fr}.desktop-filter{display:none}.cards-grid{grid-template-columns:1fr 1fr}.desktop-sort{display:none}.catalog-title{font-size:38px}.mobile-only{display:block}}
    @media (max-width:760px){
      .mobile-topbar{top:16px;left:16px;right:16px;padding:9px 12px;border-radius:14px}.mobile-logo svg{width:84px}.mobile-topbar__actions{gap:14px}.mobile-phone{font-size:16px}.mobile-burger{width:30px;height:20px}.mobile-burger svg{width:24px}.mobile-menu__panel{width:calc(100vw - 53px)}.mobile-menu__close{top:7px;right:calc(100vw - 53px + 10px);width:20px;height:20px}.mobile-menu__close svg{width:20px}.mobile-menu__list{padding:22px 18px 32px 27px;gap:31px}.mobile-menu__list a{font-size:13px;letter-spacing:2px}
      .catalog-page{padding-top:78px;background:linear-gradient(180deg,#3b4caf 0%,#060695 38%,#070796 100%)}.catalog-shell{padding:0 20px 48px}.crumbs{font-size:10px;margin-bottom:8px}.catalog-hero{display:block;margin-bottom:16px}.catalog-title{font-size:20px;line-height:1.06;letter-spacing:.08em}.catalog-subtitle{display:none}.toolbar{grid-template-columns:minmax(0,1fr) 64px;gap:18px;margin:14px 0 22px}.filter-open,.sort-open{height:31px;border-radius:6px;font-size:12px;letter-spacing:.12em}.filter-open svg,.sort-open svg{width:18px}.active-chips{margin:0 0 18px;gap:8px}.chip{height:26px;font-size:10px;padding:0 10px}.results-head{display:none}.cards-grid{grid-template-columns:1fr;gap:15px}.project-card{border-radius:0 0 7px 7px}.project-img{height:176px}.project-body{padding:20px 24px 26px}.project-name{font-size:29px}.metro{font-size:14px}.district{font-size:20px;margin-bottom:14px}.project-meta{gap:15px 20px}.meta-label{font-size:13px}.meta-value{font-size:24px}.load-more{height:38px;margin-top:44px;border-radius:7px;font-size:13px;letter-spacing:.18em}.catalog-note{margin-top:38px;padding:22px 20px}.catalog-note h2{font-size:18px}.catalog-note p{font-size:12px}.modal{align-items:flex-start;padding:16px 0 0;background:rgba(3,8,45,.68)}.modal-panel{width:100%;max-height:calc(100vh - 16px);border-radius:12px 12px 0 0;padding:20px 24px 22px}.modal-head h2{font-size:19px;text-transform:uppercase}.modal .filter-group{margin-bottom:17px}.sort-options{gap:16px;margin:28px 0 48px}.sort-option{height:40px;font-size:12px}.modal-action{height:51px;font-size:16px}.range-row{gap:52px}.field{height:31px;font-size:12px}.seg{height:27px;font-size:12px;padding:0 14px}.filter-label{font-size:11px}.footer-block,.footer-canvas{min-height:650px}.footer-canvas{padding:22px 16px 18px}.footer-claim{left:16px;top:22px;width:calc(100% - 32px)}.footer-claim h2{font-size:16px;line-height:1.08;letter-spacing:.08em}.footer-button{width:100%;height:30px;margin-top:14px;font-size:14px}.footer-services{left:20px;top:122px;width:138px}.footer-company{left:calc(50% + 38px);top:122px;width:110px}.footer-nav h3,.socials h3{font-size:13px;margin-bottom:10px}.footer-nav a{font-size:12px;margin-bottom:6px}.footer-company a{font-size:13px}.socials{left:20px;top:300px;width:calc(100% - 40px)}.social-grid{display:flex;flex-wrap:wrap;gap:11px 13px;max-width:270px}.social-grid a{width:34px;height:34px;flex:0 0 34px}.reviews{left:16px;top:458px;width:calc(100% - 32px)}.reviews h3{font-size:13px;margin-bottom:8px}.real-reviews-widget{grid-template-columns:1fr 1fr;gap:8px}.review-pretty-card,.real-reviews-widget__2gis{min-height:40px;border-radius:4px;padding:6px 7px}.review-pretty-card__name,.review-pretty-card__source,.review-pretty-card__meta,.review-pretty-card__action,.real-reviews-widget__2gis-text{font-size:7px}.review-pretty-card__rating,.real-reviews-widget__2gis-score{font-size:16px}.review-pretty-card__stars,.real-reviews-widget__2gis-stars{font-size:10px}.footer-address{left:16px;bottom:78px;width:calc(100% - 32px);font-size:12px}.footer-phone{bottom:26px;font-size:13px}.footer-phone-main{left:18px}.footer-phone-right{left:auto;right:18px}.free-call{left:auto;right:18px;bottom:43px;width:145px;font-size:7px;text-align:center}.footer-pattern{bottom:13px;width:690px;height:48px;opacity:.34}
    }

    .range-line.is-real{height:22px;margin-top:8px;background:transparent;}
    .range-line.is-real::before{display:none;}
    .range-line.is-real .range-track{position:absolute;left:0;right:0;top:10px;height:3px;border-radius:99px;background:rgba(255,255,255,.35);overflow:hidden;}
    .modal .range-line.is-real .range-track{background:#c7c6e9;}
    .range-line.is-real .range-fill{position:absolute;top:0;bottom:0;border-radius:99px;background:#fff;}
    .modal .range-line.is-real .range-fill{background:var(--blue);}
    .range-line.is-real input[type="range"]{position:absolute;left:0;right:0;top:0;width:100%;height:22px;margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none;}
    .range-line.is-real input[type="range"]::-webkit-slider-thumb{width:14px;height:8px;border-radius:6px;border:0;background:#fff;cursor:pointer;pointer-events:auto;-webkit-appearance:none;appearance:none;}
    .modal .range-line.is-real input[type="range"]::-webkit-slider-thumb{background:var(--blue);}
    .range-line.is-real input[type="range"]::-moz-range-thumb{width:14px;height:8px;border-radius:6px;border:0;background:#fff;cursor:pointer;pointer-events:auto;}
    .modal .range-line.is-real input[type="range"]::-moz-range-thumb{background:var(--blue);}
    .project-card.is-hidden{display:none;}
    .empty-results{display:none;margin:32px 0;padding:32px;border:1px solid rgba(255,255,255,.32);border-radius:14px;color:#fff;text-align:center;background:rgba(255,255,255,.08)}
    .empty-results.is-visible{display:block;}
    .chip[data-generated="true"]{animation:chipIn .18s ease both;}
    @keyframes chipIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

    .desktop-top-filters,
    .desktop-control-row{display:none;}

    @media (min-width:1101px){
      .catalog-page{
        padding-top:138px;
        background:
          radial-gradient(circle at 82% 88%, rgba(190,205,210,.54), transparent 30%),
          radial-gradient(circle at 18% 6%, rgba(102,121,207,.30), transparent 28%),
          linear-gradient(180deg,#3548b7 0%, #071092 38%, #060695 100%);
      }
      .catalog-page:before,
      .catalog-page:after{
        content:"";
        position:absolute;
        top:26px;
        bottom:260px;
        width:96px;
        opacity:.65;
        pointer-events:none;
        background:repeating-linear-gradient(to bottom, rgba(255,255,255,.72) 0 2px, transparent 2px 64px);
      }
      .catalog-page:before{left:0;}
      .catalog-page:after{right:0;}
      .catalog-shell{
        position:relative;
        z-index:1;
        width:min(100%,1180px);
        padding:0 54px 88px;
      }
      .crumbs{
        margin:0 0 6px;
        font-size:12px;
        line-height:1;
        letter-spacing:.04em;
        color:rgba(255,255,255,.72);
      }
      .catalog-hero{
        display:block;
        margin:0 0 14px;
      }
      .catalog-title{
        font-size:34px;
        line-height:1.05;
        letter-spacing:.012em;
        text-transform:none;
        font-weight:700;
      }
      .catalog-subtitle{display:none;}
      .desktop-top-filters{
        display:grid;
        grid-template-columns:210px 160px 160px minmax(360px,1fr);
        width:min(100%,1010px);
        height:37px;
        overflow:hidden;
        border-radius:6px;
        background:#fff;
        color:#060695;
        margin:0 0 24px;
        box-shadow:0 1px 0 rgba(255,255,255,.14);
      }
      .top-filter,
      .top-search{
        display:flex;
        align-items:center;
        justify-content:space-between;
        min-width:0;
        padding:0 17px;
        border:0;
        border-right:1px solid rgba(6,6,149,.14);
        background:#fff;
        color:#060695;
        font-size:13px;
        font-weight:500;
        letter-spacing:.02em;
        cursor:pointer;
      }
      .top-search{cursor:text;border-right:0;}
      .top-search input{
        width:100%;
        height:100%;
        border:0;
        outline:0;
        color:#060695;
        font-size:13px;
        background:transparent;
      }
      .top-search input::placeholder{color:#060695;opacity:.82;}
      .top-filter span,
      .top-search span{font-size:15px;opacity:.75;margin-left:8px;}
      .desktop-control-row{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:24px;
        margin:0 0 70px;
      }
      .desktop-control-row .filter-open{
        width:auto;
        height:28px;
        padding:0;
        gap:12px;
        border-radius:0;
        background:transparent;
        color:#fff;
        font-size:15px;
        font-weight:600;
        letter-spacing:.03em;
        text-transform:none;
      }
      .desktop-control-row .filter-open svg{
        width:22px;
        height:22px;
        padding:3px;
        border:1px solid rgba(255,255,255,.55);
        color:#fff;
      }
      .desktop-result-tools{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:20px;
        color:#fff;
        font-size:13px;
      }
      .desktop-result-tools .results-count{
        color:rgba(255,255,255,.72);
        font-size:13px;
        white-space:nowrap;
      }
      .desktop-result-tools .desktop-sort{
        display:block!important;
        min-width:136px;
        height:28px;
        padding:0 4px;
        border:0;
        background:transparent;
        color:#fff;
        font-size:13px;
        text-transform:lowercase;
      }
      .view-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:24px;
        height:24px;
        padding:0;
        border:0;
        background:transparent;
        color:#fff;
        opacity:.72;
        cursor:pointer;
      }
      .view-toggle.is-active{opacity:1;}
      .view-list span{width:22px;height:1px;background:#fff;display:block;}
      .view-grid{display:grid;grid-template-columns:repeat(2,5px);grid-auto-rows:5px;gap:4px;}
      .view-grid span{display:block;width:5px;height:5px;background:#fff;}
      .mobile-toolbar{display:none!important;}
      .active-chips{display:none;}
      .catalog-layout{display:block;}
      .desktop-filter{display:none!important;}
      .results-head{display:none;}
      .cards-grid{
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:56px 34px;
      }
      .project-card{
        border-radius:0 0 7px 7px;
        box-shadow:none;
        background:linear-gradient(180deg,#f6f5ff 0%,#e9e7ff 100%);
      }
      .project-img{height:247px;}
      .project-body{padding:17px 19px 21px;}
      .project-top{align-items:flex-start;gap:10px;margin-bottom:4px;}
      .project-name{
        font-size:22px;
        line-height:1;
        letter-spacing:.035em;
      }
      .metro{
        gap:5px;
        margin-top:0;
        font-size:10px;
        line-height:1.1;
      }
      .metro-icon{
        width:1.55em;
        height:1.55em;
      }
      .district{
        margin:0 0 13px;
        font-size:14px;
        line-height:1.1;
        letter-spacing:.04em;
      }
      .project-description,.project-stations{display:none;}
      .project-meta{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:12px 16px;
      }
      .project-meta>span:nth-child(3){grid-column:1 / 2;}
      .meta-label{
        font-size:9px;
        letter-spacing:.04em;
        color:#8b89c8;
      }
      .meta-value{
        margin-top:3px;
        font-size:16px;
        line-height:1;
        letter-spacing:.08em;
      }
      .load-more{
        width:370px;
        height:40px;
        margin:58px auto 0;
        border-radius:9px;
        font-size:15px;
        letter-spacing:.08em;
        text-transform:lowercase;
      }
      .catalog-note{display:none;}

      .cards-grid.is-list-view{
        display:grid;
        grid-template-columns:1fr;
        gap:28px;
      }
      .cards-grid.is-list-view .project-card{
        border-radius:7px;
        overflow:hidden;
      }
      .cards-grid.is-list-view .project-link{
        display:grid;
        grid-template-columns:420px minmax(0,1fr);
        min-height:270px;
      }
      .cards-grid.is-list-view .project-img{height:100%;min-height:270px;}
      .cards-grid.is-list-view .project-body{padding:32px 52px 30px;}
      .cards-grid.is-list-view .project-name{font-size:24px;margin-bottom:0;}
      .cards-grid.is-list-view .project-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px;}
      .cards-grid.is-list-view .metro{display:flex;margin-top:0;flex:0 0 auto;}
      .cards-grid.is-list-view .district{font-size:14px;margin-bottom:15px;}
      .cards-grid.is-list-view .project-description{
        display:block;
        max-width:560px;
        margin:0 0 18px;
        font-size:11px;
        line-height:1.35;
        color:#060695;
      }
      .cards-grid.is-list-view .project-stations{
        display:flex;
        gap:26px;
        margin:0 0 24px;
        font-size:10px;
      }
      .cards-grid.is-list-view .project-stations span{display:flex;align-items:center;gap:6px;}
      .cards-grid.is-list-view .project-stations b{width:16px;height:16px;border-radius:50%;background:#060695;display:inline-block;position:relative;}
      .cards-grid.is-list-view .project-stations b:after{content:'М';position:absolute;inset:0;color:#fff;font-size:9px;line-height:16px;text-align:center;font-weight:700;}
      .cards-grid.is-list-view .project-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
      .cards-grid.is-list-view .project-meta>span:nth-child(3){grid-column:auto;}
      .cards-grid.is-list-view .meta-value{font-size:17px;}
    }

    @media (max-width:1100px){
      .desktop-top-filters,.desktop-control-row{display:none!important;}
    }

    @media (min-width:1101px){
      .catalog-page::before,
      .catalog-page::after{
        content:none !important;
        display:none !important;
      }
      .catalog-shell{
        width:min(100%,1120px) !important;
        padding-left:14px !important;
        padding-right:14px !important;
        overflow:visible !important;
      }
      .desktop-top-filters{
        width:min(100%,1010px) !important;
        margin-left:0 !important;
        margin-right:auto !important;
        grid-template-columns:190px 150px 150px minmax(330px,1fr) !important;
      }
      .desktop-control-row{
        width:min(100%,1010px) !important;
        margin-left:0 !important;
        margin-right:auto !important;
      }
      .desktop-result-tools{
        margin-left:auto !important;
      }
      .top-filter,
      .top-search{
        min-width:0 !important;
      }
      .top-search input{
        min-width:0 !important;
      }
    }

    @media (max-width:1100px){
      .catalog-page,
      .catalog-shell,
      .cards-grid,
      .project-card,
      .project-link{
        max-width:100% !important;
      }
      .catalog-shell{
        width:100% !important;
        overflow:hidden !important;
      }
      .load-more{
        width:100% !important;
        max-width:370px !important;
      }
      .project-img img{
        max-width:100% !important;
      }
    }

    @media (min-width:1101px){
      .catalog-shell{
        width:min(100%, 1180px) !important;
        padding-left:14px !important;
        padding-right:14px !important;
      }
      .desktop-top-filters{
        display:grid !important;
        grid-template-columns:180px 180px 180px minmax(280px, 1fr) !important;
        width:100% !important;
        max-width:100% !important;
        height:34px !important;
        min-height:34px !important;
        margin:0 0 25px 0 !important;
        border-radius:5px !important;
        overflow:hidden !important;
        background:#fff !important;
        box-shadow:none !important;
      }
      .top-filter,
      .top-search{
        height:34px !important;
        min-height:34px !important;
        padding:0 17px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        border:0 !important;
        border-right:1px solid rgba(6,6,149,.12) !important;
        background:#fff !important;
        color:#060695 !important;
        font-size:13px !important;
        line-height:34px !important;
        font-weight:500 !important;
        letter-spacing:.01em !important;
        white-space:nowrap !important;
      }
      .top-search{
        border-right:0 !important;
      }
      .top-search input{
        height:34px !important;
        line-height:34px !important;
        padding:0 !important;
        font-size:13px !important;
        color:#060695 !important;
      }
      .top-search input::placeholder{
        color:#060695 !important;
        opacity:.95 !important;
      }
      .top-filter span,
      .top-search span{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        margin-left:8px !important;
        font-size:14px !important;
        line-height:1 !important;
        opacity:.85 !important;
        transform:translateY(-1px) !important;
      }
      .desktop-control-row{
        width:100% !important;
        max-width:100% !important;
        margin:0 0 70px 0 !important;
      }
    }

  @media (min-width:1101px){
    html, body{
      overflow-x:hidden !important;
    }

    .catalog-page::before,
    .catalog-page::after,
    .catalog-shell::before,
    .catalog-shell::after{
      display:none !important;
      content:none !important;
    }

    .catalog-page{
      overflow:hidden !important;
    }

    .catalog-shell{
      width:100% !important;
      max-width:1180px !important;
      margin:0 auto !important;
      padding-left:60px !important;
      padding-right:60px !important;
      box-sizing:border-box !important;
      overflow:visible !important;
    }

    .desktop-top-filters{
      display:grid !important;
      grid-template-columns:180px 170px 170px minmax(300px, 1fr) !important;
      width:100% !important;
      max-width:1010px !important;
      height:34px !important;
      min-height:34px !important;
      margin:0 0 25px 0 !important;
      padding:0 !important;
      border:0 !important;
      border-radius:5px !important;
      overflow:hidden !important;
      background:#fff !important;
      color:#060695 !important;
      box-shadow:none !important;
      align-items:stretch !important;
    }

    .desktop-top-filters .top-filter,
    .desktop-top-filters .top-search{
      height:34px !important;
      min-height:34px !important;
      max-height:34px !important;
      padding:0 18px !important;
      margin:0 !important;
      border:0 !important;
      border-right:1px solid rgba(6,6,149,.12) !important;
      border-radius:0 !important;
      background:#fff !important;
      color:#060695 !important;
      display:flex !important;
      align-items:center !important;
      justify-content:space-between !important;
      font-family:Montserrat, Arial, sans-serif !important;
      font-size:13px !important;
      line-height:34px !important;
      font-weight:400 !important;
      letter-spacing:0 !important;
      text-transform:none !important;
      white-space:nowrap !important;
      box-sizing:border-box !important;
    }

    .desktop-top-filters .top-search{
      border-right:0 !important;
    }

    .desktop-top-filters .top-search input{
      height:34px !important;
      min-height:34px !important;
      line-height:34px !important;
      padding:0 !important;
      margin:0 !important;
      border:0 !important;
      outline:0 !important;
      background:transparent !important;
      color:#060695 !important;
      font-family:Montserrat, Arial, sans-serif !important;
      font-size:13px !important;
      font-weight:400 !important;
      letter-spacing:0 !important;
    }

    .desktop-top-filters .top-search input::placeholder{
      color:#060695 !important;
      opacity:1 !important;
    }

    .desktop-top-filters .top-filter span,
    .desktop-top-filters .top-search span{
      display:block !important;
      margin-left:10px !important;
      color:#060695 !important;
      font-size:14px !important;
      line-height:1 !important;
      font-weight:400 !important;
      opacity:.8 !important;
      transform:translateY(-1px) !important;
    }

    .desktop-control-row{
      width:100% !important;
      max-width:1010px !important;
      margin-left:0 !important;
      margin-right:0 !important;
    }
  }

  @media (min-width:1101px) and (max-width:1240px){
    .catalog-shell{
      padding-left:14px !important;
      padding-right:14px !important;
    }
    .desktop-top-filters,
    .desktop-control-row{
      max-width:calc(100vw - 28px) !important;
    }
    .desktop-top-filters{
      grid-template-columns:180px 175px 175px minmax(260px, 1fr) !important;
    }
  }

    @media (min-width:1101px){
      .desktop-top-filters{
        display:grid !important;
        grid-template-columns:190px 170px 160px minmax(360px,1fr) !important;
        width:100% !important;
        max-width:1010px !important;
        height:31px !important;
        min-height:31px !important;
        margin:0 0 25px 0 !important;
        padding:0 !important;
        overflow:hidden !important;
        border-radius:4px !important;
        background:#fff !important;
        box-shadow:none !important;
      }

      .desktop-top-filters .top-filter,
      .desktop-top-filters .top-search{
        appearance:none !important;
        -webkit-appearance:none !important;
        height:31px !important;
        min-height:31px !important;
        max-height:31px !important;
        padding:0 14px !important;
        margin:0 !important;
        border:0 !important;
        border-right:1px solid rgba(6,6,149,.13) !important;
        border-radius:0 !important;
        background:#fff !important;
        color:#060695 !important;
        font-family:Montserrat, Arial, sans-serif !important;
        font-size:12px !important;
        line-height:31px !important;
        font-weight:500 !important;
        letter-spacing:.01em !important;
        text-transform:none !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        white-space:nowrap !important;
        cursor:pointer !important;
        transition:background .22s ease, color .22s ease, box-shadow .22s ease !important;
      }

      .desktop-top-filters .top-search{
        border-right:0 !important;
        cursor:text !important;
      }

      .desktop-top-filters .top-filter:hover,
      .desktop-top-filters .top-filter:focus-visible,
      .desktop-top-filters .top-search:hover,
      .desktop-top-filters .top-search:focus-within{
        background:linear-gradient(90deg, #ffffff 0%, #efefff 48%, #d8d6ff 100%) !important;
        color:#060695 !important;
        box-shadow:inset 0 0 0 1px rgba(6,6,149,.05) !important;
      }

      .desktop-top-filters .top-filter span,
      .desktop-top-filters .top-search span{
        display:block !important;
        flex:0 0 auto !important;
        margin-left:8px !important;
        color:#060695 !important;
        opacity:.85 !important;
        font-size:13px !important;
        line-height:1 !important;
        font-weight:400 !important;
        transform:translateY(-1px) !important;
      }

      .desktop-top-filters .top-search input{
        width:100% !important;
        height:31px !important;
        min-height:31px !important;
        padding:0 !important;
        margin:0 !important;
        border:0 !important;
        outline:0 !important;
        background:transparent !important;
        color:#060695 !important;
        font-family:Montserrat, Arial, sans-serif !important;
        font-size:12px !important;
        line-height:31px !important;
        font-weight:500 !important;
        letter-spacing:.01em !important;
      }

      .desktop-top-filters .top-search input::placeholder{
        color:#060695 !important;
        opacity:1 !important;
      }

      .desktop-control-row{
        max-width:1010px !important;
      }
    }

    @media (min-width:1101px){
      .desktop-top-filters-wrap{
        position:relative !important;
        z-index:50 !important;
        width:min(100%, 1040px) !important;
        margin:0 0 18px !important;
      }
      .desktop-top-filters{
        display:grid !important;
        grid-template-columns:185px 150px 150px minmax(390px,1fr) !important;
        width:100% !important;
        height:48px !important;
        margin:0 !important;
        overflow:visible !important;
        border-radius:7px !important;
        background:#fff !important;
        box-shadow:none !important;
      }
      .desktop-top-filters .top-filter,
      .desktop-top-filters .top-search{
        height:48px !important;
        min-height:48px !important;
        padding:0 22px !important;
        border:0 !important;
        border-radius:0 !important;
        background:#fff !important;
        color:#060695 !important;
        font-size:16px !important;
        line-height:48px !important;
        font-weight:500 !important;
        letter-spacing:.015em !important;
        text-transform:none !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:14px !important;
        cursor:pointer !important;
        transition:background .2s ease, color .2s ease !important;
      }
      .desktop-top-filters .top-filter:not(:last-child),
      .desktop-top-filters .top-search{
        border-left:1px solid rgba(6,6,149,.10) !important;
      }
      .desktop-top-filters .top-filter:first-child{
        border-radius:7px 0 0 7px !important;
        border-left:0 !important;
      }
      .desktop-top-filters .top-search{border-radius:0 7px 7px 0 !important;}
      .desktop-top-filters .top-filter:hover,
      .desktop-top-filters .top-filter.is-open,
      .desktop-top-filters .top-search:hover,
      .desktop-top-filters .top-search.is-open,
      .desktop-top-filters .top-search:focus-within{
        background:linear-gradient(90deg,#d8d5ff 0%,#efefff 100%) !important;
      }
      .desktop-top-filters .top-filter span,
      .desktop-top-filters .top-search span{
        display:block !important;
        margin:0 !important;
        color:#060695 !important;
        font-size:20px !important;
        line-height:1 !important;
        transform:translateY(-1px) !important;
      }
      .desktop-top-filters .top-filter.is-open span,
      .desktop-top-filters .top-search.is-open span{transform:rotate(180deg) translateY(1px) !important;}
      .desktop-top-filters .top-search input{
        height:48px !important;
        padding:0 !important;
        border:0 !important;
        outline:0 !important;
        background:transparent !important;
        color:#060695 !important;
        font:inherit !important;
        width:100% !important;
      }
      .desktop-top-filters .top-search input::placeholder{color:#060695 !important;opacity:.9 !important;}
      .desktop-control-row{width:min(100%,1040px) !important;margin:0 0 72px !important;}
      .desktop-control-row .filter-open{
        background:transparent !important;color:#fff !important;border:0 !important;height:34px !important;
        padding:0 !important;font-size:17px !important;letter-spacing:.055em !important;text-transform:none !important;justify-content:flex-start !important;
      }
      .desktop-control-row .filter-open svg{width:25px !important;height:25px !important;margin-left:10px !important;border:1px solid rgba(255,255,255,.5) !important;}

      .top-dropdown{
        position:absolute !important;
        top:52px !important;
        z-index:80 !important;
        display:none !important;
        background:#fff !important;
        color:#060695 !important;
        border-radius:0 0 7px 7px !important;
        box-shadow:0 22px 48px rgba(0,0,80,.18) !important;
        padding:16px 18px 20px !important;
        font-size:14px !important;
      }
      .top-dropdown.is-open{display:block !important;}
      .top-dropdown button{font-family:Montserrat,Arial,sans-serif;}
      .top-dropdown-type{left:0 !important;width:340px !important;}
      .top-dropdown-rooms{left:185px !important;width:330px !important;min-height:170px !important;}
      .top-dropdown-price{left:335px !important;width:360px !important;}
      .top-dropdown-location{left:230px !important;right:0 !important;width:760px !important;min-height:430px !important;display:none;grid-template-columns:repeat(4,1fr);gap:22px 18px;padding:22px 24px 76px !important;}
      .top-dropdown-location.is-open{display:grid !important;}
      .top-tabs,.price-tabs,.room-select-row{display:grid;border:1px solid #060695;border-radius:5px;overflow:hidden;margin-bottom:16px;}
      .top-tabs{grid-template-columns:1fr 1fr;}
      .price-tabs{grid-template-columns:1fr 1fr;}
      .room-select-row{grid-template-columns:repeat(5,1fr);}
      .top-tabs button,.price-tabs button,.room-select-row button{
        height:34px;border:0;border-right:1px solid rgba(6,6,149,.25);background:#fff;color:#060695;font-size:14px;cursor:pointer;
      }
      .top-tabs button:last-child,.price-tabs button:last-child,.room-select-row button:last-child{border-right:0;}
      .top-tabs button.is-active,.price-tabs button.is-active,.room-select-row button.is-active{background:#d9d7ff;}
      .top-list-group p,.loc-col h3{margin:14px 0 7px;color:#9694c9;font-size:15px;font-weight:500;}
      .top-list-group button,.loc-col button,.top-dropdown-price > button:not(.top-apply){
        display:block;width:100%;height:34px;margin:0 0 8px;padding:0 14px;border:1px solid #060695;border-radius:5px;background:#fff;color:#060695;text-align:left;font-size:14px;cursor:pointer;
      }
      .top-list-group button:hover,.loc-col button:hover,.top-dropdown-price > button:hover{background:#efefff;}
      .top-list-group button.is-active,.loc-col button.is-active,.top-dropdown-price > button.is-active{background:#d9d7ff;}
      .price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;}
      .price-inputs input{height:34px;border:1px solid #060695;border-radius:5px;padding:0 12px;color:#060695;font-size:14px;outline:0;}
      .price-slider-line{position:relative;height:18px;margin:6px 0 18px;}
      .price-slider-line:before{content:'';position:absolute;left:0;right:0;top:8px;height:3px;background:#c8c6ef;border-radius:10px;}
      .price-slider-line:after{content:'';position:absolute;left:8%;right:8%;top:8px;height:3px;background:#060695;border-radius:10px;}
      .price-slider-line i{position:absolute;top:4px;width:16px;height:11px;border-radius:5px;background:#060695;z-index:2;}
      .price-slider-line i:first-child{left:7%;}.price-slider-line i:last-child{right:7%;}
      .top-apply{
        width:100%;height:38px;margin-top:10px;border:0;border-radius:5px;background:linear-gradient(90deg,#80aede 0%,#0606b7 100%);color:#fff;font-size:14px;cursor:pointer;
      }
      .top-location-apply{position:absolute;left:24px;right:24px;bottom:18px;width:auto;}
    }

    @media (max-width:1100px){
      .desktop-top-filters-wrap{display:none !important;}
    }

    @media (min-width:1101px){
      .desktop-top-filters .top-filter,
      .desktop-top-filters .top-search{
        position:relative !important;
        line-height:1 !important;
      }
      .desktop-top-filters .top-filter span,
      .desktop-top-filters .top-search span{
        flex:0 0 18px !important;
        width:18px !important;
        height:18px !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        margin-left:auto !important;
        font-size:0 !important;
        line-height:0 !important;
        transform:none !important;
        position:relative !important;
        top:0 !important;
      }
      .desktop-top-filters .top-filter span::before,
      .desktop-top-filters .top-search span::before{
        content:"" !important;
        width:7px !important;
        height:7px !important;
        border-right:1.5px solid #060695 !important;
        border-bottom:1.5px solid #060695 !important;
        transform:rotate(45deg) translate(-1px,-1px) !important;
        transform-origin:center !important;
        display:block !important;
      }
      .desktop-top-filters .top-filter.is-open span,
      .desktop-top-filters .top-search.is-open span{
        transform:none !important;
      }
      .desktop-top-filters .top-filter.is-open span::before,
      .desktop-top-filters .top-search.is-open span::before{
        transform:rotate(225deg) translate(-1px,-1px) !important;
      }
      .desktop-top-filters .top-search input{
        line-height:1 !important;
      }
    }

    @media (min-width:1101px){
      .desktop-top-filters .top-filter,
      .desktop-top-filters .top-search{
        position:relative !important;
        padding-right:42px !important;
        justify-content:flex-start !important;
      }
      .desktop-top-filters .top-filter span,
      .desktop-top-filters .top-search span{
        position:absolute !important;
        right:22px !important;
        top:50% !important;
        width:12px !important;
        height:12px !important;
        margin:0 !important;
        padding:0 !important;
        transform:translateY(-50%) !important;
        display:block !important;
        flex:none !important;
        pointer-events:none !important;
      }
      .desktop-top-filters .top-filter span::before,
      .desktop-top-filters .top-search span::before{
        content:"" !important;
        position:absolute !important;
        left:50% !important;
        top:50% !important;
        width:7px !important;
        height:7px !important;
        border-right:1.4px solid #060695 !important;
        border-bottom:1.4px solid #060695 !important;
        transform:translate(-50%,-63%) rotate(45deg) !important;
        transform-origin:center !important;
      }
      .desktop-top-filters .top-filter.is-open span,
      .desktop-top-filters .top-search.is-open span{
        transform:translateY(-50%) !important;
      }
      .desktop-top-filters .top-filter.is-open span::before,
      .desktop-top-filters .top-search.is-open span::before{
        transform:translate(-50%,-32%) rotate(225deg) !important;
      }
      .desktop-top-filters .top-search span{
        right:28px !important;
      }
      .desktop-top-filters .top-search input{
        padding-right:26px !important;
      }
    }

    @media (min-width:1101px){
      .desktop-top-filters .top-filter,
      .desktop-top-filters .top-search{
        position:relative !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        padding-right:46px !important;
        overflow:visible !important;
      }
      .desktop-top-filters .top-filter span,
      .desktop-top-filters .top-search span{
        display:none !important;
      }
      .desktop-top-filters .top-filter::after,
      .desktop-top-filters .top-search::after{
        content:"" !important;
        position:absolute !important;
        right:24px !important;
        top:50% !important;
        width:7px !important;
        height:7px !important;
        border-right:1.35px solid #060695 !important;
        border-bottom:1.35px solid #060695 !important;
        transform:translateY(-65%) rotate(45deg) !important;
        transform-origin:50% 50% !important;
        pointer-events:none !important;
      }
      .desktop-top-filters .top-filter.is-open::after,
      .desktop-top-filters .top-search.is-open::after{
        transform:translateY(-35%) rotate(225deg) !important;
      }
      .desktop-top-filters .top-search::after{
        right:27px !important;
      }
      .desktop-top-filters .top-search input{
        padding-right:30px !important;
      }
    }

    @media (min-width:1101px){
      .desktop-top-filters{
        overflow:visible !important;
        align-items:stretch !important;
      }
      .desktop-top-filters .top-filter,
      .desktop-top-filters .top-search{
        position:relative !important;
        height:48px !important;
        min-height:48px !important;
        box-sizing:border-box !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        padding:0 46px 0 24px !important;
        line-height:1 !important;
        outline:none !important;
        box-shadow:none !important;
        overflow:visible !important;
      }
      .desktop-top-filters .top-filter:focus,
      .desktop-top-filters .top-filter:focus-visible,
      .desktop-top-filters .top-search:focus,
      .desktop-top-filters .top-search:focus-within,
      .desktop-top-filters .top-search:focus-visible{
        outline:none !important;
        box-shadow:none !important;
      }
      .desktop-top-filters .top-filter span,
      .desktop-top-filters .top-search span{
        display:none !important;
        width:0 !important;
        height:0 !important;
        overflow:hidden !important;
        font-size:0 !important;
        line-height:0 !important;
      }
      .desktop-top-filters .top-filter::before,
      .desktop-top-filters .top-search::before{
        content:none !important;
        display:none !important;
      }
      .desktop-top-filters .top-filter::after,
      .desktop-top-filters .top-search::after{
        content:"" !important;
        position:absolute !important;
        right:24px !important;
        top:50% !important;
        width:9px !important;
        height:9px !important;
        border:0 !important;
        border-right:1.6px solid #060695 !important;
        border-bottom:1.6px solid #060695 !important;
        transform:translateY(-72%) rotate(45deg) !important;
        transform-origin:50% 50% !important;
        pointer-events:none !important;
        background:transparent !important;
      }
      .desktop-top-filters .top-filter.is-open::after,
      .desktop-top-filters .top-search.is-open::after{
        transform:translateY(-28%) rotate(225deg) !important;
      }
      .desktop-top-filters .top-search{
        padding-left:26px !important;
        padding-right:54px !important;
      }
      .desktop-top-filters .top-search::after{
        right:28px !important;
      }
      .desktop-top-filters .top-search input{
        height:48px !important;
        line-height:48px !important;
        padding:0 !important;
        margin:0 !important;
        outline:none !important;
      }

      .top-dropdown{
        top:48px !important;
        border-radius:0 0 7px 7px !important;
        box-shadow:0 28px 54px rgba(0,0,80,.22) !important;
      }
      .top-dropdown-type{left:0 !important;width:340px !important;}
      .top-dropdown-rooms{left:185px !important;width:330px !important;}
      .top-dropdown-price{left:335px !important;width:392px !important;padding:20px 22px 22px !important;}
      .top-dropdown-location{left:335px !important;right:0 !important;width:auto !important;min-width:690px !important;}
      .top-dropdown-price .top-apply,
      .top-dropdown-location .top-apply{
        height:44px !important;
        font-size:15px !important;
      }
      .price-tabs button,
      .room-select-row button,
      .top-tabs button{height:38px !important;}
      .price-inputs input{height:38px !important;}
      .top-dropdown-price > button:not(.top-apply){height:38px !important;margin-bottom:8px !important;}
    }

    @media (min-width:1101px){
      .top-dropdown-price{
        width:470px !important;
        max-width:calc(100vw - 380px) !important;
        padding:20px 26px 24px !important;
        overflow:visible !important;
      }
      .top-dropdown-price .price-inputs{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        gap:10px !important;
        width:100% !important;
      }
      .top-dropdown-price .price-inputs input{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
        height:40px !important;
        padding:0 14px !important;
        font-size:15px !important;
      }
      .price-slider-line.top-price-range{
        position:relative !important;
        height:30px !important;
        margin:12px 0 18px !important;
        background:transparent !important;
      }
      .price-slider-line.top-price-range::before,
      .price-slider-line.top-price-range::after{
        display:none !important;
        content:none !important;
      }
      .top-price-track{
        position:absolute !important;
        left:0 !important;
        right:0 !important;
        top:14px !important;
        height:3px !important;
        border-radius:99px !important;
        background:#c8c6ef !important;
        overflow:hidden !important;
      }
      .top-price-fill{
        position:absolute !important;
        top:0 !important;
        bottom:0 !important;
        left:0;
        right:0;
        background:#060695 !important;
        border-radius:99px !important;
      }
      .top-price-range input[type=range]{
        position:absolute !important;
        left:0 !important;
        right:0 !important;
        top:0 !important;
        width:100% !important;
        height:30px !important;
        margin:0 !important;
        padding:0 !important;
        background:transparent !important;
        pointer-events:none !important;
        -webkit-appearance:none !important;
        appearance:none !important;
        outline:none !important;
      }
      .top-price-range input[type=range]::-webkit-slider-runnable-track{
        height:3px !important;
        background:transparent !important;
      }
      .top-price-range input[type=range]::-webkit-slider-thumb{
        width:18px !important;
        height:12px !important;
        border:0 !important;
        border-radius:6px !important;
        background:#060695 !important;
        cursor:pointer !important;
        pointer-events:auto !important;
        -webkit-appearance:none !important;
        appearance:none !important;
        margin-top:-5px !important;
      }
      .top-price-range input[type=range]::-moz-range-track{
        height:3px !important;
        background:transparent !important;
      }
      .top-price-range input[type=range]::-moz-range-thumb{
        width:18px !important;
        height:12px !important;
        border:0 !important;
        border-radius:6px !important;
        background:#060695 !important;
        cursor:pointer !important;
        pointer-events:auto !important;
      }
      .top-dropdown-price > button:not(.top-apply){
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
      }
    }

.project-card{
  background:transparent !important;
  box-shadow:0 18px 42px rgba(0,0,80,.18) !important;
}
.project-body{
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 82% 8%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.86) 16%, rgba(233,230,255,.68) 44%, rgba(201,197,255,.32) 78%),
    linear-gradient(135deg, #fcfbff 0%, #f0eeff 35%, #ddd9ff 68%, #c9c4ff 100%) !important;
}
.project-body::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.58) 0%, rgba(255,255,255,0) 44%),
    radial-gradient(circle at 0% 100%, rgba(63,63,171,.14) 0%, rgba(63,63,171,0) 48%);
  z-index:0;
}
.project-body > *{
  position:relative;
  z-index:1;
}
.cards-grid.is-list-view .project-body{
  background:
    radial-gradient(circle at 92% 6%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.8) 20%, rgba(229,226,255,.55) 52%, rgba(199,194,255,.28) 88%),
    linear-gradient(115deg, #fcfbff 0%, #f1efff 40%, #ddd9ff 72%, #c7c2ff 100%) !important;
}
@media (max-width:760px){
  .project-body{
    background:
      radial-gradient(circle at 82% 4%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.82) 22%, rgba(226,222,255,.66) 56%, rgba(197,192,255,.34) 100%),
      linear-gradient(145deg,#fcfbff 0%,#eeebff 50%,#d3ceff 100%) !important;
  }
}

.project-card{
  overflow:hidden !important;
  border-radius:8px !important;
  background:transparent !important;
}
.project-link{
  overflow:hidden !important;
  border-radius:8px !important;
}
.project-img{
  overflow:hidden !important;
  border-radius:8px 8px 0 0 !important;
}
.project-img img{
  border-radius:8px 8px 0 0 !important;
}
.project-body{
  border-radius:0 0 8px 8px !important;
}
.cards-grid.is-list-view .project-card,
.cards-grid.is-list-view .project-link{
  border-radius:8px !important;
}
.cards-grid.is-list-view .project-img{
  border-radius:8px 0 0 8px !important;
}
.cards-grid.is-list-view .project-body{
  border-radius:0 8px 8px 0 !important;
}

@media (max-width: 1100px) {
    .cards-grid {
        grid-template-columns: 1fr;
    }

    .project-meta .meta-label{
      font-size: 12px!important;
    }

    .project-name{font-size:22px!important;line-height:1.15!important;}
    .district{font-size:14px!important;margin-bottom:10px!important;}

    .project-description, .project-stations{
      display:block!important;
      max-width:100%!important;
      font-size:13px!important;
      line-height:1.45!important;
      color:#060695;
      margin:0 0 16px!important;
      overflow-wrap:break-word;
      word-break:break-word;
    }
    .project-description{
      display:-webkit-box!important;
      -webkit-line-clamp:4;
      -webkit-box-orient:vertical;
      overflow:hidden;
    }
    .project-stations{
      display:flex!important;
      flex-wrap:wrap;
      gap:10px 18px;
    }
    .project-stations span{display:flex;align-items:center;gap:6px;}
    .project-stations b{width:16px;height:16px;flex:0 0 16px;border-radius:50%;background:#060695;display:inline-block;position:relative;}
    .project-stations b:after{content:'М';position:absolute;inset:0;color:#fff;font-size:9px;line-height:16px;text-align:center;font-weight:700;}

    .meta-value{font-size:18px!important;letter-spacing:.04em!important;}
    .project-meta{gap:14px 18px!important;}
}

@media (max-width:760px){
  .project-card,
  .project-link{border-radius:7px !important;}
  .project-img,
  .project-img img{border-radius:7px 7px 0 0 !important;}
  .project-body{border-radius:0 0 7px 7px !important;}

  .project-top{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:6px !important;
  }
  .project-name{
    width:100%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .metro{
    white-space:normal;
  }
  .metro-text{
    white-space:normal;
  }
}

@media (min-width:1101px){
  .desktop-top-filters{
    grid-template-columns:210px 150px 150px minmax(390px,1fr) !important;
    width:min(100%,1060px) !important;
    overflow:visible !important;
  }
  .desktop-top-filters .top-filter,
  .desktop-top-filters .top-search{
    position:relative !important;
    height:48px !important;
    padding:0 50px 0 28px !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:0 !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-align:left !important;
    line-height:48px !important;
  }
  .desktop-top-filters .top-filter:first-child{
    min-width:210px !important;
    width:210px !important;
  }
  .desktop-top-filters .top-filter span,
  .desktop-top-filters .top-search span,
  .desktop-top-filters .top-filter span::before,
  .desktop-top-filters .top-filter span::after,
  .desktop-top-filters .top-search span::before,
  .desktop-top-filters .top-search span::after{
    display:none !important;
    content:none !important;
    width:0 !important;
    height:0 !important;
    opacity:0 !important;
    visibility:hidden !important;
  }
  .desktop-top-filters .top-filter::before,
  .desktop-top-filters .top-search::before{
    display:none !important;
    content:none !important;
  }
  .desktop-top-filters .top-filter::after,
  .desktop-top-filters .top-search::after{
    content:"" !important;
    position:absolute !important;
    top:50% !important;
    right:26px !important;
    width:7px !important;
    height:7px !important;
    margin:0 !important;
    border-right:1.4px solid #060695 !important;
    border-bottom:1.4px solid #060695 !important;
    transform:translateY(-62%) rotate(45deg) !important;
    transform-origin:center !important;
    opacity:1 !important;
    display:block !important;
    pointer-events:none !important;
    background:none !important;
  }
  .desktop-top-filters .top-filter.is-open::after,
  .desktop-top-filters .top-search.is-open::after{
    transform:translateY(-35%) rotate(225deg) !important;
  }
  .desktop-top-filters .top-search{
    padding-left:28px !important;
    padding-right:58px !important;
  }
  .desktop-top-filters .top-search input{
    width:100% !important;
    padding:0 !important;
    margin:0 !important;
    line-height:48px !important;
  }
  .top-dropdown-type{left:0 !important; min-width:310px !important;}
  .top-dropdown-rooms{left:210px !important; min-width:280px !important;}
  .top-dropdown-price{left:360px !important; min-width:440px !important;}
  .top-dropdown-search{left:510px !important; width:min(700px, calc(100vw - 560px)) !important;}
}

@media (max-width:760px){
  .footer-block .reviews.reviews--real{
    left:16px !important;
    top:458px !important;
    width:232px !important;
    max-width:calc(100vw - 32px) !important;
    display:block !important;
    overflow:visible !important;
  }

  .footer-block .reviews.reviews--real h3{
    width:100% !important;
    margin:0 0 8px !important;
    font-size:13px !important;
    line-height:1.15 !important;
    letter-spacing:.02em !important;
    white-space:normal !important;
  }

  .footer-block .real-reviews-widget{
    width:220px !important;
    max-width:100% !important;
    gap:8px !important;
  }

  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:220px !important;
    max-width:100% !important;
    border-radius:5px !important;
    box-shadow:0 1px 0 rgba(0,0,0,.05) !important;
    transform:none !important;
  }

  .footer-block .review-pretty-card{
    min-height:64px !important;
    height:64px !important;
    padding:8px 10px !important;
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    grid-template-areas:
      "mark name source"
      "rating stars stars"
      "rating meta meta" !important;
    column-gap:7px !important;
    row-gap:1px !important;
    align-items:center !important;
  }

  .footer-block .review-pretty-card__top,
  .footer-block .review-pretty-card__brand,
  .footer-block .review-pretty-card__body{
    display:contents !important;
  }

  .footer-block .review-pretty-card__yandex-mark{
    grid-area:mark !important;
    width:13px !important;
    height:13px !important;
    flex:0 0 13px !important;
  }

  .footer-block .review-pretty-card__yandex-mark:before{
    left:5px !important;
    top:3px !important;
    width:5px !important;
    height:5px !important;
  }

  .footer-block .review-pretty-card__yandex-mark i{
    left:5px !important;
    top:8px !important;
    width:4px !important;
    height:4px !important;
  }

  .footer-block .review-pretty-card__name{
    grid-area:name !important;
    max-width:116px !important;
    font-size:9px !important;
    line-height:1 !important;
    font-weight:700 !important;
  }

  .footer-block .review-pretty-card__source{
    grid-area:source !important;
    justify-self:end !important;
    font-size:7px !important;
    line-height:1 !important;
    white-space:nowrap !important;
    color:#8e8e8e !important;
  }

  .footer-block .review-pretty-card__rating{
    grid-area:rating !important;
    font-size:28px !important;
    line-height:.9 !important;
    letter-spacing:-.04em !important;
  }

  .footer-block .review-pretty-card__stars{
    grid-area:stars !important;
    align-self:end !important;
    font-size:10px !important;
    line-height:1 !important;
    letter-spacing:0 !important;
  }

  .footer-block .review-pretty-card__meta{
    grid-area:meta !important;
    margin:0 !important;
    padding:0 !important;
    font-size:7px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  .footer-block .review-pretty-card__action{
    display:none !important;
  }

  .footer-block .real-reviews-widget__2gis{
    min-height:50px !important;
    height:50px !important;
    padding:7px 10px !important;
    grid-template-columns:28px 1fr auto !important;
    grid-template-areas:
      "logo score stars"
      "logo text text" !important;
    column-gap:8px !important;
    row-gap:0 !important;
    overflow:hidden !important;
  }

  .footer-block .real-reviews-widget__2gis-top{
    width:28px !important;
    height:28px !important;
    font-size:6px !important;
  }

  .footer-block .real-reviews-widget__2gis-score{
    font-size:20px !important;
    line-height:1 !important;
  }

  .footer-block .real-reviews-widget__2gis-stars{
    justify-self:end !important;
    font-size:8px !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  .footer-block .real-reviews-widget__2gis-text{
    margin:0 !important;
    font-size:7px !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}

@media (max-width:360px){
  .footer-block .reviews.reviews--real{
    top:440px !important;
    width:214px !important;
  }
  .footer-block .real-reviews-widget,
  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:204px !important;
  }
  .footer-block .review-pretty-card__name{
    max-width:100px !important;
  }
}

.footer-address{
  width:calc(310px * var(--scale-x));
}
.footer-phone-main{
  left:calc(360px * var(--scale-x));
}
.footer-phone-right{
  left:calc(585px * var(--scale-x));
}
@media (max-width:760px){
  .footer-address{
    top:532px !important;
    font-size:12px !important;
    line-height:1.16 !important;
    width:calc(100% - 32px) !important;
  }
  .footer-phone{
    top:615px !important;
    font-size:13px !important;
  }
  .footer-phone-main{
    left:18px !important;
  }
  .footer-phone-right{
    right:18px !important;
    left:auto !important;
  }
  .free-call{
    top:600px !important;
    right:18px !important;
    width:150px !important;
  }
}
@media (max-width:360px){
  .footer-address{
    top:512px !important;
    font-size:11px !important;
  }
  .footer-phone{
    top:590px !important;
    font-size:12px !important;
  }
  .free-call{
    top:576px !important;
  }
}

.footer-address{
  width:calc(360px * var(--scale-x)) !important;
}
@media (max-width:760px){
  .footer-block,
  .footer-block .footer-canvas{
    height:735px !important;
    min-height:735px !important;
  }

  .footer-block .reviews.reviews--real{
    top:390px !important;
    left:14px !important;
    width:230px !important;
    max-width:calc(100vw - 28px) !important;
    z-index:3 !important;
  }

  .footer-block .reviews.reviews--real h3{
    font-size:12px !important;
    line-height:1.1 !important;
    margin-bottom:7px !important;
    white-space:nowrap !important;
  }

  .footer-block .real-reviews-widget{
    width:218px !important;
    gap:7px !important;
  }

  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:218px !important;
    max-width:218px !important;
  }

  .footer-block .review-pretty-card{
    height:58px !important;
    min-height:58px !important;
    padding:7px 9px !important;
  }

  .footer-block .review-pretty-card__rating{
    font-size:25px !important;
  }

  .footer-block .review-pretty-card__name{
    max-width:112px !important;
    font-size:8px !important;
  }

  .footer-block .review-pretty-card__source{
    font-size:6px !important;
  }

  .footer-block .review-pretty-card__stars{
    font-size:8px !important;
  }

  .footer-block .review-pretty-card__meta{
    font-size:6px !important;
  }

  .footer-block .real-reviews-widget__2gis{
    height:44px !important;
    min-height:44px !important;
    padding:6px 9px !important;
    grid-template-columns:25px 1fr auto !important;
  }

  .footer-block .real-reviews-widget__2gis-top{
    width:25px !important;
    height:25px !important;
    font-size:5px !important;
  }

  .footer-block .real-reviews-widget__2gis-score{
    font-size:18px !important;
  }

  .footer-block .real-reviews-widget__2gis-stars{
    font-size:7px !important;
  }

  .footer-block .real-reviews-widget__2gis-text{
    font-size:6px !important;
  }

  .footer-address{
    left:14px !important;
    top:545px !important;
    width:calc(100% - 28px) !important;
    font-size:12px !important;
    line-height:1.28 !important;
    color:#fff !important;
    z-index:3 !important;
  }

  .footer-phone{
    top:665px !important;
    font-size:13px !important;
    z-index:3 !important;
  }

  .free-call{
    top:647px !important;
    right:14px !important;
    width:155px !important;
    font-size:8px !important;
    z-index:3 !important;
  }

  .footer-phone-main{
    left:14px !important;
  }

  .footer-phone-right{
    right:14px !important;
    left:auto !important;
  }
}

@media (max-width:360px){
  .footer-block,
  .footer-block .footer-canvas{
    height:710px !important;
    min-height:710px !important;
  }

  .footer-block .reviews.reviews--real{
    top:376px !important;
    width:210px !important;
  }

  .footer-block .real-reviews-widget,
  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:204px !important;
    max-width:204px !important;
  }

  .footer-address{
    top:526px !important;
    font-size:11px !important;
  }

  .footer-phone{
    top:642px !important;
    font-size:12px !important;
  }

  .free-call{
    top:626px !important;
    width:140px !important;
    font-size:7px !important;
  }
}

.footer-block .footer-company a,
.footer-block .footer-company a:hover,
.footer-block .footer-company a:focus-visible{
  text-decoration:none !important;
  border-bottom:0 !important;
  background-image:none !important;
}

.footer-block .footer-company a::after{
  content:none !important;
  display:none !important;
}

.footer-block .footer-company a::before{
  bottom:-3px !important;
  height:1px !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 0 10px rgba(255,255,255,.36) !important;
}

.footer-block .footer-company:hover h3,
.footer-block .footer-company:focus-within h3{
  color:#fff !important;
  text-shadow:0 0 14px rgba(255,255,255,.42) !important;
}

.footer-block .footer-company:hover a,
.footer-block .footer-company:focus-within a{
  color:rgba(255,255,255,.96) !important;
  text-shadow:0 0 10px rgba(255,255,255,.28) !important;
}

@media (max-width:760px){
  .footer-block,
  .footer-block .footer-canvas{
    height:760px !important;
    min-height:760px !important;
    background:linear-gradient(180deg,#4645c0 0%,#2f2db8 48%,#09089a 100%) !important;
    overflow:hidden !important;
  }

  .footer-claim{
    top:22px !important;
  }

  .footer-services{
    top:112px !important;
    left:20px !important;
    width:150px !important;
  }

  .footer-company{
    top:112px !important;
    left:calc(50% + 36px) !important;
    width:126px !important;
  }

  .footer-nav h3,
  .socials h3{
    font-size:13px !important;
    line-height:1.1 !important;
    margin-bottom:10px !important;
  }

  .footer-nav a{
    font-size:12px !important;
    line-height:1.12 !important;
    margin-bottom:7px !important;
  }

  .footer-company a{
    font-size:13px !important;
    line-height:1.15 !important;
    margin-bottom:8px !important;
    text-decoration:none !important;
    border-bottom:0 !important;
  }

  .footer-company a::after{
    content:none !important;
    display:none !important;
  }

  .socials{
    top:292px !important;
    left:20px !important;
    width:calc(100% - 40px) !important;
  }

  .social-grid{
    gap:10px 12px !important;
    max-width:300px !important;
    margin-top:12px !important;
  }

  .social-grid a{
    width:34px !important;
    height:34px !important;
    flex:0 0 34px !important;
  }

  .footer-block .reviews.reviews--real{
    top:390px !important;
    left:16px !important;
    width:238px !important;
    max-width:calc(100vw - 32px) !important;
  }

  .footer-block .reviews.reviews--real h3{
    font-size:13px !important;
    line-height:1.15 !important;
    margin:0 0 8px !important;
    white-space:normal !important;
  }

  .footer-block .real-reviews-widget,
  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:228px !important;
    max-width:100% !important;
  }

  .footer-block .review-pretty-card{
    height:58px !important;
    min-height:58px !important;
    padding:7px 9px !important;
  }

  .footer-block .review-pretty-card__rating{
    font-size:25px !important;
  }

  .footer-block .review-pretty-card__name{
    max-width:112px !important;
    font-size:8px !important;
  }

  .footer-block .review-pretty-card__source,
  .footer-block .review-pretty-card__meta{
    font-size:6px !important;
  }

  .footer-block .review-pretty-card__stars{
    font-size:9px !important;
  }

  .footer-block .real-reviews-widget__2gis{
    height:45px !important;
    min-height:45px !important;
    padding:6px 9px !important;
  }

  .footer-block .real-reviews-widget__2gis-top{
    width:25px !important;
    height:25px !important;
    font-size:5px !important;
  }

  .footer-block .real-reviews-widget__2gis-score{
    font-size:18px !important;
  }

  .footer-block .real-reviews-widget__2gis-stars{
    font-size:7px !important;
  }

  .footer-block .real-reviews-widget__2gis-text{
    font-size:6px !important;
  }

  .footer-address{
    top:540px !important;
    left:16px !important;
    width:calc(100% - 32px) !important;
    font-size:12px !important;
    line-height:1.24 !important;
    color:#fff !important;
  }

  .free-call{
    top:636px !important;
    right:18px !important;
    left:auto !important;
    width:180px !important;
    font-size:10px !important;
    line-height:1.1 !important;
    text-align:center !important;
  }

  .footer-phone{
    top:665px !important;
    font-size:16px !important;
    line-height:1 !important;
  }

  .footer-phone-main{
    left:16px !important;
  }

  .footer-phone-right{
    right:18px !important;
    left:auto !important;
  }

  .footer-pattern{
    bottom:12px !important;
    width:690px !important;
    height:46px !important;
    opacity:.28 !important;
  }
}

@media (max-width:430px){
  .footer-block,
  .footer-block .footer-canvas{
    height:750px !important;
    min-height:750px !important;
  }

  .footer-services{
    top:108px !important;
    left:18px !important;
    width:145px !important;
  }

  .footer-company{
    top:108px !important;
    left:calc(50% + 34px) !important;
    width:120px !important;
  }

  .socials{
    top:286px !important;
    left:18px !important;
  }

  .footer-block .reviews.reviews--real{
    top:382px !important;
    left:18px !important;
    width:226px !important;
  }

  .footer-block .real-reviews-widget,
  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:218px !important;
  }

  .footer-address{
    top:528px !important;
    left:18px !important;
    font-size:12px !important;
    line-height:1.25 !important;
  }

  .free-call{
    top:624px !important;
    right:16px !important;
    width:170px !important;
    font-size:9px !important;
  }

  .footer-phone{
    top:652px !important;
    font-size:15px !important;
  }

  .footer-phone-main{
    left:18px !important;
  }

  .footer-phone-right{
    right:16px !important;
  }
}

@media (max-width:360px){
  .footer-block,
  .footer-block .footer-canvas{
    height:730px !important;
    min-height:730px !important;
  }

  .footer-services{
    top:104px !important;
    width:138px !important;
  }

  .footer-company{
    top:104px !important;
    left:calc(50% + 25px) !important;
    width:112px !important;
  }

  .footer-nav a,
  .footer-company a{
    font-size:11px !important;
  }

  .socials{
    top:278px !important;
  }

  .social-grid a{
    width:31px !important;
    height:31px !important;
    flex:0 0 31px !important;
  }

  .footer-block .reviews.reviews--real{
    top:366px !important;
    width:208px !important;
  }

  .footer-block .real-reviews-widget,
  .footer-block .review-pretty-card,
  .footer-block .real-reviews-widget__2gis{
    width:202px !important;
  }

  .footer-address{
    top:506px !important;
    font-size:11px !important;
  }

  .free-call{
    top:606px !important;
    right:14px !important;
    width:152px !important;
    font-size:8px !important;
  }

  .footer-phone{
    top:632px !important;
    font-size:13px !important;
  }
}

@media (max-width:760px){
  .footer-block,
  .footer-block .footer-canvas{
    height:790px !important;
    min-height:790px !important;
  }

  .footer-block .reviews.reviews--real{
    top:428px !important;
    left:18px !important;
    width:238px !important;
    max-width:calc(100vw - 36px) !important;
  }

  .footer-block .reviews.reviews--real h3{
    margin:0 0 8px !important;
    font-size:13px !important;
    line-height:1.12 !important;
  }

  .footer-block .real-reviews-widget{
    gap:8px !important;
  }

  .footer-address{
    top:580px !important;
  }

  .free-call{
    top:682px !important;
  }

  .footer-phone{
    top:710px !important;
  }

  .footer-pattern{
    bottom:10px !important;
  }
}

@media (max-width:430px){
  .footer-block,
  .footer-block .footer-canvas{
    height:775px !important;
    min-height:775px !important;
  }

  .socials{
    top:286px !important;
  }

  .footer-block .reviews.reviews--real{
    top:408px !important;
    left:18px !important;
    width:226px !important;
    max-width:calc(100vw - 36px) !important;
  }

  .footer-address{
    top:558px !important;
  }

  .free-call{
    top:656px !important;
  }

  .footer-phone{
    top:684px !important;
  }
}

@media (max-width:360px){
  .footer-block,
  .footer-block .footer-canvas{
    height:755px !important;
    min-height:755px !important;
  }

  .socials{
    top:276px !important;
  }

  .footer-block .reviews.reviews--real{
    top:396px !important;
    left:16px !important;
    width:208px !important;
  }

  .footer-address{
    top:536px !important;
  }

  .free-call{
    top:636px !important;
  }

  .footer-phone{
    top:662px !important;
  }
}

.footer-block .footer-nav a{text-decoration:none !important;}
.footer-block .footer-company a,
.footer-block .footer-company a:hover,
.footer-block .footer-company a:focus-visible{
  text-decoration:none !important;
  border-bottom:0 !important;
  background-image:none !important;
}
.footer-block .footer-company a::after{content:none !important;display:none !important;}

.footer-socials {
  position: absolute !important;
  left: calc(606px * var(--scale-x)) !important;
  top: calc(288px * var(--scale-y)) !important;
  width: calc(125px * var(--scale-x)) !important;
}
.footer-socials h3 {
  margin-bottom: calc(14px * var(--scale-y));
  font-size: calc(17px * var(--scale-y));
  line-height: 1.15;
  font-weight: 400;
}
@media (max-width:759px) {
  .footer-socials {
    display: none !important;
  }
}

@media (min-width:761px) {
  .m-show {
    display: none !important;
  }
}

.footer-phone-main {
  left: calc(398px * var(--scale-x)) !important;
}
.footer-phone-right {
  left: calc(606px * var(--scale-x)) !important;
}
.free-call {
  left: calc(606px * var(--scale-x)) !important;
  width: calc(174px * var(--scale-x)) !important;
  text-align: left !important;
}

@media (min-width:1101px){
  .desktop-top-filters-wrap {
    width: 100% !important;
  }
  .desktop-top-filters{
    width: 100% !important;
    max-width: none !important;
  }
  .desktop-control-row
  {
    max-width: none !important;
    width: 100% !important;
  }
}
.project-img img {
  border-radius: 0px !important;
}
.desktop-top-filters .top-filter:last-child {
  border-radius: 8px !important;
}
.consult-modal {
  display: none
}

@media (min-width:1101px){
  #filterModal .modal-panel{
    width:min(92vw, 860px) !important;
    display:grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 6px 32px !important;
    align-items:start !important;
    max-height: calc(100vh - 140px) !important;
  }
  #filterModal .modal-head,
  #filterModal .filter-apply,
  #filterModal .modal-action,
  #filterModal .filter-reset{
    grid-column: 1 / -1 !important;
  }
  #filterModal .filter-group{
    margin-bottom: 14px !important;
  }
}

@media (min-width:1101px){
  .desktop-top-filters{
    grid-template-columns: max-content max-content max-content minmax(200px,1fr) !important;
  }
  .desktop-top-filters .top-filter{
    padding-left:20px !important;
    padding-right:38px !important;
  }
}

@media (min-width:1101px){
  .desktop-top-filters-wrap{ position:relative !important; }
  [data-dropdown-panel]{
    position:absolute !important;
    top:100% !important;
    margin-top:6px !important;
    right:auto !important;
  }

  [data-dropdown-panel="price"]{   left:0px   !important; }
  [data-dropdown-panel="area"]{    left:210px !important; }
  [data-dropdown-panel="lotarea"]{ left:360px !important; }
}
