.legacy-theme {
    background: #fff;
}

.legacy-theme .bgtable {
    background-color: #fff;
}

.legacy-theme-home .bgtable {
    background: #fff var(--site-bg-table-image) repeat-x top left;
}

.legacy-theme-inner .bgtable {
    position: relative;
}

.legacy-theme-inner .bgtable::before {
    background: var(--site-bg-table-image) repeat-x top left;
    content: "";
    height: 190px;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
}

.legacy-theme-inner .total {
    position: relative;
    z-index: 1;
}

.legacy-theme-inner .total,
.legacy-theme-inner .total > tbody > tr > td > table,
.legacy-theme-inner .total table[style*="max-width"],
.legacy-theme-inner .legacy-service-page {
    max-width: none !important;
    width: 100% !important;
}

.legacy-theme .total {
    background: transparent;
}

.total {
    max-width: 1600px;
}

.total > tbody > tr > td > table,
.maintable,
.maintable > table {
    max-width: 1600px;
}

.vkladka,
.block92 {
    max-width: 1472px;
}

.site-modern-footer {
    border-top: 1px solid #d7d0bd;
    color: #5f523e;
    display: grid;
    font-family: Arial, Helvetica, sans-serif;
    gap: 28px;
    grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(150px, 1fr));
    line-height: 1.45;
    margin: 56px auto 34px;
    max-width: 1472px;
    padding: 28px 0 0;
    width: 90%;
}

.site-modern-footer a {
    color: #6f4d21;
    text-decoration: underline;
}

.site-modern-footer a:hover {
    color: #9c1d12;
}

.site-modern-footer-logo {
    color: #d41212 !important;
    display: inline-block;
    font-size: 28px;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 14px;
    text-decoration: none !important;
}

.site-modern-footer-copy {
    font-size: 13px;
    max-width: 430px;
}

.site-modern-footer-copy p {
    margin: 0 0 10px;
}

.site-modern-footer-col {
    display: flex;
    flex-direction: column;
    font-size: 13px;
    gap: 7px;
}

.site-modern-footer-title {
    color: #7a4e22;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.site-modern-footer-contacts span {
    color: #5f523e;
}

.site-modern-footer-bottom {
    border-top: 1px solid #e5dfcf;
    color: #827662;
    font-size: 12px;
    grid-column: 1 / -1;
    padding: 16px 0 0;
}

.legacy-service-page {
    background: #fff;
    margin-top: 0;
}

.legacy-service-page,
.legacy-service-shell,
.legacy-service-side,
.legacy-service-content {
    background-color: #fff;
}

.legacy-portfolio-detail img {
    height: auto;
    max-width: 100%;
}

.legacy-portfolio-decor {
    float: right;
    margin: 0 0 20px 24px;
    max-width: 260px;
}

.legacy-portfolio-gallery {
    clear: both;
}

.legacy-portfolio-page .portfoliotext img {
    height: auto;
    max-width: 177px;
}

.legacy-portfolio-detail td {
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 16px;
}

.legacy-portfolio-detail h1.unnamed4 {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 24px;
    font-weight: normal;
}

.legacy-home-link {
    border-radius: 14px;
    display: inline-block;
    padding: 5px 7px 4px;
}

.legacy-home-link.is-active {
    background: #c2bc9b;
}

