/* ============================================================
   DaKa Innova – Página: Sucursal Física (Tizayuca, Hidalgo)
   Estilo: cálido, cercano, práctico · Menos abstracto
   ============================================================ */

/* ---- Hero de sucursal ---- */
.sucursal-hero {
  display: flex;
  align-items: center;
  height: 100vh;
  padding: calc(var(--nav-h) + var(--sp-16)) 0 var(--sp-16);
  background: var(--dark);
  position: relative;
  overflow: hidden;
}

/* Glow cálido amarillo */
.sucursal-hero::before {
  content: '';
  position: absolute;
  top: -80px; right: -100px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(255,197,15,0.18) 0%, transparent 65%);
  pointer-events: none;
}

/* Glow rosa */
.sucursal-hero::after {
  content: '';
  position: absolute;
  bottom: -60px; left: -80px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(219,0,125,0.12) 0%, transparent 65%);
  pointer-events: none;
}

.sucursal-hero__inner {
  max-width: var(--max-w);
  margin: 0 auto;
  padding: 0 var(--pad);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-16);
  align-items: center;
  position: relative;
  z-index: 1;
}

.sucursal-hero__content {
  display: flex;
  flex-direction: column;
  gap: var(--sp-6);
}

.sucursal-hero__pretitle {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  color: var(--amarillo);
  font-family: var(--font-head);
  letter-spacing: 0.04em;
}

.sucursal-hero__title {
  font-family: var(--font-head);
  font-size: clamp(var(--text-3xl), 5vw, var(--text-5xl));
  font-weight: var(--fw-black);
  color: var(--white);
  line-height: 1.14;
  letter-spacing: -0.02em;
}

.sucursal-hero__sub {
  font-size: var(--text-lg);
  color: var(--text-inv-75);
  line-height: 1.7;
}

.sucursal-hero__actions {
  display: flex;
  gap: var(--sp-4);
  flex-wrap: wrap;
}

