.quoteblock {
   padding-top: 100px;
}

.quoteblock__wrapper {
   border-radius: 3.38rem;
   background: #ecf7ff;
   display: flex;
   align-items: center;
   justify-content: space-between;
   position: relative;
   gap: 100px;
   padding: 100px 10vw 100px 10vw;
   overflow: hidden;
}

.quoteblock__wrapper:before {
   content: "";
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: url("../../assets/images/man-background.png") no-repeat;
   background-size: cover;
   background-position: center;
   z-index: 0;
   opacity: 0.4;
}

.type-video {
   min-height: 300px;
}

.type-video video {
   height: 100%;
}

.gallery .swiper-pagination {
   justify-content: center;
}

.reviews__form-desc {
   text-align: center;
   margin-top: 8px;
}

.gallery .swiper-pagination .swiper-pagination-bullet {
   width: 29px;
   flex: 0 0 29px;
}

.rev__form-item:has(textarea) .rev__form-icon {
   bottom: auto;
   top: 35px;
}

.page__block .bl {
   border-radius: 1.25rem;
   box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
   background: #fff;
   padding: 3.13rem;
}

.faqblock__wrapper {
   display: flex;
   align-items: start;
   gap: 2rem;
}

.faqblock__wrapper .title {
   font-size: 1.5rem;
}

.faqblock__wrapper .rev__form-item {
   margin-top: 1rem;
}

.faqblock__wrapper .rev__form-item:first-child {
   margin-top: 0;
}

.faqblock__wrapper .btn {
   width: 100%;
   min-width: 100%;
   max-width: 100%;
}

.faqblock__wrapper .bl {
   flex: 0 0 500px;
   z-index: 10;
   position: relative;
}

.faqblock__wrapper .home__faq-list {
   flex: 1 1 auto;
}

.quoteblock__bg {
   position: absolute;
   pointer-events: none;
   width: -moz-max-content;
   width: max-content;
   height: -moz-max-content;
   height: max-content;
   top: -38%;
   left: -23%;
   bottom: 0;
   right: 0;
   margin: auto;
   display: block;
}

.quoteblock__bg svg {
   display: block;
}

.quoteblock__left {
   position: relative;
   z-index: 10;
   flex: 0 0 500px;
}

.quoteblock__image {
   width: 250px;
   height: 250px;
   border-radius: 50%;
   overflow: hidden;
   background: #fff;
}

.quoteblock__image img {
   display: block;
   width: 100%;
   height: 100%;
   -o-object-fit: cover;
   object-fit: cover;
   -o-object-position: center top;
   object-position: center top;
}

.quoteblock__author {
   margin-top: 80px;
}

.quoteblock__job {
   font-family: var(--second-family);
   font-weight: 300;
   font-size: 1.13rem;
   line-height: 140%;
   color: #000;
}

.quoteblock__name {
   font-family: var(--font4);
   font-weight: 300;
   color: #000;
   font-size: 1.5rem;
}

.quoteblock__right {
   position: relative;
   z-index: 10;
   flex: 1 1 auto;
}

.quoteblock__title {
   color: #e0e0e0;
   font-family: var(--font-family);
   font-size: 2.5rem;
}

.quoteblock__text {
   margin-top: 2rem;
   font-family: var(--second-family);
   font-weight: 300;
   font-size: 1.13rem;
   line-height: 140%;
   color: #000;
}

.quoteblock__text > * {
   margin-top: 10px;
}

.quoteblock__text > *:first-child {
   margin-top: 0;
}

.quoteblock__author {
   display: flex;
   align-items: center;
   gap: 24px;
}

.quoteblock__logo {
   width: 80px;
   height: 70px;
   flex: 0 0 80px;
}

.quoteblock__logo img {
   width: 100%;
   height: 100%;
   -o-object-fit: contain;
   object-fit: contain;
   display: block;
}

.quoteblock__cprght {
   margin-top: 2rem;
}

.quoteblock__cprght img {
   margin-left: auto;
   margin-right: 0;
   display: block;
   width: 500px;
   -o-object-fit: contain;
   object-fit: contain;
}

