:root {
  --main-c: #142B45;
  --akcent-c: #A53366;
  --blue-c: #5073A6;
  --light-c: #fff;
  --black-c: #2A2C2F;
  --grey-c: #8F949E;
}

body,
div,
dl,
dt,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
figure,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset,
img,
abbr {
  border: 0;
}

address,
caption,
cite,
code,
dfn,
th,
var {
  font-style: normal;
  font-weight: normal;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

legend {}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block;
}

img {
  max-width: 100%;
  height: auto;
}

button {
  font-size: inherit;
  padding: inherit;
  border: inherit;
  line-height: inherit;
}

html,
body {
  /* height: 100vh; */
}

/* Основной скролл */
html {
  scrollbar-gutter: stable;
  /* Новое свойство, но пока работает не везде */
  scroll-behavior: smooth;
  scroll-padding-top: 95px;
}

/* Выделение текста */
::-moz-selection {
  background: var(--akcent-c) !important;
  /* Safari */
  color: var(--light-c) !important;
}

::selection {
  background: var(--akcent-c) !important;
  /* Safari */
  color: var(--light-c) !important;
}

::-moz-selection {
  background: var(--akcent-c) !important;
  /* Firefox */
  color: var(--light-c) !important;
}

/* Стилизация скроллбара */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--akcent-c) rgb(243, 248, 248);
}

/* для Chrome/Edge/Safari */
*::-webkit-scrollbar {
  height: 12px;
  width: 8px;
}

*::-webkit-scrollbar-track {
  background: rgb(243, 248, 248);
}

*::-webkit-scrollbar-thumb {
  background-color: var(--akcent-c);
  border-radius: 5px;
  border: 3px solid var(--akcent-c);
}

/* End Стилизация скроллбара */

a:active,
a:focus {
  outline: none;
}

input,
textarea {
  outline: none;
}

input:active,
textarea:active {
  outline: none;
}

:focus {
  outline: none;
}

textarea {
  resize: none;
}

textarea {
  resize: vertical;
}

textarea {
  resize: horizontal;
}

button:focus-visible {
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

picture {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

picture img {
  width: 100%;
}

/* Tipograf */

a {
  text-decoration: unset;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
  color: var(--akcent-c);
}

a:hover {
  color: var(--akcent-c);
}

h1,
.h1 {
  font-weight: 600;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 110%;
  color: var(--main-c);
  margin-top: 24px;
  margin-bottom: 24px;
}

h2,
.h2 {
  font-weight: 600;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 110%;
  margin-top: 24px;
  margin-bottom: 24px;
  color: var(--main-c)
}

h3,
.h3 {
  font-weight: 600;
  font-size: clamp(20px, 2.5vw, 26px);
  line-height: 125%;
  margin-top: 22px;
  margin-bottom: 22px;
  color: var(--main-c)
}

h4,
.h4 {
  font-weight: 600;
  font-size: clamp(21px, 2vw, 24px);
  line-height: 130%;
  margin-top: 20px;
  margin-bottom: 20px;
  color: var(--main-c)
}

h1:first-child,
.h1:first-child,
h2:first-child,
.h2:first-child,
h3:first-child,
.h3:first-child,
h4:first-child,
.h4:first-child {
  margin-top: 0;
}

p {
  margin-bottom: 20px;
}

p:last-child {
  margin-bottom: 0;
}

blockquote {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  margin: 0 0 33px 0;
  padding-left: 32px;
  border-left: 2px solid var(--blue-c);
}

blockquote:last-child {
  margin-bottom: 0;
}

ul {
  padding: 0;
}

ul li {
  list-style: none;
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
}

ul li:last-child {
  margin-bottom: 0;
}

ul>li:before {
  content: '';
  width: 4px;
  min-width: 4px;
  height: 4px;
  border-radius: 10px;
  position: relative;
  left: -9px;
  background-color: var(--black-c);
  position: absolute;
  left: 5px;
  top: 12px;
}

ol {
  list-style-type: none;
  counter-reset: num;
  margin: 24px 0 24px 47px;
  padding: 0;
}

ol>li {
  position: relative;
  margin: 0;
  padding: 0 0 20px 0;
  /* font-size: 15px; */
  line-height: 150%;
}

ol>li:last-child {
  padding-bottom: 0;
}

ol>li:before {
  content: counter(num);
  counter-increment: num;
  display: inline-block;
  position: absolute;
  top: -5px;
  left: -47px;
  color: #002038;
  text-align: center;
  font-size: 14px;
  background: #E8EFF8;
  width: 31px;
  height: 31px;
  line-height: 31px;
  border-radius: 50px;
}

/* End Tipograf */

/* Таблицы */

table {
  width: 100%;
  background: #f4f8ff;
  border: 1px solid #f4f8ff;
  margin-bottom: 16px;
  overflow: hidden;
  border-radius: 8px;
}

@media screen and (max-width:787px) {
  table {
    font-size: 14px
  }
}

table thead tr {
  background-color: #E8EFF8;
  border-bottom: 1px solid #f4f8ff;
}

table thead tr th {
  padding: .6rem 1rem
}

@media screen and (max-width:787px) {

  .tablepress thead tr th,
  table thead tr th {
    padding: 5px 13px
  }
}

table td {
  padding: .6rem 1rem;
  border: 1px solid #e8eff8;
}

@media screen and (max-width:787px) {
  table td {
    padding: 10px 13px
  }
}

table tr {
  background: var(--light-c);
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar
}

@media screen and (max-width:787px) {
  .table-responsive {
    margin-bottom: 15px;
    overflow-x: scroll;
    overflow-y: hidden;
    border: 1px solid #f4f8ff;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-overflow-scrolling: touch
  }
}


/* Таблицы */

body {
  font-family: 'DM Sans', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 17px;
  line-height: 145%;
  color: var(--black-c);
  background: #F4F6F9;
  overflow-x: hidden;
}

body.hidden {
  overflow: hidden;
}

html:not(.bvi-panel) *,
html:not(.bvi-panel) ::after,
html:not(.bvi-panel) ::before {
  box-sizing: border-box;
}

.container {
  width: 100%;
  /* max-width: 1400px; */
  max-width: 1432px;
  margin: 0 auto;
  padding-left: 16px;
  padding-right: 16px;
  position: relative;
}

.container .container {
  padding-left: 0;
  padding-right: 0;
}

.row {
  display: flex;
  flex-wrap: wrap;
}

.section {
  margin-top: 64px;
  margin-bottom: 64px;
}

.section--mt {
  margin-top: 64px;
  margin-bottom: 0 !important;
}

.section--mb {
  margin-top: 0 !important;
  margin-bottom: 64px;
}

.section--nm {
  margin: 0 !important;
}

.section--bg1 {
  background: var(--light-c);
  padding: 64px 0;
}

.section__wr-title {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
  margin-bottom: 40px;
  position: relative;
  z-index: 1;
}

.section__wr-title--column {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 20px;
}

.section__wr-title .btn {
  min-width: 180px;
}

.section__title {
  width: 100%;
  max-width: 40%;
  margin: 0;
}

.section__wr-title--column .section__title {
  max-width: unset;
}

.section__descript {
  max-width: 420px;
}

.wr-breadcrumb+.section {
  margin-top: 40px;
}

/* Кнопки */

.btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 8px;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 13px 32px;
  border-radius: 4px;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
  background: var(--akcent-c);
  color: var(--light-c);
  border: 1px solid var(--akcent-c);
  box-sizing: border-box;
}

.btn svg,
.btn svg path {
  transition: .3s;
}

.btn:hover {
  background: #852751;
  color: var(--light-c);
  cursor: pointer;
}

.btn--wt {
  background: transparent;
  color: var(--light-c);
  border: 1px solid var(--light-c);
}

.btn--wt:hover {
  background: var(--light-c);
  color: var(--main-c);
}

.btn--wt:hover svg path {
  stroke: var(--main-c);
}

.btn--gr {
  background: var(--blue-c);
  color: var(--light-c);
  border: 1px solid transparent;
}

.btn--gr:hover {
  background: #3d5983;
  color: var(--light-c);
}

.btn--wt-br {
  background: transparent;
  color: var(--akcent-c);
  border: 1px solid rgba(165, 51, 102, 0.25);
}

.btn--wt-br:hover {
  color: var(--akcent-c);
  background: rgba(165, 51, 102, 0.25);
}

.btn:hover svg {
  transform: rotate(90deg);
}

.btn-group {
  display: flex;
  justify-content: center;
  margin-top: 40px;
  position: relative;
  z-index: 1;
}

.video-btn {
  display: flex;
  justify-content: center;
  align-items: center;
}

.play {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 100px;
  transition: 0.3s;
  background: #AC5F84;
}

.play svg {
  position: relative;
  right: -2px;
  transition: 0.3s;
}

.play svg path {
  transition: 0.3s;
}

.play:hover {
  background: #fff;
}

.play:hover svg path {
  fill: #AC5F84;
}

.play--wt {
  background: #fff;
}

.play.play--wt:hover {
  background: #AC5F84;
}

.play.play--wt:hover svg path {
  fill: #fff;
}

.link-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.link-more svg {
  transition: .3s;
}

.link-more:hover svg {
  transform: rotate(90deg);
}

/* End Кнопки */


/* Формы */

.fancybox__content {
  padding: 0;
}

.forma-popup {
  display: none;
  max-width: 842px;
  width: 100%;
  background: linear-gradient(104.68deg, #F3EDEF 0%, #E8EFF8 100.76%);
  ;
  border-radius: 8px;
  padding: 40px 64px;
  box-sizing: border-box;
}

.forma-popup__forma {
  width: 50%;
  margin-left: auto;
  padding: 0 0 0 10px;
  position: relative;
  z-index: 1;
}

.forma-popup:before,
.forma-popup:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  height: 100%;
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: contain;
}

.forma-popup:before {
  background-image: url(../image/fbf.svg);
}

.forma-popup:after {
  background-image: url(../image/faf.png);
}

.forma-popup__title {
  text-align: center;
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
  margin-bottom: 24px;
}

::placeholder {
  opacity: 1;
  color: var(--grey-c);
}

form {
  display: flex !important;
  flex-direction: column;
  gap: 16px;
}

form .btn {
  align-self: center;
}

.forma--nalog {
  gap: 42px;
}

.forma--nalog .polit {
  max-width: 516px;
  margin: 0 auto;
}

select,
input[type=text],
input[type=tel],
input[type=number],
input[type=email],
input[type=password],
input[type=date],
textarea {
  display: block;
  width: 100%;
  padding: 17px 24px;
  background: var(--light-c);
  border-radius: 8px;
  border: 1px solid transparent;
  box-shadow: 0px 12px 32px -8px rgba(12, 12, 13, 0.05);
}

textarea {
  min-height: 160px;
  max-height: 160px;
  text-align: left;
}

.btn.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
  /* Блокирует клики по <a>, <div>, <button> */
  user-select: none;
}

input[type=text]:active,
input[type=text]:focus,
input[type=tel]:active,
input[type=tel]:focus,
input[type=number]:active,
input[type=number]:focus,
input[type=email]:active,
input[type=email]:focus,
input[type=password]:active,
input[type=password]:focus,
textarea:active,
textarea:focus {
  box-shadow: 0px 4px 45px rgba(0, 0, 0, 0.05);
}

.polit {
  font-size: 14px;
  display: flex;
  gap: 16px;
  margin-top: 8px;
  margin-bottom: 8px;
}


input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=checkbox]+i,
input[type=radio]+i {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  background: var(--light-c);
  box-sizing: border-box;
  transition: .3s;
}

input[type=checkbox]+i {
  border: 1px solid #E8E8E8;
  min-width: 24px;
  height: 24px;
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

input[type=radio]+i {
  border: 1px solid #E8E8E8;
  border-radius: 50%;
  min-width: 24px;
  width: 24px;
  height: 24px;
  overflow: hidden;
}

input[type=checkbox]+i svg {
  opacity: 0;
  position: absolute;
  transition: .3s;
}

input[type=radio]+i:before {
  content: "";
  position: absolute;
  opacity: 0;
  transition: .3s;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  top: 5px;
  left: 5px;
  box-sizing: content-box;
  background: var(--akcent-c);
}

input[type=checkbox]:checked+i svg {
  opacity: 1;
}

input[type=radio]:checked+i:before {
  opacity: 1;
}

input[type="file"] {
  cursor: pointer;
}

.radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}

.radio-container {
  display: flex;
  align-items: center;
  gap: 12px;
  transition: .3s;
}

.radio-container span {
  color: #8F949E;
  transition: .3s;
}

.radio-container:hover {
  cursor: pointer;
}

.radio-container:hover span {
  color: var(--akcent-c);
}

input[type=radio]:checked+i+span {
  color: var(--black-c);
}

