.elementor-1366 .elementor-element.elementor-element-6785ca4{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-852aa15 *//* ====== Especialidades — Calmavida ====== */
#especialidades{
  --accent: #01AEB7;
  --accent-2: #01959d;
  --ink: #0f172a;
  --muted: #5b677a;
  --surface: #ffffff;
  --bg: #f7fafb;
  --radius: 20px;
  --shadow: 0 14px 40px rgba(2, 6, 23, .10);

  font-family: "Playfair Display", serif;
  color: var(--ink);
  background: var(--surface);
}

#especialidades .esp-wrap{
  max-width: 1200px;
  margin-inline: auto;
  padding: clamp(32px, 5vw, 80px) clamp(16px, 4vw, 28px);
}

/* Migas */
#especialidades .esp-breadcrumbs{
  font-size: 14px;
  color: var(--muted);
  margin-bottom: 10px;
}
#especialidades .esp-breadcrumbs a{ color: var(--muted); text-decoration: none; }
#especialidades .esp-breadcrumbs a:hover{ color: var(--accent); }
#especialidades .esp-breadcrumbs span[aria-hidden]{ margin: 0 .4rem; }

/* Hero */
#especialidades .esp-hero h1{
  font-size: clamp(34px, 5vw, 56px);
  line-height: 1.05;
  margin: 0 0 10px;
  font-weight: 800;
}
#especialidades .esp-hero .lead{
  font-size: clamp(18px, 2.2vw, 22px);
  color: var(--ink);
  line-height: 1.6;
  margin: 0 0 18px;
}

/* Índice de anclas */
#especialidades .esp-index{
  display: flex; flex-wrap: wrap; gap: 10px 14px;
  padding: 0; margin: 14px 0 0; list-style: none;
}
#especialidades .esp-index a{
  display: inline-block;
  padding: .55rem .9rem;
  border-radius: 999px;
  font-size: 14px;
  text-decoration: none;
  color: var(--ink);
  background: #eef6f7;
  border: 1px solid rgba(1,174,183,.25);
}
#especialidades .esp-index a:hover{ background: #e6f2f3; color: var(--ink); }

/* Bloques de especialidad */
#especialidades .sp-block{
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(20px, 4.2vw, 56px);
  align-items: center;
  margin-top: clamp(28px, 6vw, 80px);
}
#especialidades .sp-block.sp-alt{
  grid-template-columns: .95fr 1.05fr;
}
@media (max-width: 992px){
  #especialidades .sp-block,
  #especialidades .sp-block.sp-alt{
    grid-template-columns: 1fr;
  }
}

#especialidades .sp-media{
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: #eef3f5;
}
#especialidades .sp-media img{
  display: block; width: 100%; height: auto; object-fit: cover;
}

#especialidades .sp-content h2{
  font-size: clamp(26px, 3.5vw, 36px);
  margin: 0 0 6px;
}
#especialidades .sp-content p{
  font-size: 17px;
  color: var(--muted);
  line-height: 1.7;
  margin: 10px 0 0;
}
#especialidades .sp-content .sp-bullets{
  border-left: 3px solid var(--accent);
  padding-left: 12px;
}

/* CTAs */
#especialidades .sp-ctas{
  display: flex; flex-wrap: wrap; gap: 10px;
  margin-top: 14px;
}
#especialidades .btn{
  display: inline-flex; align-items: center; justify-content: center;
  padding: .9rem 1.2rem; border-radius: 14px; text-decoration: none;
  font-weight: 700; font-size: 15px; transition: transform .15s ease, filter .15s ease;
}
#especialidades .btn:active{ transform: translateY(1px); }
#especialidades .btn-primary{
  color: #fff; background: linear-gradient(180deg, var(--accent), var(--accent-2));
  box-shadow: 0 10px 22px rgba(1,174,183,.28);
}
#especialidades .btn-primary:hover{ filter: brightness(1.06); }
#especialidades .btn-ghost{
  color: var(--ink); background: #eef6f7; border: 1px solid rgba(1,174,183,.25);
}
#especialidades .btn-ghost:hover{ background: #e6f2f3; }

/* FAQ */
#especialidades .esp-faq h2{
  font-size: clamp(24px, 3.4vw, 32px);
  margin: 0 0 12px;
}
#especialidades .esp-faq details{
  border: 1px solid #e7edf0;
  border-radius: 12px;
  background: var(--surface);
  padding: .8rem 1rem;
  margin: 10px 0;
}
#especialidades .esp-faq summary{
  font-weight: 700; cursor: pointer;
}
#especialidades .esp-faq p{
  color: var(--muted); margin: .6rem 0 0;
}

/* Accesibilidad / overflow */
#especialidades, #especialidades *{ box-sizing: border-box; max-width: 100%; }/* End custom CSS */