.b-cartilla {
  color: #313235;
  font-size: 14px;
  line-height: 1.5;
  width: 100%;
  font-family: var(--font-omnes-girlscouts);
}
.b-cartilla strong {
  font-weight: 600;
  color: var(--blue);
}
.b-cartilla [hidden] {
  display: none !important;
}
.b-cartilla__type {
  font-size: 16px;
  position: relative;
  top: 2px;
}
.b-cartilla .b-cartilla__title {
  color: var(--blue);
  font-size: 25px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 16px;
  padding: 0;
  font-family: var(--font-omnes-girlscouts);
}
.b-cartilla__search {
  margin-bottom: 28px;
}
.b-cartilla__schedule {
  top: 3px;
  font-size: 16px;
  position: relative;
  margin-bottom: 1px;
}
.b-cartilla .b-cartilla__search input {
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #c7c7c7;
  border-radius: 0;
  background: #eee;
  color: var(--grey);
  font-size: 15px;
  padding: 13px 14px;
  background-image: url(../../../../../wp-content/uploads/lupa.svg);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: 20px;
  padding-left: 40px;
  font-family: var(--font-work-sans);
  font-weight: 700;
}
.b-cartilla__group {
  border-bottom: 1px solid #ccc;
}
.b-cartilla__group > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 8px 10px;
  color: var(--blue);
  cursor: pointer;
  list-style: none;
  font-weight: 500;
  text-transform: uppercase;
  font-weight: 400;
  font-family: var(--font-omnes-girlscouts);
  font-size: 18px;
}
.b-cartilla__group > summary::-webkit-details-marker {
  display: none;
}
.b-cartilla__group > summary small {
  position: relative;
  top: 2px;
}
.b-cartilla__telefono-zonal {
  top: 3px;
  font-size: 16px;
  position: relative;
  margin-bottom: 1px;
}
.b-cartilla__telefono-zonal::before {
  content: "";
  width: 20px;
  height: 20px;
  background-image: url(../../../../../wp-content/uploads/tel-icon-1.svg);
  background-size: cover;
  display: inline-block;
  vertical-align: center;
  position: relative;
  top: -2px;
  margin-right: 2px;
}
.b-cartilla__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 19px;
  border: 1px solid #c7c7c7;
  border-radius: 50%;
  flex-shrink: 0;
  font-size: 12px;
  line-height: 1;
  background-image: url(../../../../../wp-content/uploads/diagnostico-boulogne-img-2.svg);
  background-repeat: no-repeat;
  background-size: 67%;
  background-position: center;
}
.b-cartilla__icon::before {
  content: "";
}
.b-cartilla__group[open] > summary .b-cartilla__icon {
  background-image: url(../../../../../wp-content/uploads/diagnostico-boulogne-img-1.svg);
}
.b-cartilla__doctor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr) auto;
  align-items: flex-start;
  gap: 12px;
  padding: 7px 10px;
  border-top: 1px solid #d3d3d3;
}
.b-cartilla__name,
.b-cartilla__schedule {
  overflow-wrap: anywhere;
}
.b-cartilla .b-cartilla__turno {
  display: inline-block;
  box-sizing: border-box;
  background: transparent;
  cursor: pointer;
  color: var(--blue);
  border: 1px solid var(--blue);
  border-radius: 3px;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.4s;
  font-weight: 600;
  font-family: var(--font-work-sans);
}
.b-cartilla .b-cartilla__turno:hover {
  color: #fff;
  background: var(--blue);
}
.b-cartilla__empty {
  padding: 12px 0;
}
.b-cartilla .b-obras__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.b-cartilla .b-obras__list li {
  list-style: none;
  margin: 0;
  padding: 7px 8px 4px;
  border-bottom: 1px solid #ccc;
  color: #0040a3;
  font-size: 16px;
  line-height: 1.5;
  overflow-wrap: anywhere;
  font-family: var(--font-omnes-girlscouts);
}
.b-obras .b-cartilla__search input {
  padding-left: 34px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 20 20'%3E%3Ccircle cx='8' cy='8' r='4.5' fill='none' stroke='%23999' stroke-width='2'/%3E%3Cpath d='m12 12 4 4' stroke='%23999' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 10px center;
}
.b-cartilla__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.b-cartilla__name {
  position: relative;
  top: 3px;
  font-size: 16px;
  font-weight: 500;
}
@media (max-width: 540px) {
  .b-cartilla .b-cartilla__title {
    font-size: 21px;
  }
  .b-cartilla__doctor {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 10px;
  }
  .b-cartilla__schedule {
    grid-column: 1;
    grid-row: 2;
  }
  .b-cartilla__schedule:empty {
    display: none;
  }
  .b-cartilla__turno {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
  .b-cartilla__name {
    font-size: 17px;
    font-weight: 500;
  }
}

.b-turnos {
  margin: 20px 0;
}
.b-turnos__coverage {
  border: 0;
  padding: 0;
  margin: 0 0 24px;
  min-width: 0;
}
.b-turnos__coverage legend {
  color: var(--blue);
  font-weight: 600;
  margin-bottom: 10px;
  font-size: 16px;
}
.b-turnos__options {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.b-turnos__options label {
  position: relative;
  flex: 1 1 130px;
}
.b-turnos__options input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}
.b-turnos__options span:not(.b-cartilla__sr),
.b-turnos__options select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 7px;
  border: 1px solid #88a3d4;
  border-radius: 8px;
  color: var(--blue);
  font: inherit;
  font-size: 12px;
  background: white;
  cursor: pointer;
  font-size: 17px;
  padding: 9px 10px 4px;
}
.b-turnos__options input:checked + span {
  color: white;
  background: var(--blue);
  border-color: var(--blue);
}
.b-turnos__options select {
  appearance: none;
  padding-right: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%230045b5' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 9px center;
}
.b-turnos__options select.is-selected {
  color: white;
  background-color: var(--blue);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E");
}
.b-turnos__options select option {
  color: #222;
  background: white;
}
.b-turnos-form__personal {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}
.b-turnos__selected label {
  flex: 1 0 0;
}
.b-turnos__selected {
  display: flex;
  gap: 22px;
}
.b-turnos__selected label,
.b-turnos-form__personal label {
  color: #0045b5;
  font-size: 16px;
  font-weight: 400;
  font-family: var(--font-omnes-girlscouts);
}
.b-turnos .b-turnos__selected input,
.b-turnos-form .b-turnos-form__personal input {
  box-sizing: border-box;
  width: 100%;
  border: 0;
  border-bottom: 1px solid #ccc;
  padding: 8px 0;
  background: transparent;
  color: #222;
  border-radius: 0;
  font-size: 16px;
  font-weight: 500;
}
.b-turnos [data-status] {
  font-size: 13px;
  margin: 0 0 12px;
  font-size: 15px;
}
.b-turnos .b-cartilla__schedule {
  white-space: pre-line;
}
.b-turnos button {
  cursor: pointer;
}
.b-turnos [data-change] {
  margin-top: 12px;
  background: white;
  color: var(--blue);
  border: 1px solid #88a3d4;
  border-radius: 3px;
  padding: 7px 10px 5px;
  font-family: var(--font-omnes-girlscouts);
  font-size: 15px;
}
.b-turnos-form__submit {
  text-align: center;
  margin-top: 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.b-turnos-form .wpcf7-submit,
.form-wrapper .wpcf7-submit {
  background: #0045b5;
  color: white;
  border: 0;
  border-radius: 3px;
  padding: 11px 24px 7px;
  cursor: pointer;
  font-family: var(--font-omnes-girlscouts);
  font-size: 16px;
}
.b-turnos__first-message {
  line-height: 1.1em;
  text-align: center;
  max-width: 435px;
  margin: 12px auto 0;
  font-weight: 500;
  font-family: var(--font-omnes-girlscouts);
  font-size: 15px;
  color: var(--blue);
}
@media (max-width: 540px) {
  .b-turnos__selected,
  .b-turnos-form__personal {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.slider-section .slick-list,
.slider-section .slick-track {
  display: flex;
}
.section-slide {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.slide-item-02 {
  background-image: url(../../../../../wp-content/uploads/diagnostico-boulogne-img-6.jpg);
}
.floating-img-corazon {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  max-height: 100%;
  top: 0;
}
.section-slide .container {
  padding: 105px 0 60px;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.buttons-wrapper {
  display: flex;
  justify-content: space-between;
}

.section-slide h1,
.section-slide h2 {
  color: var(--blue);
  font-weight: 300;
  font-size: 48px;
  line-height: 1em;
  margin-bottom: 10px;
  z-index: 1;
  font-family: var(--font-omnes-girlscouts);
}
.section-slide h2 strong,
.section-slide h1 strong {
  font-weight: 500;
}
.section-slide p {
  max-width: 400px;
  font-size: 19px;
  color: var(--blue);
  font-weight: 400;
  z-index: 1;
  font-family: var(--font-omnes-girlscouts);
}
.slider-section .slide-item-02 h1 {
  color: var(--blue);
  font-size: 40px;
  margin-bottom: 20px;
  font-weight: 600;
  padding: 0;
}

.buttons-wrapper button {
  background-color: var(--blue);
  border: 1px solid var(--blue);
  color: #fff;
  font-family: var(--font-omnes-girlscouts);
  font-size: 21px;
  padding: 10px 25px;
  border-radius: 100px;
  text-align: left;
  cursor: pointer;
  transition: all 0.4s;
}
.buttons-wrapper button:hover {
  opacity: 0.7;
}

a {
  text-decoration: none;
}
.buttons-wrapper button span {
  position: relative;
  top: 3px;
}
.buttons-wrapper button.has-icon {
  padding-left: 10px;
  padding: 7px 25px 7px 9px;
  gap: 10px;
  display: flex;
  align-items: center;
  text-decoration: none;
}
.buttons-wrapper button.has-icon::before {
  content: "";
  width: 35px;
  height: 35px;
  display: inline-block;
}
.buttons-wrapper button.has-icon.tel-icon::before {
  background-image: url(../../../../../wp-content/uploads/diagnostico-boulogne-img-7.svg);
}
.buttons-wrapper button.has-icon.wapp-icon::before {
  background-image: url(../../../../../wp-content/uploads/diagnostico-boulogne-img-6.svg);
}
.buttons-wrapper button.has-icon.arrow-icon::before {
  background-image: url(../../../../../wp-content/uploads/arrow-style-01.svg);
}
.buttons-wrapper button.has-icon.arrow-icon-02::before {
  background-image: url(../../../../../wp-content/uploads/arrow-style-02.svg);
}
.buttons-wrapper button.has-icon.arrow-icon-03::before {
  background-image: url(../../../../../wp-content/uploads/arrow-style-03.svg);
}
.buttons-wrapper button.has-icon.arrow-icon-04::before {
  background-image: url(../../../../../wp-content/uploads/arrow-style-04.svg);
}
.buttons-wrapper button.has-icon.arrow-icon-05::before {
  background-image: url(../../../../../wp-content/uploads/arrow-style-05.svg);
}
.buttons-wrapper button:hover span {
  color: #fff;
}
button.color-scheme-01:hover span {
  color: var(--blue);
}

.buttons-wrapper button.color-scheme-02 {
  background-color: var(--green);
  border-color: var(--green);
}
.buttons-wrapper button.color-scheme-03 {
  background-color: #fff;
  border-color: #fff;
  color: var(--blue);
}
.buttons-wrapper button.color-scheme-03:hover span {
  color: var(--blue);
}
.buttons-wrapper button.color-scheme-04 {
  background-color: #003dff;
  border-color: #003dff;
  color: #fff;
}
.buttons-wrapper button strong {
  font-weight: 500;
}

.section-slide .buttons-wrapper {
  display: flex;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 60px;
}

.slider-section ul {
  padding: 0;
  margin: 0;
  list-style: none;
  gap: 12px;
  display: flex;
  flex-direction: column;
}
.section-slide li {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  color: var(--blue);
  font-size: 24px;
  line-height: 1.1em;
}
.section-slide li::before {
  content: "";
  width: 28px;
  height: 28px;
  background-image: url(../../../../../wp-content/uploads/tick-blue-filled.svg);
  background-size: cover;
  background-position: center;
}

.slide-item-03 .container,
.slide-item-04 .container {
  align-items: flex-start;
}
.slide-item-03 h2 {
  color: var(--green);
  font-weight: 500;
  background-color: #fff;
  display: block;
  padding: 17px 32px 10px;
  border-top-left-radius: 28px;
  border-top-right-radius: 28px;
  border-bottom-right-radius: 28px;
  margin: 0;
}
.slide-item-03 p {
  padding: 14px 20px;
  border-top-left-radius: 28px;
  border-top-right-radius: 28px;
  border-bottom-right-radius: 28px;
  border: 2px solid #fff;
  color: #fff;
  background-color: #3ab54a;
  margin-top: -2px;
  font-size: 24px;
  font-weight: 300;
}
.section-slide.slide-item-03 li::before {
  background-image: url(../../../../../wp-content/uploads/tick-green.svg);
}
.section-slide.slide-item-03 li {
  color: #fff;
}

.slide-item-04 h2 {
  color: var(--blue);
  margin: 0;
}
.slide-item-04 p {
  font-size: 24px;
}
.slide-item-04 li::before {
  background-image: url(../../../../../wp-content/uploads/tick-blue-filled.svg);
  width: 23px;
  height: 23px;
}
.slide-item-04 li {
  color: var(--blue);
  font-size: 21px;
}
.slide-item-04 ul {
  border: 1px solid var(--blue);
  padding: 12px 15px;
  border-radius: 20px;
}

.slider-section ul.slick-dots {
  display: flex;
  flex-direction: row;
  gap: 8px;
  justify-content: center;
  position: absolute;
  bottom: 25px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.slider-section ul.slick-dots button {
  font-size: 0;
  padding: 0;
  width: 12px;
  height: 12px;
  background-color: transparent;
  border: 1px solid var(--blue);
  border-radius: 100%;
}
.slider-section ul.slick-dots .slick-active button {
  background-color: var(--blue);
}

.cartilla-medicos-section {
  padding: 80px 0;
}
.cartilla-medicos-section .container {
  display: flex;
  gap: 3%;
}
.cartilla-layout-col-contact {
  flex-basis: 30%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cartilla-layout-col-medicos {
  flex-basis: 67%;
}
.cartilla-contactos-item-imagen {
  flex-basis: 55px;
}
.cartilla-contactos-item-text {
  flex-basis: calc(88% - 70px);
}
.cartilla-contactos-item {
  display: flex;
  gap: 15px;
  border: 1px solid var(--blue);
  padding: 22px 20px 16px;
  transition: all 0.4s;
  border-radius: 20px;
  display: flex;
  justify-content: center;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
}
.cartilla-contactos-item:hover {
  opacity: 0.7;
}
.cartilla-contactos-item-text p {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 500;
  color: var(--light-grey);
  margin-bottom: 7px;
  padding: 0;
}
.cartilla-contactos-item-text p span {
  color: var(--blue);
  font-weight: 500;
  font-size: 22px;
}
.cartilla-contactos-pre-text {
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 24px;
}
.cartilla-contactos-pre-text p {
  color: var(--blue);
  font-family: var(--font-omnes-girlscouts);
  font-size: 20px;
}
.cartilla-contactos-pre-text p strong {
  font-weight: 600;
}

.custom-page-header-section {
  padding: 80px 0;
  background-color: #0040a3;
  color: #fff;
  background-image: url(../../../../../wp-content/uploads/diagnostico-boulogne-img-9.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 120%;
}
.custom-page-header-section h1 {
  background-color: #fff;
  color: #0040a3;
  font-family: var(--font-omnes-girlscouts);
  font-weight: 600;
  font-size: 42px;
  padding: 28px 35px 20px;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}
.custom-page-header-section p {
  background-color: #0040a3;
  border: 2px solid #fff;
  padding: 15px 40px 13px 20px !important;
  font-size: 18px;
  border-top-left-radius: 20px;
  border-top-right-radius: 24px;
  border-bottom-right-radius: 24px;
  position: relative;
  top: -17px;
}
.custom-page-header-section .container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.cartilla-pmb-section .container {
  max-width: 700px;
}
.cartilla-pmb-section {
  padding: 20px 0 80px;
}
.b-cartilla .b-cartilla__attention-title {
  margin: 0;
  padding: 12px 10px 8px;
  color: var(--grey);
  text-transform: uppercase;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.4;
  font-family: var(--font-work-sans);
}

footer {
  background-color: #0040a3;
  padding: 40px 0 60px;
}
.footer-row {
  display: flex;
  gap: 4%;
  margin-bottom: 30px;
}
.footer-row:last-child {
  margin-bottom: 0;
}
.footer-row li,
.footer-row li a {
  color: #fff;
}
.footer-col {
  flex-basis: 22%;
}
.redes-list {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}
.redes-list svg {
  width: 27px;
}
.redes-list svg path {
  fill: #fff;
}
.footer-row p {
  color: #fff;
}
.footer-row ul.data-list li {
  padding: 4px 0 4px 23px;
  background-repeat: no-repeat;
  background-size: 18px;
  background-position: left 4px;
  line-height: 1.2em;
}
.footer-row ul.data-list li.tel-icon {
  background-image: url(../../../../../wp-content/uploads/tel-icon.svg);
}
.footer-row ul.data-list li.email-icon {
  background-image: url(../../../../../wp-content/uploads/email-icon.svg);
}
.footer-row ul.data-list li.location-icon {
  background-image: url(../../../../../wp-content/uploads/location-icon.svg);
}

/* Responsive: obras sociales, especialidades y solicitud de turno. */
@media (max-width: 1280px) {
  .cartilla-medicos-section {
    padding: 60px 0;
  }
  .cartilla-medicos-section .container {
    gap: 28px;
  }
  .cartilla-layout-col-contact {
    flex: 0 0 27%;
    min-width: 0;
  }
  .cartilla-layout-col-medicos {
    flex: 1 1 0;
    min-width: 0;
  }
  .cartilla-contactos-item {
    padding: 22px 8px;
    align-items: flex-start;
  }
  .cartilla-contactos-item-imagen {
    flex: 0 0 42px;
  }
  .cartilla-contactos-item-imagen img {
    display: block;
    width: 100%;
    height: auto;
  }
  .cartilla-contactos-item-text {
    min-width: 0;
  }
  .cartilla-contactos-item-text p {
    font-size: 14px;
    line-height: 1.35;
  }
  .cartilla-contactos-item-text p span {
    font-size: 20px;
  }
  .custom-page-header-section {
    padding: 60px 0;
  }
  .custom-page-header-section h1 {
    font-size: 38px;
    max-width: 100%;
    line-height: 1.15;
  }
  .custom-page-header-section p {
    max-width: 100%;
    line-height: 1.2em;
  }
  .page-especialidades-medicas .section-slide .container,
  .page-template-page-especialidades-medicas .section-slide .container {
    padding: 70px 0 50px;
  }
  .slider-section .section-slide .buttons-wrapper {
    gap: 14px;
    flex-wrap: wrap;
  }
  .buttons-wrapper button.has-icon {
    font-size: 18px;
    padding-right: 16px;
    max-width: 100%;
  }
  .buttons-wrapper button.has-icon::before {
    flex: 0 0 35px;
    background-repeat: no-repeat;
  }
  .b-turnos__selected > label,
  .b-turnos-form__personal > label {
    min-width: 0;
  }
  .b-turnos__options select {
    max-width: 100%;
    text-overflow: ellipsis;
  }
  .b-cartilla__doctor > * {
    min-width: 0;
  }
}
@media (max-width: 1024px) {
  .cartilla-medicos-section .container {
    flex-direction: column;
    gap: 32px;
  }
  .cartilla-layout-col-contact {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    flex: auto;
  }
  .cartilla-layout-col-medicos {
    flex: auto;
    width: 100%;
  }
  .cartilla-contactos-item {
    padding: 12px 0;
  }
  .slider-section .section-slide .container {
    padding: 60px 0 45px;
  }
  .slider-section .slide-item-02 h1 {
    font-size: 36px;
  }
  .slider-section .section-slide li {
    font-size: 21px;
  }
  .slider-section .section-slide li::before {
    flex-shrink: 0;
  }
  .slider-section .section-slide .buttons-wrapper {
    padding-top: 35px;
    justify-content: flex-start;
  }
  .footer-row {
    flex-direction: column;
  }
  .footer-row ul.data-list.menu-list li {
    padding-left: 0;
  }
  .data-list.contact-list {
    margin: 20px 0;
  }
  .redes-list {
    justify-content: flex-start;
  }
}
@media (max-width: 767px) {
  .cartilla-medicos-section {
    padding: 32px 0 45px;
  }
  .custom-page-header-section {
    padding: 36px 0 24px;
    background-position: 65% center;
    min-height: 180px;
    display: flex;
    align-items: center;
  }
  .custom-page-header-section h1 {
    font-size: 30px;
    padding: 20px 22px 16px;
  }
  .custom-page-header-section p {
    font-size: 16px;
    padding: 14px 20px !important;
  }
  .b-turnos [data-status] {
    line-height: 1.2em;
  }
  .slider-section .slide-item-02 {
    position: relative;
    background-position: 65% center;
  }
  .slider-section .slide-item-02::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.95),
      rgba(255, 255, 255, 0.7)
    );
  }
  .slider-section .section-slide .container {
    padding: 36px 0;
  }
  .slider-section .slide-item-02 h1 {
    font-size: 32px;
    margin-bottom: 12px;
  }
  .slider-section .section-slide li {
    font-size: 16px;
    line-height: 1.2em;
  }
  .slider-section .section-slide li::before {
    width: 20px;
    height: 20px;
  }
  .slider-section .section-slide li br {
    display: none;
  }
  .buttons-wrapper button.color-scheme-03 {
    border-color: var(--blue);
  }
  .slider-section .section-slide .buttons-wrapper {
    flex-direction: column;
    align-items: stretch;
    padding-top: 28px;
  }
  .slider-section .section-slide .buttons-wrapper a,
  .slider-section .section-slide .buttons-wrapper button {
    width: 100%;
  }
  .slider-section .section-slide .buttons-wrapper button {
    min-height: 48px;
    text-align: left;
  }
  .b-cartilla .b-cartilla__title {
    font-size: 22px;
    line-height: 1.1em;
  }
  .b-cartilla__search {
    margin-bottom: 20px;
  }
  .b-cartilla .b-cartilla__search input {
    font-size: 12px;
    padding: 12px 10px 12px 26px;
    background-position: 7px center;
    background-size: 14px;
  }

  .b-cartilla__group > summary {
    min-height: 44px;
    padding: 10px 6px;
    gap: 10px;
  }
  .b-turnos__options {
    gap: 10px;
  }
  .b-turnos__options label {
    flex-basis: calc(50% - 10px);
    min-width: 0;
  }
  .b-turnos__options label:last-child {
    flex-basis: 100%;
  }
  .b-turnos__options span:not(.b-cartilla__sr),
  .b-turnos__options select {
    min-height: 44px;
    font-size: 16px;
  }
  .b-turnos .b-turnos__selected input,
  .b-turnos-form .b-turnos-form__personal input {
    font-size: 16px;
    padding: 6px 0;
  }
  .b-turnos [data-change],
  .b-turnos-form .wpcf7-submit {
    min-height: 44px;
  }
}
@media (max-width: 540px) {
  .cartilla-layout-col-contact {
    gap: 16px;
  }
  .cartilla-contactos-item {
    gap: 8px;
  }
  .cartilla-contactos-item-imagen {
    flex-basis: 28px;
  }
  .cartilla-contactos-item-text p {
    font-size: 12px;
  }
  .cartilla-contactos-item-text p span {
    font-size: 17px;
  }
  .b-cartilla__doctor {
    padding: 10px 6px;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
  .b-cartilla__schedule {
    grid-column: 1;
    grid-row: auto;
  }
  .b-cartilla .b-cartilla__turno {
    grid-column: 1;
    grid-row: auto;
    justify-self: flex-end;
    padding: 5px 12px;
  }
  .b-cartilla__name,
  .b-cartilla__schedule,
  .b-cartilla__type {
    top: 0;
  }
  .b-turnos__selected,
  .b-turnos-form__personal {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }
  .b-turnos-form__submit .wpcf7-submit {
    width: 100%;
  }
}
@media (max-width: 380px) {
  .cartilla-layout-col-contact {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  .cartilla-contactos-item-text p {
    font-size: 14px;
  }
  .cartilla-contactos-item-text p span {
    font-size: 20px;
  }
  .b-turnos__options label {
    flex-basis: 100%;
  }
  .custom-page-header-section h1 {
    font-size: 27px;
  }
  .b-cartilla .b-cartilla__title {
    font-size: 21px;
  }
}

/* Ubicación del teléfono zonal; su estilo visual se personaliza con esta clase. */
.b-cartilla__telefono-zonal {
  overflow-wrap: anywhere;
}
@media (max-width: 540px) {
  .b-cartilla__telefono-zonal {
    grid-column: 1;
    grid-row: auto;
  }
}

/* Listado de especialistas en columnas. */
.b-especialistas {
  color: #222;
}
.b-especialistas > h2 {
  margin: 0 0 30px;
  color: #0045b5;
  font-size: 28px;
  line-height: 1.3;
  text-align: center;
  font-weight: 500;
}
.b-especialistas__columns {
  columns: 3;
  column-gap: 24px;
}
.b-especialistas__group {
  break-inside: avoid;
  margin: 0;
}
.b-especialistas .b-especialistas__group h3 {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 500;
  text-transform: uppercase;
  margin: 0;
  /* El contenedor ya evita separar la especialidad de sus médicos. */
  break-after: auto;
}
.b-especialistas .b-especialistas__group ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.b-especialistas .b-especialistas__group li {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1.4;
}
.b-especialistas .b-especialistas__group :is(a, .b-especialistas__no-contact) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 5px 4px 5px 8px;
  border-bottom: 1px solid #d3d3d3;
  text-decoration: none;
  color: inherit;
  overflow-wrap: anywhere;
  font-size: 17px;
  font-family: var(--font-omnes-girlscouts);
  font-weight: 400;
}
.b-especialistas
  .b-especialistas__group
  h3
  :is(a, .b-especialistas__no-contact) {
  color: #0045b5;
}
.b-especialistas
  .b-especialistas__group
  :is(a, .b-especialistas__no-contact)
  small {
  font-size: 17px;
  position: relative;
  top: 3px;
}
.b-especialistas .b-especialistas__group a span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background-image: url(../../../../../wp-content/uploads/arrow-style-01.svg);
  width: 23px;
  height: 23px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.b-especialistas .b-especialistas__group a:hover {
  background: #eef3fb;
}
.b-especialistas a:focus-visible {
  outline: 2px solid #0045b5;
  outline-offset: 2px;
}

.b-especialistas {
  font-family: var(--font-omnes-girlscouts);
}
.b-especialistas > h2,
.b-especialistas .b-especialistas__group h3 {
  padding: 0;
  font-family: inherit;
}
.b-especialistas .b-especialistas__group a span {
  flex-shrink: 0;
}
@media (max-width: 900px) {
  .b-especialistas__columns {
    columns: 2;
  }
}
@media (max-width: 767px) {
  .b-especialistas__columns {
    columns: 1;
  }
  .b-especialistas > h2 {
    font-size: 24px;
    margin-bottom: 15px;
    line-height: 1.1;
  }
  .b-especialistas
    .b-especialistas__group
    :is(a, .b-especialistas__no-contact) {
    min-height: 30px;
  }
}
/* Contenido adicional de cada especialidad. */
.b-cartilla__mensaje-especial {
  overflow-wrap: anywhere;
  white-space: normal;
}
.b-cartilla__banners {
  display: grid;
  gap: 16px;
  padding: 20px 0 25px;
  max-width: 600px;
  margin: 0 auto;
}
.b-cartilla__banner {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  padding: 15px 20px;
  background-color: #f2f2f2;
  border-radius: 15px;
}
.b-cartilla__banner-imagen {
  display: block;
  width: 100%;
  height: auto;
  max-width: 280px;
}
.b-cartilla .b-cartilla__banner-boton {
  white-space: normal;
}
.b-cartilla__banner-imagen-wrapper {
  flex-basis: 50%;
}
.b-cartilla__banner-button-wrapper {
  flex-basis: 50%;
  display: flex;
  justify-content: flex-end;
}
.b-cartilla__mensaje-especial {
  font-size: 17px;
  line-height: 1.15em;
  font-weight: 500;
}