/* Card de info rápida (derecha del hero) - GLASSMORPHISM OSCURO */
.sucursal-info-card {
  background: linear-gradient(135deg, 
    rgba(14,14,28,0.85) 0%, 
    rgba(20,12,32,0.80) 100%);
  border: 3px solid transparent;
  background-clip: padding-box;
  position: relative;
  border-radius: var(--r-2xl);
  padding: var(--sp-8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 
    0 8px 32px rgba(0,0,0,0.3),
    inset 0 1px 0 rgba(255,255,255,0.1);
  display: flex;
  flex-direction: column;
  gap: var(--sp-6);
}

/* Borde degradado colorido */
.sucursal-info-card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: var(--r-2xl);
  padding: 3px;
  background: var(--grad-brand);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

.sucursal-info-card__header {
  display: flex;
  align-items: center;
  gap: var(--sp-3);
  padding-bottom: var(--sp-5);
  border-bottom: 2px solid rgba(255,255,255,0.15);
}

.sucursal-info-card__header i {
  font-size: var(--text-2xl);
  color: var(--amarillo);
  filter: drop-shadow(0 2px 8px rgba(255,197,15,0.5));
}

.sucursal-info-card__header h2 {
  font-family: var(--font-head);
  font-size: var(--text-lg);
  font-weight: var(--fw-extrabold);
  color: var(--white);
  line-height: 1.3;
  text-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.sucursal-info-card__list {
  display: flex;
  flex-direction: column;
  gap: var(--sp-5);
  list-style: none;
}

.sucursal-info-card__list li {
  display: flex;
  gap: var(--sp-4);
  align-items: flex-start;
}

.sucursal-info-card__list li i {
  width: 42px;
  height: 42px;
  border-radius: var(--r-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-lg);
  flex-shrink: 0;
}

.sucursal-info-card__list li:nth-child(1) i {
  background: linear-gradient(135deg, rgba(219,0,125,0.25), rgba(219,0,125,0.15));
  color: var(--rosa-light);
  border: 2px solid rgba(219,0,125,0.4);
  box-shadow: 0 4px 12px rgba(219,0,125,0.2);
}

.sucursal-info-card__list li:nth-child(2) i {
  background: linear-gradient(135deg, rgba(0,142,231,0.25), rgba(0,142,231,0.15));
  color: var(--azul-light);
  border: 2px solid rgba(0,142,231,0.4);
  box-shadow: 0 4px 12px rgba(0,142,231,0.2);
}

.sucursal-info-card__list li:nth-child(3) i {
  background: linear-gradient(135deg, rgba(255,197,15,0.30), rgba(255,197,15,0.18));
  color: var(--amarillo-light);
  border: 2px solid rgba(255,197,15,0.5);
  box-shadow: 0 4px 12px rgba(255,197,15,0.2);
}

.sucursal-info-card__list li:nth-child(4) i {
  background: linear-gradient(135deg, rgba(34,197,94,0.25), rgba(34,197,94,0.15));
  color: #4ade80;
  border: 2px solid rgba(34,197,94,0.4);
  box-shadow: 0 4px 12px rgba(34,197,94,0.2);
}

.sucursal-info-card__list li > div {
  display: flex;
  flex-direction: column;
  gap: var(--sp-1);
}

.sucursal-info-card__list li strong {
  font-family: var(--font-head);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  color: var(--white);
}

.sucursal-info-card__list li span {
  font-size: var(--text-sm);
  color: rgba(255,255,255,0.75);
  line-height: 1.5;
}

.sucursal-info-card__status {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  padding: var(--sp-2) var(--sp-4);
  background: rgba(34,197,94,0.20);
  border: 2px solid rgba(34,197,94,0.5);
  border-radius: var(--r-full);
  color: #4ade80;
  font-weight: var(--fw-extrabold);
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 0 4px 16px rgba(34,197,94,0.3);
}

.sucursal-info-card__status::before {
  content: '';
  width: 8px;
  height: 8px;
  background: #22c55e;
  border-radius: 50%;
  box-shadow: 0 0 12px #22c55e;
  animation: pulse-green 2s ease-in-out infinite;
}

@keyframes pulse-green {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.6; transform: scale(0.9); }
}

/* ---- Sección: Horarios ---- */
.sucursal-hours {
  padding: 0 0 var(--sp-16);
  background: var(--light);
}

.sucursal-hours__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-8);
  max-width: 820px;
  margin: 0 auto;
}

.hours-card {
  background: var(--neu-bg);
  border-radius: var(--r-2xl);
  padding: var(--sp-8);
  box-shadow:
    8px 8px 20px var(--neu-dark),
    -8px -8px 20px var(--neu-light);
}

.hours-card__icon {
  width: 52px; height: 52px;
  border-radius: var(--r-xl);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-2xl);
  margin-bottom: var(--sp-5);
  box-shadow: 4px 4px 10px rgba(0,0,0,0.08), -2px -2px 8px rgba(255,255,255,0.80);
}
.hours-card__icon--azul     { background: rgba(0,142,231,0.12);  color: var(--azul); }
.hours-card__icon--amarillo { background: rgba(255,197,15,0.18); color: var(--amarillo-dark); }

.hours-card h3 {
  font-family: var(--font-head);
  font-size: var(--text-lg);
  font-weight: var(--fw-bold);
  color: var(--text-dark);
  margin-bottom: var(--sp-5);
}

.hours-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.hours-list__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--sp-3) 0;
  border-bottom: 1px solid var(--neu-dark);
}
.hours-list__item:last-child { border-bottom: none; }

.hours-list__day {
  font-size: var(--text-sm);
  color: var(--text-mid);
  font-weight: var(--fw-semibold);
}
.hours-list__time {
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  color: var(--text-dark);
  font-family: var(--font-head);
}

/* ---- Galería placeholder - MODERNA Y COLORIDA ---- */
.sucursal-photos {
  padding: var(--sp-20) 0;
  background: linear-gradient(180deg, #f0f7ff 0%, #fff5f8 50%, #fef7e6 100%);
  position: relative;
}

.sucursal-photos__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: 240px 240px;
  gap: var(--sp-5);
  position: relative;
  z-index: 1;
}

