
.specialist-section{
  width:100%;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:38px;
  padding:48px 16px;
  background:#fff;
}

.specialist-card{
  max-width:260px;
  text-align:center;
  background:#f5f7fa;
  border-radius:16px;
  box-shadow:0 2px 16px rgba(28,43,58,.06);
  padding:26px 18px 22px;
}

.specialist-photo{
  width:200px;specialist-left
  height:200px;
  border-radius:50%;
  object-fit:cover;
  margin-bottom:16px;
  border:3px solid #e2e8f0;
}

.specialist-card h3{
  font-weight:800;
  font-size:1.15rem;
  margin:0;
  color:#183541;
}
.specialist-card .desc{ font-size:1rem; color:#7c8892; margin-bottom:2px; }
.specialist-card .place{ font-size:.98rem; color:#6f7b84; margin-bottom:12px; }

.hero-btn{
  display:inline-block;
  background:rgba(13, 79, 133, 0.93);
  color:#fff !important;
  border:none;
  border-radius:8px;
  font-weight:700;
  font-size:.95rem;
  padding:.5rem .75rem;
  text-decoration:none;
  transition:.13s;
}
.hero-btn:hover{ background:#cf7314; }

.specialist-left{ max-width: 620px; color:#385b63; margin-bottom: 50px !important;}
.specialist-left h2{ font-size: 2rem;
font-weight: 800;
color: #295760;
margin: 0 0 15px;
align-content: center;
text-align: center;
font-family: "Libre Baskerville", serif;
}
.specialist-left p{ text-align:justify ; font-size:1.05rem; line-height:1.5; margin:0 0 10px; letter-spacing: 0.1px; font-family: "Libre Baskerville", serif;}

/* Trainings */
.trainings{ margin: 10px 0 0; }
.trainings-toggle{
  display:inline-flex; align-items:center; gap:10px;
  background: #f5f7fa;
  border:1.5px solid #8bb2ec;
 color: #385b63;
  border-radius:999px;
  padding:8px 14px;
  font-weight:800;
  cursor:pointer;
  font-family: "Libre Baskerville", serif;
}
.trainings-panel{
  overflow:hidden;
  transition: grid-template-rows .28s ease, padding .2s ease;
  display:grid;
  grid-template-rows: 0fr;
  padding:0 2px;
}
.trainings-panel.open{ grid-template-rows: 1fr; padding:8px 2px 0; }
.trainings-panel > *{ min-height:0; }
.trainings-list{ margin:0; padding-left:1.2rem; color:#385b63; font-family: "Libre Baskerville", serif; }
.trainings-list li{ margin-bottom:6px; }

@media (max-width: 900px){
  .specialist-section{ flex-direction:column; align-items:center; }
  .specialist-left{ max-width: 96vw; }
}

/* żeby pasek nie zasłaniał treści strony */
body{ padding-bottom: 74px; }

@media (max-width: 520px){
  .bottom-cta__text{ font-size: 13px; }
  .bottom-cta__btn{ padding: 9px 14px; }
}
  /* BOTTOM SLIDER (HOME) */
  .bottom-slider{
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 9999;
    background: #0f2430;
    color: #fff;
    padding: 14px 16px;
    box-shadow: 0 -10px 30px rgba(0,0,0,.25);
  }
  .bottom-slider__inner{
    max-width: 1120px;
    margin: 0 auto;
    display:flex;
    align-items:center;
    gap: 14px;
  }
  .bottom-slider__text{
    font-weight: 700;
    color: rgba(255,255,255,.92);
    font-size: 14px;
  }
  .bottom-slider__text small{
    display:block;
    font-weight: 500;
    color: rgba(255,255,255,.70);
    margin-top: 2px;
    font-size: 12px;
  }
  .bottom-slider__spacer{ flex: 1; }

  .bottom-slider__btn{
    border: none;
    background: #f6c7ab;
    color: #1b2a33;
    font-weight: 800;
    padding: 10px 14px;
    border-radius: 999px;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    gap:10px;
    white-space: nowrap;
  }

  .bottom-slider__close{
    border:none;
    background: transparent;
    color: rgba(255,255,255,.75);
    font-size: 22px;
    line-height: 1;
    padding: 6px 10px;
    cursor:pointer;
  }
  .bottom-slider__close:hover{ color:#fff; }

  /* żeby treść nie chowała się pod sliderem */
  body.has-bottom-slider{
    padding-bottom: 74px;
  }

  @media (max-width: 720px){
    .bottom-slider__inner{ flex-wrap: wrap; }
    .bottom-slider__spacer{ display:none; }
    body.has-bottom-slider{ padding-bottom: 98px; }
  }
  .bottom-slider{
  display:block;
  visibility:visible;
  opacity:1;
}
.hero-title{
font-family: "Libre Baskerville", serif;
font-size: clamp(22px, 2.6vw, 38px);
font-weight: 400;
letter-spacing: .2px;
margin: 0 0 12px 0;
text-shadow: 0 10px 30px rgba(0,0,0,.35);
color: white;
}
