/* ============================================================
   CONSULTIVO SPLIT
   ============================================================ */
.split { display:grid; gap: clamp(2rem,5vw,4rem); align-items:center; grid-template-columns: 1.1fr .9fr; }
@media (max-width: 900px){
  .split { grid-template-columns: 1fr; }
  .split__media { order: -1; }
}
.split__media {
  position:relative; min-height: 380px; isolation:isolate;
}
.split__media--photo {
  align-self: stretch;
}
@media (max-width: 900px){
  .split__media--photo { align-self: auto; height: 380px; }
}
.split__media-bg {
  position:absolute; inset:0; z-index:-1; border-radius: var(--radius-lg); overflow:hidden;
  background: linear-gradient(135deg,#0a1f5c,#163a9e);
}
.split__media-bg .blueprint--dark { position:absolute; inset:0; }
/* Produto centralizado no card, grande o suficiente para vazar levemente das bordas */

.split__product {
  position: absolute;
  top: 33%;
  left: 50%;
  width: clamp(300px, 36vw, 460px);

  transform: translate3d(-50%, calc(-50% - 5px), 0);
  animation: floatY 10s ease-in-out infinite;

  backface-visibility: hidden;
  pointer-events: none;
  z-index: 2;
}

@keyframes floatY {
  0%, 100% {
    transform: translate3d(-50%, calc(-50% - 5px), 0);
  }

  50% {
    transform: translate3d(-50%, calc(-50% - 21px), 0);
  }
}

@media (max-width: 900px){ .split__product { width: clamp(220px,52vw,320px); } }

/* Variante para fotos reais (não recortes transparentes): a imagem preenche
   o card inteiro com object-fit:cover, em vez de flutuar centralizada. */
.split__media--photo .split__media-bg { background: var(--slate-100); }
.split__photo {
  position: absolute; inset: 0; z-index: 0;
  width: 100%; height: 100%;
  object-fit: cover; border-radius: var(--radius-lg);
}
.split__photo-overlay {
  position: absolute; inset: 0; z-index: 1;
  border-radius: var(--radius-lg); pointer-events: none;
  background: linear-gradient(180deg, rgba(8,21,64,0) 45%, rgba(8,21,64,.78) 100%);
}
.split__media--photo .split__badge { z-index: 2; }

.split__badge {
  position:absolute; bottom:1.4rem; left:1.4rem; right:1.4rem; z-index:3;
  background: rgba(255,255,255,.95); backdrop-filter: blur(8px);
  border-radius: 14px; padding: 1.1rem 1.3rem; box-shadow: var(--shadow-md);
  display:flex; gap:1rem; align-items:center;
}
.split__badge svg { width:38px;height:38px;color:var(--blue-600); flex:none; }
.split__badge b { display:block; font-family:var(--font-body); color:var(--ink); }
.split__badge span { font-size:.82rem; color:var(--muted); }
.split__list { margin-top: 1.6rem; display:grid; gap:.9rem; }
.split__list li { display:flex; gap:.8rem; align-items:flex-start; }
.split__list svg { width:22px;height:22px;color:var(--blue-600); flex:none; margin-top:2px; }