.filegroup {
  width: 100%;
  box-sizing: border-box;
  position: relative;
  transition: .3s;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  gap: 8px;
  border: 1px dashed var(--grey-c);
  border-radius: 8px;
  transition: .3s;
}

.filegroup__file {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.filegroup__label {
  color: var(--grey-c);
  padding: 16px 24px 16px 54px;
  flex: 1;
  cursor: pointer;
  transition: .3s;
}

.filegroup svg {
  position: absolute;
  left: 24px;
}

.filegroup svg path {
  transition: .3s;
}

.filegroup:hover {
  border: 1px dashed var(--akcent-c);
}

.filegroup:hover .filegroup__label {
  color: var(--akcent-c);
}

.filegroup:hover svg path {
  stroke: var(--akcent-c);
}

.forma-row {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.forma-row .tg-but,
.forma-row .filegroup {
  flex: 1 1 50%;
  width: 48%;
}

.filegroup._active {
  border-color: var(--akcent-c);
}

.filegroup._active .filegroup__label {
  color: var(--akcent-c);
}

.filegroup._active svg path {
  stroke: var(--akcent-c);
}

/* Обновим существующий стиль для лейбла, чтобы текст не налезал на крестик */
.filegroup__label {
  color: var(--grey-c);
  padding: 16px 45px 16px 54px;
  flex: 1;
  cursor: pointer;
  transition: .3s;

  /* Важные свойства для обрезки */
  white-space: nowrap;
  overflow: hidden;
  position: relative;

  /* Создаем маску: текст виден на 80%, а потом плавно уходит в прозрачность */
  -webkit-mask-image: linear-gradient(to right, black 80%, transparent 100%);
  mask-image: linear-gradient(to right, black 80%, transparent 100%);
}

.filegroup:not(._active) .filegroup__label {
  -webkit-mask-image: none;
  mask-image: none;
}

/* Стили кнопки удаления */
.filegroup__clear {
  display: none;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  font-size: 17px;
  color: var(--grey-c);
  cursor: pointer;
  line-height: 16px;
  padding: 5px;
  z-index: 2;
  border: 1px solid;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  background: #fff;
  padding: 0;
}

.filegroup__clear:hover {
  color: #ff4d4d;
  /* Красный при наведении */
}

/* Когда файл выбран, показываем кнопку */
.filegroup._active .filegroup__clear {
  display: block;
}

/* Стили активного состояния (файл прикреплен) */
.filegroup._active {
  border-color: var(--akcent-c);
}

.filegroup._active .filegroup__label {
  color: var(--akcent-c);
}

.filegroup._active svg path {
  stroke: var(--akcent-c);
}

.forma__group {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.forma_group-label {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.forma-row--3 {
  flex-wrap: wrap;
}

.forma-row--3 input {
  max-width: calc(33.3333% - 14px);
}

.forma-row--3 .input-100 {
  max-width: 100%;
}

.forma-row--cont .input-phone {
  max-width: 250px;
}

.is-compact .fancybox__content>.f-button.is-close-btn {
  --f-button-bg: var(--akcent-c);
}

.fancybox__container {
  --fancybox-bg: rgb(12 28 47 / 94%)
}

.wr-cookies {
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 35px;
  z-index: 10000;
  display: none;
}

.wr-cookies__container {
  max-width: 1440px;
  margin: auto;
  padding-left: 14px;
  padding-right: 14px;
}

.cookies {
  background: var(--light-c);
  border-radius: 8px;
  padding: 20px 24px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  box-shadow: 0px 20px 85px rgba(36, 36, 36, 0.15);
}

.cookies a:hover {
  color: var(--black-c);
}

.cookies a.btn:hover {
  color: var(--light-c);
}


.cookes__text {
  font-size: 14px;
  line-height: 150%;
  max-width: 900px;
  color: var(--black-c);
  display: flex;
  gap: 16px;
}

.cookes__text:before {
  content: '';
  width: 36px;
  height: 36px;
  min-width: 36px;
  background-image: url(../image/cookies-img.svg);
  background-position: center;
  background-repeat: no-repeat;
  align-self: center;
}

.cookies__btn-group {
  display: flex;
  align-items: center;
  gap: 24px;
  font-size: 14px;
  color: var(--black-c);
}

.checkbox {
  display: flex;
  gap: 16px;
  transition: .3s;
}

.checkbox:hover {
  cursor: pointer;
  color: var(--akcent-c);
}

/* End Формы */


/* Header */

.header {
  padding: 16px 0 0 0;
  position: sticky;
  top: -73px;
  z-index: 3;
}

.header>.container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  column-gap: 16px;
  margin-bottom: 16px;
}

.header__left,
.header__right {
  display: flex;
  align-items: center;
}

.header__left {
  gap: 16px;
}

.header__right {
  gap: 12px;
  align-self: flex-end;
  margin-left: auto;
}

.logo {
  display: flex;
}

.ln-ico {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--main-c);
  position: relative;
  transition: .3s;
}

.ln-ico__drop {
  display: flex;
  flex-direction: column;
  padding: 24px;
  position: absolute;
  background: #FFFFFF;
  box-shadow: 0px 15px 35px -12px rgba(31, 31, 53, 0.1);
  border-radius: 8px;
  width: max-content;
  max-width: 260px;
  top: 38px;
  z-index: 10;
  transition: .3s;
  opacity: 0;
  visibility: hidden;
}

.ln-ico__drop:before {
  content: '';
  top: -12px;
  left: 0;
  height: 12px;
  width: 100%;
  position: absolute;
}

.ln-ico span {
  border-bottom: 1px dashed var(--main-c);
  transition: .3s;
}

.ln-ico:hover .ln-ico__drop {
  opacity: 1;
  visibility: visible;
}

.ln-ico:hover span {
  border-bottom: 1px dashed var(--akcent-c);
  color: var(--akcent-c);
  cursor: pointer;
}

.ln-ico svg path {
  transition: .3s;
}

.ln-ico:hover svg path {
  stroke: var(--akcent-c);
}


.header__phone {
  color: var(--main-c);
  color: var(--black-c);
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.ico-mess {
  transition: .3s;
  display: flex;
}

.ico-mess:hover {
  transform: scale(1.05);
}

.header .btn {
  padding: 7px 20px;
}

.header .btn--wt {
  color: var(--akcent-c);
  border: 1px solid rgba(165, 51, 102, 0.25);
}

.header .btn--wt:hover {
  background: rgba(165, 51, 102, 0.25);
}

.bvi-open {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 6px;
  box-sizing: border-box;
  border: 1px solid #B2CEF0;
  border-radius: 4px;
  transition: .3s;
}

.bvi-open:hover {
  background: #c9def7;
  cursor: pointer;
}

.burger-menu {
  display: none;
}

/* End Header */



/* Main Menu */

.nav {
  margin-bottom: -25px;
  position: sticky;
  top: 3px;
  z-index: 1;
}

.nav__wr {
  background: var(--light-c);
  padding: 4px;
  border-radius: 4px;
  display: flex;
  column-gap: 16px;
  align-items: center;
  flex-wrap: wrap;
  box-shadow: 0px 12px 40px -8px rgba(12, 12, 13, 0.1);
}

.nav__adress {
  display: none;
}

.nav__right {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-left: auto;
}

.soc {
  display: flex;
  align-items: center;
  gap: 12px;
}

.soc__item {
  display: flex;
  transition: .3s;
}

.soc__item:hover {
  transform: scale(1.05);
}

.nav__right .btn {
  padding: 7px 20px;
}

.main-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  gap: 4px;
  margin: 0;
  padding: 0;
}

.main-menu__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  position: relative;
  padding-left: 0;
  margin-bottom: 0;
}

.main-menu__item:before {
  display: none;
}

.main-menu__item a {
  padding: 8px;
  font-size: 17px;
  color: var(--black-c);
  font-weight: 500;
  border-radius: 4px;
  position: relative;
  box-sizing: border-box;
}

.main-menu__item a svg {
  display: none;
  transition: .3s;
}

.main-menu__item a:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 15px;
  bottom: -10px;
  left: 0;
  background: transparent;
}

.main-menu__item--first.active>a,
.main-menu__item.active>a,
.main-menu__item:hover>a {
  color: var(--akcent-c);
}

.main-menu__item.active>a svg {
  transform: rotate(90deg);
}

.main-menu__item--first a {
  background: #E8EFF8;
  padding: 8px 22px;
}

.main-menu__item--first a:hover {
  background: var(--blue-c);
  color: #fff;
}

.main-menu__item .sub-menu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  width: 330px;
  padding: 24px;
  margin: 0;
  list-style: none;
  display: none;
  border-radius: 8px;
  text-align: left;
  box-sizing: border-box;
  background: var(--light-c);
  z-index: 1;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
}


.main-menu__item .sub-menu__item {
  margin-bottom: 12px;
  padding-left: 0;
}

.main-menu__item .sub-menu__item:before {
  display: none;
}


.main-menu__item .sub-menu__item:last-child {
  margin-bottom: 0;
}

.main-menu__item .sub-menu__item a {
  display: block;
  padding: 0;
}

.main-menu__item .sub-menu__item:hover a {
  color: var(--akcent-c);
}


.nav-hed {
  display: none;
}

.nav-hed__top {
  background: #F4F6F9;
  text-align: center;
  font-size: 14px;
  line-height: 150%;
  padding: 8px;
}

.nav-hed__hed {
  padding: 8px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #EBECEF;
}


/* tabs_menus */
.tabs_menus {
  position: absolute;
  width: 100%;
  z-index: 20;
  display: none;
  z-index: 17;
  top: calc(100% + 2px);
}

.tabs_menus__wr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  height: 100%;
  padding-top: 48px;
  padding-bottom: 77px;
  background: var(--light-c);
  padding: 16px;
  border-radius: 8px;
}

.tabs_menus .tabs_menus__wr-nav-tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 327px;
  position: relative;
}

.tabs_menus__back {
  display: none;
  margin-top: 26px;
  margin-bottom: 23px;
}

.tabs_menus__back svg path {
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
  stroke: var(--black-c);
}

.tabs_menus .nav-tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  border-bottom: 0;
  margin: 0;
  padding: 0;
  height: 100%;
  gap: 2px;
}

.tabs_menus .nav-tabs>li {
  float: left;
  width: 100%;
  border: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.tabs_menus .nav-tabs>li:before {
  display: none;
}

.tabs_menus .nav-tabs>li,

.tabs_menus .nav-tabs>li>a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: space-between;
  font-weight: 500;
  font-size: 21px;
  line-height: 135%;
  width: 100%;
  color: var(--main-c);
  padding: 12px 16px;
  background: #F4F6F9;
  border-radius: 4px;
  box-sizing: border-box;
  transition: .3s;
}

.tabs_menus .nav-tabs>li:hover,
.tabs_menus .nav-tabs>li.active,

.tabs_menus .nav-tabs>li>a:hover,
.tabs_menus .nav-tabs>li>a.active {
  color: var(--akcent-c);
  background: #F8EFF3;
  cursor: pointer;
}

.tabs_menus .nav-tabs>li svg,

.tabs_menus .nav-tabs>li>a svg {
  transition: .3s;
}

.tabs_menus .nav-tabs>li:hover svg,

.tabs_menus .nav-tabs>li>a:hover svg {
  transform: rotate(45deg);
}

.tabs_menus .nav-tabs>li.active,

.tabs_menus .nav-tabs>li.active>a {
  color: var(--akcent-c);
  background: #F8EFF3;
}

.tabs_menus .nav-tabs>li.active svg,

.tabs_menus .nav-tabs>li.active>a svg {
  transform: rotate(45deg);
}

.tabs_menus .nav-tabs>li:before,

.tabs_menus .nav-tabs>li>a:before {
  display: none;
}

.tabs_menus .tab-content {
  width: 100%;
  padding: 0 0 0 32px;
  border: 0;
  position: relative;
}

.tab-content__wr-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.tabs_menus .nav-tabs>li.active:hover,
.tabs_menus .nav-tabs>li.active:focus,
.tabs_menus .nav-tabs>li.active,

.tabs_menus .nav-tabs>li.active:hover>a,
.tabs_menus .nav-tabs>li.active:focus>a,
.tabs_menus .nav-tabs>li.active>a {
  border: 0;
  cursor: pointer;
}

.tab-content>.tab-pane {
  display: none;
}

.tab-content>.active {
  display: block;
}

.tabs_menus .tab-content .tab-pane {}

.tabs_menus .tab-content .tab-pane a.ttl_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  text-decoration: unset;
  width: 100%;
  font-weight: 500;
  font-size: 21px;
  line-height: 130%;
  margin-bottom: 32px;
  background: #F4F6F9;
  border-radius: 4px;
  padding: 16px 24px;
  box-sizing: border-box;
}