.legacy-header-portfolio {
    border-radius: 0 0 10px 10px;
    transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.legacy-header-portfolio.is-active {
    background-color: #8b1b13;
    box-shadow: inset 0 -3px 0 rgba(255, 255, 255, 0.28);
}

.legacy-contact-link {
    border-radius: 14px;
    display: inline-block;
    padding: 3px 9px;
}

.legacy-contact-link.is-active {
    background: #e8e1cf;
    color: #7b2118;
}

.legacy-contact-link.is-active .menubarlink {
    color: #7b2118;
}

.legacy-top-menu {
    line-height: 2;
}

.legacy-top-menu-link {
    border-radius: 14px;
    color: #6f4d21;
    display: inline-block;
    line-height: 1.2;
    padding: 4px 10px;
    text-decoration: underline;
}

.legacy-top-menu-link:hover {
    background: #f0eadc;
    color: #8b1b13;
}

.legacy-top-menu-link.is-active {
    background: #c2bc9b;
    color: #fff;
    text-decoration: none;
}

.legacy-side-menu {
    border-left: 3px solid #d7d0bd;
    margin-bottom: 22px;
    padding-left: 13px;
}

.legacy-side-menu-item {
    line-height: 1.35;
    margin: 0 0 9px;
}

.legacy-side-menu-item a {
    border-radius: 0 15px 15px 0;
    color: #6f4d21;
    display: block;
    padding: 5px 10px 5px 12px;
    text-decoration: underline;
}

.legacy-side-menu-item a:hover {
    background: #f0eadc;
    color: #8b1b13;
}

.legacy-side-menu-item.is-active a {
    background: #c2bc9b;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
}

.legacy-side-menu-item.is-section-active a {
    background: #f4f0e5;
    color: #7b2118;
    text-decoration: none;
}

.legacy-inner-header {
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    max-width: 1600px;
    padding: 0 0 16px;
    width: 100%;
}

.legacy-inner-header-main {
    align-items: flex-start;
    display: grid;
    grid-template-columns: 67px minmax(300px, 45%) minmax(265px, 1fr) minmax(150px, 18%);
    min-height: 118px;
}

.legacy-inner-home-link {
    align-items: center;
    border-radius: 14px;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    justify-self: center;
    margin-top: 20px;
    width: 34px;
}

.legacy-inner-home-link.is-active {
    background: #c2bc9b;
}

.legacy-inner-home-link img,
.legacy-inner-logo img,
.legacy-inner-phone img {
    display: block;
}

.legacy-inner-brand {
    display: grid;
    gap: 0;
    justify-items: end;
}

.legacy-inner-portfolio-link {
    align-items: flex-end;
    display: inline-grid;
    grid-template-columns: 138px 134px;
    height: 54px;
    text-decoration: none;
}

.legacy-inner-portfolio-icon {
    background: var(--site-header-portfolio-icon-image) no-repeat right top;
    display: block;
    height: 54px;
    width: 138px;
}

.legacy-inner-portfolio-badge {
    background: var(--site-header-portfolio-badge-image) no-repeat left top;
    color: #fff;
    display: block;
    font-size: 18px;
    height: 41px;
    line-height: 35px;
    text-align: center;
    text-decoration: underline;
    text-decoration-style: dashed;
    text-underline-offset: 4px;
    width: 134px;
}

.legacy-inner-portfolio-link.is-active .legacy-inner-portfolio-badge {
    filter: saturate(1.12) contrast(1.04);
    text-decoration: none;
}

.legacy-inner-logo {
    display: block;
    justify-self: start;
    margin-top: 0;
}

.legacy-inner-phone {
    align-items: center;
    color: #835425;
    display: flex;
    justify-content: flex-end;
    min-height: 118px;
}

.legacy-inner-phone-code {
    color: #333;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 14px;
    margin-right: 10px;
}

.legacy-inner-phone-text {
    display: grid;
    font-size: 28px;
    line-height: 1.05;
}

.legacy-inner-phone-text strong {
    color: #333;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 14px;
}

.legacy-inner-phone-text a {
    color: #835425;
    text-decoration: none;
}

.legacy-inner-contact-nav {
    align-content: center;
    display: grid;
    gap: 14px;
    justify-content: center;
    min-height: 118px;
    padding-right: 20px;
}

.legacy-inner-contact-nav a {
    border-bottom: 1px dashed #764b21;
    color: #764b21;
    font-size: 16px;
    line-height: 1.1;
    text-decoration: none;
}

.legacy-inner-contact-nav a:hover {
    color: #8b1b13;
}

.legacy-inner-contact-nav a.is-active {
    background: #e8e1cf;
    border-bottom-color: transparent;
    border-radius: 14px;
    color: #7b2118;
    padding: 4px 10px;
}

.legacy-inner-service-nav {
    align-items: flex-start;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 9px;
    line-height: 1.3;
    min-height: 60px;
    padding: 0 40px 0 100px;
}

.legacy-inner-service-nav a {
    border-bottom: 1px dashed #764b21;
    color: #6f4d21;
    display: inline-block;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 16px;
    padding: 4px 8px;
    text-decoration: none;
}

.legacy-inner-service-nav a:hover {
    background: #f0eadc;
    border-radius: 14px;
    color: #8b1b13;
}

.legacy-inner-service-nav a.is-active {
    background: #c2bc9b;
    border-bottom-color: transparent;
    border-radius: 14px;
    color: #fff;
}

.legacy-theme-home .legacy-inner-header {
    padding-bottom: 0;
}

.legacy-theme-home .legacy-inner-home-link.is-active {
    background: transparent;
}

@media (max-width: 1100px) {
    .legacy-inner-header-main {
        grid-template-columns: 67px minmax(260px, 38%) minmax(250px, 1fr) minmax(140px, 16%);
    }

    .legacy-inner-portfolio-link {
        grid-template-columns: 104px 134px;
    }

    .legacy-inner-portfolio-icon {
        width: 104px;
    }

    .legacy-inner-service-nav {
        padding-left: 80px;
    }
}

.portfolio-modern-index {
    color: #23201b;
    font-family: Arial, Helvetica, sans-serif;
    margin: 0 0 72px 100px;
    max-width: 1180px;
    width: calc(100% - 140px);
}

.portfolio-modern-index-head {
    padding: 2px 0 16px;
}

.portfolio-modern-index-head h1 {
    color: #171511;
    font-size: 38px;
    font-weight: normal;
    line-height: 1.12;
    margin: 0 0 28px;
}

.portfolio-modern-tabs {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 14px 18px;
}

.portfolio-modern-tab {
    color: #764b21;
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    padding: 12px 0;
    position: relative;
    text-decoration: none;
}

.portfolio-modern-tab:not(.is-active) {
    border-bottom: 1px dashed #764b21;
}

.portfolio-modern-tab.is-active {
    background: #c2bc9b;
    border-radius: 999px;
    color: #fff;
    padding: 12px 24px;
}

.portfolio-modern-tab.is-active::after {
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 9px solid #c2bc9b;
    bottom: -8px;
    content: "";
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
}

.portfolio-modern-grid {
    display: grid;
    gap: 30px 34px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-top: 24px;
}

.portfolio-modern-card {
    border-bottom: 1px dashed #d8d2c2;
    display: grid;
    gap: 20px;
    grid-template-columns: 180px minmax(0, 1fr);
    min-height: 150px;
    padding-bottom: 28px;
}

.portfolio-modern-card:nth-last-child(-n+2) {
    border-bottom: 0;
}

.portfolio-modern-card-image {
    align-items: center;
    color: #7a4e22;
    display: flex;
    justify-content: center;
    min-height: 130px;
    overflow: hidden;
    text-align: center;
    text-decoration: none;
}

.portfolio-modern-card-image img {
    display: block;
    height: auto;
    max-height: 150px;
    max-width: 100%;
}

.portfolio-modern-card-title {
    color: #7a4e22;
    display: inline-block;
    font-size: 19px;
    line-height: 1.2;
    margin-bottom: 10px;
}

.portfolio-modern-card-summary {
    color: #3f3a31;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 15px;
    line-height: 1.45;
}

.portfolio-modern-card-summary p {
    margin: 0 0 8px;
}

.portfolio-modern-empty,
.portfolio-modern-pagination {
    color: #5f523e;
    font-size: 15px;
    padding: 28px 0;
}

.portfolio-modern-detail {
    color: #23201b;
    font-family: Arial, Helvetica, sans-serif;
    margin: 0 0 70px 100px;
    max-width: 1180px;
    width: calc(100% - 140px);
}

.portfolio-modern-back {
    align-items: center;
    color: #8a7a61;
    display: flex;
    font-size: 13px;
    gap: 12px;
    margin: 8px 0 28px;
}

.portfolio-modern-back a,
.portfolio-modern-bottom a {
    color: #7a4e22;
}

.portfolio-modern-back span::before {
    content: "/";
    margin-right: 12px;
}

.portfolio-modern-hero {
    border-bottom: 1px solid #ded7c5;
    display: grid;
    gap: 42px;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    padding: 18px 0 34px;
}

.portfolio-modern-hero-compact {
    display: block;
    max-width: 860px;
}

.portfolio-modern-intro h1 {
    color: #171511;
    font-size: 38px;
    font-weight: normal;
    line-height: 1.12;
    margin: 0 0 22px;
}

.portfolio-modern-kicker {
    color: #8a1410;
    font-size: 13px;
    font-weight: bold;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.portfolio-modern-summary {
    color: #4c463c;
    font-size: 17px;
    line-height: 1.55;
    max-width: 720px;
}

.portfolio-modern-summary p {
    margin: 0 0 12px;
}

.portfolio-modern-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 22px;
}

.portfolio-modern-meta span,
.portfolio-modern-meta a {
    border-top: 1px solid #c7bfa9;
    color: #6f4d21;
    font-size: 14px;
    padding-top: 8px;
}

.portfolio-modern-gallery img {
    display: block;
    height: auto;
    max-width: 100%;
}

.portfolio-modern-body {
    color: #2b2720;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 18px;
    line-height: 1.58;
    max-width: 860px;
    padding: 34px 0 12px;
}

.portfolio-modern-body p {
    margin: 0 0 17px;
}

.portfolio-modern-body .legacy-gallery-caption {
    color: #7a4e22;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    margin-top: 26px;
}

.portfolio-modern-gallery {
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0, 1fr);
    margin-top: 18px;
}