.photo-placeholder {
  border-radius: var(--r-2xl);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--sp-4);
  background: var(--white);
  border: 3px dashed transparent;
  position: relative;
  font-size: var(--text-base);
  font-family: var(--font-head);
  font-weight: var(--fw-bold);
  transition: all var(--t-normal);
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  overflow: hidden;
}

/* Colores rotativos vintage */
.photo-placeholder:nth-child(1) {
  background: linear-gradient(135deg, #fffbf0 0%, #ffffff 100%);
  border-color: rgba(255,197,15,0.4);
  color: var(--amarillo-dark);
}

.photo-placeholder:nth-child(2) {
  background: linear-gradient(135deg, #f0f7ff 0%, #ffffff 100%);
  border-color: rgba(0,142,231,0.4);
  color: var(--azul);
}

.photo-placeholder:nth-child(3) {
  background: linear-gradient(135deg, #fff5f8 0%, #ffffff 100%);
  border-color: rgba(219,0,125,0.4);
  color: var(--rosa);
}

.photo-placeholder:nth-child(4) {
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);
  border-color: rgba(34,197,94,0.4);
  color: #16a34a;
}

.photo-placeholder:nth-child(5) {
  background: linear-gradient(135deg, #fffbf0 0%, #ffffff 100%);
  border-color: rgba(255,197,15,0.4);
  color: var(--amarillo-dark);
}

.photo-placeholder:hover {
  transform: scale(1.03) rotate(-1deg);
  box-shadow: 0 16px 48px rgba(0,0,0,0.15);
  border-style: solid;
}

.photo-placeholder i {
  font-size: var(--text-4xl);
  opacity: 0.7;
  transition: all var(--t-normal);
}

.photo-placeholder:hover i {
  transform: scale(1.2);
  opacity: 1;
}

.photo-placeholder span {
  font-size: var(--text-sm);
  text-align: center;
  padding: 0 var(--sp-4);
}

.photo-placeholder--large {
  grid-column: span 1;
  grid-row: span 2;
}

/* ---- CTA Final con PARALLAX ---- */
.sucursal-cta {
  padding: var(--sp-24) 0;
  background: linear-gradient(
    135deg,
    rgba(14,8,32,0.85) 0%,
    rgba(26,19,8,0.80) 100%
  ),
  url('../../imgs/backgrounds/dakainnova_banner_workspace-tech_nocturno_neon-magenta-azul-dorado_1920x700_v1.png') center/cover;
  background-attachment: fixed;
  text-align: center;
  position: relative;
  overflow: hidden;
}

/* Para dispositivos móviles sin soporte parallax */
.is-touch .sucursal-cta {
  background-attachment: scroll;
}

/* Pattern dot decorativo */
.sucursal-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,197,15,0.12) 1.5px, transparent 1.5px);
  background-size: 40px 40px;
  pointer-events: none;
}

/* Glow amarillo central */
.sucursal-cta::after {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 800px; height: 800px;
  background: radial-gradient(circle, rgba(255,197,15,0.25) 0%, transparent 70%);
  pointer-events: none;
  filter: blur(100px);
}

.sucursal-cta__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--sp-6);
  max-width: 700px;
  margin: 0 auto;
}

.sucursal-cta__content h2 {
  font-family: var(--font-head);
  font-size: clamp(var(--text-3xl), 5vw, var(--text-5xl));
  font-weight: var(--fw-black);
  color: var(--white);
  text-shadow: 0 4px 30px rgba(255,197,15,0.4);
  line-height: 1.2;
}

