/* ============================================================
   Seção 3 — Tecnologia / ASO 100% digital
   ============================================================ */
.tech {
  background: var(--primary-900);
  background-image: radial-gradient(80% 120% at 100% 0%, rgba(48,181,173,.22), transparent 55%),
                    radial-gradient(70% 90% at 0% 100%, rgba(23,130,140,.28), transparent 55%),
                    linear-gradient(180deg, #063238 0%, #08424a 100%);
  color: #fff; position: relative; overflow: hidden;
}
.tech .section__eyebrow { color: var(--accent-300); }
.tech .section__eyebrow::before { background: var(--accent); }
.tech .section__title { color: #fff; }
.tech .section__title em { color: var(--accent-300); }
.tech .section__lead { color: rgba(255,255,255,.82); }

.tech__grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: center; }

/* Badge SOC */
.tech__badge { display: inline-flex; align-items: center; gap: .7rem; margin-bottom: 1.4rem;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); border-radius: 999px;
  padding: .5rem .5rem .5rem .95rem; font-size: var(--step--1); color: rgba(255,255,255,.9); }
.tech__badge strong { color: #fff; }
.tech__badge .chip { background: var(--accent); color: #06282a; font-weight: 800; letter-spacing: .04em;
  border-radius: 999px; padding: .28rem .7rem; font-size: .74rem; }

/* Pipeline stepper */
.pipeline { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; margin-top: 2rem; }
.pipeline__step { position: relative; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--radius-sm); padding: 1.05rem 1.1rem; }
.pipeline__step .n { font-family: var(--font-display); font-size: 1.1rem; color: var(--accent-300); }
.pipeline__step h4 { margin: .35rem 0 .25rem; font-size: var(--step-0); }
.pipeline__step p { margin: 0; font-size: var(--step--1); color: rgba(255,255,255,.7); }
.pipeline__step:not(:last-child)::after { content: ""; position: absolute; right: -.55rem; top: 50%;
  width: .5rem; height: 2px; background: var(--accent); opacity: .6; }

/* Feature bullets */
.tech__list { list-style: none; margin: 1.8rem 0 0; padding: 0; display: grid; gap: .75rem; }
.tech__list li { display: flex; gap: .7rem; align-items: flex-start; color: rgba(255,255,255,.9); font-size: var(--step-0); }
.tech__list svg { flex: 0 0 auto; width: 22px; height: 22px; color: var(--accent); margin-top: .15rem; }

/* Visual */
.tech__visual { position: relative; }
.tech__visual img { border-radius: var(--radius); box-shadow: var(--shadow-lg); border: 1px solid rgba(255,255,255,.12);
  width: 100%; aspect-ratio: 3/2; object-fit: cover; }
.tech__visual::before { content: ""; position: absolute; inset: -14% -10% auto auto; width: 46%; aspect-ratio: 1;
  background: radial-gradient(circle, rgba(48,181,173,.45), transparent 70%); filter: blur(10px); z-index: 0; }
.tech__figtag { position: absolute; left: 1rem; bottom: 1rem; z-index: 2; background: rgba(6,40,44,.72);
  backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,.16); border-radius: 12px; padding: .55rem .85rem;
  font-size: .76rem; color: #fff; display: flex; align-items: center; gap: .5rem; }
.tech__figtag .dot { width: 7px; height: 7px; border-radius: 50%; background: #46e0b0; box-shadow: 0 0 8px #46e0b0; }

@media (max-width: 900px) {
  .tech__grid { grid-template-columns: 1fr; }
  .tech__visual { order: -1; }
  .pipeline { grid-template-columns: 1fr; }
  .pipeline__step:not(:last-child)::after { display: none; }
}
