/* Alcorque — inner pages */

/* page intro (breadcrumbs + title) */

.cabecera { padding-block: var(--space-6) var(--space-4); }

.migas {
  font-size: .88rem;
  color: var(--mid);
  margin-bottom: var(--space-2);
}
.migas a { color: var(--mid); }
.migas a:hover { color: var(--brand); }
.migas span[aria-current] { color: var(--fg); }

.cabecera__lead { max-width: 58ch; font-size: 1.1rem; }

/* service page: media + text alternating */

.dossier {
  display: grid;
  gap: var(--space-4);
  align-items: center;
  margin-bottom: var(--space-8);
}
.dossier img { border-radius: 6px; }
.dossier h2 { margin-top: 0; }
.dossier ul { max-width: 60ch; }

@media (min-width: 860px) {
  .dossier { grid-template-columns: 1fr 1fr; gap: var(--space-8); }
  .dossier--invertido .dossier__media { order: 2; }
}

/* checklist with custom marker */

.incluye { list-style: none; padding: 0; }
.incluye li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}
.incluye li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: radial-gradient(circle at center, var(--brand) 40%, rgba(51, 102, 102, .25) 41%);
}

/* price note under tables */

.nota-precio {
  font-size: .88rem;
  color: var(--mid);
  max-width: 70ch;
}

/* team */

.equipo {
  display: grid;
  gap: var(--space-6);
}
.equipo__persona img {
  border-radius: 6px;
  filter: saturate(.92);
}
.equipo__persona h3 { margin: var(--space-2) 0 2px; }
.equipo__persona .rol {
  color: var(--brand);
  font-size: .92rem;
  margin-bottom: 8px;
}
.equipo__persona p { font-size: .95rem; }

@media (min-width: 800px) {
  .equipo { grid-template-columns: repeat(3, 1fr); }
  .equipo__persona:nth-child(2) { transform: translateY(var(--space-4)); }
}

/* contact page */

.contacto-grid {
  display: grid;
  gap: var(--space-6);
}
@media (min-width: 900px) {
  .contacto-grid { grid-template-columns: 1.1fr .9fr; }
}

.datos dl { margin: 0; }
.datos dt {
  font-weight: 600;
  color: var(--brand-deep);
  margin-top: var(--space-3);
}
.datos dd { margin: 4px 0 0; }

.horario td:first-child { width: 55%; }

/* legal pages */

.legal { max-width: 760px; }
.legal h2 { margin-top: var(--space-6); font-size: 1.35rem; }
.legal p, .legal li { font-size: .98rem; }

/* stat strip on estudio */

.cifras {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-4);
  border-block: 1px solid var(--divider);
  padding-block: var(--space-4);
  margin-block: var(--space-6);
}
.cifras div strong {
  display: block;
  font-family: var(--ff-display);
  font-size: 2rem;
  color: var(--brand);
}
.cifras div span { font-size: .9rem; color: var(--mid); }
@media (min-width: 700px) {
  .cifras { grid-template-columns: repeat(4, 1fr); }
}

/* cta band reused on inner pages */

.franja-cta {
  background: var(--brand);
  color: #fff;
  border-radius: 8px;
  padding: clamp(28px, 5vw, 56px);
  display: grid;
  gap: var(--space-3);
  align-items: center;
}
.franja-cta h2 { color: #fff; margin: 0; }
.franja-cta p { color: #d4e2df; margin: 0; }
@media (min-width: 860px) {
  .franja-cta { grid-template-columns: 1fr auto; }
}

/* 404 */

.perdido {
  min-height: 60vh;
  display: grid;
  place-content: center;
  text-align: center;
  padding-block: var(--space-12);
}
.perdido strong {
  font-family: var(--ff-display);
  font-size: clamp(5rem, 16vw, 9rem);
  color: var(--divider);
  line-height: 1;
  display: block;
}