.sucursal-cta__content p {
  font-size: var(--text-xl);
  color: rgba(255,255,255,0.90);
  max-width: 600px;
  text-align: center;
  line-height: 1.7;
  text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

.sucursal-cta__btns {
  display: flex;
  gap: var(--sp-5);
  flex-wrap: wrap;
  justify-content: center;
  margin-top: var(--sp-6);
}

/* ============ CAPIBARAS DECORATIVOS ============ */
.capybara-deco {
  position: absolute;
  width: 80px;
  height: 80px;
  pointer-events: none;
  z-index: 10;
  opacity: 0.7;
  transition: all var(--t-normal);
}

.capybara-deco:hover {
  opacity: 1;
  transform: scale(1.15) rotate(5deg);
}

/* Posiciones estratégicas */
.capybara-deco--hero-top {
  top: 120px;
  right: 5%;
  width: 70px;
  height: 70px;
}

.capybara-deco--services-left {
  top: 90%;
  left: 2%;
  width: 65px;
  height: 65px;
}

.capybara-deco--services-right {
  top: 10%;
  right: 2%;
  width: 75px;
  height: 75px;
}

.capybara-deco--photos-corner {
  bottom: 5%;
  left: 3%;
  width: 60px;
  height: 60px;
}

.capybara-deco--cta-float {
  top: 10%;
  right: 8%;
  width: 55px;
  height: 55px;
  animation: float 4s ease-in-out infinite;
}

@keyframes float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-15px); }
}

/* ============================================================
   BENTO GRID DE SERVICIOS EN TIENDA FÍSICA
   4 columnas × 3 filas (desktop)
   ============================================================ */

.sucursal-services .container {
  padding-bottom: var(--sp-20);
}

/* ── Contenedor del grid ── */
.svc-bento {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: 265px 265px minmax(200px, auto);
  gap: var(--sp-5);
  margin-top: var(--sp-12);
  position: relative;
  z-index: 1;
}

/* ── Posicionamiento de celdas ── */
/* ① Laptops héroe: 2 cols × 2 filas */
.svc-bento .svc-card:nth-child(1) { grid-column: 1 / 3; grid-row: 1 / 3; }
/* ② Impresoras tall: col 3, 2 filas */
.svc-bento .svc-card:nth-child(2) { grid-column: 3 / 4; grid-row: 1 / 3; }
/* ③ Tóners: col 4, fila 1 */
.svc-bento .svc-card:nth-child(3) { grid-column: 4 / 5; grid-row: 1 / 2; }
/* ④ Papelería: col 4, fila 2 */
.svc-bento .svc-card:nth-child(4) { grid-column: 4 / 5; grid-row: 2 / 3; }
/* ⑤ Trámites wide: cols 1-3, fila 3 */
.svc-bento .svc-card:nth-child(5) { grid-column: 1 / 4; grid-row: 3 / 4; }
/* ⑥ Diagnóstico stat: col 4, fila 3 */
.svc-bento .svc-card:nth-child(6) { grid-column: 4 / 5; grid-row: 3 / 4; }

/* ── Base de tarjeta ── */
.svc-card {
  border-radius: var(--r-2xl);
  padding: var(--sp-8);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: var(--sp-5);
  transition: transform var(--t-normal), box-shadow var(--t-normal);
}

.svc-card:hover {
  transform: translateY(-5px);
}

/* ── Header: título izquierda + ícono derecha ── */
.svc-card__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--sp-4);
  margin-bottom: var(--sp-2);
}

/* ── Tarjeta glassmorphism oscuro (Laptops héroe + Trámites wide) ── */
.svc-card--feat,
.svc-card--wide {
  background: linear-gradient(135deg, 
    rgba(14,14,28,0.88) 0%, 
    rgba(20,12,32,0.82) 100%);
  /* border: 3px solid transparent; */
  background-clip: padding-box;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  /* box-shadow: 
    0 8px 32px rgba(0,0,0,0.35),
    inset 0 1px 0 rgba(255,255,255,0.1); */
  /* Trama de puntos decorativa */
  background-image:
    radial-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(135deg, rgba(14,14,28,0.88) 0%, rgba(20,12,32,0.82) 100%);
  background-size: 28px 28px, cover;
}

/* Borde degradado colorido */
.svc-card--feat::before,
.svc-card--wide::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: var(--r-2xl);
  padding: 3px;
  background: var(--grad-brand);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite: exclude;
  pointer-events: none;
  z-index: 0;
}

.svc-card--feat > *,
.svc-card--wide > * {
  position: relative;
  z-index: 1;
}

