@charset "UTF-8";
* {
  padding: 0;
  margin: 0;
  border: 0;
}
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
:focus,
:active {
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
nav,
footer,
header,
aside {
  display: block;
}
html,
body {
  width: 100%;
  font-size: 100%;
  line-height: 100%;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  height: 100dvh;
  min-width: 320px;
  scroll-behavior: smooth;
}
input,
button,
textarea {
  font-family: inherit;
  resize: none;
}
input::-ms-clear {
  display: none;
}
button {
  cursor: pointer;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
a,
a:visited,
a:hover {
  text-decoration: none;
}
a {
  font-size: inherit;
  color: inherit;
  display: inherit;
}
ul li {
  list-style: none;
}
img {
  vertical-align: top;
  max-width: 100%;
  object-fit: cover;
}
h1, h2, h3, h4, h5, h6, p, address, cite, span, ul, li {
  font-style: normal;
  font-size: inherit;
  font-weight: inherit;
}

::placeholder {
  color: #D6D6D6;
}
::-webkit-input-placeholder {
  color: #D6D6D6;
}
::-moz-placeholder {
  color: #D6D6D6;
  opacity: 1;
}
:-ms-input-placeholder {
  color: #D6D6D6;
}



@font-face {
  font-family: 'Heliosext';
  src: url('../fonts/Heliosext.otf');
  src: local('heliosext_regular'), local('heliosext-regular'),
    url('../fonts/Heliosext.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Heliosext';
  src: url('../fonts/Heliosext-Italic.ttf');
  src: local('heliosext_italic'), local('heliosext-italic'),
    url('../fonts/Heliosext-Italic.woff2') format('woff2');
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'Heliosext';
  src: url('../fonts/Heliosext-Bold.otf');
  src: local('heliosext_bold'), local('heliosext-bold'),
    url('../fonts/Heliosext-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Heliosext';
  src: url('../fonts/Heliosext-BoldItalic.ttf');
  src: url('../fonts/Heliosext-BoldItalic.woff2') format('woff2');
  font-weight: 700;
  font-style: italic;
}

body {
  font-family: 'Heliosext';
  font-size: clamp(14px, 1.3076923077vw, 17px);
  color: #000;
  background: #F0F5F6;
  line-height: 120%;
}

._container {
  width: 100%;
  max-width: 1448px;
  padding: 0 16px;
  margin: 0 auto;
}

.btnLogin {
  display: flex;
  max-width: 100%;
  cursor: pointer;
  height: 56px;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  text-decoration: none;
  font-weight: 700;
  font-size: 15px;
  line-height: 24px;
  letter-spacing: 0px;
  text-align: center;
  vertical-align: middle;
  transition: All 0.3s ease 0s;
  background: #00B5AD;
  color: #fff;
  border: 1px solid #00B5AD;
}
.btnLogin:hover {
  background: #fff;
  color: #00B5AD;
}

.btn {
  text-decoration: none;
  cursor: pointer;
  outline: none;
  display: flex;
  height: 40px;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 12px;
  line-height: 18px;
  text-align: center;
  gap: 8px;
  padding: 0 24px;
  border-radius: 40px;
  border: 2px solid transparent;
}
.btn.btnPrimary {
  background: #00B5AD;
  color: #fff;
}
.btn.btnIco {
  width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 12px;
  background: #4DC3D0;
}
.btn.btnIco.btnIcoRed {
  background: #F85077;
}
.btn.btnOutline {
  border: 2px solid #00B5AD;
  color: #00B5AD;
}
.btn.btnOutline span {
  color: #00B5AD;
}

.title {
  font-weight: 700;
  font-size: 32px;
  line-height: 40px;
  margin-bottom: 32px;
  color: #1B1B26;
}

/*Аутентификация*/
.pageAuth {

}
.pageAuth .pageAuthWrap {
  display: flex;
  height: 100vh;
  padding: 80px 0;
  justify-content: space-between;
  gap: 24px;
}
.pageAuth .pageAuthWrap .pageAuthLeft {
  position: relative;
  width: 50%;
  height: auto;
  display: flex;
  flex-direction: column;
  background: linear-gradient(125.08deg, #0DA6B4 14.39%, #A7E7E2 84.55%);
  border-radius: 40px;
  padding: 64px;
  justify-content: space-between;
}
.pageAuth .pageAuthWrap .pageAuthLeft:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: -80px;
  top: -80px;
  background: url("../images/auth/bg.png") left top no-repeat;
  border-radius: 40px;
  z-index: 1;
}
.pageAuth .pageAuthWrap .pageAuthLeft .pageAuthLeftTitle {
  font-weight: 700;
  font-size: 44px;
  line-height: 56px;
  letter-spacing: 0px;
  vertical-align: middle;
  color: #fff;
  position: relative;
  z-index: 2;
}
.pageAuth .pageAuthWrap .pageAuthLeft .pageAuthLeftLogo {
  position: relative;
  z-index: 2;
}
.pageAuth .pageAuthWrap .pageAuthLeft .pageAuthLeftLogo img{

}
.pageAuth .pageAuthWrap .pageAuthLeft .pageAuthLeftDoor {
  position: absolute;
  right: 32px;
  bottom: -36px;
}
.pageAuthRight {
  position: relative;
  width: 50%;
  height: auto;
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 40px;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.pageAuthForm {
  display: flex;
  flex-direction: column;
  max-width: 362px;
  gap: 60px;
}
.pageAuthForm .pageAuthFormTitle {
  font-weight: 700;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0px;
  text-align: center;
  vertical-align: middle;
}
.pageAuthForm .pageAuthFormWrap {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.pageAuthForm .pageAuthFormWrap .pageAuthFormInputWrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pageAuthForm .pageAuthFormWrap .pageAuthFormInputWrap .pageAuthFormError {
  transition: All 0.3s ease 0s;
  opacity: 0;
  visibility: hidden;
  padding-left: 26px;
  color: #C30052;
  font-family: Mulish;
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  letter-spacing: 0px;
  vertical-align: middle;
  display: none;
}
.pageAuthForm .pageAuthFormWrap .pageAuthFormInputWrap .pageAuthFormError.show {
  visibility: visible;
  opacity: 1;
  display: flex;
}
.pageAuthForm .pageAuthFormWrap .pageAuthFormInputWrap .pageAuthFormInput {
  width: 100%;
  height: 56px;
  border: 1.5px solid #00B5AD;
  padding-left: 24px;
  font-family: Mulish;
  font-weight: 500;
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0px;
  vertical-align: middle;
  border-radius: 16px;
  color: #14142B;
}
.pageAuthForm .pageAuthFormWrap .pageAuthFormInputWrap .pageAuthFormInput.pageAuthFormInputError {
  border-color: #C30052;
}
.pageAuthForm .pageAuthFormWrap .backPhoneBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.pageAuthForm .pageAuthFormWrap .backPhoneBtn span {
  font-weight: 700;
  font-size: 13px;
  line-height: 18px;
  letter-spacing: 0px;
  text-align: center;
  vertical-align: middle;
}

.header {
  background: linear-gradient(99.23deg, #0DA6B4 3.82%, #A7E7E2 97.03%);
  padding-top: 12px;
  padding-bottom: 12px;
}
.header .headerWrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header .headerWrap .headerLogo {

}
.header .headerWrap .headerLogo img {
  max-height: 60px;
  object-fit: contain;
}
.header .headerWrap .headerInfo {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 51px;
}
.header .headerWrap .headerInfo .headerInfoUser {
  display: flex;
  align-items: center;
  gap: 16px;
}
.header .headerWrap .headerInfo .headerInfoUser .headerInfoUserIco {
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 40px;
  overflow: hidden;
  border: 1px solid #fff;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header .headerWrap .headerInfo .headerInfoUser .headerInfoUserIco img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.header .headerWrap .headerInfo .headerInfoUser .headerInfoUserName {
  color: #fff;
  font-family: Mulish;
  font-weight: 700;
  font-size: 15px;
  line-height: 18px;
  letter-spacing: 0px;
  vertical-align: middle;
}
.header .headerWrap .headerInfo .headerInfoUser .logoutLink {
  margin-left: 8px;
}
.header .headerWrap .headerInfo .goClinicBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  background: #fff;
  border-radius: 40px;
  gap: 4px;
  font-weight: 700;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0px;
  text-align: center;
  vertical-align: middle;
  color: #00B5AD;
  text-decoration: none;
  padding: 0 24px;
}

.header .mobileMenuBtn {
  display: none;
}

.main {
  padding-top: 40px;
  padding-bottom: 100px;
  min-height: calc(100vh - 160px);
}

.mainWrap {
  display: flex;
  gap: 44px;
  justify-content: space-between;
}
.mainWrap .mainContent {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: calc(100% - 334px);
  height: auto;
}
.mainWrap .mainContent.mainContentFull {
  width: 100%;
}
.mainWrap .mainSidebar {
  display: flex;
  flex-direction: column;
  gap: 32px;
  min-width: 334px;
  max-width: 334px;
  height: auto;
}
.mainWrap .mainSidebar .mainSidebarMobile {
  display: none;
}
.mainWrap .mainContent .card-box{
  display: flex;
  flex-direction: column;
  gap: 40px;
}

footer.footer {
  padding: 8px 0px;
  background: #fff;
}
footer.footer .footerText {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}
footer.footer .footerText span {
  font-family: Mulish;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0px;
  color: #1B1B26;
}

.mainSidebar .mainSidebarCallback {
  width: 100%;
  height: 278px;
  background: url('../images/leftCallbackBg.png') center center no-repeat;
  background-size: cover;
  border-radius: 32px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px;
  position: relative;
  color: #fff;
  margin-top: 24px;
  margin-bottom: 24px;
}
.mainSidebar .mainSidebarCallback .mainSidebarCallbackImage {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.mainSidebar .mainSidebarCallback .mainSidebarCallbackImage img {
  width: 100%;
  height: 100%;
}
.mainSidebar .mainSidebarCallback .mainSidebarCallbackTitle {
  font-weight: 700;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0px;
  vertical-align: middle;
  position: relative;
  z-index: 2;
}
.mainSidebar .mainSidebarCallback .mainSidebarCallbackText {
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  position: relative;
  z-index: 2;
  padding-right: 10%;
}
.mainSidebar .mainSidebarCallback .mainSidebarCallbackButton {
  position: relative;
  z-index: 2;
  margin-top: 32px;
  width: fit-content;
  height: 40px;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 700;
  font-size: 13px;
  line-height: 18px;
  color: #00B5AD;
  border-radius: 40px;
  background: #fff;
}

.mainSidebar .mainSidebarQuestion {
  width: 100%;
  height: 336px;
  background: linear-gradient(99.23deg, #0DA6B4 3.82%, #A7E7E2 97.03%);
  box-shadow: 0px 2px 8px 0px #389A9D26;
  border-radius: 32px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
  position: relative;
  color: #fff;
  margin-top: 24px;
  margin-bottom: 24px;
  overflow: hidden;
}
.mainSidebar .mainSidebarQuestion .mainSidebarQuestionImage {
  position: absolute;
  right: -20px;
  bottom: 0;
  width: 180px;
  height: auto;
  z-index: 1;
}
.mainSidebar .mainSidebarQuestion .mainSidebarQuestionImage img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.mainSidebar .mainSidebarQuestion .mainSidebarQuestionTitle {
  font-weight: 700;
  font-size: 17px;
  line-height: 24px;
  position: relative;
  z-index: 2;
  padding-right: 70px;
}
.mainSidebar .mainSidebarQuestion .mainSidebarQuestionText {
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  position: relative;
  z-index: 2;
  padding-right: 10%;
}
.mainSidebar .mainSidebarQuestion .mainSidebarQuestionButton {
  position: relative;
  z-index: 2;
  width: fit-content;
  height: 40px;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 700;
  font-size: 13px;
  line-height: 18px;
  color: #00B5AD;
  border-radius: 40px;
  background: #fff;
}

.mainContent .choose__doctors {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px 10px;
  flex-wrap: wrap;
  margin-bottom: 64px;
}
.mainContent .pagination {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}
.mainContent .pagination__number, .mainContent .pagination__arrow {
  border-radius: 50%;
  border: 1px solid inherit;
  width: 44px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.mainContent .pagination__number-prev, .mainContent .pagination__arrow-prev {
  transform: rotate(180deg);
}
.mainContent .pagination__active {
  border: 1px solid #000;
}
@media (max-width: 768px) {
  .mainContent .pagination {
    display: none;
  }
}

.promotions__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
.promotions__bottom .right__button {
  flex-basis: 300px;
}
@media (max-width: 768px) {
  .promotions__bottom .right__button {
    flex-basis: 100%;
  }
}

.button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 11px 24px;
  border-radius: 16px;
  cursor: pointer;
  transition: all 0.3s;
  width: 100%;
  text-align: center;
  font-size: clamp(12px, 1vw, 13px);
  white-space: nowrap;
}
.button-outline {
  border: 1px solid #00A7AA;
  background-color: transparent;
  border-radius: 40px;
  color: #00A7AA;
  transition: all 0.3s;
}
.button-filled-primary {
  background-color: #00A7AA;
  color: #fff;
  transition: all 0.3s;
}

.mobilePanel {
  display: none;
}

.mobileCallback {
  width: 100%;
  height: 278px;
  background: url('../images/leftCallbackBg.png') center center no-repeat;
  background-size: cover;
  border-radius: 32px;
  display: none;
  flex-direction: column;
  gap: 8px;
  padding: 24px;
  position: relative;
  color: #fff;
  margin-top: 24px;
  margin-bottom: 24px;
}
.mobileCallback .mobileCallbackImage {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.mobileCallback .mobileCallbackImage img {
  width: 100%;
  height: 100%;
}
.mobileCallback .mobileCallbackTitle {
  font-weight: 700;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0px;
  vertical-align: middle;
  position: relative;
  z-index: 2;
}
.mobileCallback .mobileCallbackText {
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  position: relative;
  z-index: 2;
  padding-right: 10%;
}
.mobileCallback .mobileCallbackButton {
  position: relative;
  z-index: 2;
  margin-top: 32px;
  width: fit-content;
  height: 40px;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 700;
  font-size: 13px;
  line-height: 18px;
  color: #00B5AD;
  border-radius: 40px;
  background: #fff;
}

.researchNoResult {
  padding: 48px;
  border-radius: 40px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
.researchNoResult .researchNoResultInfo {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 377px;
}
.researchNoResult .researchNoResultInfo .researchNoResultText {
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
}
.researchNoResult .researchNoResultInfo .btnPrimary {
  max-width: 180px;
}
.researchNoResult .researchNoResultImage {
  max-width: 200px;
}
.researchNoResult .researchNoResultImage img {
  width: 100%;
  max-width: 100%;
  object-fit: contain;
}