/* ==========================================================
 * v7.3.2-rc1 · Aparador individual de Servicios Comunidad
 * Imagen contenida + jerarquía editorial legible.
 * Alcance: fichas individuales .mkcp7-single.
 * ========================================================== */
.mkcp7-single {
  width: min(1180px, calc(100vw - 40px)) !important;
  grid-template-columns: minmax(280px, 420px) minmax(0, 1fr) !important;
  gap: clamp(32px, 4vw, 64px) !important;
  align-items: center !important;
  margin-top: clamp(18px, 2.6vw, 36px) !important;
  padding: clamp(24px, 3vw, 42px) !important;
  border-radius: 28px !important;
  box-shadow: 0 20px 56px rgba(5, 5, 5, .07) !important;
}

.mkcp7-single-media {
  width: 100% !important;
  height: clamp(340px, 32vw, 440px) !important;
  min-height: 0 !important;
  border-radius: 22px !important;
  box-shadow: inset 0 0 0 1px rgba(201, 163, 90, .12) !important;
}

.mkcp7-single-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.mkcp7-single > div:last-child {
  min-width: 0 !important;
  max-width: 680px !important;
}

.mkcp7-single > div:last-child > span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 5px 11px !important;
  border-radius: 999px !important;
  background: var(--cp7-cream) !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

.mkcp7-single h1 {
  max-width: 13ch !important;
  margin: 16px 0 20px !important;
  font-size: clamp(46px, 5vw, 64px) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}

.mkcp7-single > div:last-child > div {
  max-width: 62ch !important;
  color: var(--cp7-coffee) !important;
  font-size: 20px !important;
  line-height: 1.65 !important;
}

.mkcp7-single > div:last-child > a {
  min-height: 48px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 11px 19px !important;
  border-radius: 999px !important;
  background: var(--cp7-black) !important;
  color: var(--cp7-ivory) !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
}

@media (max-width: 900px) and (min-width: 721px) {
  .mkcp7-single {
    grid-template-columns: minmax(250px, 36%) minmax(0, 1fr) !important;
    gap: 28px !important;
    padding: 24px !important;
  }

  .mkcp7-single-media {
    height: 360px !important;
  }

  .mkcp7-single h1 {
    font-size: clamp(42px, 6vw, 54px) !important;
  }

  .mkcp7-single > div:last-child > div {
    font-size: 19px !important;
  }
}

@media (max-width: 720px) {
  .mkcp7-single {
    width: calc(100vw - 24px) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
    margin-top: 12px !important;
    padding: 12px 12px 22px !important;
    border-radius: 22px !important;
  }

  .mkcp7-single-media {
    height: 260px !important;
    min-height: 260px !important;
    border-radius: 17px !important;
  }

  .mkcp7-single > div:last-child {
    max-width: none !important;
    padding: 0 6px !important;
  }

  .mkcp7-single > div:last-child > span {
    min-height: 26px !important;
    padding: 5px 10px !important;
    font-size: 12px !important;
  }

  .mkcp7-single h1 {
    max-width: none !important;
    margin: 13px 0 14px !important;
    font-size: clamp(38px, 11vw, 48px) !important;
    line-height: 1 !important;
  }

  .mkcp7-single > div:last-child > div {
    max-width: none !important;
    font-size: 19px !important;
    line-height: 1.62 !important;
  }

  .mkcp7-single > div:last-child > a {
    width: 100% !important;
    min-height: 50px !important;
    margin-top: 20px !important;
    font-size: 17px !important;
  }
}

@media (max-width: 380px) {
  .mkcp7-single-media {
    height: 235px !important;
    min-height: 235px !important;
  }

  .mkcp7-single h1 {
    font-size: 37px !important;
  }

  .mkcp7-single > div:last-child > div {
    font-size: 18px !important;
  }
}

/* La plantilla controla la altura incluso frente a reglas globales del tema. */
html body.mkcp7-single-route .mkcp7-single .mkcp7-single-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
}


/* ==========================================================
 * v0.2.0 · Contacto visible en ficha individual
 * WhatsApp + llamada + correo + redes, sin campos vacíos.
 * ========================================================== */
.mkcp7-single-body{min-width:0}
.mkcp7-single-copy{color:#343434;font-size:clamp(18px,1.6vw,20px)!important;line-height:1.72!important}
.mkcp7-single-location{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin:18px 0 0!important;padding:9px 13px;border:1px solid rgba(201,163,90,.42);border-radius:999px;background:#f8f5ef;color:#1b1b1b;font-size:15px!important;font-weight:700;line-height:1.2!important}
.mkcp7-single-contact{margin-top:26px;padding-top:24px;border-top:1px solid rgba(5,5,5,.12)}
.mkcp7-single-contact h2{margin:0 0 14px!important;color:#050505;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(28px,3vw,36px)!important;font-weight:650;letter-spacing:-.025em;line-height:1.05!important}
.mkcp7-single-contact-actions{display:flex;flex-wrap:wrap;gap:10px}
.mkcp7-single-contact-actions a{display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;margin:0!important;padding:12px 18px!important;border:1px solid #c9a35a;border-radius:999px;background:#fff;color:#050505!important;font-family:Inter,Arial,sans-serif;font-size:15px!important;font-weight:750;line-height:1!important;text-decoration:none!important;transition:transform .18s ease,background-color .18s ease,color .18s ease}
.mkcp7-single-contact-actions a:hover,.mkcp7-single-contact-actions a:focus-visible{transform:translateY(-1px);background:#f8f5ef}
.mkcp7-single-contact-actions a.is-primary{border-color:#050505;background:#050505;color:#fff!important}
.mkcp7-single-contact-actions a.is-primary:hover,.mkcp7-single-contact-actions a.is-primary:focus-visible{background:#1b1b1b}
.mkcp7-single-edit{display:inline-block!important;margin-top:24px!important;color:#6f6f6f!important;font-size:14px!important;font-weight:650}
@media(max-width:720px){.mkcp7-single-contact{margin-top:22px;padding-top:20px}.mkcp7-single-contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.mkcp7-single-contact-actions a{width:100%;min-height:50px;padding:12px 10px!important}}
@media(max-width:390px){.mkcp7-single-contact-actions{grid-template-columns:1fr}}