/* ── Tarjeta neumórfica clara ── */
.svc-card--light {
  background: var(--neu-bg);
  box-shadow:
    8px 8px 20px var(--neu-dark),
    -8px -8px 20px var(--neu-light);
  border: 1px solid rgba(255, 255, 255, 0.70);
}

.svc-card--light:hover {
  box-shadow:
    12px 12px 28px var(--neu-dark),
    -12px -12px 28px var(--neu-light);
  transform: translateY(-4px);
}

/* Variante con acento rosa (Impresoras) */
.svc-card--light.svc-card--accent-rosa {
  border: 4px solid var(--rosa);
}

/* Variante con acento azul */
.svc-card--light.svc-card--accent-azul {
  border: 4px solid var(--azul);
}

/* ── Acento amarillo (Tóners) ── */
.svc-card--accent-amarillo {
  background: var(--neu-bg);
  box-shadow:
    8px 8px 20px var(--neu-dark),
    -8px -8px 20px var(--neu-light);
  border: 1px solid rgba(255, 255, 255, 0.70);
}

.svc-card--accent-amarillo:hover {
  box-shadow:
    12px 12px 28px var(--neu-dark),
    -12px -12px 28px var(--neu-light);
  transform: translateY(-4px);
}

/* ── Stat con acento rosa (Diagnóstico) ── */
.svc-card--stat {
  background: var(--neu-bg);
  /* box-shadow:
    8px 8px 20px var(--neu-dark),
    -8px -8px 20px var(--neu-light),
    inset 0 0 0 3px rgba(219, 0, 125, 0.25); */
    border: 4px solid var(--amarillo);
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* .svc-card--stat:hover {
  box-shadow: 
    12px 12px 28px var(--neu-dark),
    -12px -12px 28px var(--neu-light),
    inset 0 0 0 3px rgba(219, 0, 125, 0.35),
    0 8px 24px rgba(219, 0, 125, 0.25);
  transform: translateY(-4px);
} */

/* ── Icono contenedor (ahora en esquina superior derecha) ── */
.svc-card__icon-wrap {
  width: 56px;
  height: 56px;
  border-radius: var(--r-xl);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-2xl);
  flex-shrink: 0;
  box-shadow: 4px 4px 10px rgba(0,0,0,0.08), -2px -2px 8px rgba(255,255,255,0.80);
}

.svc-card--feat .svc-card__icon-wrap {
  width: 72px;
  height: 72px;
  font-size: var(--text-3xl);
  box-shadow: 
    6px 6px 16px rgba(0,0,0,0.20),
    -3px -3px 12px rgba(255,255,255,0.15);
}

.svc-card__icon-wrap--azul {
  background: rgba(0, 142, 231, 0.12);
  color: var(--azul);
}

.svc-card__icon-wrap--rosa {
  background: rgba(219, 0, 125, 0.12);
  color: var(--rosa);
}

.svc-card__icon-wrap--amarillo {
  background: rgba(255, 197, 15, 0.18);
  color: var(--amarillo-dark);
}

.svc-card__icon-wrap--dark {
  background: rgba(8, 8, 15, 0.08);
  color: var(--dark);
}

/* Íconos en tarjetas oscuras */
.svc-card--feat .svc-card__icon-wrap--azul,
.svc-card--wide .svc-card__icon-wrap--azul {
  background: rgba(0, 142, 231, 0.20);
  color: var(--azul-light);
  box-shadow: 
    0 4px 20px rgba(0, 142, 231, 0.30),
    inset 0 1px 0 rgba(255,255,255,0.1);
}

/* ── Títulos de tarjeta (ahora en esquina superior izquierda) ── */
.svc-card__title {
  font-family: var(--font-head);
  font-weight: var(--fw-black);
  line-height: 1.18;
  letter-spacing: -0.025em;
  flex: 1;
}

.svc-card--feat .svc-card__title {
  font-size: clamp(var(--text-2xl), 2.8vw, var(--text-4xl));
  color: var(--white);
}