.tabs_menus .tab-content .tab-pane a.ttl_link:hover,
.tabs_menus .tab-content .tab-pane.active a.ttl_link {}

.tabs_menus .tab-content .tab-pane a.ttl_link svg {}

.tabs_menus .tab-content .tab-pane a.ttl_link svg path {}

.tabs_menus .tab-content .tab-pane a.ttl_link svg,
.tabs_menus .tab-content .tab-pane a.ttl_link svg path {
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

.tabs_menus .tab-content .tab-pane a.ttl_link:hover svg {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.tabs_menus .tab-content .tab-pane a.ttl_link:hover svg path,
.tabs_menus .tab-content .tab-pane.active a.ttl_link svg path {}

.tabs_menus .tab-content .tab-pane .ttls {
  margin: 0;
  padding: 0;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  column-gap: 32px;
}

.tabs_menus .tab-content .tab-pane .ttls li {
  list-style: none;
  margin-bottom: 12px;
  padding-left: 0;
}

.tabs_menus .tab-content .tab-pane .ttls li:before {
  display: none;
}

.tabs_menus .tab-content .tab-pane .ttls a.subttl_link {
  color: var(--main-c);
  text-decoration: unset;
  display: block;
}

.tabs_menus .tab-content .tab-pane .ttls a.subttl_link:hover {
  color: var(--akcent-c);
}

.tabs_menus .tab-content .tab-pane .ttls a.subttl_link:hover span {
  border-bottom: 1px solid transparent;
}

.tabs_menus .block-bottom {
  margin-top: 25px;
}

/* end ctabs_menus */

/* End Main Menu */




.close {
  width: 20px;
  height: 20px;
  background: url(../image/close.svg) no-repeat center;
  background-size: 100%;
}

/* calk */

.calk {
  display: flex;
  align-items: center;
  padding: 24px 32px;
  box-sizing: border-box;
  gap: 40px;
  background: url(../image/calc-bg.png) no-repeat bottom right, linear-gradient(90deg, #E1EBF8 0%, #E1EAD9 100%);
  border-radius: 8px;
}

.calk__capt {
  max-width: clamp(300px, 15vw + 157px, 445px);
}

.calk__title {
  font-weight: 600;
  font-size: 26px;
  margin-bottom: 12px;
  line-height: 125%;
}

.calk__text {
  font-size: 14px;
  line-height: 150%;
}

/* calk--lg */

.calk--lg {
  min-height: 300px;
}

.calk--lg .calk__title {
  font-size: clamp(27px, 0.8vw + 18.8px, 34px);
  line-height: 110%;
  color: var(--main-c);
  margin-bottom: 20px;
}

/* End calk */

/* main-offer */

.main-offer {
  background: var(--main-c);
  color: var(--light-c);
  /* min-height: calc(100vh - 100px); */
  min-height: 700px;
  padding: 64px 0;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  display: flex;
}

.main-offer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  z-index: 1;
}

.main-offer__bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  object-fit: cover;
  pointer-events: none;
}


.main-offer__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 440px;
  /* Чтобы распределить контент по высоте */
  height: 100%;
}

.main-offer__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
}

.main-offer__title {
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 600;
  margin: 0;
  flex: 0 1 700px;
  color: var(--light-c);
  max-width: 500px;
}

.main-offer__subtitle {
  font-size: 18px;
  line-height: 1.4;
  margin: 0;
  flex: 0 1 320px;
  padding-top: 10px;
}

.main-offer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 60px;
}

.main-offer__actions {
  display: flex;
  gap: 20px;
}

/* Блок специалистов */
.main-offer__specialists {
  display: flex;
  align-items: center;
  gap: 20px;
}

.main-offer__avatars {
  display: flex;
  align-items: center;
}

.main-offer__avatar,
.main-offer__count {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 3px solid #F4F6F9;
  background: #F4F6F9;
  overflow: hidden;
  margin-left: -15px;
  /* Наложение кругов друг на друга */
  position: relative;
}

.main-offer__avatar:first-child {
  margin-left: 0;
}

.main-offer__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.main-offer__count {
  background: #E8F1F8;
  color: #4D76A1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 18px;
}

.main-offer__link {
  color: #FFFFFF;
  text-decoration: none;
  max-width: 140px;
}

.main-offer__link span {
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  transition: .3s;
}

.main-offer__link:hover span {
  border-color: var(--akcent-c);
}


@media (max-width: 1290px) {
  .main-offer__title {
    font-size: 48px;
  }
}

@media (max-width: 1024px) {
  .main-offer {
    min-height: 600px;
    padding: 32px 0;
  }

  .main-offer__title {
    font-size: 40px;
    flex: 0 1 500px;
  }

  .main-offer__inner {
    min-height: auto;
    gap: 50px;
  }
}

@media (max-width: 767px) {

  .main-offer__top {
    flex-direction: column;
    gap: 20px;
  }

  .main-offer__title {
    font-size: 32px;
    flex: none;
    width: 100%;
  }

  .main-offer__subtitle {
    flex: none;
    width: 100%;
    font-size: 16px;
    padding-top: 0;
  }

  .main-offer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    margin-top: 40px;
  }

  .main-offer__actions {
    width: 100%;
  }

  /* Делаем кнопки на всю ширину на мобилках, если это нужно */
  .main-offer__actions .btn {
    flex: 1 1 calc(50% - 10px);
    justify-content: center;
  }

  .main-offer__avatar,
  .main-offer__count {
    width: 56px;
    height: 56px;
  }
}