.portfolio-modern-gallery figure {
    margin: 0;
}

.portfolio-modern-gallery img {
    box-sizing: border-box;
}

.portfolio-modern-gallery-single {
    max-width: 720px;
}

.portfolio-modern-bottom {
    border-top: 1px solid #ded7c5;
    margin-top: 38px;
    padding-top: 18px;
}

.legacy-status {
    background: #f6f5ef;
    border: 1px dashed #b6b1a5;
    color: #7a4e22;
    font-family: Arial, Helvetica, sans-serif;
    margin-bottom: 20px;
    padding: 12px 20px;
}

.legacy-form {
    background-color: #f6f5ef;
    border: 1px dashed #b6b1a5;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
    padding: 20px;
}

.legacy-form-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: 1fr 1fr;
}

.legacy-form-wide {
    grid-column: 1 / -1;
}

.legacy-form label span {
    color: #66482b;
    display: block;
    font-weight: bold;
    margin-bottom: 4px;
}

.legacy-form input,
.legacy-form textarea {
    border: 1px solid #dde1e6;
    box-sizing: border-box;
    color: #3759b5;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    padding: 8px;
    width: 100%;
}

.legacy-form textarea {
    min-height: 120px;
}

.legacy-service-content .site-lead-form {
    margin: 34px 0 0;
    max-width: 720px;
}

