section h2 {
  font-size: 24px;
  font-weight: bold;
  margin: 0;
  margin-bottom: 20px;
  text-align: center;
}

.cp-display-block {
  display: block !important;
}

.cp-display-flex {
  display: flex !important;
}

.cp-m-0 {
  margin: 0 !important;
}

.cp-mb-30 {
  margin-bottom: 30px !important;
}

.cp-mb-60 {
  margin-bottom: 60px !important;
}

.cp-plr-15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.cp-mlr-30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.cp-mlr-15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

.cp-width-50 {
  width: 50% !important;
}

.cp-ip-header-slider {
  position: relative;
  width: 100%;
  height: -webkit-calc(100vh - 60px);
  height: -moz-calc(100vh - 60px);
  height: -ms-calc(100vh - 60px);
  height: -o-calc(100vh - 60px);
  height: calc(100vh - 60px);
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__container {
  width: 100% !important;
  height: 100% !important;
}

.cp-ip-header-slider .cpSliderKarusel {
  position: relative;
  overflow: hidden;
  height: 100%
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__container .cpSliderKarusel__item {
  width: 100%;
  height: 70%;
  background-color: rgba(20, 20, 20, 1);
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__container .cpSliderKarusel__item .cpSliderKarusel__item-image {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0.8;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel-h1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  margin-top: 30px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel-h1 .cpSliderKarusel-h1__title {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  line-height: 1.2em;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__description {
  position: absolute;
  top: 53%;
  left: 0;
  width: 100%;
  height: auto;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.8em;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__description span {
  font-size: 30px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn {
  position: absolute;
  height: auto;
  bottom: 18%;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn[data-function="prev"] {
  left: 0;
  padding-left: 15px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn[data-function="next"] {
  right: 0;
  padding-right: 15px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn .cp_slider_btn g path {
  fill: #FAB680;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots {
  position: absolute;
  bottom: 15.8%;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: auto;
  margin: 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot {
  display: block;
  width: 15px;
  height: 15px;
  aspect-ratio: 1 / 1;
  border: 2px solid #57C2B7;
  border-radius: 50%;
  cursor: pointer;
  box-sizing: border-box;
  margin: 0;
  margin-bottom: 16px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot-clear {
  width: 100%;
  height: 1px;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot.active:hover,
.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot.active {
  background-color: #57C2B7;
  cursor: default;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot:hover {
  background-color: rgba(87, 194, 183, 0.75);
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__consult {
  position: absolute;
  bottom: 6%;
  left: 50%;
  width: 60%;
  text-align: center;
  transform: translateX(-50%);
  height: auto;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
  display: inline-block !important;
  font-size: 15px !important;
  font-weight: bold !important;
  text-decoration: none !important;
  box-sizing: border-box;
  background-color: #FAB680 !important;
  color: #fff !important;
  border-radius: 10px !important;
}

.cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__consult:hover {
  background-color: #e0a16d !important;
}

.cp-ip-advantages {
  width: 100%;
  position: relative;
  flex-wrap: wrap;
  box-sizing: border-box;
}

.cp-ip-advantages>h2 {
  margin: 0 15px;
  margin-bottom: 20px;
  font-size: 24px;
}

.cp-ip-advantages .cp-ip-advantages__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  position: relative;
}

.cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item {
  width: 350px;
  min-height: auto;
  border-radius: 10px;
  background-color: #57C2B7;
  color: #fff;
  margin: 20px;
  margin-top: 0;
  padding: 24px;
  padding-bottom: 35px;
}

.cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item h3 {
  margin: 0;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 20px;
}

.cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item h3 span {
  font-size: 65px;
  line-height: 65px;
  margin: 0;
  display: block;
}

.cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item p {
  margin: 0;
  font-size: 18px;
  line-height: 20px;
}

.cp-ip-cprojects {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 0 10px;
  box-sizing: border-box;
}

.cp-ip-cprojects .cp-ip-cproject__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  box-sizing: border-box;
  position: relative;
  width: 100%;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item {
  width: 95%;
  margin: 0px;
  margin-bottom: 50px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-image {
  width: 100%;
  height: auto;
  min-height: 180px;
  background-size: cover;
  background-position: center;
  aspect-ratio: 16 / 10;
  display: block;
  background-color: #222;
  margin-bottom: 20px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-props {
  width: 65%;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-btn-info {
  width: 35%;
  box-sizing: border-box;
  word-break: break-word;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props *,
.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description * {
  margin: 0;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-props h3 {
  font-size: 22px;
  line-height: 22px;
  margin-top: 0;
  margin-bottom: 15px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-props p {
  font-size: 14px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-btn-info a {
  font-weight: 700;
  border-radius: 6px;
  font-size: 14px;
  display: inline-block;
  padding: 7px 0;
  text-decoration: none;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-btn-info a:hover {
  background-color: #e0a16d !important;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__name {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 2px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__location {
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 500;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__text {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 12px;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__toggle {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 0;
  color: #77CDC4;
}

.cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__toggle:hover {
  color: #5cb1a9;
}

.cp-ip-cprojects .cp-ip-btn {
  padding: 11px 40px;
  font-size: 22px;
  font-weight: bold;
  background-color: #FAB680;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  margin-bottom: 60px;
}

.cp-ip-cprojects .cp-ip-btn:hover {
  background-color: #5cb1a9;
}

.cp-ip-stages {
  flex-wrap: wrap;
  justify-content: center;
}

.cp-ip-stages .cp-ip-stages__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin: 0 15px 30px 15px;
}

.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item {
  width: 100%;
  border: 2px solid #77CDC4;
  border-radius: 6px;
  padding: 30px;
  margin-bottom: 30px;
}

.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h3,
.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h4 {
  font-size: 20px;
  font-weight: bold;
  margin: 0;
  margin-bottom: 20px;
  text-align: center;
  color: #77CDC4;
  text-transform: uppercase;
}

.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h3 {
  margin-bottom: 15px;
}

.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h4 {
  margin-bottom: 5px;
}

.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h4 {
  color: #FAB680;
}

.cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item p {
  font-size: 16px;
  font-weight: 500;
  /* line-height: 1.5em; */
  margin: 0;
  margin-bottom: 20px;
}

.cp-ip-project-slider {
  /* margin: 0 15px;
  width: auto !important;
  position: relative;
  box-sizing: border-box; */
}

.cp-ip-project-slider .cpSliderKarusel .cpSliderKarusel__container .cpSliderKarusel__item img {
  border: 2px solid #77CDC4;
}

.cp-ip-project-slider .cpSliderKarusel #cp_slider_btn_prev__g path,
.cp-ip-project-slider .cpSliderKarusel #cp_slider_btn_next__g path {
  fill: #FAB680;
}

.cp-ip-project-slider .cp-ip-project-slider__pdf-icon {
  height: 52px;
}

.cp-ip-project-slider p {
  font-weight: bold;
}

.cp-ip-project-slider .cp-ip-project-slider__download {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.cp-ip-project-slider .cp-ip-project-slider__download-pdf {
  display: inline-block;
  padding: 12px 34px;
  font-size: 16px;
  font-weight: bold;
  background-color: #77CDC4;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
}

.cp-ip-project-slider .cp-ip-project-slider__download-pdf:hover {
  background-color: #5caea6;
}

.cp-ip-services .cp-ip-services__desc {
  margin: 0 15px 10px 15px;
  font-size: 18px;
  font-weight: 600;
}

.cp-ip-services .cp-ip-services__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  box-sizing: border-box;
  padding: 0;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item {
  position: relative;
  width: 100%;
  padding: 15px;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border: 2px solid #FAB680;
  border-radius: 6px;
  position: relative;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container h3 {
  font-size: 30px;
  font-weight: bold;
  margin: 0;
  margin-bottom: 5px;
  color: #FAB680;
  text-align: center;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container h3 br {
  display: none;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__item-title {
  font-size: 18px;
  font-weight: bold;
  margin: 0;
  margin-bottom: 20px;
  color: #FAB680;
  text-align: center;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__item-text {
  font-size: 16px;
  font-weight: 500;
  margin: 0;
  margin-bottom: 10px;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price {
  text-align: center;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__order-btn,
.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price a {
  display: inline-block;
  padding: 15px 40px;
  font-size: 18px;
  font-weight: bold;
  background-color: #FAB680;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  margin-bottom: 20px;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price a:hover {
  background-color: #e0a16d;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__order-btn {
  background-color: #77CDC4 !important;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__order-btn:hover {
  background-color: #5caea6 !important;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price strong {
  font-size: 30px;
  font-weight: bold;
  color: #FAB680;
}

.cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price strong span {
  font-size: 46px;
}

.cp-ip-calculator {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: -webkit-calc(100% - 30px);
  width: -moz-calc(100% - 30px);
  width: -ms-calc(100% - 30px);
  width: -o-calc(100% - 30px);
  width: calc(100% - 30px);
  margin: 0 15px;
  padding: 24px;
  border-radius: 6px;
  border: 2px solid #77CDC4;
  box-sizing: border-box;
}

.cp-ip-calculator .cp-ip-calc-result {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.cp-ip-calculator .cp-ip-calc-result .cp-ip-calc-result__title {
  width: 100%;
  font-size: 22px;
  font-weight: bold;
  color: #77CDC4;
  margin: 0;
  margin-right: 20px;
  text-align: center;
  margin-bottom: 12px;
}

.cp-ip-calculator .cp-ip-calc-result .cp-ip-calc-result__price {
  width: 100%;
  font-size: 30px;
  font-weight: bold;
  color: #FAB680;
  margin: 0;
  margin-right: 20px;
  text-align: center;
}

.cp-ip-calculator .cp-ip-calc-result .cp-ip-calc-result__price span {
  font-size: 38px;
}

.cp-ip-calculator .cp-ip-calc-area,
.cp-ip-calculator .cp-ip-calc-btn-order,
.cp-ip-calculator .cp-ip-calc-btn-description {
  width: 100%;
  margin-bottom: 20px;
}

.cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__title {
  font-size: 17px;
  font-weight: bold;
  color: #46464B;
  margin-bottom: 10px;
}

.cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__input {
  width: 100%;
  padding: 10px;
  font-size: 20px;
  color: #77CDC4;
  border: 2px solid #77CDC4;
  box-sizing: border-box;
  outline: none;
  box-shadow: none;
  font-weight: bold;
}

.cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__input::placeholder {
  color: #77CDC4;
  font-weight: bold;
  opacity: 1;
}

.cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__input:focus,
.cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__input:active {
  outline: none;
  box-shadow: none;
}

.cp-ip-calculator .cp-ip-calc-properties {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__title {
  width: 100%;
  font-size: 17px;
  color: #46464B;
  font-weight: bold;
  text-align: left;
  margin-bottom: 30px;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items {
  width: 100%;
}

/* START properties__checkbox */
.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__label {
  display: flex;
  cursor: pointer;
  margin-bottom: 20px;
  font-size: 14px;
  font-weight: bold;
  position: relative;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__label .cp-ip-calc-properties__label-info {
  display: block;
  background-color: #FAB680;
  color: #fff;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  overflow: hidden;
  text-align: center;
  cursor: help;
  top: 0;
  right: -10px;
  position: absolute;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__checkbox {
  display: none;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .checkbox-toggle {
  width: 40px !important;
  height: 25px;
  border: 2px solid #77CDC4;
  border-radius: 30px;
  position: relative;
  margin-right: 8px;
  transition: background-color 0.3s;
  flex-shrink: 0;
  box-sizing: border-box;
  margin-top: -2px;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__checkbox:checked+.checkbox-toggle {
  background-color: #77CDC4;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .checkbox-toggle .knob {
  width: 15px;
  height: 15px;
  margin: 1px;
  background-color: white;
  border: 2px solid #77CDC4;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: transform 0.3s;
}

.cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__checkbox:checked+.checkbox-toggle .knob {
  transform: translateX(15px);
}

/* END properties__checkbox */

.cp-ip-calculator .cp-ip-calc-btn-order p {
  text-align: center;
  margin: 0;
  margin-top: 20px;
}

.cp-ip-calculator .cp-ip-calc-btn-order p a {
  display: inline-block;
  padding: 10px 40px;
  font-size: 18px;
  font-weight: bold;
  background-color: #77CDC4;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  margin-bottom: 0;
  width: 70%;
}

.cp-ip-calculator .cp-ip-calc-btn-order p a:hover {
  background-color: #5caea6;
}

.cp-ip-calculator .cp-ip-calc-description {
  font-size: 15px;
}

/* START FORM */
.cp-form {
  padding: 30px 20px;
  padding-bottom: 10px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  border-radius: 0;
}

.cp-form .cp-form_header {
  width: 100%;
}

.cp-form .cp-form_header h3 {
  font-size: 28px;
  margin: 0;
  margin-bottom: 10px;
}

.cp-form .cp-form_header p {
  font-size: 17px;
  margin: 0;
  margin-bottom: 30px;
  font-weight: bold;
}

.cp-form .cp-form_contacts,
.cp-form .cp-form_message,
.cp-form .cp-form_file,
.cp-form .cp-form_submit {
  width: 100%;
}

.cp-form .cp-form_submit button {
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  border: 0;
  background-color: #65c0b5;
  border-radius: 6px;
  padding: 10px;
  width: 70%;
  margin-bottom: 20px;
}

.cp-form .cp-form_submit button:hover {
  cursor: pointer;
  background-color: #46958c;
}

.cp-form .cp-form-group {
  display: flex;
  /* flex-wrap: wrap; */
  margin-bottom: 20px;
}

.cp-form .cp-form-group .cp-form-group__icon {
  width: 32px;
}

.cp-form .cp-form-group .cp-form-group__input,
.cp-form .cp-form-group .cp-form-group__textarea {
  box-sizing: border-box;
  /* Учитывает padding и border в общей ширине */
  width: 100%;
  padding-left: 20px;
  padding-right: 12px;
}

.cp-form .cp-form-group .cp-form-group__textarea {
  padding-right: 12px;
}

.cp-form .cp-form-group .cp-form-group__input input {
  width: 100%;
  max-width: 100%;
  min-height: 32px;
  font-weight: bold;
  color: #EB9568 !important;
}

.cp-form .cp-form-group .cp-form-group__input input,
.cp-form .cp-form-group .cp-form-group__textarea textarea {
  border: 2px solid #F0B988;
  border-radius: 6px;
  font-size: 14px;
  padding: 4px;
  padding-left: 12px;
}

.cp-form .cp-form-group .cp-form-group__input input[type="file"],
.cp-form .cp-form-group .cp-form-group__input input[type="file"]:hover,
.cp-form .cp-form-group .cp-form-group__input input[type="file"]:focus,
.cp-form .cp-form-group .cp-form-group__input input[type="file"]:active {
  border: none;
}

.cp-form .cp-form-group .cp-form-group__input input[type="file"] {
  font-size: 15px;
  font-weight: bold;
  color: #F0B988;
  cursor: pointer;
  line-height: 2.4em;
}

.cp-form .cp-form-group .cp-form-group__input input[type="file"]:hover {
  color: #dfa97a;
  text-decoration: underline;
}

.cp-form .cp-form-group .cp-form-group__input input[type="file"]::file-selector-button {
  display: none;
}

.cp-form .cp-form-group .cp-form-group__textarea textarea {
  width: 100%;
  max-width: 100%;
  min-height: 163px;
  box-sizing: border-box;
  resize: vertical;
  overflow: auto;
  padding-top: 10px;
  font-weight: bold;
  color: #EB9568;
}

.cp-form .cp-form-group .cp-form-group__textarea textarea:active,
.cp-form .cp-form-group .cp-form-group__textarea textarea:focus,
.cp-form .cp-form-group .cp-form-group__textarea textarea:focus-visible,
.cp-form .cp-form-group .cp-form-group__input input:active,
.cp-form .cp-form-group .cp-form-group__input input:focus,
.cp-form .cp-form-group .cp-form-group__input input:focus-visible {
  border: 2px solid #d29d6e;
  outline: 0;
}

.cp-form .cp-form-group ::placeholder {
  color: #F0B988;
  opacity: 1;
}

.cp-form .cp-form-group svg {
  margin-top: 3px;
  width: 26px;
}

/* START |  checkbox __label */
.cp-form .cp-form__label {
  display: flex;
  cursor: pointer;
  margin-bottom: 20px;
  font-size: 15px;
  line-height: 18px;
  font-weight: bold;
  position: relative;
  color: #77CDC4;
}

.cp-form .cp-form__label .cp-form__checkbox {
  display: none;
}

.cp-form .cp-form__label .checkbox-toggle {
  width: 50px !important;
  height: 30px;
  border: 2px solid #77CDC4;
  border-radius: 30px;
  position: relative;
  margin-right: 10px;
  transition: background-color 0.3s;
  flex-shrink: 0;
  box-sizing: border-box;
  margin-top: -2px;
}

.cp-form .cp-form__label .checkbox-toggle .knob {
  width: 16px;
  height: 16px;
  margin: 1px;
  background-color: white;
  border: 2px solid #77CDC4;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: transform 0.3s;
}

.cp-form .cp-form__label .cp-form__checkbox:checked+.checkbox-toggle {
  background-color: #77CDC4;
}

.cp-form .cp-form__label .cp-form__checkbox:checked+.checkbox-toggle .knob {
  transform: translateX(20px);
}

/* END |  checkbox __label */

/* END FROM */

.cp-ip-faq {
  padding: 0 10px;
  box-sizing: border-box;
  max-width: 960px !important;
}

/* START | Accordion */
.cp-accordion .cp-accordion__item .cp-accordion__toggle {
  display: none;
}

.cp-accordion .cp-accordion__item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin-bottom: 0;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-content {
  max-height: 0;
  overflow: hidden;
  /* transition: max-height 0.3s ease-out; */
  margin: 10px 10%;
  margin-top: 0;
}

.cp-accordion .cp-accordion__item .cp-accordion__toggle:checked~.cp-accordion__item-content {
  /* transition: max-height 0.3s ease-out; */
  max-height: 500px;
}

.cp-accordion .cp-accordion__item .cp-accordion__toggle:checked~.cp-accordion__item-content p {
  font-size: 15px;
  margin-top: 0;
}

.cp-accordion .cp-accordion__item .cp-accordion__toggle:checked+.cp-accordion__item-header .cp-accordion__item-right-icon svg {
  transform: rotate(0deg);
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-right-icon svg {
  transition: transform 0.3s ease;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
  color: #77CDC4;
  cursor: pointer;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header:hover {
  color: #4d9e94;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-left-icon,
.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-right-icon {
  width: 10%;
  box-sizing: border-box;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-left-icon svg,
.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-right-icon svg {
  width: 18px;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-right-icon svg {
  margin-left: auto;
  display: block;
  transform: rotate(180deg);
  margin-top: 5px;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-title {
  width: 80%;
}

.cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-title p {
  font-size: 14px;
  font-weight: bold;
  margin: 0;
}

/* END | Accordion */

@media (min-width: 720px) and (max-width: 959px) {

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots {
    bottom: 16.25%;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot {
    margin-bottom: 20px;
  }

}

@media (min-width: 960px) {

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__container .cpSliderKarusel__item {
    height: 100%;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn {
    position: absolute;
    height: 100%;
    bottom: auto;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn svg {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn[data-function="prev"] {
    left: 0;
    padding-left: 60px;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn[data-function="next"] {
    right: 0;
    padding-right: 60px;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__btn .cp_slider_btn g path {
    fill: #fff;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel-h1 {
    margin-top: 100px;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel-h1 .cpSliderKarusel-h1__title {
    font-size: 32px;
    line-height: 1.5em;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__description {
    top: auto;
    bottom: 120px;
    font-size: 22px;
    line-height: 2em;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__description span {
    font-size: 36px;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    margin-bottom: 75px;
    display: flex;
    justify-content: center;
    transform: translateX(0%);
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot {
    display: block;
    width: 15px;
    height: 15px;
    aspect-ratio: 1 / 1;
    border: 2px solid #fff;
    margin: 10px;
    border-radius: 50%;
    cursor: pointer;
    box-sizing: border-box;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot-clear {
    width: 400px;
    height: 15px;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot.active:hover,
  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot.active {
    background-color: #fff;
    cursor: default;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__dots .cpSliderKarusel__dot:hover {
    background-color: rgba(255, 255, 255, 0.75);
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__consult {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: auto;
    transform: translateX(-50%);
    height: auto;
    margin-bottom: 75px;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    display: inline-block !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    box-sizing: border-box;
    background-color: #77CDC4 !important;
    color: #fff !important;
    border-radius: 10px !important;
  }

  .cp-ip-header-slider .cpSliderKarusel .cpSliderKarusel__consult:hover {
    background-color: #5caea6 !important;
  }

  .cp-ip-cprojects .cp-ip-cproject__items {
    margin-bottom: 30px;
  }
  
  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item {
    width: 45%;
    margin: 15px;
  }

  .cp-ip-cprojects .cp-ip-btn {
    padding: 10px 44px;
    font-size: 16px;
    font-weight: bold;
    background-color: #77CDC4;
  }

  .cp-ip-cprojects .cp-ip-btn:hover {
    background-color: #5caea6;
  }

  .cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item {
    display: flex;
    flex-wrap: nowrap;
  }

  .cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item .cp-ip-stage-description {
    width: 40%;
    padding-right: 30px;
  }

  .cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item .cp-ip-stage-list {
    width: 60%;
  }

  .cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h3,
  .cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item h4 {
    text-align: left;
    font-size: 22px;
  }

  .cp-ip-stages .cp-ip-stages__items .cp-ip-stages__item p {
    font-size: 17px;
  }

  .cp-ip-project-slider .cp-ip-project-slider__pdf-icon {
    height: 48.6px;
  }

  .cp-ip-project-slider .cp-ip-project-slider__download-pdf {
    display: inline-block;
    padding: 10px 40px;
    font-size: 14px;
    font-weight: bold;
    background-color: #77CDC4;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
  }

  .cp-ip-services .cp-ip-services__desc {
    margin-bottom: 30px;
    font-size: 18px;
    font-weight: 600;
  }

  .cp-ip-services .cp-ip-services__items {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: stretch;
    min-height: 100%;
    box-sizing: border-box;
    padding: 0;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item {
    width: calc(100% / 3);
    box-sizing: border-box;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: #FAB680;
    color: #fff !important;
    padding-bottom: 65px;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container h3 {
    color: #FFF;
    text-align: left;
    font-size: 24px;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container h3 br {
    display: inline-block;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__item-title,
  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__item-text {
    font-size: 17px;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__item-title {
    font-weight: bold;
    color: #FFF;
    text-align: left;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price {
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__order-btn,
  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price a {
    padding: 15px 40px;
    font-size: 14.5px;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price a {
    background-color: #FFF;
    color: #FAB680;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price a:hover {
    background-color: #f5f5f5;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price strong {
    font-size: 27px;
    color: #FFF;
  }

  .cp-ip-services .cp-ip-services__items .cp-ip-services__item .cp-ip-services__item-container .cp-ip-services__price strong span {
    font-size: 41px;
  }

  .cp-ip-calculator {
    margin: 15px;
    margin-top: 60px;
  }

  .cp-ip-calculator .cp-ip-calc-result {
    width: 60%;
  }

  .cp-ip-calculator .cp-ip-calc-area {
    width: 40%;
  }

  .cp-ip-calculator .cp-ip-calc-result .cp-ip-calc-result__title,
  .cp-ip-calculator .cp-ip-calc-result .cp-ip-calc-result__price {
    text-align: left;
  }

  .cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__title,
  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__title {
    font-size: 18px;
  }

  .cp-ip-calculator .cp-ip-calc-area .cp-ip-calc-area__input {
    border-radius: 6px;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items:nth-child(2) {
    width: 60%;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items:nth-child(3) {
    width: 40%;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item {
    width: 100%;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__label {
    font-size: 15px;
    line-height: 0;
    margin-bottom: 10px;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .checkbox-toggle {
    margin-top: 7px;
  }

  .cp-ip-calculator .cp-ip-calc-btn-order {
    width: 30%;
    margin-bottom: 0;
  }

  .cp-ip-calculator .cp-ip-calc-btn-order p a {
    width: 80%;
    padding: 15px 0;
    margin-top: 20px;
    font-size: 18px;
  }

  .cp-ip-calculator .cp-ip-calc-description {
    padding-top: 40px;
    width: calc(70% - 40px);
    margin-left: 40px;
    margin-bottom: 0;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .checkbox-toggle .knob {
    width: 15px;
    height: 15px;
    margin: 1px;
  }

  .cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item {
    width: 350px;
    min-height: 320px;
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__items .cp-ip-calc-properties__item .cp-ip-calc-properties__label .cp-ip-calc-properties__label-info {
    display: inline-block;
    background-color: #77CDC4;
    color: #fff;
    width: 25px;
    height: 25px;
    top: inherit;
    right: inherit;
    position: inherit;
    margin-left: 20px;
    line-height: 25px;
    transform: translateY(7px);
  }

  .cp-ip-calculator .cp-ip-calc-properties .cp-ip-calc-properties__title {
    margin-bottom: 8px;
    margin-top: 20px;
  }

  .cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item h3 {
    font-size: 21px;
    line-height: 25px;
  }

  .cp-ip-advantages .cp-ip-advantages__items .cp-ip-advantages__item p {
    margin: 0;
    font-size: 17px;
    line-height: 20px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-btn-info a {
    font-size: 14.35px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-props h3 {
    font-size: 21px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__text {
    font-size: 15px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__toggle {
    font-size: 15px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject__item-props .cp-ip-cproject-props p {
    font-size: 15px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__name {
    font-size: 22px;
  }

  .cp-ip-cprojects .cp-ip-cproject__items .cp-ip-cproject__item .cp-ip-cproject-description .cp-ip-cproject-description__location {
    font-size: 18px;
  }

  /* START FORM */
  .cp-p-150-0 {
    padding: 0px 150px;
  }

  .cp-form {
    border: 2px solid #65c0b5;
    border-radius: 6px;
  }

  .cp-form .cp-form_contacts,
  .cp-form .cp-form_message {
    width: 50%;
  }

  .cp-form .cp-form-group .cp-form-group__input {
    padding-right: 66px;
  }

  .cp-form .cp-form-group .cp-form-group__textarea {
    padding-right: 5px;
  }

  .cp-form .cp-form_file,
  .cp-form .cp-form_checkbox {
    width: 40%;
  }

  .cp-form .cp-form_submit {
    width: 20%;
  }

  .cp-form .cp-form_checkbox {
    padding-top: 6px;
  }

  .cp-form .cp-form-group svg {
    margin-top: 7px;
    width: 28px;
  }

  .cp-form .cp-form-group .cp-form-group__input input,
  .cp-form .cp-form-group .cp-form-group__textarea textarea {
    font-size: 15px;
    padding: 6px 16px;
  }

  .cp-form .cp-form-group .cp-form-group__input input[type="file"] {
    font-size: 15px;
  }

  .cp-form .cp-form_submit button {
    font-size: 14.35px;
    font-weight: bold;
    padding: 10px 20px;
    width: 75%;
  }

  .cp-form .cp-form__label .checkbox-toggle .knob {
    margin: 3px;
  }

  .cp-form .cp-form__label {
    line-height: 28px;
  }

  /* END FORM */

  /* START | Accordion */
  .cp-accordion .cp-accordion__item .cp-accordion__item-header {
    margin-bottom: 0;
  }

  .cp-accordion .cp-accordion__item .cp-accordion__item-header .cp-accordion__item-title {
    border: 2px solid #77CDC4;
    border-radius: 6px 6px 0 0;
    border-bottom: none;
    margin-bottom: 0;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 9px;
    box-sizing: border-box;
  }

  .cp-accordion .cp-accordion__item .cp-accordion__item-content {
    border: 2px solid #77CDC4;
    border-radius: 0 0 6px 6px;
    border-top: none;
    margin-top: 0;
    padding-top: 6px;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }

  .cp-accordion .cp-accordion__item .cp-accordion__toggle:checked~.cp-accordion__item-content {
    transition: max-height 0.3s ease-out;
    max-height: 500px;
  }

  /* END | Accordion */

}
.cp-ip-services__preview-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
}

.cp-ip-services__previews {
  display: grid;
  gap: 20px;
  justify-items: center;
}

/* Mobile first - 2 columns */
.cp-ip-services__previews {
  grid-template-columns: repeat(2, 1fr);
}

/* Desktop - 3 columns */
@media (min-width: 768px) {
  .cp-ip-services__previews {
    grid-template-columns: repeat(3, 1fr);
  }
}

.cp-ip-services__preview {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #333;
  transition: transform 0.3s ease;
  width: 100%;
}

.cp-ip-services__preview:hover {
  transform: translateY(-5px);
}

.cp-ip-services__preview img {
  width: 100%;
  height: auto;
  max-width: 380px;
  border: 1px solid #ddd;
  border-radius: 4px;
  margin-bottom: 10px;
}

.cp-ip-services__preview p {
  text-align: center;
  font-size: 14px;
  margin: 0;
}

