/* Start Site Info */
.site-info {
   overflow: hidden;
   padding: 8.1px 0;
   color: white;
   background: #05B5CC;
}

.site-info.hide {
   display: none;
}

.site-info__container {
   display: grid;
   grid-template-columns: 256px minmax(0, 1fr) 256px;
   gap: 0 20px;
}

.site-info__img {
   align-self: center;
   max-width: 100%;
   width: 100%;
   height: auto;
}

.site-info__txt {
   max-width: 870px;
   align-self: center;
   text-align: center;
   font-size: 16px;
}

@media screen and (max-width:1370px) {
   .site-info__container {
      grid-template-columns: 200px minmax(0, 1fr) 200px;
   }

   .site-info__txt {
      font-size: 16px;
   }

   .site-info__img {
      max-width: 220px;
   }
}

@media screen and (max-width:1023px) {
   .site-info__container {
      display: flex;
      flex-direction: column;
   }

   .site-info__img {
      transform: translateY(-10px);
   }

   .site-info__img:last-of-type {
      display: none;
   }

   .site-info__txt {
      font-size: 14px;
      max-width: 800px;
      transform: translateY(-5px);
   }
}

@media screen and (max-width:470px) {
   .site-info__txt {
      max-width: 350px;
      line-height: 18px;
   }

   .site-info br {
      display: none;
   }
}

/* End */

/* --------- Specification --------- */
body {
   font-family: 'Onest', sans-serif;
   color: #292929;
   margin: 0;
   padding: 0;
}

body, html {
   height: 100%;
}

div, p, form, input, a, span, button, textarea, input {
   box-sizing: border-box;
}

ul, li {
   display: block;
   padding: 0;
   margin: 0;
}

p {
   margin: 0;
   font-weight: 400;
   color: #4B4B4B;
}

h1, h2, h3, h4, h5, h6 {
   margin: 0;
}

a, a:hover, a:active {
   text-decoration: none;
}

a, button, input {
   transition: all 0.5s ease;
}

input {
   font-family: inherit;
   border-radius: 0;
   -webkit-appearance: button;
}

input, input:hover, input:focus, input:active,
button, button:hover, button:focus, button:active,
textarea, textarea:hover, textarea:focus, textarea:active {
   outline: none;
}

textarea {
   outline: none;
   resize: none;
   font-family: inherit;
   border: none;
   display: block;
}

main {
   flex: 1 1 auto;
}

.wrapper {
   min-height: 100%;
   display: flex;
   flex-direction: column;
   overflow: hidden;
}

.container {
   margin: 0 auto;
   max-width: 1366px;
   padding: 0 23px;
}

.d-flex {
   display: flex;
}

.text-center {
   text-align: center;
}

.ibg {
   position: relative;
}

.ibg img, .ibg iframe {
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
}

.ibg img {
   object-fit: cover;
}

.btn {
   font-family: inherit;
   display: block;
   text-align: center;
   cursor: pointer;
   border: none;
   background-color: transparent;
}

.btn-main {
   font-family: 'Inter', sans-serif;
   border-radius: 60px;
   font-size: 15px;
   font-weight: 700;
   padding: 25px 0;
   max-width: 322px;
   width: 100%;
}

.btn-white {
   background-color: #ffffff;
   color: #05B5CC;
}

.btn-white:hover {
   background-color: #05B5CC;
   color: #ffffff;
}

.btn-blue {
   color: #ffffff;
   background-color: #05B5CC;
}

.btn-blue:hover {
   background-color: #04a1b6;
}

/* MOBILE MENU BUTTON */
.menu-btn {
   background-color: transparent;
   border: none;
   width: 25px;
   cursor: pointer;
   padding: 0;
   margin: -3.5px 0;
   z-index: 99999;
   transition: all 0.5s ease;
   display: none;
   position: relative;
}

.menu-btn .line {
   width: 100%;
   height: 2.5px;
   background-color: #000000;
   display: block;
   margin: 3.5px 0;
   -webkit-transition: all .5s ease;
   -o-transition: all .5s ease;
   transition: all .5s ease;
   border-radius: 100px;
}

.menu-btn.active .line {
   background-color: #ffffff;
}

.menu-btn .line:nth-child(3) {
   width: 15px;
}

.menu-btn.active .line:first-child {
   -webkit-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
   transform: rotate(-45deg);
   position: relative;
   top: 5px;
}

.menu-btn.active .line:nth-child(2) {
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
   top: -1px;
   position: relative;
}

.menu-btn.active .line:nth-child(3) {
   opacity: 0;
}

@media (max-width: 577px) {
   .mobile-hide {
      display: none !important;
   }
}

@media (min-width: 577px) {
   .mobile-show {
      display: none !important;
   }
}

