/* Обнулення */
*,
*::before,
*::after {
    padding: 0;
    margin: 0;
    border: 0;
    box-sizing: border-box;
}
a {
    text-decoration: none;
}
ul,
ol,
li {
    list-style: none;
}
img {
    vertical-align: top;
}
h1,
h2,
h3,
h4,
h5,
h6 {   
    font-weight: inherit;
    font-size: inherit;
}
html,
body {
    height: 100%;
    line-height: 1;
    border-color: #ffffff;
    font-size: 16px;
    color: #000000;
    font-weight: 500;
    font-family: Montserrat;
}
/*------------------------------------------------*/
/* .wrapper{
    min-height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
} */
/*------------------------------------------------*/


.wrapper {
   
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

._container {
    max-width: 1103px;
    margin: 0 auto;
    padding: 0px 15px;
    box-sizing: content-box;
}

._ibj {
    position: relative;
}

._ibj img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}


/*--------------------------------------header---------------------------*/

.header {

    width: 100%;
    z-index: 100;
    position: fixed;
    /* background-color: #ffffff; */
}

.header__container {
    max-height: 100px;
    display: flex;
    align-items: center;
    /* background-color: #ffffff; */
}

.header__logo {
       /* background-color: #812424; */
       /* max-height: 73px; */
       max-height: 70px;
       max-width: 70px;
       /* margin-top: 5px;
       margin-bottom: 5px; */
}

.header__logo-img {
    /* height: 100px;
    width: 200px; */
    width: 70px;               /* задайте реальные размеры вашего лого */
    height: 70px;
    /* background: url('/img/test-logo.svg') 
                no-repeat center/contain; */
    /* center — выравнивание, contain — масштаб по размеру контейнера */

}

#navbar {
  background-color: transparent; /* изначально прозрачный */
  background-color: #ffffff;
  transition: background-color 0.3s ease;

}

#contact {
      
}

#navbar.scrolled {
  background-color: #ffffff;
}

.header__menu {
    margin: 0px 0px 0px 133px;
} 

.menu {
    padding: 5px 0px;
}

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

.menu__item:not(:last-child) { 
    margin-right: 25px;
}

.menu__link {
    /* color: #333333;
    font-weight: 799;
    line-height: 217%; */

    display: inline-block;
  /* font-family: 'Roboto', sans-serif; */
      font-family: "Open Sans";/*!!!!!!!!*/

  font-size: 12px;                /* как и в макете */
  font-weight: 100;               /* «Mixed» в Figma — примерно 500 */
  letter-spacing: 0.05em;         /* 5% от 12px => 0.6px (0.05em) */
  line-height: 26px;              /* чтобы текст вертикально центрировался в 26px-блоке */
  text-transform: uppercase;      /* если в макете все буквы заглавные */
  
  color: #000000;                 /* цвет заливки текста (Fill) */
  
  /* Текстовая обводка (Stroke = 1px, цвет #000) */
  -webkit-text-stroke: 1px #000000; /* WebKit-браузеры */
  text-stroke: 1px #000000;         /* «стандарт» (пока не везде поддерживается) */
  
  /* Drop shadow: в Figma могли быть offsetY=1px, blur=2px, цвет rgba(0,0,0,0.2) */
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  
  /* Убираем подчёркивание и добавляем отступы, чтобы «не прилипало» к границам */
  text-decoration: none;
  padding: 0 5px;                 /* 5px слева/справа — ориентируйтесь на макет */
  
  transition: 
    color 0.2s ease, 
    -webkit-text-stroke-color 0.2s ease, 
    text-shadow 0.2s ease;
}

/* 2.2. Состояние hover (при наведении) */
.menu__link:hover {
  color: #1A79C2;
;                  /* пример: цвет hover — тот же, что в макете */
  -webkit-text-stroke: 1px #1A79C2;/* обводка того же цвета при hover */
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3); /* чуть более «тёмная» тень */
}

/* 2.3. Класс active для текущей страницы */
.menu__link.active {
  color: #e45b5b;
  -webkit-text-stroke: 1px #e45b5b;
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
}

/*------------------------------------page--------------------------*/

.page {
    flex: 1 1 auto;
}
.page__main-block {}

.page__categories {} 

.page__services {}/* + */

.page__prices {}/* + */

.page__doctors {}/* + */

.page__reviews {}

.page__connection {}/* + */

.page__slider{}

.page__advantages{}

.page__IndividualOrder{

}


