/* Antes e depois: o site antigo e parado da clínica (projeto 18) × o site da Impacta, logo depois do problema.
   Uma barra divide os dois vídeos; arrastar (ou setas do teclado) mostra mais de um ou de outro. */
.s-ba{position:relative;padding-block:var(--section-py);overflow:hidden}
.s-ba::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(45% 50% at 90% 20%,rgb(78 2 255 / .18),transparent 70%),radial-gradient(40% 45% at 5% 85%,rgb(255 90 31 / .12),transparent 70%)}
.s-ba .ba-in{position:relative}
.s-ba .ba-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 48px;margin-bottom:clamp(36px,6vh,64px)}
.s-ba .ba-title{max-width:14ch}
.s-ba .ba-lead{max-width:42ch;color:var(--text)}

.s-ba .ba-frame{max-width:min(100%,calc((100svh - 240px) * 16 / 9));margin-inline:auto;border-radius:10px;overflow:hidden;background:#0b0b0d;box-shadow:0 40px 120px -40px rgb(78 2 255 / .45)}
.s-ba .ba-bar span{margin-inline:auto;color:var(--grey-2);letter-spacing:.14em}
.s-ba .ba-view{--x:50%;position:relative;aspect-ratio:16/9;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.s-ba .ba-layer{position:absolute;inset:0}
.s-ba .ba-layer video,.s-ba .ba-layer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.s-ba .ba-layer video{opacity:0;transition:opacity .4s}
.s-ba .ba-layer video.is-on{opacity:1}
/* o antigo fica por cima e é cortado na barra; um leve cinza reforça o "parado" */
.s-ba .ba-before{clip-path:inset(0 calc(100% - var(--x)) 0 0);filter:saturate(.75)}
.s-ba .ba-line{position:absolute;top:0;bottom:0;left:var(--x);width:2px;translate:-1px 0;background:#fff;box-shadow:0 0 18px rgb(255 255 255 / .55);pointer-events:none}
.s-ba .ba-knob{position:absolute;top:50%;left:50%;translate:-50% -50%;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--grad);color:#fff;box-shadow:0 10px 30px -8px rgb(0 0 0 / .6);border:2px solid #fff}
.s-ba .ba-knob svg{width:24px;height:24px}
.s-ba .ba-tag{position:absolute;top:14px;padding:7px 11px;border-radius:999px;letter-spacing:.12em;pointer-events:none;transition:opacity .3s}
.s-ba .ba-tag--a{left:14px;background:rgb(30 30 34 / .82);color:#cfd3d8;border:1px solid rgb(255 255 255 / .14)}
.s-ba .ba-tag--d{right:14px;background:var(--grad);color:#fff}
.s-ba .ba-view.is-a .ba-tag--d,.s-ba .ba-view.is-d .ba-tag--a{opacity:0}
.s-ba .ba-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.s-ba .ba-view:has(.ba-range:focus-visible) .ba-knob{outline:2px solid var(--flame);outline-offset:4px}
.s-ba .ba-hint{display:flex;align-items:center;justify-content:center;gap:10px;margin:16px 0 0;color:var(--grey-2);letter-spacing:.14em}

.s-ba .ba-res{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:24px 56px;align-items:center;margin-top:clamp(40px,7vh,72px);padding-top:clamp(28px,4vh,40px);border-top:1px solid var(--line)}
.s-ba .ba-num b{display:block;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:300}
.s-ba .ba-num p{margin:14px 0 0;max-width:22ch;color:var(--white);font-size:clamp(17px,1.4vw,21px);line-height:1.35}
.s-ba .ba-vs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0;padding:0;list-style:none}
.s-ba .ba-col{display:flex;flex-direction:column;gap:12px;padding:24px 22px;border:1px solid var(--line);border-radius:8px;background:rgb(255 255 255 / .03)}
.s-ba .ba-col span{align-self:flex-start;padding:6px 10px;border-radius:3px;letter-spacing:.14em}
.s-ba .ba-col--a span{background:rgb(255 255 255 / .08);color:var(--grey-2)}
.s-ba .ba-col--d{border-color:transparent;background:linear-gradient(var(--ink),var(--ink)) padding-box,var(--grad) border-box}
.s-ba .ba-col--d span{background:var(--grad);color:#fff}
.s-ba .ba-col p{margin:0;color:var(--text)}
.s-ba .ba-col--a p{color:var(--grey-2)}
.s-ba .ba-disc{margin:18px 0 0;color:var(--grey-2);font-size:12px}

@media (max-width:899px){
  .s-ba .ba-frame{border-radius:8px}
  .s-ba .ba-knob{width:42px;height:42px}
  .s-ba .ba-knob svg{width:20px;height:20px}
  .s-ba .ba-tag{top:8px;padding:5px 8px;font-size:9px}
  .s-ba .ba-tag--a{left:8px}
  .s-ba .ba-tag--d{right:8px}
  .s-ba .ba-res{grid-template-columns:1fr}
  .s-ba .ba-vs{grid-template-columns:1fr;gap:12px}
  .s-ba .ba-col{padding:20px 18px}
}
