.price-estimate {
    background: #1D1D1D;
    padding: clamp(32px,6vw,78px) 0 0;
    position: relative;
    z-index: 15;
    color: #fff;
}

.price-estimate .container {
    padding-bottom: clamp(30px,4vw,44px);
    position: relative;
}

.price-estimate__inner {
    display: grid;
    grid-template-columns: 820px 1fr;
    align-items: center;
    gap: 60px;
}

.price-estimate__left {
}

.price-estimate__left .cf7thanks__success {
    text-align: left;
}

.price-estimate__title {
    margin: 0 0 clamp(11px, 1.75vw, 24px);
}

.price-estimate__title b,
.price-estimate__title strong {
    color: var(--gold);
    font-weight: inherit;
}

.price-estimate__visual-img {
    position: absolute;
    bottom: 0;
    right: 200px;
    vertical-align: bottom;
    height: 526px;
    width: auto;
}

.price-estimate__side-text {
    max-width: 296px;
    display: flex;
    flex-direction: column;
    font-size: clamp(16px, 1.5vw, 17px);
    line-height: 1.3;
    background: #F4F4F4;
    color: rgb(54, 54, 54, 0.78);
    padding: 32px 22px 32px 44px;
    z-index: 222;
    position: absolute;
    bottom: 0;
    right: 0;
}

.price-estimate__side-text svg {
    margin-bottom: 16px;
}

.price-estimate__row {
    display: flex;
}

.price-estimate .pfinput {
    min-width: unset;
}

.price-estimate .pfinput__post {
    color: #585858;
    opacity: 0.5;
    top: 35px;
    transform: translateY(-50%);
}

.price-estimate .pfinput .cinput__field {
    padding-left: 15px;
}

@media (width < 1440px) {
    .price-estimate {
    }

    .price-estimate__inner {
        display: grid;
        grid-template-columns: 768px 1fr
    }

    .price-estimate__side-text {
        padding: 24px;
        max-width: 240px;
    }

    .price-estimate__visual-img {
        right: 80px
    }

    .price-estimate__right {
        max-width: 100%;
    }
}

@media (width < 1280px) {
    .price-estimate__visual-img {
        right: -40px;
        height: 480px;
    }

    .price-estimate__side-text {
        display: none;
    }
}

@media( width < 1140px ){
    .price-estimate__visual-img {
        height: 440px;
        right: -100px;
    }
}

@media (width < 1024px) {
    .price-estimate__right {
        display: none;
    }

    .price-estimate__inner {
        gap: 0;
        display: block;
    }
}

@media (width < 992px) {
 
}

@media (width < 768px) {
    .price-estimate__inner {
        grid-template-columns: minmax(0, 1fr);
    }

    .price-estimate__side-text {
        max-width: 100%;
    }
}

.estimate-form-panel .wpcf7-form {
    display: flex;
    flex-wrap: wrap;
    gap: 22px 0;
}

.estimate-form-panel .cinput__field {
    border-radius: 0;
    height: 70px;
    font-weight: 300;
    font-family: 'Futura PT', system-ui;
}

.estimate-form-panel .cinput {
    margin-top: 0;
}

.estimate-form-panel .wpcf7-acceptance {
    margin-top: 9px;
    color: rgba(255,255,255,0.4);
}

@media (width > 1280px) {
    .estimate-form-panel .cinput:has([name=rooms]),
    .estimate-form-panel .cinput:has([name=area]) {
        width: auto;
    }

    .estimate-form-panel .cinput:has([name=address]) {
        width: 489px;
    }

    .estimate-form-panel .cinput:has([name=details]) {
        width: 410px;
    }

    .estimate-form-panel .cinput:has([name=messenger]) {
        width: 234px;
    }

    .estimate-form-panel .cinput:has([name=phone]) {
        width: 272px;
    }

    .estimate-form-panel .cinput-group {
        width: 373px;
    }

    .estimate-form-panel .cinput-group .btn {
        width: 100%;
    }
    .estimate-form-panel .popover {
        display: none;
    }
}

@media (width >= 800px) {
    .estimate-form-panel .cinput:has([name=address]) {
        flex: 0 0 300px;
    }

    .estimate-form-panel .cinput:has([name=problems]) {
        flex: 0 0 308px;
    }

    .estimate-form-panel .cinput:has([name=phone]) {
        width: 100%;
    }

    .estimate-form-panel .cinput-group {
        width: 100%;
    }

    .estimate-form-panel .cinput-group .btn {
        width: 100%;
        white-space: nowrap;
        padding-left: 38px;
        padding-right: 38px;
    }
}

@media (width < 768px) {
    .estimate-form-panel .wpcf7-form {
        display: grid;
        gap: 12px;
        grid-template-columns: minmax(0, 1fr);
        width: 100%;
    }

    .estimate-form-panel .cinput-group .cinput__top {
        display: none;
    }

    .estimate-form-panel .cinput-group .btn {
        width: 100%;
    }

    .price-estimate__row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 12px 0;
    }
}

@media (width < 576px) {
    .price-estimate__row .cinput,
    .price-estimate__row .cinput-group{
        grid-column: span 2;
    }

    .price-estimate__row .cinput:has([data-name="area"]),
    .price-estimate__row .cinput:has([data-name="rooms"]) {
        grid-column: initial;        
        }
}