/*----------------main-block--------------------------*/
.main-block {

 position: relative;
    /* max-height: 600px; */
    height: 95vh;


 

}
.main-block__container {}
.main-block__body {
    padding: 120px 0px 191px 0px;
    position: relative;
    z-index: 2;
    /* max-width: 400px; */
    
}

.main-block__body > *:not(:last-child){
    margin: 0px 0px 25px 0px;
}
.main-block__title {
    /* color: rgb(255, 255, 255); */
    color: #1A79C2;
    /* background-color:#ffffff80; */
     background-color:#ffffffbd; 
        font-family: "Open Sans";/*!!!!!!!!*/

        font-size: 58px;
    line-height: 137%;
    letter-spacing: 0.2px;
    font-weight: 800;
   /* -webkit-text-stroke: 1px rgb(0, 0, 0); /* Толщина и цвет обводки */
   /* text-stroke: 1px rgb(0, 0, 0); /* Толщина и цвет обводки (стандартное свойство) */
}

.main-block__text {
    color: #ffffff;
    /* background-color:#ffffff80; */
     /*background-color:#ffffffbd;*/ 
     font-family: "Open Sans";/*!!!!!!!!*/
    font-size: 20px;
    line-height:150%;
    font-weight: 800;
    width: 30%;
}
.main-block__image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.main-block__buttons {
    display: inline-flex;
    flex-wrap: wrap;
    margin: -10px 0px;
}
.main-block__button {
    background-color:#1A79C2;
    border-radius: 37px;
    display: flex;
    min-height: 48px;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.2px;
    color: #FFFFFF;
    font-weight: 700;
    line-height: 200%;
    padding: 5px 36px;
    margin: 10px 0px;
}
.main-block__button:not(:last-child){
    margin-right: 10px;
}

.main-block__button__border {
    background: none;
    border:1px solid #18630d;
    color: #1a630d;
}

.main-block__buttons :hover {
    background: #FFFFFF;
    color: #1A79C2;
    border: 1px solid #1A79C2;
}
     
 .test-w {
    background-color: #1A79C2;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 300px;
    width: 100%;
   
 }

.w1 { 
     
    position: absolute;
     height: 100%;
     width: 100%;
    bottom: 0;
    left: 0;
  }
 


/*----------------categories---------------------*/
/*-----------------------------------------------*/
/*----------------Services-----------------------*/
.services {}

.services__container {}

.servises__body {
    padding: 25px 0px 0px 0px;
}

.services__title {
    font-family: "Open Sans";/*!!!!!!!!*/
    text-align: center;
    color: #1A79C2;
    font-weight: 700;
    font-size: 40px;
    line-height: 140%;
    margin-bottom: 24px;
}

.services__section {}

.services-info {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-content: center;
    align-items: center; 
}

.services-info-item {
    background-color: #ffffff;
    width: calc((100% / 3) - 10px);
    max-height: 500px;
    height: 500px;
    margin: 5px;
    margin-bottom: 15px;
    border-radius: 8px;
    box-shadow: 0 0 10px -5px #000;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.services-info-item__icon {
    height: 50%;
}

.services-icon__item {}

.services-info-item__body {}

.services__section__title {
     width: 80%;
     height: 48px;
    text-align: center;
    color: #1A79C2;
    font-weight: 700;
    font-size: 24px;
    line-height: 100%;
    margin: 0 auto;
    margin-bottom: 20px;
}

.divider {
    margin: 0px auto;
    width: 20%;
    height: 2px;
    background-color: #1A79C2;
    margin-bottom: 20px;
}

.services__section__desc {
    width: 80%;
    text-align: justify;
    text-align-last: left; /* или center */
    hyphens: auto;      /* разрешить переносы */
    word-break: break-word;
    color: #1A79C2;
    font-weight: 700;
    font-size: 16px;
    line-height: 120%;
    margin: 0 auto;
    margin-bottom: 16px;
}

/*-----------------------------------------------*/
/*-----------------prices------------------------*/
.prices {
    position: relative;
    background-color: #1A79C2;
}

.prices__container {}

.prices__body {
    min-height: 500px;
    margin-top: 5px;
    padding: 75px 0px 75px 0px;
}


.prices__title {
    text-align: center;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 40px;
    line-height: 140%;
    margin-bottom: 24px; 
}

.prices__thematic-break-white {
    max-width: 80%;
    margin: 0 auto;
    padding: 5px 0px 5px 0px;
    border: none;
    border-top: 3px solid #FFFFFF;
    color: #FFFFFF;
    overflow: visible;
    text-align: center;
    height: 5px;
}