/* Fragmento degradado del título héroe */
.svc-card__title-grad {
  background: var(--grad-azul-rosa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.svc-card--light .svc-card__title {
  font-size: var(--text-xl);
  color: var(--text-dark);
}

.svc-card--accent-amarillo .svc-card__title {
  font-size: var(--text-xl);
  color: var(--text-dark);
}

.svc-card--stat .svc-card__title {
  font-size: var(--text-lg);
  color: var(--text-dark);
}

.svc-card--wide .svc-card__title {
  font-size: var(--text-2xl);
  color: var(--white);
}

/* ── Descripción ── */
.svc-card__desc {
  font-size: var(--text-sm);
  line-height: 1.6;
}

.svc-card--feat .svc-card__desc,
.svc-card--wide .svc-card__desc  { color: var(--text-inv-75); }

.svc-card--light .svc-card__desc,
.svc-card--accent-amarillo .svc-card__desc,
.svc-card--stat .svc-card__desc { color: var(--text-mid); }

/* ── Badge pill (etiqueta pequeña) ── */
.svc-card__badge-pill {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  padding: var(--sp-2) var(--sp-4);
  border-radius: var(--r-full);
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: rgba(255, 197, 15, 0.14);
  color: var(--amarillo);
  border: 1px solid rgba(255, 197, 15, 0.38);
  width: fit-content;
}

.svc-card__badge-pill--azul {
  background: rgba(0, 142, 231, 0.16);
  color: var(--azul-light);
  border-color: rgba(0, 142, 231, 0.38);
}

/* ── Checklist (Laptops) ── */
.svc-card__checklist {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--sp-2);
  flex: 1;
}

.svc-card__checklist li {
  display: flex;
  align-items: center;
  gap: var(--sp-3);
  font-size: var(--text-sm);
  color: var(--text-inv-75);
}

.svc-card__checklist li i {
  font-size: 0.65rem;
  color: var(--azul-light);
  background: rgba(0, 142, 231, 0.20);
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* Variante rosa (Impresoras, tarjeta clara) */
.svc-card__checklist--rosa li {
  color: var(--text-mid);
}

.svc-card__checklist--rosa li i {
  color: var(--rosa);
  background: rgba(219, 0, 125, 0.12);
  box-shadow: none;
}

/* ── Franja de garantía (Laptops) ── */
.svc-card__guarantee {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-3);
  padding: var(--sp-3) var(--sp-5);
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--r-lg);
  font-size: var(--text-sm);
  color: var(--text-inv-75);
  margin-top: auto;
}

.svc-card__guarantee i {
  color: var(--azul-light);
  font-size: var(--text-base);
}

/* ── Etiquetas de marcas (Impresoras) ── */
.svc-card__brand-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
  margin-top: auto;
}

.svc-card__brand-tags span {
  padding: var(--sp-1) var(--sp-3);
  background: rgba(219, 0, 125, 0.08);
  border: 1px solid rgba(219, 0, 125, 0.22);
  border-radius: var(--r-full);
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  color: var(--rosa);
  box-shadow: inset 0 1px 2px rgba(219, 0, 125, 0.10);
}

/* ── Tags de tóners (Tall amarillo) ── */
.svc-card__toner-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
  margin-top: auto;
}

.svc-card__toner-tags span {
  padding: var(--sp-1) var(--sp-2);
  background: rgba(255, 197, 15, 0.12);
  border: 1px solid rgba(255, 197, 15, 0.30);
  border-radius: var(--r-full);
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  color: var(--amarillo-dark);
  box-shadow: inset 0 1px 2px rgba(255, 197, 15, 0.15);
}

/* ── Círculo decorativo (Tóners) ── */
.svc-card__deco-circle {
  position: absolute;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: rgba(255, 197, 15, 0.08);
  top: -50px;
  right: -50px;
  pointer-events: none;
  box-shadow: inset 0 0 40px rgba(255, 197, 15, 0.15);
}

/* ── Layout interior de la tarjeta wide (Trámites) ── */
.svc-card--wide .svc-card__wide-inner {
  display: flex;
  align-items: center;
  gap: var(--sp-8);
  flex: 1;
}

.svc-card--wide .svc-card__wide-text {
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
  flex-shrink: 0;
  min-width: 210px;
  max-width: 280px;
}

