.cms_wsi_main { display: flex; flex-direction: column; gap: 47px; width: 100%; }
.cms_wsi_lst { display: flex; gap: 30px; width: 100%; }
.cms_wsi_svg { width: 66.6666%; }
.cms_wsi_svg g > path.st22 { cursor: pointer; transition: var(--transition); }
.cms_wsi_svg g.active > path.st22,
.cms_wsi_svg g:hover > path.st22 { fill: var(--primary); }
.cms_wsi_svg g > path.st80 { cursor: pointer; transition: var(--transition); }
.cms_wsi_svg g.active > path.st80,
.cms_wsi_svg g:hover > path.st80 { fill: var(--white); }
.cms_wsi_apartments { display: flex; flex-direction: column; gap: 17px; width: 33.3333%; }
.cms_wsi_box { cursor: pointer; position: relative; flex: 1; width: 100%; padding: 30px 93px 30px 30px; }
.cms_wsi_box:before,
.cms_wsi_box:after { content: ""; position: absolute; z-index: -1; inset: 0; transition: var(--transition); }
.cms_wsi_box:before { background: linear-gradient(90deg, var(--tertiary) 0%, rgba(236,230,217,0.2) 100%); }
.cms_wsi_box:after { background: var(--primary); opacity: 0; visibility: hidden; }
.cms_wsi_box.active:before,
.cms_wsi_box:hover:before { opacity: 0; visibility: hidden; }
.cms_wsi_box.active:after,
.cms_wsi_box:hover:after { opacity: 1; visibility: visible; }
.cms_wsi_box h3 { padding-bottom: 0; margin: 0 0 -4px 0; }
.cms_wsi_box h3,
.cms_wsi_box p { transition: var(--transition); }
.cms_wsi_box.active h3,
.cms_wsi_box:hover h3,
.cms_wsi_box.active p,
.cms_wsi_box:hover p { color: var(--white); }
.cms_wsi_arrow { position: absolute; z-index: 1; top: 50%; right: 25px; transform: translateY(-50%); width: 21px; height: 40px; opacity: 0; visibility: hidden; transition: var(--transition); }
.cms_wsi_box.active .cms_wsi_arrow,
.cms_wsi_box:hover .cms_wsi_arrow { opacity: 1; visibility: visible; }
.cms_wsi_arrow > svg { display: flex; width: 21px; height: 40px; }
.cms_wsi_arrow > svg > path { stroke: var(--white); }
.cms_wsi_apartments .button-link-2 { display: block; margin: 23px 0 0 0; }
@media screen and (max-width: 959px) {
    .cms_wsi_main { gap: 40px; }
    .cms_wsi_lst { flex-direction: column; }
    .cms_wsi_svg { width: 100%; }
    .cms_wsi_apartments { gap: 15px; width: 100%; }
    .cms_wsi_arrow { opacity: 1; visibility: visible; }
    .cms_wsi_arrow > svg > path { stroke: var(--primary); transition: var(--transition); }
    .cms_wsi_box.active .cms_wsi_arrow > svg > path,
    .cms_wsi_box:hover .cms_wsi_arrow > svg > path { stroke: var(--white); }
    .cms_wsi_apartments .button-link-2 { display: none; }
}