:root {
    --font-size-base: clamp(14px, 1.5vw, 18px);
    --padding-base: clamp(12px, 2vw, 24px);
    --radius: 0.75rem;
    --gray-light:#f4f4f4;
    --gray-dark:#e0e0e0;
    --transition-speed: 0.3s;
    --spacing-between: 12px;
}

.accordion {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding-bottom: 10px;
}

.accordion-item {
    background-color: #FFFFFF;
    border-radius: var(--radius);
    margin-bottom: var(--spacing-between);
    overflow: hidden;
    transition: background-color var(--transition-speed);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.accordion-item.active .accordion-content {
    padding: var(--padding-base);
    max-height: 600px;
}

.accordion-item.active {
    background-color: var(--gray-dark);
}

.accordion-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--padding-base);
    cursor: pointer;
    user-select: none;
    font-weight: 600;
    font-size: var(--font-size-base);
    position: relative;
}

.icon {
    display: inline-block;
    font-size: 1.5em;
    transition: transform var(--transition-speed) ease;
    color: #555;
    margin-left: 10px;
    user-select: none;
    transform: rotate(0deg);
}

.accordion-item.active .icon {
    transform: rotate(135deg);
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    background: #fff;
    transition: max-height var(--transition-speed) ease, padding var(--transition-speed);
    padding: 0 var(--padding-base);
}

.accordion-content ul {
    margin: 0;
    padding-left: 1.25rem;
}

.accordion-content li {
    font-size: var(--font-size-base);
    margin-bottom: 0.5em;
    line-height: 1.4;
}
/*-----------------------------------------------*/
/*----------------doctors-----------------------*/
.doctors {}

.doctors__container {}

.doctors__body {
     padding: 75px 0px 0px 0px;
}

.doctors__title {
    text-align: center;
    color: #1A79C2;
    font-weight: 700;
    font-size: 40px;
    line-height: 140%;
    margin-bottom: 24px; 
}

.doctors__thematic-break {
  max-width: 80%;
  margin: 0 auto;
  padding: 5px 0px 5px 0px;
  border: none;
  border-top: 3px solid #1A79C2;
  color: #1A79C2;
  overflow: visible;
  text-align: center;
  height: 5px;
}

/*my slider */
.my-wraperr-slider {}

.my-slider_0 {}

.my-slider-body-test {
  position: relative;
  max-width: 100%;
  height: 50vh;
}

.my-slider-body-test i {
  top: 50%;
  height: 50px;
  width: 50px;
  cursor: pointer;
  font-size: 1.25rem;
  position: absolute;
  z-index: 40;
  text-align: center;
  line-height: 50px;
  background-color:  #1A79C2;
  border-radius: 50%;
  box-shadow: 0 3px 6px rgba(0,0,0,0.23);
  transform: translateY(-50%);
  transition: transform 0.1s linear;
}

.my-slider-body-test i:active{
  transform: translateY(-50%) scale(0.85);
}

.my-slider-body-test i:first-child{
  left: -25px;
  background-image: url("../myimg/icons_for_switching_the_slider/direction_left.svg");
}

.my-slider-body-test i:last-child{
  right: -25px;
  background-image: url("../myimg/icons_for_switching_the_slider/direction_right.svg"); 
}

.my-slider {
  max-width: 100%;
  height: 50vh;
  margin: 20px auto;
  overflow: hidden;
}

.my-slider-line {
  width: 100%;
  height: 50vh;
  display: flex;
  position: relative;
  left: 0;
  transition: all ease 1s;
}

.my-card {
  position: relative;
  scroll-snap-align: start;
  list-style: none;
  cursor: pointer;
  flex-direction: column;
  display: flex;
  min-width: calc(100%/1);
  min-width: calc(100%/1);
  padding: 5px -5px 5px -5px;
  height: 50vh;
  transform: translate();
  transition: transform 0.1s linear;
}

.my-card-4 {
  min-width: calc(100%/4);
  min-width: calc(100%/4);
}

.my-card-body {
  border-radius: 8px;
  height: 50vh;
  overflow: hidden; 
  margin: 0 2.5px;
}

/*my slider */

.im {
    height: 100%;
    width: 100%;
}

/*-----------------------------------------------*/
/*-------------------reviews---------------------*/
.reviews {
    position: relative;
    background-color: #1A79C2;

}

.reviews__container {
 
}

