/* Service Lifter — Our Approach (animated AI chat). Scoped .slapproach. Uses .sl-alt for bg + glow. */
.slapproach{
  color:var(--sl-fg);
  padding:96px 24px;
  font-family:inherit;
}
.slapproach *,.slapproach *::before,.slapproach *::after{box-sizing:border-box;}
.slapproach__inner{max-width:1280px;margin:0 auto;}
.slapproach__head{max-width:768px;margin:0 auto 56px;text-align:center;}
.slapproach__eyebrow{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--sl-primary);margin-bottom:16px;}
.slapproach__h2{font-size:clamp(30px,4vw,48px);font-weight:700;line-height:1.15;margin:0 0 24px;color:var(--sl-fg);}
.slapproach__h2 span{color:var(--sl-primary);}
.slapproach__lede{font-size:18px;line-height:1.6;color:var(--sl-muted);margin:0;}
.slapproach__br{display:none;}
@media (min-width:768px){.slapproach__br{display:block;}}

.slapproach__chat{
  max-width:896px;margin:0 auto;border-radius:24px;
  border:1px solid var(--sl-border);background:var(--sl-bg);
  padding:24px;min-height:640px;
}
@media (min-width:768px){.slapproach__chat{padding:48px;}}
.slapproach__stream{display:flex;flex-direction:column;gap:16px;}

.slapproach__msg{
  display:none;opacity:0;transform:translateY(14px) scale(0.97);
  transition:opacity .35s ease-out,transform .35s ease-out;
}
.slapproach__msg.is-on{display:flex;}
.slapproach__msg.is-in{opacity:1;transform:none;}
.slapproach__msg--user{justify-content:flex-end;}
.slapproach__msg--ai{align-items:flex-start;gap:12px;}

.slapproach__avatar{
  width:40px;height:40px;border-radius:9999px;background:var(--sl-secondary);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:4px;
}
.slapproach__avatar svg{width:20px;height:20px;}

.slapproach__bubble{font-size:16px;line-height:1.6;}
.slapproach__bubble--user{
  border-radius:16px;border-bottom-right-radius:4px;
  background:var(--sl-primary);color:var(--sl-fg);padding:14px 20px;max-width:80%;
}
.slapproach__bubble--ai{
  border-radius:16px;border-top-left-radius:4px;
  background:rgba(26,26,31,0.6);border:1px solid var(--sl-border);
  padding:16px 20px;max-width:85%;color:var(--sl-fg);
}
.slapproach__bubble--wide{max-width:none;}
.slapproach__bubble b{color:var(--sl-primary);font-weight:600;}

.slapproach__dots{display:flex;gap:6px;align-items:center;padding:14px 16px;}
.slapproach__dots span{
  width:6px;height:6px;border-radius:9999px;background:rgba(160,160,171,0.7);
  animation:slapproach-bounce 1s infinite;
}
.slapproach__dots span:nth-child(2){animation-delay:.15s;}
.slapproach__dots span:nth-child(3){animation-delay:.3s;}
@keyframes slapproach-bounce{0%,100%{transform:translateY(0);}50%{transform:translateY(-25%);}}

.slapproach__grid{margin-top:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
@media (min-width:640px){.slapproach__grid{grid-template-columns:repeat(3,1fr);}}
.slapproach__chip{
  display:flex;align-items:center;gap:8px;border-radius:8px;
  background:rgba(12,12,13,0.6);border:1px solid var(--sl-border);
  padding:8px 12px;font-size:14px;font-weight:500;color:var(--sl-fg);
  opacity:0;transform:translateX(-8px);
  transition:opacity .25s ease-out,transform .25s ease-out;
}
.slapproach.is-stage6 .slapproach__chip{opacity:1;transform:none;}
.slapproach__chipicon{width:14px;height:14px;flex-shrink:0;}

.slapproach__outro{
  margin:32px auto 0;text-align:center;font-size:18px;line-height:1.6;
  color:var(--sl-muted);max-width:672px;
}
.slapproach__outro b{color:var(--sl-fg);font-weight:600;}

@media (prefers-reduced-motion:reduce){
  .slapproach__msg,.slapproach__chip{transition:none;}
  .slapproach__dots span{animation:none;}
}
