* {
    font-family: "Lato", sans-serif;
}

.errors {
    color: red;
}

.border {
    border-color: #b2b2b2 !important;
}

.bg-cover {
    background-size: cover;
    background-position: center;
}

.light-bg {
    background-color: #f5f5f7;
}

.dark-bg {
    background-color: #212121;
}

img {
    max-width: 100%;
    object-fit: cover;
}

a {
    text-decoration: none;
}
a:hover {
    color: #dd2828;
}

.h1, h1 {
    font-weight: 700 !important;
    color: #212121;
}

.h2, h2 {
    font-family: "Raleway", sans-serif;
    color: #212121;
    font-size: 40px;
    font-weight: 300;
}
.h2:after, h2:after {
    content: "";
    display: block;
    width: 96px;
    padding-top: 12px;
    border-bottom: 2px solid #dd2828;
}
@media (max-width: 767px) {
    .h2, h2 {
        font-size: 32px;
    }
}
.h2 strong, h2 strong {
    font-weight: 900;
}
.h2.f-32, h2.f-32 {
    font-weight: bold;
    font-size: 32px;
}

.h3,
h3 {
    color: #212121;
    font-size: 22px;
    font-family: "Raleway", sans-serif;
    font-weight: 300;
}

.h4,
h4 {
    font-family: "Raleway", sans-serif;
    color: #212121;
    font-size: 18px;
    line-height: 120%;
    font-weight: 700;
}

.h5,
h5 {
    font-size: 16px;
    font-weight: 600;
    color: #212121;
}

.subtitle {
    font-size: 18px;
    font-weight: 500;
    color: #797979;
}

.text, p {
    color: #797979;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
}
.text.f-16, p.f-16 {
    font-size: 16px;
    font-weight: 400;
}

.f-18 {
    font-size: 18px;
}

.f-14 {
    font-size: 14px;
}

.xs-text {
    font-size: 12px;
}

.eyebrow {
    display: block;
    color: #dd2828;
    font-size: 14.4px;
    font-weight: 500;
    letter-spacing: 2.4px;
    text-transform: uppercase;
}

.bold {
    font-weight: 500;
}

.highlight {
    color: #dd2828;
}

.color-white,
.color-white h1,
.color-white h2,
.color-white h3,
.color-white h4,
.color-white h5,
.color-white h6,
.color-white p,
.color-white div,
.color-white span {
    color: #fff;
}

.color-dark,
.color-dark h1,
.color-dark h2,
.color-dark h3,
.color-dark h4,
.color-dark h5,
.color-dark h6,
.color-dark p,
.color-dark div,
.color-dark span {
    color: #212121;
}

.color-primary,
.color-primary h1,
.color-primary h2,
.color-primary h3,
.color-primary h4,
.color-primary h5,
.color-primary h6,
.color-primary p,
.color-primary div,
.color-primary span {
    color: #dd2828;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.button {
    display: inline-flex;
    border: none;
    background: none;
    padding: 0;
    align-items: stretch;
}
.button span {
    padding: 12px 32px;
    font-size: 16px;
    font-weight: 700;
    transition: ease 0.3s;
    display: inline-block;
}
.button .icon-box {
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.button.button-primary:hover {
    text-decoration: none;
}
.button.button-primary span {
    color: #fff;
    background-color: #2f2f2f;
}
.button.button-primary span:hover {
    background-color: #dd2828;
    color: #fff;
}
.button.button-primary .icon-box {
    background-color: #dd2828;
    color: #fff;
}
.button.button-white span {
    color: #212121;
    background-color: #fff;
}
.button.button-white span:hover {
    background-color: #dd2828;
    color: #fff;
}
.button.button-red span {
    color: #fff;
    background-color: #dd2828;
}
.button.button-red span:hover {
    background-color: #dd2828;
    color: #fff;
}
.button.btn-small {
    max-width: 100px;
}
.button.btn-small span {
    font-size: 14px;
    padding: 8px 16px;
    text-align: center;
    line-height: 1.1;
}

.read-more {
    border: none;
    padding: 0;
    background: none;
    font-size: 16px;
    font-weight: bold;
    color: #dd2828;
    display: flex;
    align-items: center;
}
.read-more:after {
    content: "\f30b";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-left: 8px;
    transform: translateY(2px);
}

input, textarea, .custom-select, select {
    border: 1px solid #b2b2b2;
    padding: 7px 16px;
    outline: none;
    width: 100%;
}
input:focus, textarea:focus, .custom-select:focus, select:focus {
    border-color: #dd2828;
}
input.error, textarea.error, .custom-select.error, select.error {
    border-color: #ed2326;
}

textarea {
    resize: none;
    height: 150px;
}

@media (min-width: 768px) {
    .justify-content-md-center {
        justify-content: center;
    }
}

@media (max-width: 767px) {
    .justify-content-mob-between {
        justify-content: space-between !important;
    }
}

.wpcf7-response-output {
    position: fixed;
    left: 20px;
    bottom: 20px;
    background-color: #dd2828;
    border-color: #dd2828 !important;
    color: #fff;
    z-index: 100;
}

@media (min-width: 768px) {
    .position-md-absolute {
        position: absolute;
    }
}

.blog-content p, .blog-content .wp-block-column {
    margin-bottom: 24px;
}
.blog-content ul, .blog-content h1, .blog-content h2, .blog-content h3, .blog-content h4 {
    margin: 24px 0;
}
.blog-content .wp-block-button__link {
    padding: 8px 20px;
}
.blog-content.about-us img {
    float: left;
    min-width: 480px;
    max-height: 570px;
    margin-right: 24px;
    margin-bottom: 24px;
}
@media (max-width: 767px) {
    .blog-content.about-us img {
        min-width: initial;
    }
}

.navbar {
    z-index: 100;
}
.navbar .navbar-toggler {
    box-shadow: none;
}
.navbar .nav-link {
    font-size: 14.5px;
    color: #212121;
    font-weight: 600;
    transition: ease 0.3s;
}
.navbar .nav-link:hover {
    color: #dd2828;
}

.swiper {
    max-width: 100%;
}

.swiper-slide {
    height: auto;
}

.swiper-pagination-bullet-active {
    background: #dd2828;
}

.overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 40%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100%);
}