.pros {
   padding-top: 52px;
   padding-bottom: 150px;
}

.pros__titleblock {
   margin-top: 70px;
   font-family: var(--font-family);
   font-weight: 600;
   font-size: 2.12rem;
   line-height: 140%;
   text-align: center;
   color: #454545;
}

.pros__body {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 30px;
}

.pros__item {
   position: relative;
   padding: 15px 25px 35px;
   padding-right: 60px;
   padding-bottom: 40px;
   border-radius: 1.25rem;
   background: #f9f9f9;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   gap: 20px;
}

.case__body .pros__item {
   padding-right: 9vw;
}

.pros__item.no-icon {
   padding-right: 25px !important;
}
.pros__item.no-icon .pros__title {
   max-width: 100%;
}
.case__body .pros__item.no-icon {
   padding-right: 25px !important;
}
.case__body .pros__item.no-icon .pros__title {
   max-width: 100%;
}

.pros__textblock {
   position: relative;
   z-index: 5;
}

.pros__image {
   position: absolute;
   bottom: 0;
   right: 0;
   max-width: calc(100% - 2rem);
}

.pros__index {
   font-family: var(--font-family);
   font-weight: 200;
   font-size: 0.75rem;
   line-height: 140%;
   color: #000;
}

.pros__index:before {
   content: "(";
}

.pros__index:after {
   content: ")";
}

.pros__title {
   margin-top: 13px;
   max-width: 278px;
   font-family: var(--font-family);
   font-weight: 400;
   font-size: 1rem !important;
   line-height: 140%;
   color: #000;
}

.pros__title strong {
   font-weight: 700;
}

.case__body .pros__item {
   overflow: hidden;
   gap: 55px;
}

.case__body .pros__title {
   max-width: 413px;
   font-size: 1rem;
}

.case__body {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   grid-template-areas: "a b c" "d e c";
}

.case__body .pros__item {
   overflow: hidden;
   gap: 55px;
}

.case__body .pros__title {
   max-width: 413px;
   font-size: 1rem;
}

.case__body .pros__item:nth-child(1) {
   grid-area: a;
}

.case__body .pros__item:nth-child(2) {
   grid-area: b;
}

.case__body .pros__item:nth-child(3) {
   grid-area: d;
}

.case__body .pros__item:nth-child(4) {
   grid-area: e;
}

.pros__logo {
   width: 2rem;
   height: 2rem;
}

.pros__logo img {
   display: block;
   width: 100%;
   height: 100%;
   -o-object-fit: contain;
   object-fit: contain;
}

.case__body .pros__item:nth-child(5) {
   grid-area: c;
}

.case__body .pros__item:nth-child(5) .pros__image {
   width: -moz-max-content;
   width: max-content;
   right: 0;
   left: 0;
   margin: auto;
}

.twocolumn__text {
   width: calc(50% - 15px);
}

.twocolumn__title {
   font-weight: 300;
   font-size: 2.5rem;
   line-height: 140%;
   color: #000;
}

.twocolumn__desc {
   margin-top: 2rem;
   font-family: var(--font-family);
   font-weight: 400;
   font-size: 0.88rem;
   line-height: 140%;
   color: #000;
}

.twocolumn__wrapper {
   margin-top: 42px;
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 2rem;
}

.twocolumn__item {
   padding: 50px;
   border-radius: 1.5rem;
   padding: 3.13rem;
   color: #454545;
   background: #f9f9f9;
   font-family: var(--font-family);
   font-weight: 400;
   font-size: 1.13rem;
   line-height: 140%;
}

.twocolumn__item ul {
   list-style-type: none;
}

.twocolumn__item ul li {
   display: flex;
   align-items: start;
   gap: 22px;
   margin-top: 22px;
}

.twocolumn__item ul li:first-child {
   margin-top: 0;
}

.twocolumn__item ul li:before {
   content: "";
   flex: 0 0 24px;
   width: 24px;
   height: 24px;
   display: block;
   background: url(../../assets/images/twocolumn-default.svg) no-repeat;
   background-size: contain;
}