.reviews__body {
    /* background-color: #825CB2; */
    /* min-height: 300px; */
    /* position: relative; */
    margin-top: 5px;
    padding: 75px 0px 75px 0px;
}

.w2 {
      position: absolute;
    width: 100%;
    height: 100%;
    top: -1px;
    right: 0;
    /* background-color: #441111; */
    /* background-image: url("img/wave.svg");  ← здесь используем url() */
}

.w3 {
      position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    right: 0;
    /* background-color: #441111; */
    /* background-image: url("img/wave.svg");  ← здесь используем url() */
}

.reviews__title {
    text-align: center;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 40px;
    line-height: 140%;
    margin-bottom: 24px; 
}

.doctors__thematic-break-white{
  max-width: 80%;
  margin: 0 auto;
  padding: 5px 0px 5px 0px;
  border: none;
  border-top: 3px solid #FFFFFF;
  color: #FFFFFF;
  overflow: visible;
  text-align: center;
  height: 5px;
}

.t-wrap {
    /* background-color: #18630d; */
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 10px auto;
    
}

.t-left {
    /* background-color: #177970; */
    width: 50%;
}

.t-title {
        /* text-align: center; */
     color: hsl(0, 0%, 0%);
    font-weight: 600;
    font-size: 30px;
    line-height: 100%;
    margin-bottom: 20px;
}

.t-lead {
        color: #000000;
    line-height: 175%;
    /* margin-bottom: 25px; */
    font-size: 20px;
    font-weight: 500;
}

.t-right {
    width: 50%;
    margin-bottom: 35px;
}

.t-right-2 {
    background-color: #825CB2;
    width: 100%;
    margin-bottom: 35px;
}

/* Slider for reviews */

.test {
    height: 100%;
    margin: 0 auto;
  background: #f9f4f4;
  padding: 28px;
  position: relative;
}

.test p {
  font-size: 16px;
  line-height: 1.6;
  color: #444;
  margin-bottom: 15px;
  text-align: justify;
  word-break: break-word;
}

.review-author{
    position: absolute;
    right: 28px;
    bottom: 28px;
    font-weight: bold;
    color: #333;
    text-align: right;
    margin-top: 30px;
 
}
.apogered-gselected{
  color: #53b32b;
  margin-bottom: 20px;
}

blockquote {
    margin: 0;
    padding: 0;
    font-style: italic;
    color: #555;
    position: relative;
}

blockquote p {
    margin: 0;
}


/* Візуальні лапки */
blockquote::before {
    content: "„";
    font-size: 4em;
    color: #007BFF;
    position: absolute;
    top: -64px; 
    left: -10px;
    opacity: 0.4;
}

blockquote::after {
    content: "”";
    font-size: 4em;
    color: #007BFF;
    position: absolute;
    bottom: -64px; 
    right: -10px;
    opacity: 0.4;
}

/*-----------------------------------------------*/
/*---------connection / contact------------------*/
.connection {
    margin-bottom: 25px;     
}

.connection__container {
}

.connection__body {
    padding: 75px 0px 0px 0px;
}

.connection__title {
    text-align: center;
    color: #1A79C2;
    font-weight: 700;
    font-size: 40px;
    line-height: 140%;
    margin-bottom: 24px; 
}

.connection__thematic-break {
    max-width: 80%;
    margin: 0 auto;
    padding: 20px 0px 5px 0px;
    border: none;
    border-top: 3px solid #1A79C2;
    color: #1A79C2;
    overflow: visible;
    text-align: center;
    height: 5px;
}

.connection__section {
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: auto;
}

.contacts-info {
    background-color: #FFFFFF;
    min-width: 40%;
    margin-right: 20px;
}

.contacts-info-item {
    display: flex;
    margin-bottom: 40px;
}

.contacts-info-item__icon {
    width: 35px;
    margin-right: 16px;
}

.icon__item {
    position: relative;
    max-height: 35px;
    height: 100%;
}

.icon__item img { 
}

.contacts-info-item__info {
    color: #000000;
    line-height: 175%;
    font-size: 20px;
    font-weight: 500;
}

.connection__section-form {
    max-width: 600px;
    min-height: 440px;
    background: #e6e6e6;
    border-radius: 8px;
    box-shadow: 0 0 40px -5px #000;
    padding: 20px 30px;
    max-width: calc(100vw - 40px);
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif;
    position: relative;
}

.connection__section-form__title {
    text-align: center;
    color: #1A79C2;
    font-weight: 600;
    font-size: 30px;
    line-height: 100%;
    margin-bottom: 20px; 
}