/* Header dentro de wide-text */
.svc-card--wide .svc-card__header {
  margin-bottom: 0;
}

.svc-card--wide .svc-card__header .svc-card__icon-wrap {
  width: 48px;
  height: 48px;
  font-size: var(--text-xl);
}

.svc-card--wide .svc-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-3);
  flex: 1;
  justify-content: flex-end;
  align-items: center;
}

/* ── Chips de trámites ── */
.svc-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
  padding: var(--sp-3) var(--sp-5);
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--r-full);
  font-size: var(--text-sm);
  font-weight: var(--fw-semibold);
  color: var(--white);
  transition:
    background var(--t-fast),
    border-color var(--t-fast),
    transform var(--t-fast);
}

.svc-chip:hover {
  background: rgba(0, 142, 231, 0.22);
  border-color: rgba(0, 142, 231, 0.50);
  transform: translateY(-2px);
}

.svc-chip i {
  color: var(--azul-light);
  font-size: 0.80rem;
}

/* ── Tarjeta stat: Diagnóstico Gratis ── */
.svc-card__stat-eyebrow {
  font-family: var(--font-head);
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--text-mid);
}

.svc-card__stat-number {
  font-family: var(--font-head);
  font-size: clamp(var(--text-3xl), 3.5vw, var(--text-5xl));
  font-weight: var(--fw-black);
  color: var(--rosa);
  line-height: 1;
  letter-spacing: -0.04em;
  text-shadow: 0 2px 8px rgba(219, 0, 125, 0.20);
}

.svc-card__stat-sub {
  font-size: var(--text-sm);
  color: var(--text-mid);
  line-height: 1.55;
  max-width: 148px;
  text-align: center;
}

/* ── Destellos de glow en tarjetas oscuras ── */
.svc-card__glow {
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
  filter: blur(72px);
  opacity: 0.28;
  z-index: 0;
}

.svc-card__glow--azul {
  width: 340px;
  height: 340px;
  background: var(--azul);
  bottom: -130px;
  right: -110px;
}

.svc-card__glow--rosa {
  width: 300px;
  height: 300px;
  background: var(--rosa);
  top: -80px;
  left: -80px;
}

/* ---- Responsive ---- */
/* Desktop grande: Capibaras 200% */
@media (min-width: 1440px) {
  .capybara-deco--hero-top {
    width: 140px;
    height: 140px;
  }
  
  .capybara-deco--services-left {
    width: 130px;
    height: 130px;
  }
  
  .capybara-deco--services-right {
    width: 150px;
    height: 150px;
  }
  
  .capybara-deco--photos-corner {
    width: 120px;
    height: 120px;
  }
  
  .capybara-deco--cta-float {
    width: 110px;
    height: 110px;
  }
}

/* Tablets: Capibaras 150% */
@media (min-width: 769px) and (max-width: 1439px) {
  .capybara-deco--hero-top {
    width: 105px;
    height: 105px;
  }
  
  .capybara-deco--services-left {
    width: 98px;
    height: 98px;
  }
  
  .capybara-deco--services-right {
    width: 113px;
    height: 113px;
  }
  
  .capybara-deco--photos-corner {
    width: 90px;
    height: 90px;
  }
  
  .capybara-deco--cta-float {
    width: 83px;
    height: 83px;
  }
}

