.calculator {
  max-width: 960px;
  margin: 0 auto;
  background: none;
  overflow: visible;
}


.calculator-inner {
  display: flex;
  padding: 80px 0;
  position: relative;
}

.calculator-inner::before {
  content: "";
  display: block;
  width: 550px;
  height: 604px;
  position: absolute;
  bottom: 0;
  left: -60px;
}

.calculator-left {
  flex-basis: 50%;
}

.calculator-left .title {
  text-align: left;
}

.calculator-right {
  flex-basis: 50%;
  padding-left: 40px;
  box-sizing: border-box;
}

.calculator-line {
  margin-bottom: 16px;
}

.calculator-label {
  margin-bottom: 4px;
  display: inline-block;
}

.calculator-select {
  max-width: 400px;
/*  display: block;
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  padding-left: 16px;
  outline: none;
  border: 1px solid #000;
  background-color: transparent;
  font-weight: 300;*/
}

.calculator-select select {
  width: 100%;
  height: 44px;
  border: 1px solid #000;
  border-radius: 4px;
}

.calculator-counter {
  display: flex;
  align-items: center;
}

.calculator-counter-button {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background-color: transparent;
  font-size: 30px;
  font-weight: 300;
  cursor: pointer;
}

.calculator-counter-input {
  height: 40px;
  width: 70px;
  padding: 0 16px;
  box-sizing: border-box;
  border: 1px solid #000;
  background-color: transparent;
  outline: none;
  text-align: center;
  font-weight: 300;
}

.calculator-checkbox {
  margin-bottom: 12px;
  display: flex;
  align-items: center;
}

.calculator-checkbox label {
  font-size: 14px;
  margin-left: 8px;
  cursor: pointer;
}

.calculator-checkbox input {
  display: inline-block;
  width: 18px;
  height: 18px;
  cursor: pointer;
}

.calculator-phone {
  height: 40px;
  width: 100%;
  padding: 0 16px;
  box-sizing: border-box;
  border: 1px solid #000;
  background-color: transparent;
  outline: none;
  font-weight: 300;
}

#slider {
  margin-top: 50px;
  height: 3px;
  background-color: #ccc;
  margin-bottom: 24px;
}

#custom-handle {
  cursor: pointer;
  background-color: #1976D2;
  border-radius: 50%;
  border: none;
  outline: none;
  top: 50%;
  transform: translateY(-50%);
}

#custom-handle span {
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
  padding: 4px;
  border-radius: 3px;
  min-width: 30px;
  display: flex;
  justify-content: center;
  box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.2);
  color: #000;
  font-weight: 300;
}

.calculator-renovation .calculator-label {
  margin-bottom: 12px;
}

.calculator-row {
  display: flex;
  margin: 0 -16px;
}

.calculator-col {
  flex-basis: 50%;
  padding: 0 16px;
  box-sizing: border-box;
}

.calculator-radio {
  display: flex;
}

.calculator-radio input[type=radio] {
  display: none;
}

.calculator-radio label {
  display: block;
  position: relative;
  cursor: pointer;
}

.calculator-radio label img {
  display: inline-block;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
}

.calculator-radio label .radio-image {
  display: inline-block;
  position: relative;
}

.calculator-radio label .radio-image::before {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.4);
  transform: scale(0);
  transition: 0.2s;
}

.calculator-radio input[type=radio]:checked + label .radio-image::before {
  transform: scale(1);
}

.calculator-radio-item {
  flex-basis: 90px;
  flex-shrink: 0;
  box-sizing: border-box;
  padding: 0;
  text-align: center;
}

.calculator-radio-item:not(:last-child) {
  margin-right: 12px;
}

.calculator-row-bottom {
  justify-content: space-between;
  margin-left: 0;
  margin-right: 0;
}

.calculator-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #f7f4f4;
  border-radius: 6px;
  padding: 12px 14px;
}

.calculator-info-text {
  margin-right: 24px;
  font-size: 20px;
  color: #000;
}

.calculator-info-value {
  font-size: 20px;
  color: #000;
  font-weight: 700;
}

.calculator-checkbox-row {
  display: flex;
}

.calculator-checkbox-col {
  margin-right: 30px;
}



@media (max-width: 1023.98px) {
  .calculator-inner::before {
    left: -160px;
    width: 500px;
  }

  .calculator-row-radio {
    display: block;
  }

  .calculator-row-radio .calculator-col {
    margin-bottom: 28px;
  }

}
@media (max-width: 830px) {
  .calculator-row-bottom {
    flex-direction: column;
  }

  .calculator-tel {
    order: 2;
    margin-bottom: 20px;
  }

  .calculator-info {
    order: 1;
    margin-bottom: 20px;
  }

  .calculator-send {
    order: 3;
  }

  .calculator-send button {
    box-sizing: border-box;
    width: 100%;
  }
}

@media(max-width: 767.98px) {

  .calculator {
    background: #fff;
    overflow: hidden;
  }

  .calculator .title {
    font-size: 18px;
  }

  .calculator-renovation {
    margin-top: 40px;
    margin-bottom: 12px;
    overflow: visible;
  }

  .calculator-inner::before {
    display: none;
  }

  .calculator-inner {
    flex-wrap: wrap;
    padding-top: 0;
  }

  .calculator-left {
    flex-basis: 100%;
    padding-bottom: 250px;
  }

  .calculator-right {
    flex-basis: calc(100% + 32px);
    background: #f4f8ff;
    padding-top: 32px;
    padding-left: 16px;
    padding-right: 16px;
    margin: 0 -16px;
  }

  .calculator-row-bottom {
    max-width: 300px;
    margin: 0 auto;
  }

  .calculator-info-text {
    font-size: 18px;
  }

  .calculator-info-value {
    font-size: 16px;
  }

}




@media (max-width: 560px) {
  .calculator-radio {
    flex-wrap: wrap;
  }

  .calculator-radio-item {
    margin-bottom: 16px;
  }

  .calculator-checkbox-row {
    display: block;
  }
}



@media(max-width: 767.98px) {
  .calculator-slider {
    padding-left: 21px;
    padding-right: 21px;
  }
}