/* =========================
   Post body (acotado) + Headings DS
   Scope: solo dentro de .post-content__body
   ========================= */

.post-blog .post-content__body {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.post-blog .post-content__body img {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Si CKEditor mete width/height, que no rompa el layout */
/* Aplicar a todas las imágenes EXCEPTO a la primera que aparezca en el body */
.post-blog .post-content__body img {
    width: 100%;
    height: auto;
    display: block;
}

/* 2. El truco: Cualquier imagen que esté después del primer bloque de contenido 
      o dentro de cualquier bloque que NO sea el primero, se ajustará al contenido */
.post-blog .post-content__body > *:not(:first-child) img, 
.post-blog .post-content__body > img:not(:first-child) {
    width: revert-layer !important;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.post-blog .post-content__body img[height] { height: auto; }

.post-blog .post-content__body .u-text-small-14pt { 
  border-left: 2px solid #0F77AE;
  display: flex;
  padding-left: 32px;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
  flex-direction: column;
}

@media only screen and (max-width: 991px) {
  .post-blog .post-content__body .u-text-small-14pt { 
    border-left: none;
    border-bottom: 2px solid #0F77AE;
    display: flex;
    padding-left: 0;
    padding-bottom: 2rem;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
  }
}

.post-blog .post-content__body .u-text-small-14pt span{ 
  color: #333;
  font-family: Roboto;
  font-size: 25px;
  font-style: normal;
  font-weight: 400;
  line-height: 31px; 
}

@media only screen and (max-width: 991px) {
  .post-blog .post-content__body .u-text-small-14pt span{ 
    font-size: 20px;
    line-height: 26px;
  }
}

/* H2: primary/desktop/headlineL */
.post-blog .post-content__body h2 {
  font-family: "Gilroy-ExtraBold", "Gilroy", sans-serif;
  font-weight: 400;
  font-size: 31px;
  line-height: 36px;
  letter-spacing: 0;
  vertical-align: middle;
}

/* H3: primary/desktop/headlineM */
.post-blog .post-content__body h3 {
  font-family: "Gilroy-ExtraBold", "Gilroy", sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 29px;
  letter-spacing: 0;
  vertical-align: middle;
}

.post-blog .post-content__body em {
  font-style: italic;
}

.post-blog .post-content__body .btn-info--blue,
.post-blog .post-content__body .btn-info--red {
  background-color: #F24C3E;
  color: white !important;
  padding: 10px 20px;
  text-align: center;
  display: inline-block;
  font-size:16px;
  border: none;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
}

.post-blog .post-content__body .text-align-center {
  text-align: center;
}

.post-blog .post-content__body hr {
  width: 100%;
}
@media only screen and (max-width: 991px) {
  .post-blog .post-content__body hr {
      color: #0F77AE;
      border-color: #0F77AE;
  }
}

.ds-firma-medico-wrapper {
    display: flex;
    flex-direction: column;
    padding-top: 24px;
  }

@media only screen and (max-width: 991px) {
  .ds-firma-medico-wrapper {
  font-size: 24px;
  }
}

.ds-firma-medico-wrapper .ds-title{
  font-size: 31px;
  margin-bottom: 0;
}

@media only screen and (max-width: 991px) {
  .ds-firma-medico-wrapper .ds-title{
  font-size: 24px;
  }
}

.ds-firma-medico-wrapper .wrapper_foto_datos {
  display: flex;
  gap: 24px;
  padding-top: 16px;
  margin: 1.5rem 0;
  align-items: center;
  align-self: stretch;
}

@media only screen and (max-width: 991px) {
  .ds-firma-medico-wrapper .wrapper_foto_datos {
    flex-direction: column;
    padding-top: 0;
    align-items: start;
  }
}

.ds-firma-medico-wrapper .wrapper_foto_datos .specialist-photo{
}

.ds-firma-medico-wrapper .wrapper_foto_datos .specialist-photo img{
  width: 99px;
  height: 96px;
  aspect-ratio: 33 / 32;
  border-radius: 100px;
  object-fit: cover;
}

.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos{
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-specialty{
  width: 100%;
}

.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-specialty .post-content__badge-list{
  flex-direction: row;
  padding: 0;
}
.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-specialty .post-content__badge-list .badge--gray {
  border-radius: 0;
}
.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-name{
  margin: 0;
  font-size: 24px;
  line-height: 29px;
  font-family: Gilroy;
}
@media only screen and (max-width: 991px) {
  .ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-name{
    font-size: 21px;
    line-height: normal;
  }
}

.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-titulacion{
  font-size: 20px;
  line-height: 20px;
}
@media only screen and (max-width: 991px) {
  .ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-titulacion{
    font-size: 16px;
    line-height: 22px;
  }
}

.ds-firma-medico-wrapper .wrapper_foto_datos .wrapper_datos .specialist-colegiado{
  font-size: 14px;
}

.ds-firma-medico-wrapper .specialist-trayectoria-text{
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  margin-bottom: 0.5rem;
}
.ds-firma-medico-wrapper .specialist-trayectoria-text div p{
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}


.ds-firma-medico-wrapper .specialist-trayectoria-link a{
  padding: 0.25rem 0;
  font-family: Roboto;
}
@media only screen and (max-width: 991px) {
  .ds-firma-medico-wrapper .specialist-trayectoria-link a{
    color: #0F77AE;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 22px;  
  }
}


.post-content section.post-content__especialistas{
  padding-bottom: 3rem;
}

@media only screen and (max-width: 991px) {
  .post-content section.post-content__especialistas{
    padding-top: 0;
  }
}