.connection__section-form__desc {
    color: #111111;
    line-height: 175%;
    font-size: 20px;
    font-weight: 500;
}

.form input,
.form textarea { /* Общий стиль для всех input и textarea */
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    background: none;
    outline: none;
    resize: none;
    border: 0;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    transition: all .3s;
    border-bottom: 2px solid #1A79C2;
}

.form input:focus,
.form textarea:focus {
  border-bottom: 2px solid 1A79C2;
}

.form p::before { /* Двойное двоеточие вместо одного */
  content: attr(type);
  display: block;
  margin: 28px 0 15px 0;
  font-size: 18px;
  color: #5a5a5a;
}

.form button {
  float: right;
  padding: 8px 12px;
  margin: 8px 0 0;
  height: 50px;
  min-width: 170px;
  font-weight: 700;
  font-size: 16px;
  line-height: 200%;
  background: #1A79C2;
  color: #FFFFFF;
  border-radius: 50px;
}

.form button:hover {
    background: #FFFFFF;
    color: #1A79C2;
    border: 1px solid #1A79C2;
}

.form textarea {
  min-height: 100px; 
  max-height: 250px;
  border: 2px solid #1A79C2;
  transition: all .3s;
}

.form textarea:focus {
  border: 2px solid #1A79C2; 
}

/*.form_contacts {
  content: 'Hi';
  position: absolute;
  bottom: -15px;
  background: #50505a;
  color: #fff;
  width: 320px;
  padding: 16px 4px 16px 0;
  border-radius: 6px;
  font-size: 13px;
  box-shadow: 10px 10px 40px -14px #000;
}*/

.form span {
  margin: 0 5px 0 15px;
}

/*-------------------------------------footer-----------------------------*/

.footer {
    padding-top: 20px;
    background-color:#1A79C2;

}

.footer__container {
    justify-content: space-between;
}

.footer__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.footer__column {
    padding: 29,4px 15px;
    flex: 0 1 33%;
    min-width: 180px;
    padding-right: 10px;
}

.footer__logo {
    /* background-color: #fff; */
    /* max-height: 73px;
    max-width: 200px;
    margin-top: 5px;
    margin-bottom: 5px;
    margin: 0px 0px 10px 0px;  
    color: #49321B;
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    margin: 0px 0px 10px 0px; */
    /* height: 100px;
    width: 200px; */
    width: 90px;               /* задайте реальные размеры вашего лого */
    height: 90px;
    /* background: url('/img/test-logo.svg') 
                no-repeat center/contain; */
    /* center — выравнивание, contain — масштаб по размеру контейнера */

}

.footer__text {
    color: #000000;
    font-weight: 400;
    font-size: 16px;
    line-height: 175%;
    margin: 0px 0px 5px 0px;
}

.footer__social {}

._social {}

.social__item {
    /* background-color: #fff; */
      display: inline-block;
    width:   auto;
    height: 40px;
    margin-right: 10px;
    margin-bottom: 10px;

}

.footer__lable {
    color: #000000;
    font-weight: 700;
    font-size: 20px;
    line-height: 160%;
    margin: 0px 0px 10px 0px;
}

.footer__menu {}

.menu-footer {}

.menu-footer__list {}

.menu-footer__item {}

.menu-footer__link {
    color: #ffffff;
    font-weight: 400;
    font-size: 16px;
    line-height: 175%;
    margin: 0px 0px 5px 0px;
}
.footer__contacts {}

.contacts-footer {}

.contsct_item {
    display: flex;
    flex-wrap: wrap;
    align-items: center; 
    padding-bottom: 5px;
}

.contsct_img {
    /* background-color: #fff; */
    width: 30px;
    height: 30px;
    margin: 0px 18px 5px 0px;
}

.contacts-footer__item {
    color: #ffffff;
    font-weight: 400;
    font-size: 16px;
    line-height: 175%;
}

.contacts-footer__item_email {}

.contacts-footer__item_phone {}

.contacts-footer__item_map {}

.contsct_img-map-div{
    height: 56px;
    line-height: 175%; 
}

.contsct_img-map-icon {
    line-height: 175%;
    min-width: 16px;
    min-height: 28px;
    margin: 0px 18px 0px 0px;
    display: flex;
    align-items: center;
}
.contacts-footer__item-test {}

.contacts-footer__item_map-test {
    color: #ffffff;
    font-weight: 400;
    font-size: 16px;
    line-height: 175%;
}