.twocolumn__item.active {
   color: #333;
   background: #eff7ff;
}

.twocolumn__item.active ul li:before {
   background: url(../../assets/images/twocolumn-active.svg) no-repeat;
}

.tableblock__table {
   max-width: 100%;
   overflow: scroll;
}

.tableblock table {
   border-collapse: collapse;
   margin-top: 2rem;
   border-radius: 1.5rem;
   overflow: hidden;
   width: 100%;
   max-width: 100%;
}
.tableblock table tbody tr td {
   min-width: 400px !important;
}
.tableblock table tbody tr:first-child {
   overflow: hidden;
}

.tableblock table tbody tr:first-child td {
   padding: 40px 50px;
   font-weight: 300;
   font-size: 1.3rem;
   line-height: 140%;
   color: #fff;
   text-align: left;
   /* white-space: nowrap; */
   background: #34ade9;
   border-bottom: none;
   border-right: none;
}

.tableblock table tbody tr:last-child td {
   padding-bottom: 40px;
   border-bottom: none;
}

.tableblock table td {
   padding: 24px 20px 24px 40px;
   font-weight: 500;
   font-size: 1rem;
   line-height: 140%;
   color: #454545;
   background: #eff7ff;
   border-bottom: 1px solid #b2d0df;
   border-right: 1px solid #b2d0df;
   text-align: center;
}

.tableblock table td {
   text-align: center;
   font-weight: 700;
}

.tableblock table td:last-child {
   border-right: none;
}