.calk--lg {
  background: url(../image/calc-lg-bg.png) no-repeat bottom -170px right 40px, linear-gradient(90deg, #E1EBF8 0%, #E1EAD9 100%);
  padding: clamp(40px, 0.45vw + 15.4px, 24px) clamp(20px, 2.68vw + 12.6px, 64px);
}

.calk--lg .calk__text {
  font-size: 17px;
  line-height: 145%;
}

.calk__mid {
  text-align: center;
}

.calk__mid p {
  text-align: center;
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  max-width: 208px;
}

/* End main-offer */

/* breadcrumb */

.wr-breadcrumb {
  margin: 45px 0 20px 0;
}

.breadcrumb {
  margin: 0;
  display: flex;
  position: relative;
  color: var(--grey-c);
  font-size: 14px;
  line-height: 150%;
}

.breadcrumb li {
  margin: 0;
  padding: 0;
}

.breadcrumb li::before {
  display: none;
}

.breadcrumb li a {
  color: var(--grey-c);
}

.breadcrumb li a:hover {
  color: var(--akcent-c);
}


.breadcrumb .razd {
  margin: 0 20px 0 18px;
}

/* End breadcrumb */

/* page-title */

.page-title {
  margin: 40px auto;
}

.page-title .container {
  display: flex;
  /* align-items: center; */
  justify-content: space-between;
  gap: 32px;
}

.page-title__title {
  margin: 0;
}

.page-title__descript {
  max-width: 400px;
  color: #2A2C2F;
}

.page-title__col {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-title__col:last-child {
  width: 100%;
  max-width: 276px;
}

.page-title__col .page-title__descript {
  max-width: 550px;
}

.art-td {
  padding: 8px 0px 8px 24px;
  border-left: 1px solid #9897A4;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.art-td p {
  margin-bottom: 4px;
  font-size: 15px;
}

.article-content h2,
.article-content h3,
.article-content h4 {
  scroll-margin-top: 100px;
}

.author-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px;
  gap: 32px;
  background: #E8EFF8;
  border-radius: 8px;
  flex: none;
  order: 0;
  align-self: stretch;
  flex-grow: 0;
}

.author-card__capt {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.author-card__info {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.author-card__text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.author-card__photo {
  max-width: 56px;
  border-radius: 100px;
}

.author-card__label,
.author-card__post {
  font-size: 14px;
  line-height: 150%;
}

.author-card__name {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  color: var(--main-c);
}

.author-card .btn {
  width: 100%;
}

.article-sidebar .author-card {
  position: sticky;
  top: 66px;
}

.article-body__wr-cont .page-title.page-title--s2:first-child {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 40px;
  background: #E8EFF8;
  border-radius: 12px;
  box-sizing: border-box;
  margin-top: 0;
}

.page-title--s2 .page-title__descript {
  max-width: 100%;
}

/* End page-title */

/* Карточка врача */
.row-carts {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -16px 40px -16px;
  row-gap: 32px;
}

.row-carts .cart-doc {
  width: calc(33.333% - 32px);
  margin: 0 16px;
}

.cart-doc {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  position: relative;
}

.cart-doc__top {
  position: relative;
  width: 100%;
}

.cart-doc__img {
  display: flex;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
}

.cart-doc__img img {
  width: 100%;
  object-fit: cover;
}


.cart-doc__st-pr {
  position: absolute;
  bottom: 16px;
  left: 16px;
  width: calc(100% - 32px);
  display: flex;
  gap: 16px;
}

.stage {
  padding: 12px 20px;
  background: #FFFFFF;
  border-radius: 4px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.stage--wt {
  background: rgba(249, 249, 247, 0.6);
  border: 1px solid #FFFFFF;
  backdrop-filter: blur(25px);
}

.stage--pn {
  background: #F8EFF3;
}

.stage--bl {
  background: #E8EFF8;
}

.stage__label {
  font-size: 14px;
  line-height: 150%;
  color: #2A2C2F;
}

.stage__val {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  color: #2A2C2F;
}

.cart-doc__bott {
  padding: 32px;
  box-sizing: border-box;
  width: 100%;
}

.cart-doc__title {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  margin-bottom: 16px;
  color: var(--main-c);
}

.cart-doc__desc {
  color: #2A2C2F;
}

.cart-doc__btns {
  margin-top: 24px;
}

.cart-doc__btns {
  display: flex;
  gap: 16px;
}

.cart-doc__btns .btn {
  width: 100%;
  max-width: calc(50% - 8px);
}

.cart-doc .play {
  position: absolute;
  z-index: 1;
  top: 16px;
  right: 16px;
}

.row-carts .cart-links {
  width: calc(33.333% - 32px);
  margin: 0 16px;
}

.cart-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 24px;
  gap: 12px;
  background: #FFFFFF;
  border-radius: 8px;
  box-sizing: border-box;
}

.cart-links__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 20px;
  gap: 8px;
  background: #F4F6F9;
  border-radius: 4px;
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 12px;
}

.cart-links__top svg {
  transition: .3s;
}

.cart-links__top:hover svg {
  transform: rotate(90deg);
}

.cart-links a {
  color: var(--black-c);
}

.cart-links a:hover {
  color: var(--akcent-c);
}

.cart-doc__quote {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  color: #2A2C2F;
  padding-left: 24px;
  border-left: 5px solid var(--blue-c);
  margin: 33px 0;
  max-width: 363px;
}

.cart-doc--s2 {
  flex-direction: row;
  align-items: normal;
  gap: 24px;
}

.cart-doc--s2 .cart-doc__top {
  border-radius: 8px;
  overflow: hidden;
}

.cart-doc--s2 .cart-doc__bott {
  background: #E8EFF8;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.cart-doc--s2 .cart-doc__btns {
  margin-top: auto;
}

.cart-doc--s2 .cart-doc__btns .btn {
  width: auto;
}

.img-top {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 8px 20px;
  gap: 8px;
  background: #F4F6F9;
  border-radius: 8px;
  transition: .3s;
}

.img-top:hover,
.img-top.slick-current {
  background-color: #E8EFF8;
  cursor: pointer;
}

.img-top__img {
  width: 44px;
  height: 44px;
  display: flex;
  overflow: hidden;
  border-radius: 100px;
}

.img-top__title {
  font-weight: 600;
  font-size: 15px;
  line-height: 150%;
  color: var(--main-c);
}

.wr-slider-doctors {
  display: flex;
  gap: 24px;
}

.wr-slider-doctors .doctors-nav {
  max-width: 210px;
}

.wr-slider-doctors .slider-doctors {
  width: 100%;
  max-width: calc(100% - 234px);
  padding: 0 12px;
}

.wr-slider-doctors .slider-doctors .slick-list {
  margin: 0 -24px;
}

.wr-slider-doctors .cart-doc {
  min-height: 572px;
  margin: 0 12px;
}

.wr-slider-doctors .slider-arrows {
  display: none;
}

.doctors-nav:not(.slick-slider) .img-top {
  margin-bottom: 20px;
}

.doctors-nav.slick-slider .img-top {
  margin: 10px 0;
}

.doctors-nav.slick-slider .slick-list {}

.doctors-nav.slick-slider .slick-track {}

/* Карточка врача */


/* pagination */
.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 65px auto;
  padding: 0;
}

.pagination a {
  color: var(--black-c);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(0, 0, 0, 0.09);
  border-radius: 4px;
}

.pagination a:hover {
  color: var(--akcent-c);
  background: #F8EFF3;
}

.page-numbers.current {
  color: var(--akcent-c);
  background: #F8EFF3;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(0, 0, 0, 0.09);
  border-radius: 4px;

}

.page-numbers.dots {}

.next.page-numbers,
.prev.page-numbers {
  background: var(--light-c);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(0, 0, 0, 0.09);
  border-radius: 4px;
}

.next.page-numbers {}

.prev.page-numbers {}

.next.page-numbers svg path,
.prev.page-numbers svg path {
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

.next.page-numbers:hover svg path,
.prev.page-numbers:hover svg path {
  stroke: var(--akcent-c);
}

.next.page-numbers:hover,
.prev.page-numbers:hover {
  background: #F8EFF3;
}

/* end pagination */


.callcn {
  background: linear-gradient(98.21deg, #395E95 0.03%, #142B45 100.03%);
  color: var(--light-c);
  position: relative;
  overflow: hidden;
}

.callcn__img {
  display: flex;
  position: relative;
}

.callcn__img img {
  position: relative;
  z-index: 1;
}

.callcn__img:before {
  content: '';
  position: absolute;
  bottom: -130px;
  right: -380px;
  width: 1133px;
  height: 819px;
  background-image: url(../image/call-bf-new.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0
}

.callcn .container {
  display: flex;
  gap: 32px;
}

.callcn__capt {
  width: 100%;
  max-width: 620px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin: 52px 0 64px 0;
  position: relative;
  z-index: 1;
}

.callcn__title {
  font-weight: 600;
  font-size: clamp(28px, 4.3vw, 36px);
  line-height: 110%;
  margin-bottom: auto;
  color: var(--light-c);
}

.callcn__desc {
  max-width: 475px;
}

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

.callcn__mess {
  display: flex;
  gap: 16px;
}

.callcn__mess a img {
  transition: .3s;
}

.callcn__mess a:hover img {
  transform: scale(1.05);
}

.callcn__phone {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  color: var(--light-c);
}

/* Страница врача */

.doc-offer {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  align-items: flex-start;
}

.doc-offer__capt,
.doc-offer__img {
  width: 100%;
  max-width: 590px;
}

.doc-offer__capt {
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: flex-start;
  padding-top: 21px;
}

.doc-offer__wr-title {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.doc-offer__title {
  margin-bottom: 0;
}

.doc-offer__st-pr {
  display: flex;
  gap: 12px;
  width: 100%;
}

.doc-offer__st-pr .stage {
  width: 100%;
}

.doc-offer__text {
  max-width: 500px;
}

.doc-offer__img {
  position: relative;
  border-radius: 4px;
  overflow: hidden;
}

.doc-offer__img .play {
  position: absolute;
  top: 24px;
  left: 24px;
}

.section-num-title {
  border-top: 1px solid rgba(0, 0, 0, 0.09);
  border-bottom: 1px solid rgba(0, 0, 0, 0.09);
}

.num-title-row {
  display: flex;
  flex-wrap: wrap;
}

.num-title {
  display: flex;
  flex-direction: column;
  gap: 12px;
  text-align: center;
  background: #E8EFF8;
  border-width: 0px 1px;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0.07);
  padding: 32px 42px;
  box-sizing: border-box;
}

.num-title__num {
  font-weight: 600;
  font-size: 40px;
  line-height: 110%;
  text-align: center;
  letter-spacing: -0.03em;
  color: #5073A6;
}

.num-title-row .num-title {
  margin-right: -1px;
  width: calc(25%);
}

/* End Страница врача */

/* Страница услуги */
.section-services-offer {
  overflow: hidden;
  padding-bottom: 104px;
}

.services-offer {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  position: relative;
  align-items: flex-start;
}

.services-offer:before {
  content: '';
  position: absolute;
  bottom: -590px;
  right: -565px;
  width: 1056px;
  height: 1006px;
  background-image: url(../image/call-bf.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 1;
}

.services-offer:after {
  content: '';
  position: absolute;
  bottom: -590px;
  right: -565px;
  width: 1200px;
  height: 1200px;
  background-image: url(../image/sfera.svg);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
}

.services-offer__capt {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
  max-width: 700px;
  align-items: flex-start;
  padding-top: 21px;
}

.services-offer__wr-title {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.services-offer__title {
  margin-bottom: 0;
}

.services-offer__desc {
  max-width: 500px;
}

.services-offer__text {
  max-width: 500px;
}

.services-offer__img {
  position: relative;
  width: 100%;
  max-width: 636px;
  position: relative;
  z-index: 2;
}

.services-offer__img picture {
  border-radius: 4px;
  overflow: hidden;
  width: 100%;
}

.services-offer__img .play {
  position: absolute;
  top: 24px;
  left: 24px;
}

.services-offer__img .rey-ser {
  position: absolute;
  z-index: 1;
  left: 24px;
  bottom: 24px;
}

.rey-ser {
  background: var(--light-c);
  display: flex;
  gap: 16px;
  padding: 12px;
  border-radius: 4px;
  box-sizing: border-box;
  max-width: 360px;
}

.rey-ser__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.rey-ser__img {
  display: flex;
  overflow: hidden;
  border-radius: 4px;
  min-width: 145px;
}

.rey-ser__capt {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 12px 0;
}

.rey-ser__capt img {
  width: 100%;
  object-fit: cover;
}

.rey-ser__title {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.rey-ser__capt .link-more {
  margin-top: auto;
  color: var(--akcent-c);
}

.rey-ser:hover .link-more svg {
  transform: rotate(45deg);
}

.services-offer__titci {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.ico-top-text {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 24px;
  box-sizing: border-box;
  border: 4px solid #F8EFF3;
  border-radius: 4px;
}

.ico-top-text--c2 {
  border: 4px solid #E8EFF8;
}

.co-top-text__ico {
  display: flex;
}

.ico-top-text__title {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.services-offer__titci .ico-top-text {
  width: calc(50% - 6px);
}

.ico-left-text {
  display: flex;
  align-items: center;
  padding: 24px;
  box-sizing: border-box;
  gap: 20px;
  background: #E8EFF8;
  border-radius: 4px;
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.ico-left-text__ico {
  display: flex;
  min-width: 32px;
}

.price-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 20px 24px;
  box-sizing: border-box;
  gap: 20px;
  background: #FFFFFF;
  border-radius: 4px;
  width: 100%;
}

.price-link__price {
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
  text-align: right;
}

.price-link__price p span {
	font-size: 20px;
}

.price-link__text {
  font-size: 14px;
  line-height: 150%;
  color: #8F949E;
  margin-right: auto;
}

/* End Страница услуги */

/* Слайдеры */

.arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 52px;
  min-width: 52px;
  height: 52px;
  border-radius: 100px;
  background: transparent;
  border: 1px solid hsla(333, 53%, 42%, 0.24);
  transition: .3s;
}

.arrow:hover {
  background: var(--akcent-c);
  border: 1px solid var(--akcent-c);
  cursor: pointer;
}

.arrow svg path {
  transition: .3s;
}

.arrow:hover svg path {
  stroke: #fff;
}

.slider-arrows {
  display: flex;
  align-items: center;
  gap: 12px;
}

.arrow--sm {
  width: 24px;
  min-width: 24px;
  height: 24px;
  border-radius: 0;
  border: 1px solid transparent;
  margin: 0 auto;
}

.arrow--sm:hover {
  background: transparent;
  border: 1px solid transparent;
}

.arrow--sm:hover svg path {
  stroke: unset;
  fill: var(--main-c);
}

/* End Слайдеры */

.section--gall {
  overflow: hidden;
}

.section--gall .gall-slider {
  width: 1940px;
}

.gall .slick-track {
  display: flex !important;
  gap: 24px;
}

.gall-item__img {
  display: flex !important;
  overflow: hidden;
  border-radius: 4px;
  position: relative;
}

.section-gall-grid .gall-item__img img,
.gall-slider .gall-item__img img {
  max-height: 220px;
}

.litebox {
  position: relative;
}

.litebox:before {
  content: "";
  background: var(--blue-c);
  z-index: 1;
  opacity: .15;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: all .3s ease;
}

.litebox:after {
  content: "";
  background-image: url(../image/zooming.svg);
  background-repeat: no-repeat;
  background-size: 40px;
  background-position: center;
  position: absolute;
  left: calc(50% - 20px);
  top: calc(50% - 20px);
  transition: all .3s ease;
  opacity: 0;
  display: block;
  padding: 20px;
  z-index: 1;
}

.litebox:hover:before {
  opacity: 0.4;
}

.litebox:hover:after {
  opacity: 1;
}

.section-gall-grid {
  overflow: hidden;
}

.section-gall-grid .gall {
  left: -80px;
  width: calc(100% + 160px);
  position: relative;
  display: flex;
  gap: 24px;
  margin-bottom: 24px;
}

.section-gall-grid .gall:last-child {
  margin-bottom: 0;
}

/* Аккордион */

.accordion {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.accordion__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 4px;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
  background: #FFFFFF;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 4px;
}

.accordion__item:hover,
.accordion__item.active {
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0);
}

.accordion__title {
  display: flex;
  align-items: center;
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  color: var(--main-c);
  padding: 20px 24px;
  transition: .3s;
}

.accordion__item:hover .accordion__title,
.accordion__item.active .accordion__title {
  color: var(--akcent-c);
}

.accordion__title p {
  margin-bottom: 0;
}

.accordion__title svg {
  margin-left: auto;
  min-width: 20px;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

.accordion__item.active .accordion__title svg {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.accordion__title:hover {
  cursor: pointer
}

.accordion__content {
  display: none;
  padding: 0 24px 20px 24px;
}

.section--accordion .container {
  display: flex;
  justify-content: space-between;
  gap: 32px;
}

.section--accordion .section__wr-title {
  width: 100%;
  max-width: 316px;
}

.section--accordion .accordion {
  width: 100%;
  max-width: 984px;
}

/* Стиль 2 */
.accordion--s2 {
  gap: 0;
}

.accordion--s2 .accordion__item {
  background: transparent;
  box-shadow: unset;
  border-top: 1px solid var(--grey-c);
  border-radius: 0;
}

.accordion--s2 .accordion__item:last-child {
  border-bottom: 1px solid var(--grey-c);
}

.accordion--s2 .accordion__title {
  background: transparent;
  padding-left: 0;
  padding-right: 0;
}

.accordion--s2 .accordion__content {
  padding: 0 0 24px 0;
}

/* End Аккордион */

/* Прайс */
.price-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  background-color: var(--light-c);
  gap: 32px;
  border-bottom: 1px solid #e0e4e8;
  padding-bottom: 16px;
  margin-bottom: 16px;
}

.price-item:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}

.price-code {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  color: #8F949E;
  flex: .3;
}

.price-info {
  flex: .8;
}

.price-title {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 600;
}

.price-desc {
  font-size: 14px;
}

.price-values {
  flex: 1;
  display: flex;
  flex-direction: row;
  gap: 40px;
  min-width: 380px;
}

.price-col {
  width: 160px;
}

.price-current {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}

.price-old {
  font-size: 14px;
  line-height: 150%;
  text-decoration-line: line-through;
  color: #2A2C2F;
  margin-bottom: 8px;
}

.price-caption {
  font-size: 14px;
  line-height: 150%;
  color: #8F949E;
}

.highlight {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  color: var(--akcent-c)
}

.highlight--bk {
  color: var(--black-c);
}

.section--price {
  overflow: hidden;
  padding-top: 64px;
  padding-bottom: 64px;
}

.section--price .container:before {
  content: '';
  position: absolute;
  bottom: -64px;
  right: 0;
  width: 100%;
  height: 600PX;
  background-image: url(../image/sfera2.svg);
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}

/* End price */

.dental-grid {
  display: grid;
  grid-template-columns: 1fr 1.8fr 1.2fr;
  grid-template-rows: 1fr 1fr;
  gap: 16px;
  width: 100%;
}

.grid-item {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  display: flex;
}

.grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 4px;
}

.grid-item .video-btn {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/* Левое верхнее фото */
.item-1 {
  grid-column: 1;
  grid-row: 1;
}

/* Левое нижнее фото */
.item-2 {
  grid-column: 1;
  grid-row: 2;
}

/* Центральное большое фото (занимает 2 строки) */
.item-3 {
  grid-column: 2;
  grid-row: 1 / span 2;
}

/* Правое фото (занимает 2 строки) */
.item-4 {
  grid-column: 3;
  grid-row: 1 / span 2;
  position: relative;
}

.section--works {
  padding: 64px 0;
  background: #E8EFF8;
  overflow: hidden;
}

.section--works .container:before,
.section--works .container:after {
  content: '';
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
}

.section--works .container:before {
  top: -680px;
  left: -500px;
  width: 608px;
  height: 978px;
  background-image: url(../image/works-bf.png);
}

.section--works .container:after {
  bottom: -360px;
  right: -635px;
  width: 1056px;
  height: 1006px;
  background-image: url(../image/call-bf.png);
}

.section--works .btn-group {
  display: none;
}

.section--works .slider-arrows {
  display: none;
}

.row-works {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -8px;
  position: relative;
  z-index: 1;
  row-gap: 16px;
}

.row-works .work {
  margin: 0 8px;
}

.row-works:not(.slick-slider) .work {
  width: calc(33.333% - 16px);
}

.work {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 16px;
  gap: 16px;
  background: #FFFFFF;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 8px;
  box-sizing: border-box;
}

.work__img {
  display: flex;
  overflow: hidden;
  border-radius: 4px;
  position: relative;
}

.work__capt {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  width: 100%;
  flex: 1;  

  picture {
    overflow: hidden;
    border-radius: 100px;
    width: 32px;
    height: 32px;
  }

  .link-more {
    margin-top: auto;
  }
}

.work__gall {
  display: flex;
  position: absolute;
  top: 16px;
  right: 14px;
  z-index: 1;
}

.work__gall svg rect,
.work__gall svg path {
  transition: .3s;
}

.work__gall:hover {
  cursor: pointer;
}

.work__gall:hover svg rect {
  fill: var(--akcent-c);
}

.work__gall:hover svg path {
  stroke: var(--light-c);
}

.work-bf-af {
  position: relative;
  cursor: pointer;
}

.work-bf-af__before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.work-bf-af__after {
  opacity: 1;
  transition: opacity 0.4s ease;
}

/* Состояние при клике (когда показываем "До") */
.work-bf-af.is-before .work-bf-af__after {
  opacity: 0;
}

.work-bf-af.is-before .work-bf-af__before {
  opacity: 1;
  pointer-events: auto;
}

/* Опционально: стиль для кнопки-индикатора, когда она активна */
.work__gall {
  transition: transform 0.3s ease;
  cursor: pointer;
}

.work-bf-af.is-before+.work__gall,
.work__gall.active {
  transform: scale(1.1);
}

.work-doc {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  color: var(--main-c);
}

.work-doc:hover {
  color: var(--akcent-c);
}

.work__title {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  margin-bottom: 50px;
}

.work-doc-gr {
  display: inline-flex;
  align-items: center;
  padding: 20px 24px;
  gap: 20px;
  background: #E8EFF8;
  border-radius: 8px;
  margin: 0 0 32px 0;
}

.work-doc-gr__label p {
  font-weight: 600;
  font-size: 15px;
}

.slider-video {
  display: flex;
  row-gap: 16px;
  flex-wrap: wrap;
  margin: 0 -8px;
}

.slider-video .cart-video {
  width: calc(33.333% - 16px);
  margin: 0 8px;
}

.cart-video {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 20px;
}

.cart-video__img {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 8px;
  position: relative;
}

.cart-video__img .play {
  position: absolute;
}

.cart-video__title {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  color: #142B45;
  margin-bottom: 4px;
}

.row-articles {
  display: flex;
  flex-wrap: wrap;
  row-gap: 32px;
  margin: 0 -8px;
  position: relative;
  z-index: 1;
}

.row-articles .article-cart {
  margin: 0 8px;
}

.row-articles:not(.slick-slider) .article-cart {
  width: calc(25% - 16px);
}

.articles {
  display: flex;
  flex-wrap: wrap;
  row-gap: 32px;
  margin: 0 -16px;
  position: relative;
  z-index: 1;
}

.articles .article-cart {
  width: calc(33.333% - 32px);
  margin: 0 16px;
}

.section--articles .btn-group {
  display: none;
}

.section--articles .slider-arrows {
  display: none;
}

.article-cart {
  display: flex !important;
  flex-direction: column;
  gap: 22px;
  position: relative;
}

.article-cart__img {
  display: flex;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}

.article-cart__img a {
  width: 100%;
}

.article-cart__img img {
  transition: .3s;
  will-change: transform;
  width: 100%;
  object-fit: cover;
}

.article-cart__img picture:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 35%;
  background: linear-gradient(0deg, rgba(20, 43, 69, 0.7) 0%, rgba(20, 43, 69, 0) 100%);
  z-index: 1;
}

.article-avtor {
  color: #fff;
  font-size: 14px;
  line-height: 150%;
  display: flex;
  flex-direction: column;
  gap: 3px;
  position: absolute;
  bottom: 20px;
  left: 20px;
  z-index: 2;
  will-change: transform;
}

.article-avtor__link {
  border-bottom: 1px solid var(--light-c);
  line-height: 1;
  color: var(--light-c);
}

.article-avtor__link:hover {
  border-bottom: 1px solid transparent;
  color: var(--light-c);
}

.article-cart__title {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  color: #142B45;
  max-width: 95%;
}

.article-cart__desc {
  max-height: 100px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(black 50%, transparent);
}

.article-cart .link-more {
  color: var(--akcent-c);
}

.article-cart:hover .link-more svg {
  transform: rotate(90deg);
}

.article-cart:hover .article-cart__img img {
  transform: scale(1.02);
}

.articles .article-cart-lg {
  margin: 0 16px;
  width: 100%;
}

.article-cart-lg {
  display: flex;
  background: var(--light-c);
  border-radius: 8px;
  overflow: hidden;
}

.article-cart-lg__img {
  display: flex;
  overflow: hidden;
  border-radius: 8px;
  width: 100%;
  max-width: 984px;
}

.article-cart-lg__img img {
  object-fit: cover;
  width: 100%;
}

.article-cart-lg__capt {
  width: 100%;
  max-width: 414px;
  padding: 32px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.article-cart-lg .article-avtor {
  position: unset;
  color: var(--grey-c);
  flex-direction: row;
}

.article-cart-lg .article-avtor a {
  position: unset;
  color: var(--black-c);
}

.article-cart-lg .article-avtor__link {
  border-bottom: 1px solid var(--black-c);
  line-height: inherit;
}

.article-cart-lg .article-avtor__link:hover {
  border-bottom: 1px solid transparent;
}

.article-cart-lg .article-cart-lg__title {
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
  color: #142B45;
  margin-bottom: auto;
}

.article {
  margin-bottom: 64px;
}

.article__content {
  background: var(--light-c);
  padding: 40px 64px;
  box-sizing: border-box;
  border-radius: 8px;
}

.article-main-image {
  display: flex;
  overflow: hidden;
  border-radius: 8px;
  width: 100%;
}

.article-toc {
  margin-bottom: 32px;
}

.article-toc {
  background: var(--light-c);
  padding: 32px;
  border-radius: 8px;
}

.article-toc__title {
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
  margin-bottom: 16px;
  color: var(--main-c);
}

.article-toc__list {
  margin: 0;
}

.article-toc__item a {
  color: var(--black-c);
}

.article-toc__item a:hover {
  color: var(--akcent-c);
}

.article-body {
  display: flex;
  flex-wrap: wrap;
  gap: 32px 40px;
}

.article-body__wr-cont {
  width: calc(100% - 316px);
}

.article picture {
  display: flex;
  overflow: hidden;
  border-radius: 8px;
}

.article-sidebar {
  max-width: 276px;
  position: relative;
}

.article h1:first-child,
.article h2:first-child,
.article h3:first-child {
  margin-top: 0;
}

.article--s2 .article-body__wr-cont {
  width: calc(100% - 460px);
}

.article--s2 .article-sidebar {
  max-width: 420px;
}

.article-body__wr-cont .page-title:first-child {
  margin-top: 20px;
}

.article--s3 {
  margin-top: 50px;
}

.article--s3 .article-body__wr-cont {
  width: calc(100% - 444px);
}

.article--s3 .article-sidebar {
  width: 100%;
  max-width: 380px;
  margin-left: auto;
}

.img-grid {
  display: flex;
  gap: 32px;
}

.img-grid__col {
  width: 100%;
  display: flex;
  overflow: hidden;
  border-radius: 8px;
}

.banner-call {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 32px 48px;
  box-sizing: border-box;
  gap: 32px;
  background: linear-gradient(90deg, #E0E9F5 0%, #EBDFE5 100%);
  border-radius: 20px;
}

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

.call-doc__img {
  display: flex;
  min-width: 56px;
  overflow: hidden;
  border-radius: 100px;
}

.call-doc__capt {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.call-doc__title {
  font-weight: 600;
  font-size: clamp(23px, 4vw, 26px);
  line-height: 125%;
}

.banner-call__right {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-left: auto;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.call-doc__link a {
  border-bottom: 1px solid var(--black-c);
  color: var(--black-c);
}

.call-doc__link a:hover {
  border-bottom: 1px solid transparent;
  color: var(--akcent-c);
}

.share {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 14px;
}

/* Юр информация */

.row-info {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  column-gap: 64px;
  position: relative;
}

.row-info__col:first-child {
  width: 100%;
  max-width: 286px;
  margin-right: auto;
  position: relative;
}

.row-info__col:last-child {
  width: calc(100% - 350px);
}

.info-nav {
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: sticky;
  top: 105px;
}

.info-nav__item {
  color: var(--black-c);
}

.info-nav__item span {
  border-bottom: 1px solid transparent;
  color: var(--black-c);
  transition: .3s;
}

.info-nav__item:hover span {
  color: var(--akcent-c);
  border-bottom: 1px solid var(--akcent-c);
}

.info-nav__item.active {
  font-weight: 600;
}

.info-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px;
  box-sizing: border-box;
  gap: 20px;
  background: #FFFFFF;
  border-radius: 8px;
  margin-bottom: 12px;
}

.info-item__title {
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
  margin-bottom: 4px;
  color: var(--main-c);
}

.info-item__link {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
}

.info-item__link a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  color: var(--main-c);
}

.info-item__desc p {
  display: inline;
  border-bottom: 1px solid transparent;
  transition: .3s;
  color: var(--main-c);
}

.info-item__link:hover p {
  color: var(--akcent-c);
  border-bottom: 1px solid var(--akcent-c);
}

.info-item__ico {
  display: flex;
  width: 30px;
  min-width: 30px;
}

/* End Юр информация */

/* 404 */
.not-found {
  min-height: 631px;
  display: flex;
  align-items: center;
  width: 100%;
  background-image:
    url(../image/nf-1.png),
    url(../image/nf-2.svg),
    url(../image/nf-3.svg);
  background-size: 631px 585px, 500px, 631px;
  background-position: center bottom, right center, center bottom -70px;
  background-repeat: no-repeat;
  position: relative;
}

.not-found .section__wr-title--column {
  width: 100%;
}

/* End 404 */


/* two-col */

.two-col .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 32px;
}

.two-col--center .row {
  align-items: center;
  gap: 64px;
}

.two-col .two-col__col {
  width: calc(50% - 16px);
  align-items: flex-start;
}

.two-col--center .two-col__col {
  width: calc(50% - 32px);
  align-items: flex-start;
}

.two-col .two-col__col:first-child {}

.two-col .two-col__col:last-child {
  display: flex;
  flex-wrap: wrap;
}

.two-col__img {
  position: relative;
  border-radius: 4px;
  overflow: hidden;
}

.two-col__img .play {
  position: absolute;
  top: 24px;
  left: 24px;
}

.two-col__img .play--right {
  left: unset;
  right: 24px;
}

.two-col__col--cols {
  gap: 24px;
}

.two-col__content {
  padding-right: 62px;
}

.sing {
  display: flex;
  flex-direction: column;
  padding: clamp(20px, 1.35vw + 6px, 32px);
  box-sizing: border-box;
  gap: 16px;
  background: #F4F6F9;
}

.sing .btn {
  margin-top: auto;
}

.sing-right {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}

.sing-right__ico {
  display: flex;
  width: 40px;
  max-width: 40px;
}

.sing-right__capt {
  font-weight: 500;
  font-size: 19px;
  line-height: 145%;
  display: flex;
  flex-direction: column;
  gap: 25px;
  align-items: flex-start;
}

.two-col .two-col__col:last-child .sing {
  width: calc(50% - 12px);
  max-height: 355px;
}

.two-col__img {
  overflow: hidden;
  border-radius: 6px;
  display: flex;
}

.two-col__img img {
  width: 100%;
  object-fit: cover;
}

.two-col .two-col__col:last-child .two-col__img {
  width: calc(50% - 12px);
  max-height: 355px;
}

.two-col__text-c {
  text-align: center;
  max-width: 440px;
  margin: 0 auto;
}

.two-col--center {
  position: relative;
  overflow: hidden;
}

.two-col--center:before {
  content: '';
  position: absolute;
  width: 450px;
  height: 321px;
  background-image: url(../image/list-bg.png);
  background-position: right top;
  bottom: -42px;
  right: -112px;
  transform: rotate(195deg);
  z-index: -1;
}

/* Контейнер для текста и фото */
.clinic-about__content {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}

.clinic-about__text {
  flex: 1;
}

.clinic-about__text p {}

/* Блок с картинкой */
.clinic-about__image-wrapper {
  flex: 0 0 40%;
  /* Картинка занимает 40% ширины */
  max-width: 212px;
  display: flex;
  overflow: hidden;
  border-radius: 4px;
}

.clinic-about__image {
  width: 100%;
  object-fit: cover;
}

/* End text-left */

.indications {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 64px;
  gap: 8px;
  background: linear-gradient(90deg, #E7ECE2 0%, #E8EFF8 100%);
  border-radius: 8px;
  box-sizing: border-box;
}

.indications__info {
  display: flex;
  flex-direction: column;
  max-width: 340px;
  min-width: 340px;
  align-items: flex-start;
}

.indications__title {
  margin: 0 0 24px 0;
  font-weight: 600;
  font-size: clamp(28px, 3vw, 34px);
  line-height: 110%;
  color: #1A2E3B;
}

.indications__description {
  margin: 0 0 32px 0;
  font-size: 16px;
  line-height: 140%;
  color: #4A5568;
}

.indications__list {
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 1;
  margin-left: 40px;
  column-count: 3;
  column-gap: 62px;
}

.indications__list--s2 {
  column-count: 2;
}

.indications__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 0;
  margin-bottom: 12px;
}

.indications__item:before {
  display: none;
}

.indications__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.indications__text {
  font-size: 16px;
  line-height: 130%;
  color: #1A2E3B;
}

.indications--s2 {
  background: linear-gradient(90deg, #F3EDEF 0%, #E8EFF8 100%);
}





.callback {
  position: relative;
  background: linear-gradient(90deg, #E8EFF8 0%, #F3EDEF 100%), #E8EFF8;
  border-radius: 8px;
  padding: 32px 40px;
}


.callback__container {
  display: flex;
  align-items: center;
  gap: 90px;
}

.callback__info {
  flex: 0 1 350px;
}

.callback__title {
  font-size: 26px;
}

.callback__description {}

.callback__actions {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 1;
  max-width: 400px;
  align-items: center;
  z-index: 1;
}

.callback__contacts {
  display: flex;
  align-items: center;
  gap: 20px;
}

.callback__phone {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  text-decoration: none;
  color: var(--black-c);
}

.callback__socials {
  display: flex;
  gap: 12px;
}

.callback__social-link {
  transition: opacity 0.3s;
  display: flex;
}

.callback__social-link:hover {
  opacity: 0.8;
}

.callback__btns {
  display: flex;
  gap: 16px;
}

.callback__image {
  position: absolute;
  right: 16px;
  bottom: 0;
  height: 100%;
  display: flex;
  align-items: flex-end;
  pointer-events: none;
  /* Чтобы не мешало кликам, если перекрывает */
}

.callback__image img {
  height: 110%;
  /* Немного больше блока, как на макете */
  width: auto;
  object-fit: contain;
}

/* Акции */

.section--sales {
  padding: 64px 0;
  overflow: hidden;
  background-color: #08283D;
  background-image: url(../image/sales-bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: var(--light-c);
  position: relative;
}

.section--sales .container {
  position: relative;
  z-index: 1;
}

.sales-bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  object-fit: cover;
  pointer-events: none;
}

.section--sales .section__title {
  color: var(--light-c) !important;
}

.offers {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.offer-card {
  display: flex;
  padding: 20px;
  gap: 20px;
  position: relative;
  box-sizing: border-box;
  background: var(--light-c);
  border-radius: 8px;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  transition: .5s;
}

.offer-card__visual {
  position: relative;
  display: flex;
  flex: 0 0 292px;
  border-radius: 8px;
  overflow: hidden;
  max-height: 280px;
}

.offer-card__link {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}

.offer-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: .5s;
  will-change: transform;
}

.offer-card__badge-group {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 2;
  pointer-events: none;
}

.offer-card__badge {
  display: inline-block;
  padding: 8px 12px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 15px;
  line-height: 100%;
  white-space: nowrap;
  transition: transform 0.5s ease, opacity 0.5s ease;
  background-color: #a53366;
  color: #fff;
}

/* 
   ЛОГИКА ДЛЯ КАРТОЧЕК С ДВУМЯ ЭЛЕМЕНТАМИ 
*/

/* 1. Если элементов больше одного, накладываем их друг на друга */
.offer-card__badge:not(:only-child) {
  position: absolute;
  left: 0;
  top: 0;
}

/* 2. Второй элемент (скидка) изначально скрыт слева */
.offer-card__badge:nth-child(2) {
  opacity: 0;
  transform: translateX(-20px);
  z-index: 1;
}

/* 3. Первый элемент (цена) изначально виден */
.offer-card__badge:first-child:not(:only-child) {
  opacity: 1;
  transform: translateX(0);
  z-index: 2;
}

/* 4. Анимация при наведении на карточку */
/* Первый уезжает влево и гаснет */
.offer-card:hover .offer-card__badge:first-child:not(:only-child) {
  opacity: 0;
  transform: translateX(-20px);
}

/* Второй выезжает из-за края и проявляется */
.offer-card:hover .offer-card__badge:nth-child(2) {
  opacity: 1;
  transform: translateX(0);
}

/* 
   ЛОГИКА ДЛЯ ОДИНОЧНЫХ ЭЛЕМЕНТОВ (Бесплатно, Скидка без цены и т.д.)
*/

/* Если бейдж единственный — отключаем трансформации и позиционируем нормально */
.offer-card__badge:only-child {
  position: relative;
  opacity: 1;
  transform: none;
  display: table;
  /* Чтобы ширина была по контенту */
}

/* При наведении на карточку с одним бейджем — ничего не происходит */
.offer-card:hover .offer-card__badge:only-child {
  transform: none;
  opacity: 1;
}

/* Стили для старой цены */
.offer-card__old-price {
  margin-left: 4px;
  text-decoration: line-through;
  font-weight: 400;
  font-size: 13px;
  opacity: 0.8;
}

.offer-card__badge--free {
  background-color: transparent;
}

.offer-card__badge--price {
  background: #5073A6;
}

.offer-card__badge--discount {
  background: #A53967;
}

.offer-card__badge--free {
  border: 1px solid var(--akcent-c);
  color: var(--akcent-c);
}

.offer-card__old-price {
  text-decoration: line-through;
  font-weight: 400;
  margin-left: 8px;
  font-size: 13px;
  line-height: 100%;
}

.offer-card__date {
  position: absolute;
  bottom: 20px;
  left: 20px;
  font-size: 14px;
  line-height: 150%;
  color: var(--light-c);
}

/* Текстовая часть */
.offer-card__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
}

.offer-card__title {
  font-size: 22px;
  line-height: 120%;
  margin: 0 0 16px 0;
  font-weight: 600;
  font-size: 22px;
  line-height: 135%;
}

.offer-card__text {
  font-size: 17px;
  line-height: 145%;
  margin-bottom: 32px;
}

.offer-card .link-more {
  margin-top: auto;
}

.offer-card .link-more {
  margin-top: auto;
}

.section--sales .offer-card:hover {
  background: rgba(80, 115, 166, 0.3);
}

.offer-card:hover .offer-card__img {
  transform: scale(1.03);
}

.offer-card:hover .link-more svg {
  transform: rotate(45deg)
}

.section--sales .offer-card {
  color: #ffffff;
  background: rgba(80, 115, 166, 0.2);
  backdrop-filter: blur(30px);
}

.section--sales .offer-card .link-more {
  color: var(--light-c);
}

.section--sales .offer-card .link-more svg path {
  stroke: var(--light-c);
}

/* End Акции */

/* Итории пациентов */

.cart-hist {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
}

.cart-hist__link {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cart-hist__img {
  display: flex;
  overflow: hidden;
  border-radius: 8px;
  margin-bottom: 8px;
}

.cart-hist__img img {
  width: 100%;
  object-fit: cover;
}

.cart-hist__title {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
}

.section--hists {
  padding: 64px 0;
  background: #E8EFF8;
  overflow: hidden;
  position: relative;
}

.section--hists:after {
  content: '';
  position: absolute;
}

.section--hists:after {
  bottom: 0;
  right: 0;
  width: 600px;
  height: 705px;
  background-image: url(../image/his-bf.png);
  background-position: bottom right;
  background-repeat: no-repeat;
}

.section--hists .container:before {
  content: '';
  position: absolute;
}

.section--hists .container:before {
  top: -680px;
  left: -500px;
  width: 608px;
  height: 978px;
  background-image: url(../image/works-bf.png);
}

.row-hists {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -12px;
  row-gap: 24px;
  position: relative;
  z-index: 1;
}

.row-hists .cart-hist {
  width: calc(25% - 24px);
  margin: 0 12px;
}

/* End Итории пациентов */




/* Промо баннеры */
.promo-banner {
  display: flex;
  align-items: center;
  padding: 32px 52px;
  border-radius: 12px;
  gap: 32px;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  min-height: 160px;
}

.promo-banner__icon {
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  position: relative;
  z-index: 1;
}

.promo-banner__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.promo-banner__content {
  display: flex;
  flex: 1;
  gap: 32px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.promo-banner__title {
  font-size: 28px;
  font-weight: 600;
  min-width: 155px;
}

.promo-banner__info {
  max-width: 320px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.promo-banner__info-title {
  font-size: 20px;
  line-height: 145%;
  font-weight: 600;
}

.promo-banner__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 24px;
}

.promo-banner__item {
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 370px;
  padding-left: 0;
}

.promo-banner__item:before {
  display: none;
}

.promo-banner .btn {
  position: relative;
  z-index: 1;
}

.promo-banner__checkmark {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  background: rgba(165, 51, 102, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.promo-banner--gift {
  background: linear-gradient(90deg, #F3EDEF 0%, #E8EFF8 100%);
}

.promo-banner--gift:before {
  content: '';
  position: absolute;
  bottom: -650px;
  right: -149px;
  width: 1056px;
  height: 1006px;
  background-image: url(../image/call-bf.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
  transform: rotate(172deg);
  opacity: 0.7;
}

.promo-banner--economy {
  background:
    linear-gradient(90deg, #E7ECE2 0%, #E8EFF8 100%),
    linear-gradient(90deg, #E8EFF8 0%, #F3EDEF 100%), #E8EFF8;
}

.promo-banner--economy .promo-banner__main {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 457px;
}


.arr-tit {
  padding: 7px 16px 11px 45px;
  background: #FFFFFF;
  border-radius: 4px;
  color: var(--black-c);
  position: relative;
}

.arr-tit span {
  border-bottom: 1px solid var(--black-c);
  transition: .3s;
  line-height: 1.1;
}

.arr-tit:hover span {
  border-bottom: 1px solid transparent;
}

.arr-tit svg {
  transition: .3s;
  position: absolute;
  left: 16px;
  top: calc(50% - 6.5px);
}

.arr-tit:hover svg {
  transform: rotate(45deg);
}

.links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.links .arr-tit {
  width: calc(50% - 12px);
}

.rezults-img {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.rezults-img__img {
  position: relative;
  overflow: hidden;
}

.rezults-img__label {
  position: absolute;
  width: 84px;
  height: 40px;
  border-radius: 4px;
  background-color: #B2CEF0;
  color: var(--akcent-c);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  bottom: 0;
  left: 0;
  font-size: 14px;
}

.rezults-img__img:last-child .rezults-img__label {
  background-color: var(--akcent-c);
  color: var(--light-c);
  top: 0;
  bottom: unset;
}

.article-sidebar .rezults-img {
  position: sticky;
  top: 66px;
}


.price-box {
  display: flex;
  flex-direction: column;
  padding: 32px;
  gap: 24px;
  background: #FFFFFF;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 12px;
  width: 100%;
  box-sizing: border-box;
}

.price-box__header {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.price-box__current {
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
  color: var(--akcent-c);
}

.price-box__old {
  font-size: 15px;
  line-height: 150%;
  text-decoration-line: line-through;
  color: var(--grey-c);
  width: fit-content;
}

.price-box__tax-benefit {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 20px;
  background: #F4F6F9;
  border-radius: 8px;
}

.price-box__tax-value {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.price-box__tax-label {
  font-size: 14px;
  line-height: 150%;
}

.price-box__info {
  margin: 0;
  font-size: 14px;
  line-height: 150%;
}

.price-box .btn {
  align-self: flex-start;
}

.article-sidebar .price-box {
  position: sticky;
  top: 66px
}


.equipment-card {
  display: flex !important;
  padding: 24px;
  gap: 24px;
  background: #FFFFFF;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 8px;
  align-items: stretch;
}

.equipment-card__visual {
  flex: 1;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
}

.equipment-card__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: .3s;
  will-change: transform;
}

.equipment-card__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.equipment-card__visual:hover img {
  transform: scale(1.05);
}

.equipment-card__content {
  flex: 1;
  background: #F4F6F9;
  border-radius: 4px;
  padding: 24px;
  display: flex;
  flex-direction: column;
}

.equipment-card__brand {
  background: #FFFFFF;
  border-radius: 8px;
  padding: 19px 24px;
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 40px;
}

.equipment-card__info {
  margin-top: auto;
}

.equipment-card__title {
  margin: 0 0 12px 0;
  font-size: 26px;
  font-weight: 600;
  line-height: 125%;
}

.equipment-card__text {
  margin: 0 0 20px 0;
}

.equipment-img {
  position: relative;
  margin-left: auto;
  align-self: flex-start;
}

.equipment-img__brand {
  background: #FFFFFF;
  border-radius: 8px;
  padding: 19px 31px;
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 150px;
}

.equipment-img .equipment-img__brand {
  position: absolute;
  left: -75px;
  top: calc(50% - 75px);
}

.equipment-img__img {
  overflow: hidden;
  border-radius: 8px;
  max-width: 630px;
  margin-left: auto;
  height: 100%;
}

.equipment-img__img img {
  width: 100%;
  object-fit: cover;
}

.equipment-card--s2 .equipment-card__visual {
  flex: 1.55;
}


.row-equipments {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.section-slider-equipment {
  overflow: hidden;
}

.section-slider-equipment .slider-equipment {
  margin: 0 -15px;
  width: 1940px;
}

.slider-equipment .equipment-card {
  margin: 0 12px;
}

.map {
  overflow: hidden;
  border-radius: 20px;
  height: 576px;
}

.cont-img {
  display: flex;
  gap: 32px;
}

.cont-img__content {
  max-width: 470px;
  background: var(--light-c);
  display: flex;
  flex-direction: column;
  padding: 32px;
  gap: 20px;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 20px;
}

.cont-img__title {
  font-weight: 600;
  font-size: 26px;
  line-height: 125%;
}

.cont-img__mess {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
}

.cont-img__img {
  max-height: 470px;
  overflow: hidden;
  border-radius: 20px;
}

.cont-img__img img {
  object-fit: cover;
}

.cont-img .route {
  margin-bottom: 2px;
}


/* О компании */

.about-top {
  position: relative;
}

.about-top__top .breadcrumb {
  position: absolute;
  top: 44px;
}

.about-top__middle {
  display: flex;
  justify-content: center;
  margin-bottom: -90px;
}

.vacancy-banner {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 40px 64px;
  gap: 40px;
  background: #FFFFFF;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  border-radius: 8px;
  box-sizing: border-box;
}

.vacancy-banner__content {
  flex: 1;
}

.vacancy-banner__title {
  margin: 0 0 16px 0;
  line-height: 1.1;
}


.vacancy-banner__btn {
  flex-shrink: 0;
}

.career {
  display: flex;
  gap: 30px;
  align-items: stretch;
  font-family: sans-serif;
}

.career__column {
  flex: 1;
  border-radius: 8px;
}

.career__column--requirements {
  padding: 32px;
  background: #ffffff;
}

.career__column--promises {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding: 32px;
  gap: 24px;
  background: linear-gradient(104.68deg, #F3EDEF 0%, #E8EFF8 100.76%);
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.career__column--promises:before {
  content: '';
  position: absolute;
  width: 510px;
  height: 360px;
  right: -17px;
  bottom: -152px;
  background-image: url(../image/list-bg.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
}

.career__content {
  align-self: flex-start;
  width: 100%;
  position: relative;
  z-index: 1;
}

.career__title {
  margin: 0 0 24px 0;
  font-size: 21px;
  line-height: 135%;
  font-weight: 600;
}

.career ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.career ul li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 0;
  margin: 0;
}

.career ul>li:before {
  display: none;
}

.career__icon {
  flex-shrink: 0;
  display: flex;
  margin-top: 2px;
}

.career .btn {
  position: relative;
  z-index: 1;
}



.forma-img {
  background: #F1EDF1;
}

.forma-img .container {
  display: flex;
  align-items: center;
  gap: 40px;
}

.forma-img__img {
  display: flex;
}

.forma-img__forma {
  padding: 32px 0;
  box-sizing: border-box;
  max-width: 592px;
  margin-left: auto;
}

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

.tg-but {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 17px 24px;
  box-sizing: border-box;
  background: var(--light-c);
  border-radius: 8px;
  color: var(--grey-c);
}

.tg-but svg path {
  transition: .3s;
}

.tg-but:hover svg path {
  stroke: var(--akcent-c);
}


.team-promo {
  padding: 60px 100px;
  box-sizing: border-box;
  background-color: #F4F6F9;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 24px 0;
}

.team-promo__quote {
  margin: 0 0 24px 0;
  font-size: 21px;
  line-height: 1.35;
  font-weight: 600;
  color: var(--main-c);
  border: 0;
  padding-left: 0;
}

.team-promo__footer {
  display: flex;
  align-items: center;
  gap: 12px;
  text-align: left;
}

.team-promo__avatars {
  display: flex;
  flex-direction: row-reverse;
  /* Чтобы правые аватары были визуально "под" левыми */
  justify-content: flex-end;
}

.team-promo__avatar {
  width: 59px;
  height: 59px;
  border-radius: 50%;
  border: 2px solid #fff;
  object-fit: cover;
  margin-left: -15px;
  /* Эффект наложения (стек) */
  background-color: #ddd;
  overflow: hidden;
  display: flex;
}

.team-promo__avatar img {
  width: 100%;
  object-fit: cover;
}

/* Первый аватар в ряду (который визуально последний из-за row-reverse) 
   не должен иметь отрицательного отступа */
.team-promo__avatar:last-child {
  margin-left: 0;
}

.team-promo__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.team-promo__label {
  margin: 0;
  font-size: 14px;
}

.team-promo__link {
  font-size: 15px;
  text-underline-offset: 4px;
  color: var(--black-c);
  border-bottom: 1px solid var(--black-c);
  line-height: 1;
}

.team-promo__link:hover {
  border-bottom: 1px solid var(--akcent-c);
}

.serts {
  background: linear-gradient(90deg, #F3EDEF 0%, #E8EFF8 100%);
  border-radius: 8px;
  padding: 64px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

.serts:before {
  content: '';
  position: absolute;
  width: 990px;
  height: 735px;
  background-image: url(../image/sert-bg.png);
  background-position: center;
  background-repeat: no-repeat;
  transform: rotate(331deg);
  right: -70px;
  top: -10px;
}

.cert-card {
  display: flex !important;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
  box-sizing: border-box;
  background: var(--light-c);
  border-radius: 4px;
}

.cert-card__preview {
  display: flex;
  overflow: hidden;
  border-radius: 4px;
  overflow: hidden;
}

.cert-card__preview a {
  width: 100%;
}

.cert-card__img {
  width: 100%;
  height: 100%;
}

.cert-card__title {
  font-size: 14px;
  line-height: 150%;
  color: #8F949E;
}

.cert-card:hover .cert-card__preview {}

.slider-serts {
  margin: 0 -12px;
}

.slider-serts .cert-card {
  margin: 0 12px;
}

.video-offer {
  position: relative;
  height: calc(100vh - 100px);
  display: flex;
  align-items: center;
  background: var(--main-c);
  color: var(--light-c);
  padding: 64px 0;
  box-sizing: border-box;
}

.video-offer__bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  object-fit: cover;
  /* Чтобы видео не мешало кликать по кнопкам и тексту */
  pointer-events: none;
}

.video-offer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.video-offer__container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  min-height: inherit;
  z-index: 2;
}

.video-offer__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}

.video-offer__row--bottom {
  align-items: flex-end;
  gap: 32px;
}

.video-offer__title {
  margin: 0;
  color: var(--light-c);
}

.video-offer__text {
  max-width: 425px;
}

.video-offer__text--top {
  max-width: 314px;
}

.video-offer__center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 40px 0;
}

.video-offer__label {
  margin-top: 36px;
  font-size: 14px;
  max-width: 210px;
}

.video-offer__side-action {
  max-width: 314px;
}

.video-offer__action-title {
  margin-bottom: 24px;
  font-size: 21px;
  font-weight: 600;
}

@keyframes playPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
  }

  70% {
    box-shadow: 0 0 0 32px rgba(255, 255, 255, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

.play--pulse {
  animation: playPulse 2s infinite;
}

.section-ortho {
  padding-top: 64px;
  border-top: 1px solid hsla(0, 0%, 0%, 0.09);
}

.ortho {
  display: flex;
  gap: clamp(20px, 5vw, 64px);
  align-items: flex-start;
}

.ortho__visual {
  flex: 0 0 40%;
  max-width: 420px;
  border-radius: 8px;
  overflow: hidden;
}

.ortho__main-img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.ortho__content {
  flex: 1;
  width: 100%;
}

.ortho__title {
  margin: 0 0 20px 0;
}

.ortho__desc {
  margin: 0 0 16px 0;
  max-width: 600px;
}

.ortho__subtitle {
  margin: 0 0 24px 0;
  font-size: 21px;
  font-weight: 600;
  color: var(--main-c);
}

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

.ortho-card {
  display: flex;
  align-items: center;
  padding: 12px 24px 12px 12px;
  background: var(--light-c);
  border-radius: 8px;
  box-shadow: 0px 4px 20px rgba(31, 31, 53, 0.06);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.3s ease;
}

.ortho-card:hover {
  box-shadow: 0px 8px 30px rgba(31, 31, 53, 0.12);
}

.ortho-card__preview {
  width: 64px;
  height: 64px;
  border-radius: 4px;
  overflow: hidden;
  margin-right: 16px;
  flex-shrink: 0;
}

.ortho-card__preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ortho-card__title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.45;
  flex: 1;
  transition: .3s;
  max-width: 215px;
  margin-right: 10px;
}

.ortho-card__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  margin-left: auto;
}

/* Поворот стрелки на 90 градусов при наведении на карточку */
.ortho-card:hover .ortho-card__arrow {
  transform: rotate(90deg);
}

/* ССЫЛКА ВСЕ ВИДЫ */
.ortho__all-link {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #1A2E3B;
  font-weight: 600;
  gap: 12px;
  font-size: 18px;
}

.ortho__all-link .ortho-card__arrow {
  margin-left: 10px;
}

.ortho__all-link span {
  text-decoration: underline;
  text-underline-offset: 4px;
  max-width: 152px;
}

.ortho__all-link:hover .ortho-card__arrow {
  transform: rotate(90deg);
}


.brands-line {
  /* Трюк для растягивания фона и границ на всю ширину экрана */
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);

  display: grid;
  grid-template-columns: 1.2fr 241px 241px 241px;
  align-items: center;
  background-color: #f4f7f9;
  border-top: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
  box-sizing: border-box;
}

.brands-line__title {
  padding: 30px 16px 30px 0;
  font-weight: 600;
  font-size: 26px;
  line-height: 1.25;
  max-width: 402px;
}

.brands-line__item {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 32px 16px;
  height: 100%;
  border-left: 1px solid #e2e8f0;
  box-sizing: border-box;
}

.brands-line__item:last-child {
  border-right: 1px solid #e2e8f0;
}

.brands-line__img {
  max-width: 100%;
  max-height: 64px;
  height: auto;
  display: block;
}




.implant-promo {}

.implant-promo__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
  align-items: center;
}

.implant-promo .section__title {
  margin: 0 0 20px 0;
  max-width: 100%;
}

.implant-promo .section__descript {
  margin: 0 0 32px 0;
  max-width: 530px;
}

/* Контейнер карточек */
.implant-promo__cards {
  display: flex;
  gap: 24px;
  margin-top: 32px;
}

/* Карточка */
.implant-card {
  flex: 1;
  background: #ffffff;
  padding: 24px;
  border-radius: 8px;
  box-shadow: 0px 15px 35px -8px rgba(31, 31, 53, 0.06);
  display: flex;
  flex-direction: column;
}

.implant-card__title {
  font-size: 24px;
  margin: 0 0 20px 0;
  line-height: 1.35;
}

.implant-card__text {
  margin: 0 0 24px 0;
  flex: 1;
}

.implant-card__link span {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.implant-card__link svg {
  color: #A53366;
  /* Розовая стрелка в ссылке */
  transition: transform 0.4s;
}

.implant-card__link:hover svg {
  transform: rotate(90deg);
}

/* Правая сторона: фото */
.implant-promo__visual {
  height: 100%;
  overflow: hidden;
  display: flex;
  border-radius: 8px;
}

.implant-promo__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}



.intro {
  display: grid;
  /* Две колонки: каждая от 0 до 650px. Между ними ровно 100px */
  grid-template-columns: minmax(0, 650px) minmax(0, 650px);
  gap: 30px 100px;
  justify-content: center;
  /* Центрируем всю конструкцию, если контейнер шире 1400px */
  color: var(--main-c);
}

/* Группа с фотографиями */
.intro__visual-group {
  display: flex;
  gap: 24px;
  align-items: stretch;
}

/* Группа с текстом */
.intro__content-group {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* --- Вспомогательные стили элементов --- */
.intro__col {
  display: flex;
  flex-direction: column;
  gap: 24px;
  flex: 1;
  position: relative;
}

.intro__col:first-child {
  gap: 0;
}

.intro__col:first-child .play {
    position: absolute;
    z-index: 1;
    top: 16px;
    right: 16px;
}

.intro__image-wrap {
  border-radius: 4px;
  overflow: hidden;
  height: 100%;
  display: flex;
}

.intro__image-wrap--tall {
  flex: 1;
}

.intro__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.intro__feature {
  background: #E8EFF8;
  border-radius: 4px;
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 20px;
}

.intro__feature-val {
  font-size: 34px;
  font-weight: 600;
  line-height: 1.1;
}

.intro__feature-label {
  font-size: 16px;
}

.intro__quote-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.intro__quote-text {
  margin: 0;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.35;
  padding-left: 0;
  border-left: 0;
}

.intro__author {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 30px;
}

.intro__author-info {
  display: flex;
  flex-direction: column;
  color: var(--black-c);
}

.intro__author-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  overflow: hidden;
}

.intro__author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.intro__author-name {
  font-weight: 600;
  font-size: 15px;
  line-height: 1.5;
}

.intro__author-post {
  font-size: 14px;
  color: var(--black-c);
}



/* Основной синий блок по ТЗ */
.promo-services {
  display: flex;
  padding: 64px;
  flex-direction: column;
  align-self: stretch;
  border-radius: 8px;
  background: radial-gradient(50% 50% at 50% 50%, #5073A6 0%, #142B45 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
}

.promo-services:before {
  content: '';
  position: absolute;
  top: -234px;
  left: -545px;
  width: 1056px;
  height: 1006px;
  background-image: url(../image/call-bf.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
}

.promo-services:after {
  content: '';
  position: absolute;
  bottom: -694px;
  right: -390px;
  width: 1056px;
  height: 1006px;
  background-image: url(../image/call-bf.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
  transform: rotate(33deg);
}

.promo-services .section__title {
  color: #fff;
}

.promo-services .section__descript {
  max-width: 360px;
}

.promo-services .section__descript p {
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  font-size: 16px;
}

/* Сетка */
.promo-services__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  width: 100%;
  position: relative;
  z-index: 1;
}

/* Карточка услуги */
.service-card {
  border-radius: 8px;
  padding: 12px;
  display: flex;
  gap: 16px;
  background: rgba(80, 115, 166, 0.50);
  backdrop-filter: blur(12.399999618530273px);
  color: var(--light-c);
}

.service-card__info {
  padding: 12px 0;
  display: flex;
  flex-direction: column;
}

.service-card__img {
  width: 120px;
  height: 120px;
  flex-shrink: 0;
  border-radius: 4px;
  overflow: hidden;
  display: flex;
}

.service-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service-card__name {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 auto 0;
}

.service-card .link-more {
  color: var(--light-c);
}

/* Блок действия в конце сетки */
.promo-services__action {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: self-start;
}

.promo-services__action-title {
  font-size: 21px;
  font-weight: 600;
  line-height: 1.35;
  margin: 0 0 24px 0;
}





/* Блок clinic-promo */
.clinic-promo {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  position: relative;
}

.clinic-promo__content {
  flex: 0 1 770px;
}

.clinic-promo__title {
  margin-bottom: 24px;
}

.clinic-promo__description {
  margin-bottom: 40px;
}

.clinic-promo__description p {
  margin: 0;
}

/* Секция с изображениями */
.clinic-promo__images {
  display: flex;
  gap: 20px;
  position: relative;
  flex: 0 0 auto;
  overflow: hidden;
}

.clinic-promo__images:before {
  content: '';
  position: absolute;
  bottom: -50px;
  left: -20px;
  width: 450px;
  height: 320px;
  background-image: url(../image/clinic-promo.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 0;
  background-size: 85%;
}

.clinic-promo__img-wrap {
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.clinic-promo__img-wrap img {
  border-radius: 8px;
}

.clinic-promo__img-wrap--small {
  width: 100%;
  max-width: 193px;
}

.clinic-promo__img-wrap--large {
  width: 100%;
  max-width: 315px;
}

.clinic-promo__img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}







/* Калькулятор */

.calc-columns {
  display: flex;
  column-gap: 64px;
}

.calc-columns .video-preview {
  width: 100%;
  max-width: 360px;
}

.calc-columns .calculator {
  flex: 1;
}

.video-preview {
  position: relative;
  padding-top: 46px;
  width: 100%;
}

.video-preview__box {
  position: relative;
  background: #5073A6;
  border-radius: 12px;
  height: 432px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 32px;
}

.video-preview__box:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 228px;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(80, 115, 166, 0) 0%, rgba(20, 43, 69, 0.8) 100%);
  border-radius: 0 0 12px 12px;
  z-index: 2;
}

.video-preview__photo {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 335px;
  max-width: none;
  pointer-events: none;
  z-index: 1;
}

.video-preview__content {
  position: relative;
  z-index: 2;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}

.video-preview__title {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
  text-align: center;
  color: #FFFFFF;
}

.video-preview .play {
  position: absolute;
  z-index: 1;
  top: 28px;
  right: 28px;
}



.calc-steps {
  border: 1px solid #E8EFF8;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 24px;
}

.calc-step {
  border-bottom: 1px solid #E8EFF8;
}

.calc-step:last-child {
  border-bottom: none;
}

.calc-step__header {
  padding: 20px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #B8BCC5;
  transition: 0.3s;
}

.calc-step__body {
  display: none;
  padding: 32px 24px;
}

.calc-step.is-open .calc-step__body {
  display: block;
}

.calc-step__subtitle {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  color: var(--main-c);
}

.calc-step__icon {
  transition: 0.3s;
  transform: rotate(270deg);
  display: flex;
  justify-content: center;
  align-items: center;
}

.calc-step.is-open .calc-step__icon {
  transform: rotate(0);
}

.calc-step.is-open .calc-step__icon svg path {
  stroke: #A53366;
}

/* Кнопки disabled */
.calc-footer .btn[disabled],
.calc-footer .btn.disabled {
  opacity: 0.5;
  filter: grayscale(1);
  pointer-events: none;
  cursor: not-allowed;
  background: #E8EAED;
  color: var(--grey-c);
  border-color: rgba(0, 0, 0, 0.09);
}

/* Заголовок аккордиона */
.calc-step__header {
  padding: 20px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #B8BCC5;
  transition: 0.3s;
  background: #fff;
}

.calc-step.is-open .calc-step__header {
  background: linear-gradient(104.68deg, #F3EDEF 0%, #E8EFF8 100.76%), #FFFFFF;
  color: #071B35;
}

.calc-step__title {
  font-weight: 600;
  font-size: 21px;
  line-height: 135%;
}

/* Управление видимостью кнопок */
#btnBack {
  display: none;
  /* По умолчанию скрыта для 1 шага */
}


/* Счетчики */
.calc-counters {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.calc-counter {
  display: flex;
  align-items: center;
  gap: 20px;
}

.calc-counter span {
  min-width: 150px;
  color: var(--main-c);
}

.counter-control {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  box-shadow: 0px 12px 32px -8px rgba(12, 12, 13, 0.05);
  padding: 13px 10px;
  border-radius: 4px;
}

input.counter-input {
  text-align: center;
  border: none;
  background: transparent;
  box-shadow: unset;
  padding: 0;
  border-radius: 0;
  width: 30px;
}

input.counter-input:active {
  box-shadow: unset;
}

/* Убираем стрелки в Chrome, Safari, Edge и Opera */
input.counter-input::-webkit-outer-spin-button,
input.counter-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Убираем стрелки в Firefox */
input.counter-input[type=number] {
  -moz-appearance: textfield;
}

.counter-btn {
  background: none;
  border: none;
  color: #A53366;
  font-size: 18px;
  cursor: pointer;
  padding: 0 5px;
  line-height: unset;
}

.calc-radios {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 16px;
}

.radio-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  background: #FFFFFF;
  border-radius: 4px;
  padding: 20px;
  flex-wrap: wrap;
}

.radio-label__input {
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 232px;
}

.radio-label__price {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  color: var(--main-c);
  min-width: 100px;
  margin-left: auto;
}

.calc-radios .radio-label {
  width: calc(50% - 10px);
}

.calc-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 22px;
}

.calc-footer__left {
  display: flex;
  gap: 12px;
}

.calc-result {
  background: linear-gradient(90deg, #E7ECE2 0%, #E8EFF8 100%);
  padding: 40px;
  border-radius: 12px;
  color: var(--main-c);
  flex-direction: column;
}

.calc-result__title,
.calc-summary__title {
  text-align: center;
  margin: 0 auto 15px auto;
  font-weight: 600;
  max-width: 760px;
}

.calc-result__title {
  font-size: 26px;
  line-height: 1.25;
}

.calc-summary__title {
  font-size: 34px;
  line-height: 1.1;
}

.calc-result__subtitle,
.calc-summary__subtitle {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 20px;
  line-height: 1.5;
}

.calc-result__fields {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 4px;
}

.calc-result__actions {
  display: flex;
  justify-content: center;
  margin-top: 6px;
  margin-bottom: 40px;
}

.calc-result .polit {
  max-width: 516px;
  margin: 0 auto;
}

/* Таблица итогов */
.calc-summary__table {
  max-width: 900px;
  margin: 0 auto;
}

.calc-summary__row {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  border-bottom: 1px solid #D0D9E3;
}

.calc-summary__total {
  display: flex;
  justify-content: space-between;
  padding: 12px 0 0 0;
  font-size: 21px;
  font-weight: 600;
}

/* End Калькулятор */

































/* Footer */

.footer {
  margin-top: 64px;
}

.footer .container {
  display: flex;
  flex-direction: column;
  gap: 56px;
}

.footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 32px 48px;
  gap: 32px;
  background: #FFFFFF;
  box-shadow: 0px 12px 32px -8px rgba(12, 12, 13, 0.05);
  border-radius: 8px;
}

.footer-names {
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
  color: #5073A6;
  max-width: 263px;
}

.footer__phone {
  color: var(--main-c);
  color: var(--black-c);
  font-weight: 600;
  font-size: 18px;
  line-height: 145%;
}

.footer-top__left,
.footer-top__right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.footer-top__left {
  gap: 20px;
}

.footer-top__right {
  gap: 24px;
  justify-content: flex-end;
}

.footer-top__cont {
  display: flex;
  align-items: center;
  gap: 12px;
}

.footer .btn--wt {
  color: var(--akcent-c);
  border: 1px solid rgba(165, 51, 102, 0.25);
}

.footer .btn--wt:hover {
  background: rgba(165, 51, 102, 0.25);
}

.footer-mid {
  display: flex;
  gap: 42px;
  padding-right: 70px;
}

.footer-mid__first {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 210px;
  margin-right: auto;
}

.route {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
}

.route svg path {
  transition: .3s;
}

.route:hover {
  color: var(--black-c);
}

.route:hover svg path {
  stroke: var(--black-c);
}

.footer-mid__last {
  display: flex;
  justify-content: space-between;
  gap: 42px;
  width: 100%;
  max-width: 980px;
}

.footer-menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
}

.footer-menu__item {
  padding-left: 0;
}

.footer-menu__item:before {
  display: none;
}

.footer-menu a {
  color: var(--black-c);
}

.footer-menu a:hover {
  color: var(--akcent-c);
}

.footer-bot {
  display: flex;
  flex-direction: column;
  gap: 16px;
  color: var(--black-c);
}

.footer__text-lg {
  font-family: 'PT Sans Narrow';
  font-style: normal;
  font-weight: 400;
  font-size: 44px;
  line-height: 100%;
  text-align: center;
  color: rgba(0, 0, 0, 0.09);
}

.footer-bot__cols {
  border-top: 2px solid rgba(0, 0, 0, 0.09);
  padding: 16px 0;
  display: flex;
  justify-content: space-between;
  gap: 32px;
  color: var(--grey-c);
  font-size: 14px;
  line-height: 150%;
}

.footer-bot__cols a {
  color: var(--grey-c);
}

.footer-bot__cols a:hover {
  color: var(--akcent-c);
}

.footer-bot__first {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-self: flex-start;
  min-width: 380px;
}

.footer-bot__mid {
  max-width: 834px;
}

.footer-bot__last {
  min-width: 130px;
}

.developer__label a {
	display: block;
	font-size: 12px;
	line-height: 1;
	margin-bottom: 5px;
}

/* End Footer */