/* --- Layout base --- */
.s-local{
  --pad-x: clamp(16px, 5vw, 56px);
  --pad-y: clamp(24px, 6vw, 64px);
  --text-max: 720px;
  background:#fff;
  color:#1f2020;
  padding: var(--pad-y) var(--pad-x);
}

.s-local-grid{
  display:grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: clamp(20px, 4vw, 56px);
  align-items:start;
}

.s-local-text{
  max-width: var(--text-max);
  margin-inline: auto;
}

/* --- Cabecera --- */
.s-cabecera{ margin-bottom: clamp(12px, 2.5vw, 20px); }
.s-titulo{
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  letter-spacing: -0.02em;
  font-size: clamp(28px, 3.2vw, 44px);
  margin: 0 0 8px;
  text-transform: uppercase;
}
.s-subtitle{ margin:0 0 12px; opacity:.9; }

/* --- Lista de servicios tipo “píldora” con check --- */
.s-features{
  list-style:none;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 22px;
  padding:0;
  margin: 16px 0 20px;
}
.s-features li{
  display:flex; align-items:center; gap:10px;
}
.s-check{
  display:inline-grid; place-items:center;
  width:28px; height:28px; border-radius:50%;
  border:2px solid #1f2020; font-weight:800; line-height:1;
}
.s-pill{
  display:inline-block;
  padding:8px 14px;
  border-radius:999px;
  background:#EFEFEF;
  font-weight:700;
  letter-spacing:.02em;
}

/* --- Botón CTA --- */
.s-cta-wrap{ margin-top: clamp(18px, 3.5vw, 28px); }
.s-btn{
  display:inline-block; text-decoration:none; font-weight:800;
  padding:12px 22px; border-radius:999px;
}
.s-btn-mdp{ background:#f1b7a8; color:#1f2020; } /* ajusta al color de marca si quieres */

/* --- Imagen pegajosa --- */
.s-local-media{
  position: sticky;
  top: 0;                /* pega al borde superior del viewport */
  height: 100dvh;        /* ocupa toda la altura visible */
  align-self: start;
}
.s-local-media img{
  width:100%; height:100%;
  object-fit: cover; object-position: center;
  display:block;
}

/* --- Responsive --- */
@media (max-width: 992px){
  .s-local-grid{ grid-template-columns: 1fr; }
  .s-local-media{
    position: static;   /* sin sticky en móvil */
    height: auto;
    order: -1;          /* imagen arriba en móvil */
    margin-bottom: 18px;
  }
  .s-features{ grid-template-columns: 1fr; }
}

/* Paleta */
.s-local{
  --pill-bg: #EDE6D9;      /* beige suave de las “píldoras” */
  --ink: #1F2020;
  --shadow-soft: 0 1px 0 rgba(0,0,0,.06) inset;
  --gap-x: clamp(20px,4vw,56px);
  --pad-x: clamp(16px,5vw,56px);
  --pad-y: clamp(24px,6vw,64px);
  background:#fff; color:var(--ink);
  padding: var(--pad-y) var(--pad-x);
}

/* Grid 2 col (texto + imagen sticky) */
.s-local-grid{
  display:grid; gap: var(--gap-x);
  grid-template-columns: minmax(0,1fr) minmax(0,1.05fr);
  align-items:start;
}

/* Encabezado centrado sin banda */
.s-cabecera{ text-align:center; margin-bottom: clamp(18px,3vw,28px); }
.s-titulo{
  font-family:'Montserrat',sans-serif;
  font-weight:900; text-transform:uppercase;
  letter-spacing:-0.02em;
  font-size: clamp(34px,5.2vw,64px);
  line-height:1.1; margin:0 0 .35em;
}
.s-subtitle{
  margin:0 0 1.2em; font-size: clamp(18px,2vw,26px);
}

/* Párrafos centrados en el ancho del texto */
.s-local-text{ max-width: 860px; margin-inline:auto; }
.s-local-text p{ margin: 0 0 1.1em; }

/* ===== Ticks sin círculo (como la captura) ===== */
.s-features{
  list-style:none; padding:0; margin: 18px 0 22px;
  display:grid; grid-template-columns: 1fr 1fr; gap: 22px 28px;
}
.s-features li{ display:flex; align-items:center; gap: 18px; }

/* El tick es un glifo grande, sin círculo */
.s-tick::before{
  content: "✓";               /* tick sólido */
  display:inline-block;
  font-weight: 900;
  font-size: clamp(32px, 4.6vw, 48px);
  line-height: 1;
  transform: translateY(2px); /* leve ajuste vertical como en la maqueta */
}

/* Píldora */
.s-pill{
  display:inline-block;
  background: var(--pill-bg);
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing:.02em;
  box-shadow: var(--shadow-soft);
  white-space: nowrap;
}

/* Botón */
.s-cta-wrap{ text-align:left; margin-top: clamp(18px,3.5vw,28px); }
.s-btn{ display:inline-block; text-decoration:none; font-weight:800;
        padding:12px 22px; border-radius:999px; }
.s-btn-mdp{ background:#f1b7a8; color:#1f2020; }

/* Imagen sticky */
.s-local-media{ position: sticky; top: 0; height: 100dvh; align-self:start; }
.s-local-media img{ width:100%; height:100%; object-fit:cover; object-position:center; display:block; }

/* Responsive */
@media (max-width: 992px){
  .s-local-grid{ grid-template-columns:1fr; }
  .s-local-media{ position:static; height:auto; order:-1; margin-bottom:16px; }
  .s-features{ grid-template-columns:1fr; }
}