.grid {
    display: grid;
}
.grid.grid-4 {
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
@media (max-width: 1199px) {
    .grid.grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 767px) {
    .grid.grid-4 {
        grid-template-columns: 1fr;
    }
}
.grid.grid-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
@media (max-width: 991px) {
    .grid.grid-3 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 767px) {
    .grid.grid-3 {
        grid-template-columns: 1fr;
    }
}
.grid.grid-2 {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
@media (max-width: 767px) {
    .grid.grid-2 {
        grid-template-columns: 1fr;
    }
}

iframe {
    outline: none;
    border: none;
}

footer {
    background-image: url("../images/footer.jpg");
    background-size: cover;
}
footer a {
    color: #fff;
    font-weight: 400;
}
footer a:hover {
    color: #fff;
    text-decoration: underline;
}
footer .socials a {
    font-size: 20px;
}
footer .copy-box {
    background-color: #272a39;
}

@media (min-width: 992px) {
    #page {
        display: flex;
    }
}
#page #content {
    flex-grow: 1;
    width: 100%;
}
@media (min-width: 992px) {
    #page #content {
        width: calc(100% - 290px);
    }
}

.mobile-nav {
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
}
@media (min-width: 992px) {
    .mobile-nav {
        display: none !important;
    }
}
.mobile-nav a.active, .mobile-nav a:hover {
    color: #dd2828;
}

.desktop-nav {
    position: sticky;
    top: 0;
    height: 100vh;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    width: 290px;
    min-width: 290px;
}
@media (max-width: 991px) {
    .desktop-nav {
        display: none !important;
    }
}
.desktop-nav .navbar-brand img {
    width: 250px;
}
.desktop-nav .nav {
    display: flex;
    flex-direction: column;
}
.desktop-nav .nav .nav-link {
    display: flex;
    background-color: #eaeaea;
    color: #212121;
    font-size: 16px;
    padding: 0;
    font-weight: 400;
    border-bottom: 1px solid #cacaca;
}
.desktop-nav .nav .nav-link.active, .desktop-nav .nav .nav-link:hover {
    background-color: #d3d3d3;
}
.desktop-nav .nav .nav-link.active .icon-box, .desktop-nav .nav .nav-link:hover .icon-box {
    background-color: #bababa;
}
.desktop-nav .nav .nav-link, .desktop-nav .nav .nav-link .icon-box {
    transition: ease 0.3s;
}
.desktop-nav .nav .nav-link span {
    padding: 22px 20px 22px 40px;
    line-height: 1;
    display: flex;
    align-items: center;
}
.desktop-nav .nav .nav-link .icon-box {
    background-color: #e0e0e0;
    padding: 12px 20px;
    width: 70px;
    display: flex;
    align-items: center;
}
.desktop-nav .nav .nav-link .icon-box img {
    filter: brightness(0);
}