@media (max-width: 768px) {
  .sucursal-hero { height: auto; }
  .sucursal-hero__inner { grid-template-columns: 1fr; gap: var(--sp-8); }
  .sucursal-hero__actions { flex-direction: column; }
  .sucursal-hours__grid { grid-template-columns: 1fr; }
  .sucursal-photos__grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 150px 150px 150px;
  }
  .photo-placeholder--large { grid-column: span 2; grid-row: span 1; }
  
  /* Capibaras ocultos o más pequeños en móviles */
  .capybara-deco {
    opacity: 0.5;
  }

  /* ── Bento: 2 columnas en móvil ── */
  .svc-bento {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
  }

  .svc-bento .svc-card:nth-child(1) { grid-column: 1 / 3; grid-row: auto; }
  .svc-bento .svc-card:nth-child(2) { grid-column: 1 / 2; grid-row: auto; }
  .svc-bento .svc-card:nth-child(3) { grid-column: 2 / 3; grid-row: auto; }
  .svc-bento .svc-card:nth-child(4) { grid-column: 1 / 2; grid-row: auto; }
  .svc-bento .svc-card:nth-child(5) { grid-column: 1 / 3; grid-row: auto; }
  .svc-bento .svc-card:nth-child(6) { grid-column: 2 / 3; grid-row: auto; }

  .svc-card--feat .svc-card__checklist { display: none; }

  /* Trámites: stack vertical en móvil */
  .svc-card--wide .svc-card__wide-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--sp-5);
  }

  .svc-card--wide .svc-card__chips {
    justify-content: flex-start;
  }

  .svc-card--wide .svc-card__wide-text {
    min-width: unset;
    max-width: 100%;
  }

  /* Header en móvil: ícono más pequeño */
  .svc-card__header {
    gap: var(--sp-3);
  }

  .svc-card__icon-wrap {
    width: 48px;
    height: 48px;
    font-size: var(--text-xl);
  }

  .svc-card--feat .svc-card__icon-wrap {
    width: 60px;
    height: 60px;
    font-size: var(--text-2xl);
  }
}

/* ── Bento: Tablet (769px – 1024px) ── */
@media (min-width: 769px) and (max-width: 1024px) {
  .svc-bento {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 255px 255px auto;
  }

  /* Laptops: sigue en 2×2 */
  .svc-bento .svc-card:nth-child(1) { grid-column: 1 / 3; grid-row: 1 / 3; }
  /* Impresoras: col 3, tall 2 filas */
  .svc-bento .svc-card:nth-child(2) { grid-column: 3 / 4; grid-row: 1 / 3; }
  /* Tóners: col 1, fila 3 */
  .svc-bento .svc-card:nth-child(3) { grid-column: 1 / 2; grid-row: 3 / 4; }
  /* Papelería: col 2, fila 3 */
  .svc-bento .svc-card:nth-child(4) { grid-column: 2 / 3; grid-row: 3 / 4; }
  /* Trámites: cols 1-3 full, fila 4 */
  .svc-bento .svc-card:nth-child(5) { grid-column: 1 / 4; grid-row: 4 / 5; }
  /* Diagnóstico: col 3, fila 3 */
  .svc-bento .svc-card:nth-child(6) { grid-column: 3 / 4; grid-row: 3 / 4; }

  /* Trámites: stack vertical en tablet estrecho */
  .svc-card--wide .svc-card__wide-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--sp-5);
  }

  .svc-card--wide .svc-card__chips { justify-content: flex-start; }
  .svc-card--wide .svc-card__wide-text { min-width: unset; max-width: 100%; }
}

/* ── Bento: Móvil pequeño (≤ 480px) ── */
@media (max-width: 480px) {
  .svc-bento {
    grid-template-columns: 1fr;
  }

  .svc-bento .svc-card:nth-child(1),
  .svc-bento .svc-card:nth-child(2),
  .svc-bento .svc-card:nth-child(3),
  .svc-bento .svc-card:nth-child(4),
  .svc-bento .svc-card:nth-child(5),
  .svc-bento .svc-card:nth-child(6) {
    grid-column: 1 / 2;
    grid-row: auto;
  }

  .svc-card {
    padding: var(--sp-6);
  }

  /* Títulos más pequeños en móvil pequeño */
  .svc-card--light .svc-card__title,
  .svc-card--accent-amarillo .svc-card__title {
    font-size: var(--text-lg);
  }

  /* Íconos más compactos */
  .svc-card__icon-wrap {
    width: 44px;
    height: 44px;
    font-size: var(--text-lg);
  }

  .svc-card--feat .svc-card__icon-wrap {
    width: 56px;
    height: 56px;
    font-size: var(--text-xl);
  }

  .svc-card--stat .svc-card__stat-number {
    font-size: var(--text-4xl);
  }
}