.circle-block {
   border-radius: 100px;
   background: linear-gradient(41deg, #55B9F4 41.68%, #3980EB 91.12%);
   text-align: center;
   display: flex;
   flex-direction: column;
   justify-content: center;
   color: #FFFFFF;
   font-family: 'Source Sans Pro', sans-serif;
   position: absolute;
   transform: rotate(-8.729deg);
}

.circle-block:before,
.circle-block:after {
   content: '';
   position: absolute;
   background-color: #ffffff;
   border-radius: 100px;
   left: 50%;
   transform: translateX(-50%);
}

.circle-block:before {
   width: 13.731px;
   height: 13.731px;
   top: 23px;
}

.circle-block:after {
   width: 7px;
   height: 7px;
   bottom: 20px;
}

.circle-block h3 {
   font-size: 22px;
   font-weight: 900;
   letter-spacing: 0.22px;
   margin-bottom: 5px;
}

.circle-block p {
   font-size: 15px;
   letter-spacing: 0.15px;
   color: #ffffff;
}

/* ---------------------------
Navigation section START
--------------------------- */
.header {
   font-family: 'Inter', sans-serif;
   padding: 33px 0;
   background-color: #FFF;
   border-bottom: 1px solid rgba(5, 181, 204, 0.20);
   box-shadow: 0px 24px 90px 0px rgba(7, 217, 124, 0.05);
}

.navigation {
   align-items: center;
   justify-content: space-between;
}

.logo {
   max-width: 270px;
   width: 100%;
   display: flex;
   align-items: center;
   color: #000000;
   z-index: 11;
}

.logo img {
   border-right: 1px solid #D2D2D2;
   padding-right: 10px;
   margin-right: 10px;
}

.logo__text {
   font-size: 12px;
}

.navigation__menu {
   margin: auto;
}

.menu li:not(:last-child) {
   margin-right: 19px;
}

.menu li a {
   color: #1A1A1A;
   font-size: 16px;
}

@media screen and (min-width: 1024px) {
   .menu li a:hover {
      color: #05B5CC;
   }
}

.navigation__contact {
   margin-right: 37px;
   margin-left: auto;
   text-align: right;
}

.navigation__phone {
   color: #000;
   font-size: 18px;
   font-weight: 600;
}

.navigation__phone:before {
   content: '';
   display: inline-block;
   width: 20px;
   height: 20px;
   background: #07D97C url('../images/icons/icon-phone.svg') no-repeat center center;
   border-radius: 100px;
   background-size: 10px 10px;
   margin-right: 8px;
}

.navigation__contact p {
   color: rgba(0, 0, 0, 0.80);
   font-size: 12px;
   line-height: 150%;
}

.navigation__contact p span {
   color: #05B5CC;
}

.navigation__btn {
   border-radius: 60px;
   border: 1px solid #05B5CC;
   font-size: 12px;
   padding: 15px 0;
   color: #05B5CC;
   font-weight: 700;
   width: 198px;
}

.navigation__btn:hover {
   color: #ffffff;
   background-color: #05B5CC;
}

/* ---------------------------
Navigation section END
--------------------------- */

/* ---------------------------
Hero section START
--------------------------- */
.hero {
   padding: 90px 0 75px;
   position: relative;
}

.hero:after {
   content: '';
   position: absolute;
   width: 95%;
   height: 1px;
   background-color: #CDF0F5;
   box-shadow: 0px 4px 10px 0px #F3FDF9;
   left: 50%;
   transform: translateX(-50%);
   bottom: 0;
}

.hero-content {
   position: relative;
   z-index: 1;
}

.hero-content__info {
   max-width: 720px;
}

.hero-content__title {
   color: #000000;
   font-size: 55px;
   font-weight: 700;
   line-height: 110%;
   letter-spacing: -0.55px;
   margin-bottom: 20px;
}

.hero-content__img {
   display: none;
}

.hero-content__title span {
   color: #05B5CC;
}

.hero-content__title br {
   display: none;
}

.hero-content__block {
   font-family: 'Liberation Sans', sans-serif;
   padding: 15px 17px 15px 24px;
   border-radius: 40px;
   border: 1px solid #D8EAFB;
   max-width: 520px;
   font-size: 30px;
   line-height: 110%;
   letter-spacing: -0.2px;
   font-weight: 400;
   margin-bottom: 30px;
}

.hero-content__block br {
   display: none;
}

.hero-content__block strong {
   letter-spacing: -0.3px;
}

.hero-content__block span {
   font-size: 20px;
   color: #05B5CC;
}

.hero-content__subtitle {
   max-width: 536px;
   font-size: 21px;
   line-height: 140%;
   margin-bottom: 50px;
}

.hero-content__actions {
   align-items: center;
   padding: 18px 34px 17px 22px;
   border-radius: 40px;
   background-color: #FFF;
   box-shadow: 10px 15px 35px 0px rgba(0, 0, 0, 0.10);
   max-width: 653px;
}

.hero-content__order {
   margin-right: 22px;
   max-width: 260px;
}

.hero-content__play {
   display: flex;
   align-items: center;
   padding: 11px 0 11px 22px;
   border-left: 1px solid #ECECEC;
}

.hero-content__play img {
   width: 43px;
   height: 43px;
   margin-right: 21px;
   transition: all 0.5s ease;
}

.hero-content__play span {
   color: #676767;
   font-size: 16px;
   font-weight: 400;
   line-height: 145%;
}

.hero-content__play:hover img {
   transform: scale(1.05);
}

.hero-content__image {
   width: 61%;
   position: absolute;
   right: -136px;
   top: -40px;
   z-index: -1;
}

.hero-content__image:before,
.hero-content__image:after {
   content: '';
   position: absolute;
   width: 142px;
   height: 140px;
   z-index: -2;
}

.hero-content__image:before {
   top: -2%;
   left: 30%;
   background: url(../images/hero-vector-1.svg) no-repeat;
}

.hero-content__image:after {
   bottom: -3%;
   left: 37%;
   background: url(../images/hero-vector-2.svg) no-repeat;
   background-size: contain;
}

.hero-content__image img {
   width: 100%;
}

/* ---------------------------
Hero section END
--------------------------- */

/* ---------------------------
Details section START
--------------------------- */
.details {
   padding-top: 135px;
}

.details-body {
   justify-content: space-between;
   align-items: center;
   gap: 20px;
   margin-bottom: 40px;
}

.details-left {
   width: 48%;
}

.details-left__title {
   margin-bottom: 45px;
}

.details-left__text p {
   font-size: 21px;
   line-height: 140%;
}

.details-left__text p:not(:last-child) {
   margin-bottom: 25px;
}

.details-right {
   width: 45%;
   position: relative;
}

.details-right__image {
   max-width: 470px;
}

.details-right__image img {
   width: 100%;
   display: block;
}

.details-right__label {
   width: 165.153px;
   height: 165.153px;
   top: -35px;
   right: 0;
}

.details-right__label h3 {
   font-size: 20px;
}

.details-bottom__adv {
   border-radius: 20px;
   background-color: #FFF;
   box-shadow: 10px 15px 35px 0px rgba(0, 0, 0, 0.10);
   display: flex;
   padding: 35px 91px;
   align-items: center;
   margin-bottom: 50px;
}

.details-bottom__adv-item:first-child {
   padding-left: 0;
}

.details-bottom__adv-item:last-child {
   border-right: none;
}

.details-bottom__adv-item {
   font-family: 'Manrope', sans-serif;
   padding-left: 60px;
   padding-right: 40px;
   font-size: 25px;
   color: #3485FF;
   font-weight: 700;
   border-right: 1px solid #CDF0F5;
}

.details-bottom__info {
   justify-content: space-between;
   gap: 15px;
}

.details-bottom__info-col {
   display: flex;
   align-items: center;
   gap: 25px;
   width: 50%;
}

.details-bottom__info-text {
   font-size: 21px;
   line-height: 140%;
}

.details-bottom__info-image {
   max-width: 126px;
   width: 100%;
   height: 140px;
}

.details-bottom__info-image img {
   max-width: 100%;
   height: 100%;
   object-fit: contain;
}

/* ---------------------------
Details section END
--------------------------- */

/* ---------------------------
Cases section START
--------------------------- */
.cases {
   padding-top: 140px;
}

.cases-heading {
   text-align: center;
   max-width: 830px;
   margin: 0 auto 40px;
}

.cases-heading__title {
   margin-bottom: 45px;
}

.title-h2 {
   color: #0D2243;
   font-size: 50px;
   font-weight: 800;
   line-height: 110%;
   letter-spacing: -0.5px;
}

.title-h2 span {
   color: #05B5CC;
}

.cases-heading__subtitle {
   max-width: 733px;
   font-size: 20px;
   line-height: 140%;
   margin: auto;
}

.cases-nav {
   margin-bottom: 30px;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 17px;
}

.slick-arrow {
   width: 48px;
   height: 48px;
   background-color: #4AA1DC;
   background-position: center center;
   background-repeat: no-repeat;
   border-radius: 100px;
   z-index: 1;
   transform: none;
}

.cases-nav .slick-arrow,
.reviews-nav .slick-arrow {
   position: static;
}

.slick-prev {
   background-image: url('../images/icons/arrow-prev.svg');
}

.slick-next {
   background-image: url('../images/icons/arrow-next.svg');
}

.cases-slider {
   width: 100%;
}

.cases-slider .slick-list {
   overflow: inherit;
}

.cases-slider__slide {
   margin: 0 12px;
}

.case-card {
   border-radius: 20px;
   background-color: #F8F8F9;
   padding: 20px;
}

.cases-card__photos {
   display: flex;
   position: relative;
   width: fit-content;
   margin: 0 auto 37px;
   overflow: hidden;
   -moz-user-select: none;
   -webkit-user-select: none;
   -ms-user-select: none;
   user-select: none;
   height: 353px;
   width: 100%;
}

.slider-range {
   position: absolute;
   left: calc(50% - 16px);
   width: 32px;
   height: 100%;
   cursor: pointer;
   z-index: 10;
}

.slider-range:before {
   content: '';
   position: absolute;
   width: 5px;
   height: 100%;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
   background-color: #ffffff;
   z-index: 1;
}

.slider-range:after {
   content: '';
   position: absolute;
   width: 78px;
   height: 28px;
   background: url('../images/slider-range.svg') no-repeat center center;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
   background-size: 100% 100%;
}

.ease {
   transition: width ease .5s, left ease .5s;
   -moz-transition: width ease .5s, left ease .5s;
   -webkit-transition: width ease .5s, left ease .5s;
}

.image-after {
   position: absolute;
   top: 0;
   left: 0;
   width: 50%;
   height: 100%;
   overflow: hidden;
}

.image-after img {
   height: 100%;
}

.cases-card__col img {
   border-radius: 12px;
   display: block;
}

.image-before {
   width: 100%;
}

.image-before img {
   width: 100%;
   object-fit: cover;
   height: 100%;
}

.cases-card__bottom {
   padding-left: 18px;
}

.cases-card__title {
   color: #000;
   font-size: 28px;
   font-family: 'Liberation Sans', sans-serif;
   font-weight: 700;
   line-height: 110%;
   letter-spacing: -0.28px;
   margin-bottom: 10px;
}

.cases-card__year {
   color: #555555;
   font-size: 16px;
   font-family: 'Source Sans Pro', sans-serif;
   font-weight: 400;
   line-height: 110%;
   letter-spacing: -0.16px;
   margin-bottom: 30px;
}

.cases-card__text {
   color: #1A1A1A;
   font-size: 15px;
   font-family: 'Manrope', sans-serif;
   line-height: 135%;
   max-width: 454px;
}

.slick-dots {
   position: static;
   margin-top: 50px;
}

.slick-dots li {
   width: 30px;
   height: 5px;
   border-radius: 10px;
   background-color: #EFEFEF;
   margin: 0 5px;
   padding: 0;
   transition: all 0.5s ease;
}

.slick-dots li button {
   display: none;
}

.slick-dots li.slick-active {
   background-color: #05B5CC;
}

/* ---------------------------
Cases section END
--------------------------- */

/* ---------------------------
About section START
--------------------------- */
.about {
   padding: 113px 0 172px;
}

.about-wrapper {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 121px;
}

.about-info {
   width: 45%;
}

.about-info__title {
   margin-bottom: 50px;
}

.about-info__text {
   margin-bottom: 50px;
}

.about-info__text p {
   font-size: 21px;
   line-height: 140%;
   max-width: 535px;
}

.about-info__text p:not(:last-child) {
   margin-bottom: 20px;
}

.about-right {
   width: 46%;
   position: relative;
}

.about-right img {
   width: 100%;
}

.about-right__desc {
   right: 90px;
   top: -55px;
   width: 176px;
   height: 176px;
}

.about-right__image-desc {
   font-size: 20px;
   line-height: 140%;
   padding-left: 27px;
   border-left: 1px solid #05B5CC;
   margin-top: 30px;
}

.about-right__image-desc strong {
   color: #000000;
}

.about-advantages {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   grid-gap: 24px;
}

.about-advantages__item {
   border-radius: 20px;
   background-color: #F8F8F9;
   padding: 38px 65px;
   display: flex;
}

.about-advantages__image {
   max-width: 100px;
   width: 100%;
   height: 100px;
   margin-right: 40px;
   border-radius: 100px;
   background-color: #05B5CC;
   display: flex;
   align-items: center;
   justify-content: center;
}

.about-advantages__image img {
   width: 40px;
   height: 40px;
}

.about-advantages__info {
   width: 73%;
}

.about-advantages__title {
   color: #090909;
   font-size: 22px;
   line-height: 140%;
   margin-bottom: 25px;
}

.about-advantages__text {
   font-size: 16px;
   line-height: 140%;
}

.about-right__btn {
   display: none;
}

/* ---------------------------
About section END
--------------------------- */

/* ---------------------------
Implant section START
--------------------------- */
.implant {
   padding: 50px 0;
   overflow: hidden;
}

.implant.blue-bg:before {
   background: linear-gradient(52deg, rgba(85, 185, 244, 0.6) 23.23%, #3980EB 56.05%), url('../images/implant-bg.jpg') no-repeat center center/cover;
}

.implant.blue-bg:after {
   bottom: 10px;
}

.implant-body {
   justify-content: flex-end;
}

.implant-left {
   position: absolute;
   left: 2.5%;
   top: 0;
   width: 54%;
}

.implant-left img {
   width: 100%;
   border-radius: 50px 0 0 0;
}

.implant-right {
   max-width: 532px;
   background-color: #ffffff;
   border-radius: 20px;
   padding: 53px 82px;
   width: 100%;
}

.implant-right__title {
   color: #292929;
   letter-spacing: -0.35px;
   font-size: 35px;
   font-weight: 800;
   line-height: 110%;
   margin-bottom: 25px;
}

.implant-right__text {
   color: #4B4B4B;
   font-size: 20px;
   line-height: 140%;
   margin-bottom: 30px;
}

.implant-right ul li:before {
   content: '';
   display: inline-block;
   max-width: 20px;
   width: 100%;
   height: 20px;
   background: url(../images/icons/check.svg) no-repeat center center;
   margin-right: 27px;
   background-size: cover;
}

.implant-right ul {
   margin-bottom: 50px;
}

.implant-right ul li {
   color: #3F8BED;
   font-size: 20px;
   font-weight: 500;
}

.implant-right ul li:not(:last-child) {
   margin-bottom: 15px;
}

.implant-right__btn {
   max-width: 323px;
}

/* ---------------------------
Implant section END
--------------------------- */

/* ---------------------------
Advantages section START
--------------------------- */
.advantages {
   padding: 127px 0 122px;
}

.advantages-wrapper {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
}

.advantages-left {
   max-width: 648px;
   width: 100%;
   border-radius: 20px;
   background: linear-gradient(41deg, #55B9F4 41.68%, #3980EB 91.12%);
   color: #ffffff;
   padding: 71px 73px 30px 65px;
}

.advantages-left__top {
   position: relative;
}

.block-top {
   height: 213px;
}

.block-top:after {
   content: '';
   position: absolute;
   width: calc(100% + 160px);
   height: 5px;
   transform: rotate(168.708deg);
   bottom: 0;
   left: 50%;
   background-color: #ffffff;
   transform: translateX(-50%) rotate(168.708deg);
}

.advantages-left__label {
   font-size: 20px;
   font-family: 'Liberation Sans', sans-serif;
   font-weight: 700;
   line-height: 120%;
}

.block-top .advantages-left__image {
   position: absolute;
   top: -155px;
   right: -74px;
   width: 488px;
}

.advantages-left__bottom {
   position: relative;
}

.block-bottom .advantages-left__label {
   text-align: right;
}

.advantages-left__image img {
   width: 100%;
   display: block;
}

.block-bottom .advantages-left__image {
   position: absolute;
   top: -35px;
   left: -65px;
   transform: rotate(-1.4deg);
   width: 518px;
}

.block-bottom {
   height: 280px;
   display: flex;
   justify-content: flex-end;
   align-items: flex-end;
   margin-bottom: 60px;
}

.advantages-left__note {
   display: flex;
   align-items: center;
}

.advantages-left__note-label {
   padding: 20px 17px 20px 0;
   border-right: 1px solid #ffffff;
   margin-right: 40px;
   font-size: 18px;
   font-weight: 800;
   line-height: 140%;
}

.advantages-left__note p {
   font-size: 15px;
   line-height: 140%;
   color: #ffffff;
}

.advantages-right {
   width: 42.5%;
}

.advantages-right__title {
   margin-bottom: 50px;
}

.advantages-right__list {
   margin-bottom: 43px;
}

.advantages-right__list li {
   font-size: 20px;
   line-height: 140%;
   display: flex;
   align-items: center;
}

.advantages-right__list li:before {
   content: '';
   display: block;
   max-width: 25px;
   width: 100%;
   height: 25px;
   background: url('../images/icons/check.svg') no-repeat center center;
   margin-right: 16px;
}

.advantages-right__list li:not(:last-child) {
   margin-bottom: 30px;
}

/* ---------------------------
Advantages section END
--------------------------- */

/* ---------------------------
Double-section section START
--------------------------- */
.double-section {
   padding: 120px 0 142px;
}

.blue-bg {
   position: relative;
   z-index: 1;
   color: #ffffff;
}

.blue-bg:before {
   content: "";
   position: absolute;
   width: 95%;
   height: 100%;
   border-radius: 50px;
   background: linear-gradient(41deg, #55B9F4 41.68%, #3980EB 91.12%);
   top: 0;
   left: 50%;
   transform: translateX(-50%);
   z-index: -1;
   overflow: hidden;
}

.blue-bg:after {
   content: '';
   position: absolute;
   width: 94.84%;
   height: 631px;
   background: url(../images/vector-bg.svg) no-repeat;
   left: 50%;
   transform: translateX(-50%);
   bottom: 120px;
   z-index: -1;
   background-size: cover;
}

.situation {
   margin-bottom: 120px;
}

.situation-wrapper {
   justify-content: space-between;
}

.situation-info {
   width: 67%;
}

.situation-info__title {
   margin-bottom: 40px;
   color: #ffffff;
}

.situation-info__list {
   margin-bottom: 50px;
   max-width: 600px;
}

.situation-info__list li {
   font-size: 20px;
   line-height: 140%;
   display: flex;
   align-items: center;
}

.situation-info__list li:before {
   content: '';
   display: block;
   max-width: 25px;
   width: 100%;
   height: 25px;
   margin-right: 17px;
   background: url('../images/icons/check-white.svg') no-repeat;
   background-size: contain;
}

.situation-info__list li:not(:last-child) {
   margin-bottom: 20px;
}

.situation-image {
   width: 44%;
}

.situation-image img {
   width: 100%;
}

.steps-heading {
   max-width: 830px;
   margin: 0 auto 46px;
   text-align: center;
}

.steps-heading__title {
   color: #ffffff;
   margin-bottom: 45px;
}

.steps-heading__subtitle {
   max-width: 570px;
   font-size: 20px;
   line-height: 140%;
   margin: auto;
   color: #ffffff;
}

.steps-list {
   display: flex;
   justify-content: space-around;
   margin-bottom: 50px;
   gap: 20px;
}

.steps-list__item {
   max-width: 305px;
   text-align: center;
}

.steps-list__num {
   width: 70px;
   height: 70px;
   border-radius: 100px;
   background-color: #FFFFFF;
   box-shadow: 1px 3px 11px 0px rgba(0, 0, 0, 0.25);
   margin: 0 auto 31px;
   color: #05B5CC;
   font-size: 30px;
   font-weight: 700;
   line-height: 140%;
   display: flex;
   align-items: center;
   justify-content: center;
   position: relative;
}

.steps-list__num:before {
   content: '';
   position: absolute;
   width: 82px;
   height: 82px;
   border: 1px dashed #FFF;
   border-radius: 100px;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
}

.steps-list__title {
   font-size: 24px;
   line-height: 140%;
   margin-bottom: 10px;
}

.steps-list__text {
   font-family: 'Inter', sans-serif;
   font-size: 16px;
   line-height: 140%;
   color: #ffffff;
}

.steps__btn {
   margin: auto;
}

/* ---------------------------
Double-section section END
--------------------------- */

/* ---------------------------
Unpacking section START
--------------------------- */
.unpacking {
   padding-top: 120px;
}

.unpacking-body {
   justify-content: space-between;
   align-items: center;
}

.unpacking-left {
   width: 41%;
}

.unpacking-left__title {
   margin-bottom: 45px;
}

.unpacking-left__text p {
   font-size: 21px;
}

.unpacking-left__text p:not(:last-child) {
   margin-bottom: 30px;
}

.unpacking-video {
   width: 47%;
   position: relative;
   padding-bottom: 50%;
}

.unpacking-video img {
   border-radius: 20px;
}

.unpacking-video iframe {
   border-radius: 20px;
}

.unpacking-video__play {
   width: 72px;
   height: 72px;
   position: absolute;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
   background-color: transparent;
   padding: 0;
   border: none;
   cursor: pointer;
   z-index: 1;
}

.unpacking-video__play:hover {
   transform: translate(-50%, -50%) scale(1.05);
}

.unpacking-left__block {
   display: none;
}

/* ---------------------------
Unpacking section END
--------------------------- */

/* ---------------------------
Specialists section START
--------------------------- */
.specialists {
   padding-top: 120px;
}

.specialists-heading {
   max-width: 580px;
   text-align: center;
   margin: 0 auto 70px;
}

.specialists-heading__title {
   margin-bottom: 45px;
}

.specialists-heading__subtitle {
   font-size: 20px;
   line-height: 140%;
}

.specialists-slider__slide {
   margin: 0 12px;
   position: relative;
   background-color: #F8F8F9;
   padding: 30px;
   border-radius: 20px;
   z-index: 1;
}

.specialists-slider__image {
   border-radius: 20px;
   position: absolute;
   bottom: 0;
   right: 0;
   width: 48%;
   height: 100%;
   z-index: -1;
}

.specialists-slider__image img {
   width: 100%;
   border-radius: 0 0 20px 0;
   height: 100%;
   object-fit: contain;
   object-position: bottom;
}

.specialists-slider__cert {
   width: 48%;
   margin-bottom: 30px;
}

.specialists-slider__cert img {
   border-radius: 20px;
   width: 100%;
   box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.10), 3px 3px 9px 0px rgba(0, 0, 0, 0.10), 12px 11px 16px 0px rgba(0, 0, 0, 0.09), 27px 25px 22px 0px rgba(0, 0, 0, 0.05), 47px 45px 26px 0px rgba(0, 0, 0, 0.01), 74px 70px 28px 0px rgba(0, 0, 0, 0.00);
}

.specialists-slider__title {
   color: #000000;
   font-size: 20px;
   font-weight: 900;
   line-height: 140%;
   margin-bottom: 10px;
}

.specialists-slider__position {
   color: #474747;
   font-size: 15px;
   line-height: 140%;
   margin-bottom: 30px;
}

.specialists-slider__exp {
   color: #474747;
   font-size: 15px;
   line-height: 140%;
}

.specialists-slider__exp span {
   font-weight: 700;
}

.specialists-slider__exp strong {
   color: #000000;
}

.specialists-slider .slick-arrow {
   position: absolute;
   top: 176px;
}

.specialists-prev {
   left: -60px;
}

.specialists-next {
   right: -60px;
}

/* ---------------------------
Specialists section END
--------------------------- */

/* ---------------------------
Reviews section START
--------------------------- */
.reviews {
   padding: 120px 0;
}

.reviews-wrapper {
   justify-content: space-between;
   align-items: center;
   margin-bottom: 83px;
}

.reviews-slider {
   width: 57.57%;
   box-shadow: 7px 11px 16px 7px rgba(0, 0, 0, 0.05);
   border-radius: 20px;
}

.reviews-slider__slide {
   padding: 40px 30px 76px 50px;
   border-radius: 20px;
   background: #F8F8F9;
}

.reviews-slider__top {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding-bottom: 36px;
   border-bottom: 1px solid #909090;
   margin-bottom: 36px;
}

.reviews-slider__label {
   color: #4D4D4D;
   font-size: 12px;
   font-family: 'Manrope', sans-serif;
   font-weight: 700;
}

.reviews-slider__icon {
   width: 60px;
   height: 60px;
   display: flex;
    align-items: center;
    justify-content: center;
}

.reviews-slider__icon img {
	width: 100%;
}

.reviews-slider__image {
   max-width: 582px;
   padding-left: 30px;
}

.reviews-slider__image img {
   width: 100%;
}

.reviews-info {
   width: 33.33%;
}

.reviews-info__title {
   margin-bottom: 50px;
}

.reviews-nav {
   display: flex;
   align-items: center;
   gap: 34px;
}

.reviews-info__subtitle {
   margin-bottom: 40px;
   font-size: 20px;
   line-height: 140%;
}

.reviews-dots {
   width: fit-content;
}

.reviews-dots .slick-dots {
   margin-top: 60px;
}

.reviews-bottom {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   grid-gap: 50px;
}

.reviews-bottom__image {
   width: 180px;
   height: 69px;
   margin-bottom: 15px;
   display: flex;
   align-items: center;
}

.reviews-bottom__rate {
   color: #000000;
   font-size: 30px;
   font-family: 'Manrope', sans-serif;
   font-weight: 700;
   letter-spacing: -0.9px;
   margin-bottom: 10px;
}

.reviews-bottom__count {
   color: #05B5CC;
   font-size: 12px;
   font-family: 'Inter', sans-serif;
   font-weight: 500;
   letter-spacing: 0.24px;
}

/* ---------------------------
Reviews section END
--------------------------- */

/* ---------------------------
Question section START
--------------------------- */
.question {
   padding: 109px 0 120px;
}

.question.blue-bg:after {
   bottom: 26px;
}

.question-wrapper {
   justify-content: space-between;
   align-items: flex-start;
}

.question-left {
   width: 41.7%;
}

.question-left__title {
   color: #ffffff;
   margin-bottom: 45px;
}

.question-left__subtitle {
   font-size: 20px;
   margin-bottom: 40px;
   line-height: 140%;
   color: #ffffff;
}

.question-form {
   padding: 20px;
   border-radius: 20px;
   background-color: #71BAF5;
}

.question-form__textarea {
   font-family: 'Onest', sans-serif;
   border-radius: 20px;
   background-color: #A8D8FF;
   width: 100%;
   padding: 30px 28px;
   color: #FFF;
   font-size: 18px;
   line-height: 140%;
   margin-bottom: 20px;
   height: 187px;
}

.question-form__textarea::placeholder {
   color: #ffffff;
}

.question-form__btn {
   max-width: 190px;
   padding: 15px 0;
}

.question-list {
   width: 50.3%;
}

.question-list__item {
   border-bottom: 1px solid #ffffff;
   color: #FFFFFF;
}

.question-list__top {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 20px 0;
   cursor: pointer;
}

.question-list__question {
   font-family: 'Lato', sans-serif;
   font-size: 22px;
   font-weight: 700;
   line-height: 140%;
}

.question-list__icon {
   max-width: 32px;
   width: 100%;
   height: 32px;
   background: url('../images/icons/plus-white.svg') no-repeat center center;
   border: none;
   padding: 0;
   border-radius: 100%;
}

.question-list__top.active .question-list__icon {
   transform: rotate(45deg);
   background: #ffffff url('../images/icons/plus-black.svg') no-repeat center center;
}

.question-list__answer {
   margin-bottom: 0px;
   transition: .5s;
   opacity: 0;
   overflow: hidden;
   height: 0;
   padding-bottom: 0;
}

.question-list__answer.active {
   height: auto;
   opacity: 1;
   margin-top: 20px;
   padding-bottom: 20px;
}

.question-list__answer p {
   font-family: 'Lato', sans-serif;
   font-size: 15px;
   line-height: 140%;
   color: #ffffff;
}

/* ---------------------------
Question section END
--------------------------- */

/* ---------------------------
Contact section START
--------------------------- */
.contact {
   margin: 120px 0;
   padding: 35px 0;
   position: relative;
}

.contact-box {
   border-radius: 20px;
   background-color: #FFF;
   padding: 39px 48px 62px 61px;
   max-width: 550px;
   position: relative;
   z-index: 1;
}

.contact-box__top {
   margin-bottom: 25px;
   padding-bottom: 25px;
   border-bottom: 1px solid #CDF0F5;
}

.contact-box__title {
   font-family: 'Source Sans Pro', sans-serif;
   margin-bottom: 35px;
   font-size: 30px;
}

.contact-box__block:not(:last-child) {
   margin-bottom: 20px;
}

.contact-box__label {
   color: #444444;
   font-size: 18px;
   font-family: 'Inter', sans-serif;
   font-weight: 500;
   margin-bottom: 5px;
}

.contact-box__text,
.contact-box__phone {
   color: #000000;
   font-size: 20px;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
}

.contact-box__clinic {
   color: #000000;
   font-size: 20px;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   margin-bottom: 20px;
}

.contact-box__clinic span {
   color: #05B5CC;
}

.contact-box__list li:not(:last-child) {
   margin-bottom: 15px;
}

.contact-box__list li {
   font-size: 16px;
   font-family: 'Inter', sans-serif;
   color: #000000;
}

.contact-box__list li span {
   font-size: 18px;
   font-weight: 700;
}

.contact-map {
   position: absolute;
   height: 100%;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
   width: 94.84%;
}

.contact-map iframe {
   border-radius: 50px;
   width: 100%;
   height: 100%;
}

/* ---------------------------
Contact section END
--------------------------- */

/* ---------------------------
Footer section START
--------------------------- */
.footer-top {
   margin-bottom: 55px;
}

.footer-wrapper {
   justify-content: space-between;
   align-items: center;
}

.footer-middle {
   border-radius: 20px;
   background-color: #F8F8F9;
   padding: 28px 0 39px;
}

.footer-wrapper__licenses {
   max-width: 412px;
}

.footer-wrapper__licenses p {
   color: #707070;
   font-size: 14px;
   font-family: 'Inter', sans-serif;
   font-weight: 500;
   line-height: 150%;
}

.footer-wrapper__social {}

.footer-wrapper__social-label {
   color: #000000;
   font-size: 16px;
   font-family: 'Inter', sans-serif;
   font-weight: 400;
   line-height: 150%;
   margin-bottom: 18px;
}

.footer-social {
   justify-content: flex-end;
}

.footer-social li {
   width: 37px;
   height: 37px;
}

.footer-social li:not(:last-child) {
   margin-right: 15px;
}

.footer-social li img {
   width: 100%;
   height: 100%;
}

.footer-bottom {
   padding-top: 52px;
   font-family: 'Inter', sans-serif;
   text-align: center;
}

.footer-bottom__attention {
   color: rgba(187, 187, 187, 0.50);
   font-size: 20px;
   font-weight: 700;
   line-height: 150%;
   letter-spacing: 5px;
   margin-bottom: 2px;
   text-align: center;
}

.footer-bottom__rights {
   color: #707070;
   font-size: 14px;
   line-height: 150%;
   max-width: 925px;
   margin: 0 auto 22px;
}

.footer-bottom__rights a {
   color: #707070;
   text-underline-offset: 3px;
   text-decoration: underline;
}

.footer-bottom__rights a:hover {
   text-decoration: none;
}

.footer-bottom__copyright {
   color: #494949;
   font-size: 18px;
   line-height: 150%;
}

/* ---------------------------
Footer section END
--------------------------- */

.menu-toggle {
   top: -100%;
   left: 0;
   width: 100%;
   height: 100%;
   position: fixed;
   background: linear-gradient(41deg, #55B9F4 41.68%, #3980EB 91.12%);
   z-index: 10;
   color: #ffffff;
   padding: 112px 20px 55px;
   text-align: center;
   transition: all 0.5s ease;
   display: none;
}

.menu-toggle__wrapper {
   height: 100%;
   width: 100%;
   display: flex;
   flex-direction: column;
}

.menu-toggle__list {
   margin-bottom: 78px;
}

.menu-toggle__list li a {
   color: #FFFFFF;
   font-size: 18px;
   font-family: 'Onest', sans-serif;
   font-weight: 700;
   line-height: 17px;
}

.menu-toggle__list li:not(:last-child) {
   margin-bottom: 30px;
   margin-right: 0;
}

.menu-active .menu-toggle {
   top: 0;
}

.menu-active .logo {
   color: #ffffff;
}

.menu-active .logo img {
   filter: brightness(0) saturate(100%) invert(93%) sepia(94%) saturate(0%) hue-rotate(248deg) brightness(106%) contrast(106%);
}

.menu-toggle__contact {
   width: 210px;
   padding-left: 41px;
   position: relative;
   margin: auto auto 0;
}

.menu-toggle__contact:before {
   content: '';
   position: absolute;
   width: 33px;
   height: 33px;
   border-radius: 100%;
   background: #07D97C url('../images/icons/icon-phone.svg') no-repeat center center;
   left: 0;
   top: 50%;
   transform: translateY(-50%);
}

.menu-toggle__phone {
   color: #FFFFFF;
   font-size: 18px;
   font-family: 'Inter', sans-serif;
   font-weight: 600;
}

.menu-toggle__contact p {
   color: rgba(255, 255, 255, 0.80);
   font-size: 12px;
   font-family: 'Inter', sans-serif;
   line-height: 150%;
}

.menu-toggle__contact p span {
   font-weight: 700;
   color: #ffffff;
}

body.menu-active {
   overflow: hidden;
}

.modal {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 555;
   height: 100%;
   background: rgba(0, 0, 0, 0.558);
   overflow: auto;
   display: none;
}

.modal__wrapper {
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
}

.modal__box {
   border-radius: 20px;
   background-color: #FFF;
   max-width: 624px;
   width: 95%;
   padding: 40px 60px;
   position: relative;
}

.modal__close {
   width: 28px;
   height: 28px;
   border-radius: 28px;
   background-color: #05B5CC;
   border: none;
   cursor: pointer;
   padding: 0;
   position: absolute;
   top: 30px;
   right: 30px;
   display: flex;
   align-items: center;
   justify-content: center;
}

.modal__title {
   color: #1C1C1C;
   font-size: 35px;
   font-family: 'Onest', sans-serif;
   font-weight: 700;
   line-height: 120%;
   margin-bottom: 25px;
   text-align: center;
}

.modal__title span {
   color: #05B5CC;
}

.modal__text {
   color: #474747;
   text-align: center;
   font-size: 18px;
   font-family: 'Inter', sans-serif;
   line-height: 150%;
   max-width: 365px;
   margin: 0 auto 20px;
}

.modal__subtitle {
   color: #1F1F1F;
   font-size: 18px;
   font-family: 'Inter', sans-serif;
   font-weight: 600;
   line-height: 150%;
   margin-bottom: 19px;
   text-align: center;
}

.form__block {
   margin: 0 auto 20px;
   max-width: 422px;
}

.form__block label {
   color: #333F51;
   font-size: 15px;
   font-family: 'Inter', sans-serif;
   font-weight: 500;
   line-height: 24px;
   margin-bottom: 6px;
   display: block;
}

.form__block input {
   width: 100%;
   padding: 18px 14px;
   border-radius: 8px;
   border: 1px solid #D5DAE1;
   background-color: #FFF;
   box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.05);
   color: #8896AB;
   font-size: 16px;
   font-family: 'Poppins', sans-serif;
}

.form__block input::placeholder {
   color: #8896AB;
}

.form__btn {
   max-width: 337px;
   width: 100%;
   border-radius: 20px;
   background-color: #05B5CC;
   color: #FFF;
   font-size: 15px;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   line-height: 150%;
   padding: 18px 0;
   margin: 30px auto;
}

.form-rights {
   color: #474747;
   text-align: center;
   font-size: 12px;
   font-family: 'Inter', sans-serif;
   line-height: 150%;
   max-width: 340px;
   margin: auto;
}

.form-rights span {
   color: #05B5CC;
}

.thanks-modal .modal__box {
   background: #ffffff url('../images/subperiosteal-implants-thanks-bg.png') no-repeat bottom right;
   padding: 98px 60px;
}

label.error {
   display: block;
   margin-bottom: 10px;
   color: red;
}