.gamma-container {
    padding-right: 60px;
    padding-left: 60px;
    max-width: 1630px;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .gamma-container {
        padding-right: 16px;
        padding-left: 16px;
    }
}

.hero-section {
    background-image: url("../images/hero-bg.png");
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media (max-width: 767px) {
    .hero-section {
        flex-direction: column;
    }
}
.hero-section .decor-shape {
    position: absolute;
    max-width: 250px;
    transition: ease 0.6s;
    z-index: 2;
}
@media (max-width: 1199px) {
    .hero-section .decor-shape {
        z-index: 0;
    }
}
@media (max-width: 767px) {
    .hero-section .decor-shape {
        position: relative;
        transform: translateY(40px);
    }
}
.hero-section .decor-shape:hover {
    transform: scale(1.2);
}
.hero-section .decor-shape img {
    animation: rotate 30s linear infinite;
}
.hero-section .gamma-container {
    position: relative;
    z-index: 1;
}

@keyframes rotate {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
.hero-invest-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 250px;
    row-gap: 80px;
}
@media (max-width: 1199px) {
    .hero-invest-grid {
        column-gap: 40px;
    }
}
@media (max-width: 767px) {
    .hero-invest-grid {
        grid-template-columns: 1fr;
        row-gap: 0;
        column-gap: 32px;
    }
}

.invest-item .text-box {
    padding: 24px;
    background-color: #fff;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
    transform: translateY(-50%);
    margin: 0 24px;
}

.points-grid .icon-box {
    min-width: 70px;
    height: 70px;
    font-size: 20px;
    color: #dd2828;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #b2b2b2;
    margin-right: 24px;
}

.white-logo {
    min-width: 200px;
}
@media (max-width: 767px) {
    .white-logo {
        min-width: 150px;
    }
}

@media (min-width: 768px) {
    .justify-content-md-end {
        justify-content: flex-end;
    }
    .border-md-right-white {
        border-right: 1px solid rgba(255, 255, 255, 0.8);
    }
}
.border-top {
    border-top: 1px solid #b2b2b2;
}

.title-box {
    max-width: 762px;
    margin-right: auto;
    margin-left: auto;
}
.title-box.center {
    text-align: center;
}
.title-box.center .h2:after {
    margin: 0 auto;
}

.contact-box .h4 {
    border-left: 4px solid #fff;
    padding-left: 12px;
    font-size: 22px;
}
.contact-box.light h4 {
    border-color: #212121;
}
.contact-box a {
    color: #212121;
}
.contact-box a:hover {
    color: #dd2828;
    text-decoration: none;
}

.decor {
    position: absolute;
    width: 300px;
    height: 304px;
    background-image: url("data:image/svg+xml,%3Csvg width='300' height='305' viewBox='0 0 300 305' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M157.001 0.400587C166.47 0.400587 174.151 8.07655 174.151 17.5458C174.151 27.0167 166.47 34.6927 157.001 34.6927C147.535 34.6927 139.854 27.0167 139.854 17.5458C139.854 8.07655 147.535 0.400587 157.001 0.400587ZM105.188 6.65923C118.172 6.65923 128.7 17.1868 128.7 30.1748C128.7 43.1595 118.172 53.6854 105.188 53.6854C92.1998 53.6854 81.6722 43.1595 81.6722 30.1748C81.6722 17.1868 92.1998 6.65923 105.188 6.65923ZM55.2203 39.3715C69.8306 39.3715 81.6722 51.2148 81.6722 65.8251C81.6722 80.4319 69.8306 92.2786 55.2203 92.2786C40.6083 92.2786 28.7667 80.4319 28.7667 65.8251C28.7667 51.2148 40.6083 39.3715 55.2203 39.3715ZM27.898 102.425C43.3008 102.425 55.791 114.915 55.791 130.318C55.791 145.728 43.3008 158.213 27.898 158.213C12.4902 158.213 0 145.728 0 130.318C0 114.915 12.4902 102.425 27.898 102.425ZM41.5058 170.764C60.9845 170.764 76.7716 186.551 76.7716 206.03C76.7716 225.514 60.9845 241.301 41.5058 241.301C22.0221 241.301 6.23493 225.514 6.23493 206.03C6.23493 186.551 22.0221 170.764 41.5058 170.764ZM105.679 224.65C126.236 224.65 142.907 241.316 142.907 261.878C142.907 282.437 126.236 299.103 105.679 299.103C85.1148 299.103 68.4488 282.437 68.4488 261.878C68.4488 241.316 85.1148 224.65 105.679 224.65ZM199.24 220.728C222.507 220.728 241.366 239.587 241.366 262.859C241.366 286.124 222.507 304.984 199.24 304.984C175.97 304.984 157.111 286.124 157.111 262.859C157.111 239.587 175.97 220.728 199.24 220.728ZM160.562 153.603C163.101 158.88 182.105 180.74 186.564 185.093C196.163 194.481 204.901 204.999 217.813 211.796C248.994 228.206 281.068 218.07 295.65 185.716C298.261 179.923 301.204 168.671 299.49 161.481C297.445 152.908 286.155 158.745 276.522 157.593C257.034 155.251 261.517 131.99 248.83 127.492C234.079 122.259 210.56 129.47 199.183 134.755C193.874 137.222 163.126 151.641 160.562 153.603Z' fill='%23D3D3D3'/%3E%3C/svg%3E%0A");
    background-size: cover;
    right: -60px;
    top: -60px;
    opacity: 0.5;
}
@media (max-width: 767px) {
    .decor {
        width: 80px;
        height: 80px;
        top: -20px;
        right: -20px;
    }
}

.portfolio-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
@media (max-width: 991px) {
    .portfolio-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 767px) {
    .portfolio-grid {
        grid-template-columns: 1fr;
    }
}

.dotted-border {
    border: 3px dotted #cbcbcb;
}

.invest-decor-box {
    position: relative;
    max-height: 340px;
    overflow: hidden;
}
.invest-decor-box .overlay-1 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: linear-gradient(to bottom, transparent, #fff);
}
.invest-decor-box img {
    filter: saturate(0) opacity(0.4);
    transition: ease 0.5s;
    object-position: bottom;
    width: 100%;
}
.invest-decor-box:hover img {
    filter: saturate(1);
}

@media (max-width: 767px) {
    .offer-tabs .ui-tabs-nav {
        justify-content: flex-start !important;
    }
}

.invest-tabs, .invest-tabs .ui-tabs-nav, .invest-tabs .ui-tabs-panel, .invest-tabs .ui-tabs-tab, .invest-tabs .ui-tabs-anchor {
    padding: 0 !important;
    border: none !important;
    background: none !important;
}
.invest-tabs .ui-tabs-nav {
    display: flex;
    justify-content: center;
    gap: 12px;
}
.invest-tabs .ui-tabs-nav .ui-tabs-tab .ui-tabs-anchor {
    padding: 12px 25px !important;
    border: 1px solid #b2b2b2 !important;
    font-size: 16px;
    color: #212121;
    font-weight: bold;
    transition: ease 0.3s;
}
@media (max-width: 767px) {
    .invest-tabs .ui-tabs-nav .ui-tabs-tab .ui-tabs-anchor {
        padding: 12px 16px !important;
        font-size: 14px;
    }
}
.invest-tabs .ui-tabs-nav .ui-tabs-tab .ui-tabs-anchor:after {
    content: "";
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px dashed #dd2828;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, calc(100% - 2px));
    opacity: 0;
    transition: ease 0.3s;
}
.invest-tabs .ui-tabs-nav .ui-tabs-tab.ui-state-active .ui-tabs-anchor, .invest-tabs .ui-tabs-nav .ui-tabs-tab:hover .ui-tabs-anchor {
    background-color: #dd2828 !important;
    border-color: #dd2828 !important;
    color: #fff;
}
.invest-tabs .ui-tabs-nav .ui-tabs-tab.ui-state-active .ui-tabs-anchor:after {
    opacity: 1;
}

.table-box {
    overflow-x: auto;
}
.table-box .table {
    min-width: 1000px;
}

.table {
    border-bottom: 1px solid #b2b2b2;
    border-left: 1px solid #b2b2b2;
}
.table thead {
    background-color: #212121;
    color: #fff;
}
.table td, .table th {
    padding: 12px;
    vertical-align: middle;
    text-align: center;
}
.table th {
    border-left: 1px solid rgba(255, 255, 255, 0.6);
}
.table th {
    font-weight: normal;
}
.table th a {
    color: white;
    font-weight: bold;
}
.table td {
    border-right: 1px solid #b2b2b2;
}
.table tbody tr:nth-child(even) {
    background-color: #f5f5f7;
}

.fixed-buttons {
    position: fixed;
    z-index: 10;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}
@media (max-width: 767px) {
    .fixed-buttons .button {
        flex-direction: row-reverse;
        transform: translateX(calc(100% - 50px));
    }
}

.invest-tabs-box {
    overflow-x: auto;
}

.compare-table th, .compare-table td {
    padding: 16px;
}
.compare-table thead {
    background-color: #fcf7f7;
    border: 1px solid #b2b2b2;
}
.compare-table thead th {
    border-color: #b2b2b2 !important;
}
.compare-table thead th:first-child {
    border-left: 1px solid #b2b2b2;
}
.compare-table tbody tr:nth-child(even) {
    background-color: #f5f5f7;
}
.compare-table .compare-img img {
    width: 60px;
    height: 60px;
    border-radius: 5px;
    margin-right: 12px;
}
.compare-table .compare-map {
    max-width: 250px;
    display: block;
    margin: 0 auto;
}

.app .app-start {
    background-image: url("../images/bg-city.jpg");
    clip-path: ellipse(85% 100% at top);
    padding-bottom: 32px;
    background-size: cover;
}
.app .app-header .logo {
    width: 160px;
}
.app .app-header .avatar {
    width: 50px;
    height: 50px;
    margin: 0 auto;
    border-radius: 50%;
    display: block;
    cursor: pointer;
    border: 1px solid #b2b2b2;
}
.app .circle-btn {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid #b2b2b2;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #212121;
    cursor: pointer;
}
.app .circle-btn:hover {
    background-color: #212121;
    color: #fff;
}
.app h2 {
    font-size: 25px;
    font-weight: 500;
}
.app h2:after {
    display: none;
}
.app .position-tag {
    background-color: #212121;
    border-radius: 10px;
    padding: 2px 6px;
    color: #fff;
    font-size: 12px;
    margin-left: 4px;
}
.app .container {
    max-width: 1200px !important;
}
.app .button span {
    padding: 8px 16px;
    font-size: 14px;
}
.app .card {
    border-color: #b2b2b2;
    border-radius: 10px;
    flex-direction: row;
}
.app .card.active {
    border-color: #dd2828;
}
.app .card .row {
    width: 100%;
}
.app .latest-item {
    display: block;
    color: #212121;
}
.app .latest-item .const-img {
    border-radius: 5px;
}
.app .latest-item .date {
    font-size: 10px;
    color: #797979;
    line-height: 130%;
}
.app .latest-item .const-title {
    font-weight: 600;
    color: #212121;
    font-size: 14px;
}
.app .latest-item .const-id {
    font-size: 14px;
    color: #212121;
}
.app .latest-item .const-desc {
    line-height: 110%;
}
.app .app-nav-link {
    color: #dd2828;
    font-size: 12px;
}
.app .border-right {
    border-right: 1px solid #b2b2b2;
}
.app .lh-120 {
    line-height: 120%;
}
.app .status {
    padding: 2px 6px;
    border-radius: 5px;
    font-size: 12px;
}
.app .status.approve {
    background-color: rgba(6, 135, 6, 0.2);
    color: #068706;
}
.app .status.reject {
    background-color: rgba(206, 6, 6, 0.2);
    color: #ce0606;
}
.app .status.pending {
    background-color: rgba(101, 101, 101, 0.2);
    color: #656565;
}
.app .status.user-type-office-worker {
    background-color: #4287f5;
    color: white;
}
.app .author-name {
    font-size: 12px;
    line-height: 120%;
    font-weight: 600;
    color: #212121;
}
.app h5 {
    font-family: "Raleway", sans-serif;
    font-size: 14px;
}
.app .input-frame {
    padding: 12px 16px;
}

.app-scroll {
    max-height: 800px;
    height: 90%;
}
.app-scroll::-webkit-scrollbar {
    width: 0;
}
.app-scroll .mx-n1 {
    margin-right: -4px !important;
    margin-left: -4px !important;
}

.copyright .xs-text {
    font-size: 11px;
}
.copyright .xs-text a {
    color: #797979;
}

.border-hover:hover {
    border-color: #dd2828;
}

a {
    color: #212121;
}

.app-admin .card {
    display: block;
}

.edit-form input, .edit-form select {
    padding: 4px 12px;
    width: auto;
    font-size: 14px;
}

.select2-container--default .select2-selection--single {
  border-radius:0;
  height:39px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {line-height:38px;}

@media (max-width: 1600px) {
  .table td, .table th {
    padding: 10px;
  }
  .app h5 {
    font-size: 13px;
}

  .app .app-header .avatar {
      width: 40px;
      height: 40px;
  }
  .app .circle-btn {
      width: 40px;
      height: 40px;
      border-radius: 50%;
  }
}