@media (max-width: 1700px) {
   .quoteblock__wrapper {
      padding: 100px 10vw;
      gap: 52px;
   }
}
@media (max-width: 1400px) {
   .quoteblock__cprght img {
      width: 300px;
   }
   .quoteblock__left {
      flex: 0 0 300px;
   }
   .quoteblock__image {
      width: 200px;
      height: 200px;
   }
   .quoteblock__job {
      font-size: 1rem;
   }
   .quoteblock__wrapper {
      padding: 4rem;
   }
   .quoteblock__bg {
      left: -39%;
   }
}
@media (max-width: 1300px) {
   .tableblock table tbody tr:first-child td {
      padding: 30px 20px;
      font-size: 20px;
   }
   .tableblock table td {
      padding: 20px;
   }
}
@media (max-width: 1200px) {
   .quoteblock__bg {
      left: -30%;
   }
   .pros__body {
      grid-template-columns: repeat(2, 1fr);
   }
   .pros__textblock {
      position: relative;
      z-index: 10;
   }
   .case__body .pros__item {
      gap: 20px;
   }
   .pros__body {
      gap: 15px;
   }
   .pros__body.case__body {
      grid-template-areas: "a b" "d e" "c c";
   }
   .case__body .pros__item:nth-child(5) .pros__image {
      left: auto;
      top: 15px;
      height: 100%;
      right: 20px;
   }
   .case__body .pros__item:nth-child(5) .pros__image img {
      height: 100%;
   }
}
@media (max-width: 1000px) {
   .twocolumn__text {
      width: 100%;
   }
   .tableblock table td {
      min-width: 320px;
   }
   .twocolumn__wrapper {
      grid-template-columns: repeat(1, 1fr);
   }
   .faqblock__wrapper {
      display: block;
   }
   .faqblock__wrapper .home__faq-list {
      width: 100% !important;
      max-width: 100% !important;
   }
   .faqblock__wrapper .bl {
      margin-top: 2rem;
   }
   .quoteblock__wrapper {
      flex-direction: column-reverse;
   }
   .quoteblock__left {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
   }
   .quoteblock__left * {
      text-align: center;
   }
   .quoteblock__author {
      margin-top: 24px;
      justify-content: center;
      flex-direction: column-reverse;
   }
   .quoteblock__bg {
      top: auto;
      bottom: 40%;
      left: 4rem;
      top: 2rem;
      bottom: auto;
      opacity: 0.25;
      right: auto;
   }
}
@media (max-width: 768px) {
   .twocolumn__title {
      font-size: 2rem;
   }
   .pros__image {
      opacity: 0.65;
   }
   .case__body .pros__item {
      padding-right: 2rem;
   }
   .pros__title {
      font-size: 1rem;
   }
   .pros__item {
      overflow: hidden;
      padding-bottom: 60px;
   }
   .pros__image {
      right: -19px;
      bottom: 0;
   }
   .quoteblock__wrapper {
      padding: 2.5rem;
      border-radius: 1.5rem;
      gap: 24px;
   }
   .quoteblock__title {
      font-size: 2rem;
   }
   .quoteblock__text {
      font-size: 1rem;
   }
   .quoteblock__cprght img {
      width: 220px;
   }
}
@media (max-width: 620px) {
   .case__body {
      display: block;
   }
   .case__body .pros__item {
      margin-top: 15px;
   }
   .case__body .pros__item:first-child {
      margin-top: 0;
   }
   .case__body .pros__item:nth-child(5) .pros__image {
      right: 30px;
      width: 90px;
      height: 140px;
      top: auto;
      bottom: 0;
   }
   .case__body .pros__textblock {
      max-width: 75%;
   }
   .case__body .pros__image {
      right: -20px;
   }
   .case__body .pros__title {
      max-width: 100%;
   }
}
@media (max-width: 601px) {
   .twocolumn__title {
      font-size: 1.38rem;
   }
}
@media (max-width: 576px) {
   .pros__image {
      right: -40px;
      bottom: 0;
   }
   .pros__body {
      grid-template-columns: repeat(1, 1fr);
   }
   .pros__item {
      padding: 15px;
      padding-bottom: 15px;
   }
   .pros__textblock {
      max-width: 220px;
   }
   .pros__title {
      font-size: 0.88rem;
      margin-top: 10px;
   }
   .pros__index {
      font-size: 0.5rem;
   }
   .pros__titleblock {
      margin-top: 22px;
      font-size: 1.12rem;
   }
   .quoteblock__text {
      margin-top: 1rem;
   }
   .pros__textblock {
      max-width: 220px;
   }
   .case__body .pros__textblock {
      max-width: 220px;
   }
   .case__body .pros__title {
      font-size: 0.88rem;
   }
   .case__body .pros__textblock {
      max-width: 220px;
   }
   .case__body .pros__title {
      font-size: 0.88rem;
   }
   .type-video {
      min-height: 0;
   }
}
@media (max-width: 500px) {
   .faqblock__wrapper .bl {
      padding: 2rem;
   }
   .twocolumn__item {
      padding: 24px;
      border-radius: 1rem;
      font-size: 1rem;
   }
}
@media (max-width: 400px) {
   .quoteblock__wrapper {
      padding: 24px;
      border-radius: 1rem;
   }
}
@media (max-width: 375px) {
   .faqblock__wrapper .bl {
      padding: 2rem 1.5rem;
   }
   .faqblock__wrapper .title {
      font-size: 1rem;
   }
}
.contructor section {
   padding-top: 4rem;
   padding-bottom: 4rem;
}

@media (max-width: 1200px) {
   .contructor section {
      padding-top: 3rem;
      padding-bottom: 3rem;
   }
}
@media (max-width: 1000px) {
   .contructor section {
      padding-top: 2rem;
      padding-bottom: 2rem;
   }
}
@media (max-width: 600px) {
   .contructor section {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem;
   }
} /*# sourceMappingURL=constructor.css.map */

.quoteblock__text a,
.pros__title a,
.article a {
   display: inline-block;
   /* text-decoration: underline dashed; */
   color: #69cbfc;
   border-bottom: 1px dashed #69cbfc;
}

.article a {
}

.title {
}
.main__title-constructor {
   margin-bottom: 10px;
}
.desc {
}
.main__desc-constructor {
   margin-bottom: 20px;
}

.gallery .container {
   position: static;
}
.pros__image {
   width: 200px;
   height: 200px;
}
.pros__image img {
   object-fit: contain;
   width: 100%;
   height: 100%;
   display: block;
   object-position: right bottom;
}

.case__body .pros__item:nth-child(5) .pros__image {
   height: 50%;
   left: auto;
   margin: 0;
}