.legacy-service-content .site-lead-form .legacy-form {
    width: 100%;
}

.legacy-service-tail {
    box-sizing: border-box;
    max-width: 1320px;
    padding-right: 40px;
}

.legacy-button {
    background-color: #a79b74;
    border: 0;
    color: #fff;
    cursor: pointer;
    font-family: Arial, Helvetica, sans-serif;
    margin-top: 12px;
    padding: 9px 16px;
}

.legacy-form-errors {
    color: #c03;
    margin-top: 12px;
}

.legacy-form-error {
    color: #c03;
    display: block;
    font-size: 12px;
    font-style: normal;
    margin-top: 4px;
}

.legacy-card-grid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.legacy-card {
    border-top: 1px dotted #b6b1a5;
    color: #000;
    display: block;
    padding: 20px 10px;
    text-decoration: none;
}

.legacy-card h3 {
    color: #7a4e22;
    font-family: "Times New Roman", Times, serif;
    font-size: 24px;
    font-weight: normal;
    margin-top: 0;
}

.legacy-card img,
.legacy-head-image,
.legacy-gallery img {
    display: block;
    height: auto;
    max-width: 100%;
}

.legacy-gallery {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.legacy-contact-grid {
    display: grid;
    gap: 32px;
    grid-template-columns: 1fr 1fr;
}

.legacy-contact-page {
    box-sizing: border-box;
    color: #23201b;
    font-family: Arial, Helvetica, sans-serif;
    margin: 20px auto 56px;
    max-width: 1180px;
    padding: 0 40px;
    width: 90%;
}

.legacy-contact-page-head {
    border-bottom: 1px solid #ded7c5;
    margin-bottom: 28px;
    padding-bottom: 22px;
}

.legacy-contact-page-head h1,
.legacy-contact-form-card h2 {
    color: #7a4e22;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-weight: normal;
}

.legacy-contact-page-head h1 {
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 12px;
}

.legacy-contact-page-excerpt {
    color: #4c463c;
    font-size: 15px;
    line-height: 1.45;
}

.legacy-contact-page-excerpt p {
    margin: 0;
}

.legacy-contact-card {
    background-color: #f6f5ef;
    border: 1px dashed #b6b1a5;
    box-sizing: border-box;
    padding: 20px;
}

.legacy-contact-form-card {
    min-width: 0;
}

.legacy-contact-form-card h2 {
    font-size: 28px;
    line-height: 1.1;
    margin: 0 0 16px;
}

.legacy-contact-item {
    margin-bottom: 18px;
}

.legacy-contact-item span {
    color: #66482b;
    display: block;
    font-weight: bold;
    margin-bottom: 4px;
}

.legacy-contact-map-link {
    color: #7a4e22;
}

.site-portfolio-teaser {
    margin-top: 32px;
}

.site-extra-block {
    margin-top: 28px;
}

.site-portfolio-teaser h2 {
    color: #7a4e22;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 26px;
    font-weight: normal;
    line-height: 1.15;
    margin: 0 0 18px;
}

.site-portfolio-teaser-grid {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 36px;
}

.site-portfolio-teaser-item {
    flex: 0 1 180px;
    min-width: 150px;
    text-align: center;
}

.site-portfolio-teaser-image {
    align-items: center;
    background: #fff;
    display: flex;
    justify-content: center;
    min-height: 120px;
    padding: 0 10px;
    text-decoration: none;
}

.site-portfolio-teaser-image img {
    display: block;
    max-height: 130px;
    max-width: 100%;
}

.site-portfolio-teaser-image span,
.site-portfolio-teaser-title {
    color: #7a4e22;
    font-size: 14px;
}

.site-portfolio-teaser-title {
    display: block;
    line-height: 1.3;
    margin-top: 8px;
}

@media (max-width: 760px) {
    .legacy-contact-page {
        padding: 0 20px;
        width: 100%;
    }

    .legacy-contact-grid,
    .legacy-form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .site-portfolio-teaser-grid {
        gap: 24px;
    }

    .site-portfolio-teaser-item {
        flex-basis: 100%;
        max-width: none;
    }

    .legacy-service-tail {
        padding-right: 20px;
    }
}

@media (max-width: 980px) {
    .portfolio-modern-index,
    .portfolio-modern-detail {
        margin-left: 40px;
        width: calc(100% - 70px);
    }

    .portfolio-modern-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .portfolio-modern-card:nth-last-child(2) {
        border-bottom: 1px dashed #d8d2c2;
    }
}

@media (max-width: 640px) {
    .portfolio-modern-index,
    .portfolio-modern-detail {
        margin-left: 20px;
        width: calc(100% - 40px);
    }

    .portfolio-modern-index-head h1,
    .portfolio-modern-intro h1 {
        font-size: 30px;
    }

    .portfolio-modern-tabs {
        gap: 8px 14px;
    }

    .portfolio-modern-tab {
        font-size: 15px;
        padding: 10px 0;
    }

    .portfolio-modern-tab.is-active {
        padding: 10px 18px;
    }

    .portfolio-modern-card {
        gap: 14px;
        grid-template-columns: minmax(0, 1fr);
    }

    .portfolio-modern-card-image {
        min-height: 0;
    }

    .portfolio-modern-card-image img {
        max-height: 190px;
    }

    .portfolio-modern-hero {
        grid-template-columns: minmax(0, 1fr);
    }
}
.legacy-form-disabled {
    background: #f8f5ed;
    border: 1px solid #ded4bd;
    color: #7b4a1e;
    display: block;
    font-size: 13px;
    line-height: 1.45;
    margin: 10px 0;
    padding: 12px 14px;
}

.legacy-form.is-disabled input,
.legacy-form.is-disabled textarea,
.legacy-question-form.is-disabled input,
.legacy-question-form.is-disabled textarea {
    opacity: .7;
}
