/* ═══════════════════════════════════════════════════════════════════
   WORKFLOW.CSS — Atend Workflow Premium Landing Page
   Prefix: aw-
   ═══════════════════════════════════════════════════════════════════ */

/* ───────── COLOUR TOKENS ───────── */
:root {
  --aw-accent: #14b8a6;
  --aw-accent-light: #2dd4bf;
  --aw-accent-dim: rgba(20, 184, 166, .12);
  --aw-accent-glow: rgba(20, 184, 166, .25);
  --aw-ceci-accent: #a78bfa;
  --aw-ceci-accent-dim: rgba(167, 139, 250, .12);
  --aw-pain-accent: #ef4444;
  --aw-pain-dim: rgba(239, 68, 68, .08);
  --aw-surface: rgba(255, 255, 255, .03);
  --aw-surface-2: rgba(255, 255, 255, .05);
  --aw-border: rgba(255, 255, 255, .06);
  --aw-border-2: rgba(255, 255, 255, .10);
}


/* ═══════════════════════════════════
   HERO
   ═══════════════════════════════════ */
.aw-hero {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8rem 0 4rem;
}

.aw-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.aw-hero__canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .18;
}

.aw-hero__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(120px);
  pointer-events: none;
}
.aw-hero__orb--1 { width: 600px; height: 600px; background: rgba(20, 184, 166, .18); top: -10%; left: -10%; }
.aw-hero__orb--2 { width: 500px; height: 500px; background: rgba(167, 139, 250, .12); bottom: -10%; right: -5%; }
.aw-hero__orb--3 { width: 350px; height: 350px; background: rgba(59, 130, 246, .10); top: 30%; right: 20%; }

/* Centered hero */
.aw-hero__center {
  text-align: center;
  max-width: 820px;
  margin: 0 auto;
}

.aw-hero__title {
  font-family: var(--wf-font-heading);
  font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 800;
  line-height: 1.12;
  color: var(--wf-text-1);
  margin-bottom: 1.2rem;
}

.aw-hero__desc {
  font-size: 1.15rem;
  line-height: 1.7;
  color: var(--wf-text-2);
  max-width: 680px;
  margin: 0 auto 2rem;
}

.aw-hero__ctas {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

/* Badge shared */
.aw-badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .35rem .9rem;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 600;
  background: var(--aw-accent-dim);
  color: var(--aw-accent-light);
  border: 1px solid rgba(20, 184, 166, .18);
  margin-bottom: .8rem;
}

.aw-badge--ceci {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .35rem .9rem;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 600;
  background: var(--aw-ceci-accent-dim);
  color: var(--aw-ceci-accent);
  border: 1px solid rgba(167, 139, 250, .18);
  margin-bottom: .8rem;
}


/* ═══════════════════════════════════
   KPI STRIP
   ═══════════════════════════════════ */
.aw-kpi-strip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  margin-top: 4rem;
  flex-wrap: wrap;
}

.aw-kpi-strip__sep {
  width: 1px;
  height: 40px;
  background: var(--aw-border-2);
}

.aw-kpi {
  text-align: center;
}

.aw-kpi__value {
  font-family: var(--wf-font-heading);
  font-size: 2.2rem;
  font-weight: 800;
  color: var(--aw-accent-light);
  line-height: 1;
}

.aw-kpi__label {
  font-size: .82rem;
  color: var(--wf-text-3);
  margin-top: .3rem;
}


/* ═══════════════════════════════════
   PAIN SECTION
   ═══════════════════════════════════ */
.aw-pain-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.aw-pain-card {
  background: var(--aw-pain-dim);
  border: 1px solid rgba(239, 68, 68, .12);
  border-radius: 14px;
  padding: 1.8rem;
  transition: transform .35s, border-color .35s;
}
.aw-pain-card:hover {
  transform: translateY(-4px);
  border-color: rgba(239, 68, 68, .25);
}

.aw-pain-card__icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(239, 68, 68, .12);
  color: var(--aw-pain-accent);
  font-size: 1.3rem;
  margin-bottom: 1rem;
}

.aw-pain-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .5rem;
}

.aw-pain-card p {
  font-size: .88rem;
  line-height: 1.55;
  color: var(--wf-text-3);
}


/* ═══════════════════════════════════
   SOLUTION PIPELINE
   ═══════════════════════════════════ */
.aw-solution-section {
  background: var(--aw-surface);
  border-top: 1px solid var(--aw-border);
  border-bottom: 1px solid var(--aw-border);
}

.aw-pipeline {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  margin-top: 2.5rem;
  flex-wrap: wrap;
}

.aw-pipeline__step {
  text-align: center;
  max-width: 160px;
}

.aw-pipeline__icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: var(--aw-accent-dim);
  color: var(--aw-accent-light);
  font-size: 1.6rem;
  margin: 0 auto .8rem;
  border: 1px solid rgba(20, 184, 166, .15);
}

.aw-pipeline__step h3 {
  font-size: .95rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .35rem;
}

.aw-pipeline__step p {
  font-size: .8rem;
  line-height: 1.45;
  color: var(--wf-text-3);
}

.aw-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--aw-accent);
  font-size: 1.2rem;
  padding: 0 .6rem;
  margin-top: 1.2rem;
  opacity: .5;
}


/* ═══════════════════════════════════
   STUDIO GRID
   ═══════════════════════════════════ */
.aw-studio-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.aw-studio-card {
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  border-radius: 14px;
  padding: 1.8rem;
  transition: transform .35s, border-color .35s;
}
.aw-studio-card:hover {
  transform: translateY(-4px);
  border-color: var(--aw-accent);
}

.aw-studio-card > i {
  font-size: 1.5rem;
  color: var(--aw-accent-light);
  margin-bottom: .8rem;
  display: block;
}

.aw-studio-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .5rem;
}

.aw-studio-card p {
  font-size: .87rem;
  line-height: 1.55;
  color: var(--wf-text-3);
}


/* ═══════════════════════════════════
   "E MUITO MAIS..." BANNER
   ═══════════════════════════════════ */
.aw-more-banner {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 2rem;
  padding: 1.2rem 1.6rem;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(20, 184, 166, .08), rgba(20, 184, 166, .02));
  border: 1px dashed rgba(20, 184, 166, .22);
}

.aw-more-banner > i {
  font-size: 1.5rem;
  color: var(--aw-accent-light);
  flex-shrink: 0;
}

.aw-more-banner p {
  font-size: .88rem;
  line-height: 1.55;
  color: var(--wf-text-2);
}


/* ═══════════════════════════════════
   PIPELINE HIGHLIGHT (AUTOTESTE STEP)
   ═══════════════════════════════════ */
.aw-pipeline__step--highlight h3 {
  color: #facc15;
}

.aw-pipeline__icon--check {
  background: rgba(250, 204, 21, .12) !important;
  color: #facc15 !important;
  border-color: rgba(250, 204, 21, .2) !important;
  animation: aw-pulse-gold 2.5s ease-in-out infinite;
}

@keyframes aw-pulse-gold {
  0%, 100% { box-shadow: 0 0 0 0 rgba(250, 204, 21, .15); }
  50% { box-shadow: 0 0 20px 4px rgba(250, 204, 21, .12); }
}


/* ═══════════════════════════════════
   BROWSER FRAME (screenshots)
   ═══════════════════════════════════ */
.aw-browser-frame {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid var(--aw-border-2);
  background: #0c0c0e;
}

.aw-browser-frame__bar {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: .55rem 1rem;
  background: rgba(255, 255, 255, .04);
  border-bottom: 1px solid var(--aw-border);
}

.aw-browser-frame__dots {
  display: flex;
  gap: 5px;
}

.aw-browser-frame__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}
.aw-browser-frame__dot--r { background: #ef4444; }
.aw-browser-frame__dot--y { background: #eab308; }
.aw-browser-frame__dot--g { background: #22c55e; }

.aw-browser-frame__url {
  flex: 1;
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: .25rem .8rem;
  border-radius: 6px;
  background: rgba(255, 255, 255, .04);
  font-size: .72rem;
  color: var(--wf-text-3);
  font-family: monospace;
}

.aw-browser-frame img {
  display: block;
  width: 100%;
  height: auto;
}


/* ═══════════════════════════════════
   STUDIO SCREENSHOT
   ═══════════════════════════════════ */
.aw-studio-screenshot {
  margin-top: 2.5rem;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 40px rgba(0, 0, 0, .35), 0 0 60px rgba(20, 184, 166, .06);
}


/* ═══════════════════════════════════
   AUTOTESTE HIGHLIGHT
   ═══════════════════════════════════ */
.aw-autoteste {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items: center;
  margin-top: 3rem;
  padding: 2.5rem;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(250, 204, 21, .04), rgba(20, 184, 166, .04));
  border: 1px solid rgba(250, 204, 21, .15);
  position: relative;
  overflow: hidden;
}

.aw-autoteste::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background: rgba(250, 204, 21, .04);
  filter: blur(80px);
  pointer-events: none;
}

.aw-autoteste__visual {
  position: relative;
  z-index: 1;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 6px 30px rgba(0, 0, 0, .3);
}

.aw-autoteste__content {
  position: relative;
  z-index: 1;
}

.aw-autoteste__content h3 {
  font-family: var(--wf-font-heading);
  font-size: clamp(1.3rem, 2.5vw, 1.7rem);
  font-weight: 800;
  color: var(--wf-text-1);
  margin: .8rem 0;
  line-height: 1.3;
}

.aw-autoteste__content > p {
  font-size: .95rem;
  line-height: 1.65;
  color: var(--wf-text-2);
  margin-bottom: 1.2rem;
}

.aw-autoteste__list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.2rem;
  display: flex;
  flex-direction: column;
  gap: .65rem;
}

.aw-autoteste__list li {
  display: flex;
  gap: .6rem;
  align-items: flex-start;
  font-size: .88rem;
  line-height: 1.5;
  color: var(--wf-text-2);
}

.aw-autoteste__list li > i {
  color: #facc15;
  font-size: 1.1rem;
  margin-top: .1rem;
  flex-shrink: 0;
}

.aw-autoteste__list li strong {
  color: var(--wf-text-1);
}

.aw-autoteste__note {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .82rem;
  color: var(--wf-text-3);
  line-height: 1.5;
  padding: .8rem 1rem;
  border-radius: 8px;
  background: rgba(250, 204, 21, .06);
  border: 1px solid rgba(250, 204, 21, .1);
  margin-top: .4rem;
}

.aw-autoteste__note > i {
  color: #facc15;
  font-size: 1.1rem;
  flex-shrink: 0;
}


/* ═══════════════════════════════════
   CECI AVATAR (icon)
   ═══════════════════════════════════ */
.aw-ceci-avatar {
  width: 64px;
  height: 64px;
  border-radius: 16px;
  object-fit: contain;
  background: rgba(167, 139, 250, .08);
  border: 2px solid rgba(167, 139, 250, .2);
  padding: 6px;
  flex-shrink: 0;
  animation: aw-ceci-float 3s ease-in-out infinite;
}

@keyframes aw-ceci-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}


/* ═══════════════════════════════════
   CONFIG BLOCKS
   ═══════════════════════════════════ */
.aw-config-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.aw-config-block {
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  border-radius: 14px;
  padding: 1.8rem;
  transition: border-color .35s;
}
.aw-config-block:hover {
  border-color: var(--aw-accent);
}

.aw-config-block__header {
  display: flex;
  align-items: center;
  gap: .8rem;
  margin-bottom: 1rem;
}

.aw-config-block__header i {
  font-size: 1.3rem;
  color: var(--aw-accent-light);
}

.aw-config-block__header h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
}

.aw-config-block ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.aw-config-block ul li {
  position: relative;
  padding-left: 1.2rem;
  margin-bottom: .5rem;
  font-size: .87rem;
  line-height: 1.5;
  color: var(--wf-text-3);
}

.aw-config-block ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--aw-accent);
}


/* ═══════════════════════════════════
   CECI SECTION
   ═══════════════════════════════════ */
.aw-ceci-section {
  background: linear-gradient(180deg, transparent 0%, rgba(167, 139, 250, .03) 40%, rgba(167, 139, 250, .03) 60%, transparent 100%);
  border-top: 1px solid rgba(167, 139, 250, .08);
  border-bottom: 1px solid rgba(167, 139, 250, .08);
}

/* Activation block */
.aw-ceci-activate {
  margin-top: 2rem;
  margin-bottom: 2.5rem;
}

.aw-ceci-activate__header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.5rem 1.8rem;
  border-radius: 14px;
  background: var(--aw-ceci-accent-dim);
  border: 1px solid rgba(167, 139, 250, .15);
}

.aw-ceci-activate__header > i {
  font-size: 1.5rem;
  color: var(--aw-ceci-accent);
  margin-top: .15rem;
  flex-shrink: 0;
}

.aw-ceci-activate__header h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .4rem;
}

.aw-ceci-activate__header p {
  font-size: .9rem;
  line-height: 1.6;
  color: var(--wf-text-2);
}

/* Agents grid */
.aw-ceci-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}

.aw-ceci-card {
  background: rgba(167, 139, 250, .04);
  border: 1px solid rgba(167, 139, 250, .1);
  border-radius: 14px;
  padding: 1.6rem;
  transition: transform .35s, border-color .35s;
}
.aw-ceci-card:hover {
  transform: translateY(-4px);
  border-color: var(--aw-ceci-accent);
}

.aw-ceci-card--highlight {
  background: rgba(167, 139, 250, .08);
  border-color: rgba(167, 139, 250, .2);
}

.aw-ceci-card__badge {
  display: inline-block;
  padding: .2rem .6rem;
  border-radius: 6px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
  background: rgba(167, 139, 250, .12);
  color: var(--aw-ceci-accent);
  margin-bottom: .8rem;
  font-family: var(--wf-font-mono, monospace);
}

.aw-ceci-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .5rem;
}

.aw-ceci-card p {
  font-size: .87rem;
  line-height: 1.55;
  color: var(--wf-text-3);
  margin-bottom: .8rem;
}

.aw-ceci-card__example {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .78rem;
  color: var(--wf-text-3);
  opacity: .7;
}
.aw-ceci-card__example i {
  color: var(--aw-ceci-accent);
}

/* Benefits */
.aw-ceci-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem;
  margin-top: 2.5rem;
}

.aw-ceci-benefit {
  text-align: center;
  padding: 1.2rem;
  border-radius: 12px;
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
}

.aw-ceci-benefit i {
  font-size: 1.4rem;
  color: var(--aw-ceci-accent);
  display: block;
  margin-bottom: .5rem;
}

.aw-ceci-benefit strong {
  font-size: .88rem;
  color: var(--wf-text-1);
  display: block;
  margin-bottom: .3rem;
}

.aw-ceci-benefit p {
  font-size: .78rem;
  color: var(--wf-text-3);
  line-height: 1.4;
}


/* ═══════════════════════════════════════════════════════════════════════
   BPMN PROCESS DIAGRAM ILLUSTRATION (aw-bpmn-diag)
   Replicates atendcanais ac-jn design language with BPMN 2.0 notation.
   Horizontal swim lanes — Purchase Request flow.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Outer wrapper ── */
.aw-bpmn-diag {
  margin-top: 2rem;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 40px rgba(0, 0, 0, .35), 0 0 60px rgba(20, 184, 166, .06);
}

/* ── Browser chrome frame ── */
.aw-bpmn-frame {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .06);
  background: #0c0c0e;
}

.aw-bpmn-frame__bar {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: .55rem 1rem;
  background: rgba(255, 255, 255, .04);
  border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.aw-bpmn-frame__dots {
  display: flex;
  gap: 5px;
}

.aw-bpmn-frame__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}
.aw-bpmn-frame__dot--r { background: #ef4444; }
.aw-bpmn-frame__dot--y { background: #eab308; }
.aw-bpmn-frame__dot--g { background: #22c55e; }

.aw-bpmn-frame__url {
  flex: 1;
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: .25rem .8rem;
  border-radius: 6px;
  background: rgba(255, 255, 255, .04);
  font-size: .72rem;
  color: var(--wf-text-3);
  font-family: monospace;
}

.aw-bpmn-frame__actions {
  display: flex;
  align-items: center;
  gap: .5rem;
  color: var(--wf-text-3);
}

.aw-bpmn-frame__viewport {
  background: #08080b;
  overflow: hidden;
}

/* ── Live dot (animated green pulse) ── */
.aw-bpmn__live-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #10b981;
  display: inline-block;
  animation: aw-bpmn-pulse 2s ease-in-out infinite;
}

@keyframes aw-bpmn-pulse {
  0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(16, 185, 129, .4); }
  50% { opacity: .6; box-shadow: 0 0 0 4px rgba(16, 185, 129, 0); }
}

/* ── App inner layout (sidebar + main) ── */
.aw-bpmn-app {
  width: 100%;
  display: flex;
  background: #08080b;
  color: rgba(255, 255, 255, .7);
  font-size: .78rem;
  line-height: 1.45;
  overflow: hidden;
}

/* Sidebar */
.aw-bpmn-app__sidebar {
  width: 50px;
  min-width: 50px;
  background: rgba(255, 255, 255, .02);
  border-right: 1px solid rgba(255, 255, 255, .05);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: .65rem 0;
  gap: .5rem;
}

.aw-bpmn-app__logo {
  font-size: 1.2rem;
  color: var(--aw-accent-light);
  margin-bottom: .3rem;
  opacity: .8;
}

.aw-bpmn-app__nav {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .9rem;
  color: rgba(255, 255, 255, .25);
  transition: all 150ms ease;
}

.aw-bpmn-app__nav--active {
  background: rgba(20, 184, 166, .12);
  color: var(--aw-accent);
}

/* Main area */
.aw-bpmn-app__main {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

/* ── Topbar ── */
.aw-bpmn-app__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .45rem .8rem;
  border-bottom: 1px solid rgba(255, 255, 255, .05);
  flex-wrap: wrap;
  gap: .35rem;
}

.aw-bpmn-app__breadcrumb {
  font-size: .56rem;
  color: rgba(255, 255, 255, .3);
  white-space: nowrap;
}

.aw-bpmn-app__breadcrumb strong {
  color: rgba(255, 255, 255, .6);
}

.aw-bpmn-app__topbar-right {
  display: flex;
  align-items: center;
  gap: .4rem;
}

.aw-bpmn-app__pill {
  display: flex;
  align-items: center;
  gap: .22rem;
  padding: .15rem .5rem;
  border-radius: 5px;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .07);
  font-size: .5rem;
  color: rgba(255, 255, 255, .4);
}

.aw-bpmn-app__pill--live {
  background: rgba(16, 185, 129, .08);
  border-color: rgba(16, 185, 129, .15);
  color: #10b981;
}

/* ── BPMN Canvas (dot-grid background) ── */
.aw-bpmn-canvas {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: .9rem 1.2rem .5rem;
  gap: 0;
  overflow-x: auto;
  background:
    radial-gradient(circle at 1px 1px, rgba(255, 255, 255, .02) 1px, transparent 0);
  background-size: 22px 22px;
}

/* ── Pool header bar (BPMN Pool label) ── */
.aw-bpmn-pool-header {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .52rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: rgba(255, 255, 255, .45);
  padding: .42rem .65rem;
  border: 1px solid rgba(255, 255, 255, .08);
  border-bottom: none;
  border-radius: 8px 8px 0 0;
  background: rgba(20, 184, 166, .04);
}

/* ── Swim Lane (horizontal row) ── */
.aw-bpmn-layer {
  display: flex;
  align-items: center;
  gap: .7rem;
  border: 1px solid rgba(255, 255, 255, .07);
  border-top: none;
  min-height: 86px;
}

.aw-bpmn-layer:last-of-type {
  border-radius: 0 0 8px 8px;
}

/* ── Lane label (rotated, on the left side) ── */
.aw-bpmn-layer__label {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
  font-size: .46rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: rgba(255, 255, 255, .22);
  min-width: 22px;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, .06);
  padding: .5rem 0;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  user-select: none;
  background: rgba(255, 255, 255, .01);
}

/* ── Lane flow content (horizontal elements) ── */
.aw-bpmn-layer__content {
  flex: 1;
  display: flex;
  align-items: center;
  gap: .42rem;
  min-width: 0;
  padding: .55rem .6rem;
}

/* ── Horizontal arrow — Sequence Flow ── */
.aw-bpmn-harrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  min-width: 26px;
  flex-shrink: 0;
}

.aw-bpmn-harrow span {
  display: block;
  width: 100%;
  height: 1.5px;
  background: linear-gradient(90deg, rgba(20, 184, 166, .6), rgba(20, 184, 166, .2));
  position: relative;
}

.aw-bpmn-harrow span::after {
  content: '';
  position: absolute;
  right: -1px;
  top: 50%;
  transform: translateY(-50%);
  border: 3.5px solid transparent;
  border-left: 5px solid rgba(20, 184, 166, .7);
}

.aw-bpmn-harrow span::before {
  content: '';
  position: absolute;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--aw-accent-light);
  transform: translateY(-50%);
  opacity: 0;
  animation: aw-bpmn-dot 2.5s ease-in-out infinite;
}

/* Faded arrow (cross-lane flow indicator) */
.aw-bpmn-harrow--fade span {
  background: linear-gradient(90deg, rgba(245, 158, 11, .45), rgba(245, 158, 11, .1));
  opacity: .7;
}

.aw-bpmn-harrow--fade span::after {
  border-left-color: rgba(245, 158, 11, .55);
}

.aw-bpmn-harrow--fade span::before {
  background: #f59e0b;
  animation-delay: 1s;
}

@keyframes aw-bpmn-dot {
  0%   { left: 0; opacity: 0; }
  15%  { opacity: 1; }
  85%  { opacity: 1; }
  100% { left: calc(100% - 5px); opacity: 0; }
}

/* ── Vertical arrow — Cross-lane Sequence Flow ── */
.aw-bpmn-varrow {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 26px;
  position: relative;
  margin-left: 22px;
}

.aw-bpmn-varrow span {
  display: block;
  width: 1.5px;
  height: 100%;
  background: linear-gradient(180deg, rgba(20, 184, 166, .5), rgba(99, 102, 241, .3));
  position: relative;
}

.aw-bpmn-varrow span::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -1px;
  transform: translateX(-50%);
  border: 3.5px solid transparent;
  border-top: 5px solid rgba(99, 102, 241, .55);
}

.aw-bpmn-varrow--approve {
  height: 26px;
}

.aw-bpmn-varrow--cross {
  margin-left: calc(22px - 450px);
}

.aw-bpmn-varrow--cross span {
  background: linear-gradient(180deg, rgba(20, 184, 166, .7), rgba(20, 184, 166, .4));
}

.aw-bpmn-varrow--cross span::after {
  border-top-color: rgba(20, 184, 166, .75);
}

.aw-bpmn-varrow--cross .aw-bpmn-varrow__label {
  left: calc(50% - 92px);
}

.aw-bpmn-varrow__label {
  position: absolute;
  left: calc(50% + 8px);
  top: 50%;
  transform: translateY(-50%);
  font-size: .42rem;
  font-weight: 700;
  color: rgba(20, 184, 166, .65);
  white-space: nowrap;
}

/* ── BPMN Start Event (círculo fino — None Start Event) ── */
.aw-bpmn-event {
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.aw-bpmn-event--start {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2px solid var(--aw-accent);
  background: rgba(20, 184, 166, .07);
}

/* ── BPMN End Event (círculo grosso — Terminate End Event) ── */
.aw-bpmn-event--end {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 4px solid #f43f5e;
  background: rgba(244, 63, 94, .08);
}

/* Event label (below the circle) */
.aw-bpmn-event__lbl {
  font-size: .44rem;
  font-weight: 700;
  color: rgba(255, 255, 255, .4);
  text-align: center;
  white-space: nowrap;
  position: absolute;
  top: calc(100% + 4px);
  left: 50%;
  transform: translateX(-50%);
}

/* ── BPMN Task (User Task — rounded rectangle) ── */
.aw-bpmn-task {
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: .42rem .52rem;
  background: rgba(255, 255, 255, .03);
  border: 1px solid rgba(20, 184, 166, .35);
  border-radius: 10px;
  white-space: nowrap;
  flex-shrink: 0;
  min-width: 148px;
  transition: all 200ms ease;
}

.aw-bpmn-task:hover {
  border-color: rgba(20, 184, 166, .65);
  background: rgba(255, 255, 255, .05);
  transform: translateY(-1px);
  box-shadow: 0 3px 14px rgba(0, 0, 0, .2);
}

/* Task colour variants */
.aw-bpmn-task--warn {
  border-color: rgba(245, 158, 11, .38);
  background: rgba(245, 158, 11, .04);
}
.aw-bpmn-task--warn:hover { border-color: rgba(245, 158, 11, .65); }

.aw-bpmn-task--success {
  border-color: rgba(16, 185, 129, .38);
  background: rgba(16, 185, 129, .04);
}
.aw-bpmn-task--success:hover { border-color: rgba(16, 185, 129, .65); }

.aw-bpmn-task--violet {
  border-color: rgba(167, 139, 250, .38);
  background: rgba(167, 139, 250, .04);
}
.aw-bpmn-task--violet:hover { border-color: rgba(167, 139, 250, .65); }

.aw-bpmn-task--indigo {
  border-color: rgba(99, 102, 241, .38);
  background: rgba(99, 102, 241, .04);
}
.aw-bpmn-task--indigo:hover { border-color: rgba(99, 102, 241, .65); }

/* Task icon badge */
.aw-bpmn-task__icon {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .88rem;
  flex-shrink: 0;
}

.aw-bpmn-task__icon--teal   { background: rgba(20, 184, 166, .12);  color: var(--aw-accent-light); }
.aw-bpmn-task__icon--amber  { background: rgba(245, 158, 11, .12);  color: #f59e0b; }
.aw-bpmn-task__icon--green  { background: rgba(16, 185, 129, .12);  color: #10b981; }
.aw-bpmn-task__icon--violet { background: rgba(167, 139, 250, .12); color: #a78bfa; }
.aw-bpmn-task__icon--indigo { background: rgba(99, 102, 241, .12);  color: #818cf8; }

/* Task text */
.aw-bpmn-task__body {
  display: flex;
  flex-direction: column;
  gap: .1rem;
}

.aw-bpmn-task__name {
  font-size: .62rem;
  font-weight: 700;
  color: rgba(255, 255, 255, .82);
}

.aw-bpmn-task__sub {
  font-size: .5rem;
  color: rgba(255, 255, 255, .35);
  line-height: 1.3;
}

.aw-bpmn-task__notify {
  display: flex;
  align-items: center;
  gap: .25rem;
  margin-top: .2rem;
  font-size: .45rem;
  font-weight: 600;
  color: rgba(20, 184, 166, .85);
  white-space: nowrap;
}

.aw-bpmn-task__notify i {
  font-size: .55rem;
}

/* ── BPMN Exclusive Gateway XOR (losango com ✕) ── */
.aw-bpmn-gateway {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .32rem;
  flex-shrink: 0;
  position: relative;
}

.aw-bpmn-gateway__shape {
  width: 42px;
  height: 42px;
  transform: rotate(45deg);
  border: 1.5px solid rgba(250, 204, 21, .85);
  background: rgba(250, 204, 21, .09);
  flex-shrink: 0;
  position: relative;
}

/* ✕ cross inside the diamond */
.aw-bpmn-gateway__shape::before,
.aw-bpmn-gateway__shape::after {
  content: '';
  position: absolute;
  background: rgba(250, 204, 21, .9);
  left: 50%;
  top: 50%;
}

.aw-bpmn-gateway__shape::before {
  width: 15px;
  height: 2px;
  transform: translate(-50%, -50%) rotate(45deg);
}

.aw-bpmn-gateway__shape::after {
  width: 15px;
  height: 2px;
  transform: translate(-50%, -50%) rotate(-45deg);
}

.aw-bpmn-gateway__label {
  font-size: .48rem;
  font-weight: 700;
  color: rgba(250, 204, 21, .85);
  white-space: nowrap;
  margin-top: .1rem;
}

/* ── Branch outcome labels (Sim / Não) ── */
.aw-bpmn-fork {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  margin-left: .35rem;
}

.aw-bpmn-fork__yes,
.aw-bpmn-fork__no {
  display: flex;
  align-items: center;
  gap: .3rem;
  font-size: .7rem;
  font-weight: 700;
}

.aw-bpmn-fork__yes { color: rgba(16, 185, 129, .85); }
.aw-bpmn-fork__no  { color: rgba(245, 158, 11, .85); }

/* animated fork arrows */
.aw-bpmn-fork__arrow {
  display: inline-block;
  position: relative;
  width: 1.5px;
  height: 18px;
  border-radius: 1px;
}

.aw-bpmn-fork__arrow--down {
  background: linear-gradient(180deg, rgba(16, 185, 129, .7), rgba(16, 185, 129, .2));
}
.aw-bpmn-fork__arrow--down::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-top: 6px solid rgba(16, 185, 129, .85);
}
.aw-bpmn-fork__arrow--down::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(16, 185, 129, .9);
  opacity: 0;
  animation: aw-fork-dot-down 2.2s ease-in-out infinite;
}

.aw-bpmn-fork__arrow--up {
  background: linear-gradient(0deg, rgba(245, 158, 11, .7), rgba(245, 158, 11, .2));
}
.aw-bpmn-fork__arrow--up::after {
  content: '';
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-bottom: 6px solid rgba(245, 158, 11, .85);
}
.aw-bpmn-fork__arrow--up::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(245, 158, 11, .9);
  opacity: 0;
  animation: aw-fork-dot-up 2.2s ease-in-out infinite 1.1s;
}

@keyframes aw-fork-dot-down {
  0%   { top: 0;           opacity: 0; }
  15%  { opacity: 1; }
  85%  { opacity: 1; }
  100% { top: calc(100% - 5px); opacity: 0; }
}

@keyframes aw-fork-dot-up {
  0%   { bottom: 0;           opacity: 0; }
  15%  { opacity: 1; }
  85%  { opacity: 1; }
  100% { bottom: calc(100% - 5px); opacity: 0; }
}

/* ── Spacers (visual alignment helpers between lanes) ── */
.aw-bpmn-spacer {
  display: block;
  height: 1px;
  opacity: 0;
  flex-shrink: 0;
}

.aw-bpmn-spacer--xl  { width: 178px; }
.aw-bpmn-spacer--xxl { width: 382px; }

/* ── Security bar (bottom of canvas) ── */
.aw-bpmn-app__security {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding: .42rem .8rem;
  background: rgba(20, 184, 166, .03);
  border-top: 1px solid rgba(20, 184, 166, .08);
  font-size: .5rem;
  color: rgba(255, 255, 255, .4);
}

.aw-bpmn-app__security span {
  display: flex;
  align-items: center;
  gap: .25rem;
}

/* ── Statusbar ── */
.aw-bpmn-app__statusbar {
  display: flex;
  align-items: center;
  gap: .9rem;
  padding: .38rem .8rem;
  background: rgba(255, 255, 255, .015);
  border-top: 1px solid rgba(255, 255, 255, .04);
  font-size: .52rem;
  color: rgba(255, 255, 255, .3);
}

.aw-bpmn-app__statusbar span {
  display: flex;
  align-items: center;
  gap: .25rem;
}

.aw-bpmn-app__statusbar-right {
  margin-left: auto;
}


/* ═══════════════════════════════════
   GOVERNANCE GRID
   ═══════════════════════════════════ */
.aw-gov-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.aw-gov-card {
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  border-radius: 14px;
  padding: 1.8rem;
  transition: transform .35s, border-color .35s;
}
.aw-gov-card:hover {
  transform: translateY(-4px);
  border-color: var(--aw-accent);
}

.aw-gov-card > i {
  font-size: 1.5rem;
  color: var(--aw-accent-light);
  display: block;
  margin-bottom: .8rem;
}

.aw-gov-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .5rem;
}

.aw-gov-card p {
  font-size: .87rem;
  line-height: 1.55;
  color: var(--wf-text-3);
}


/* ═══════════════════════════════════
   AUDIENCE
   ═══════════════════════════════════ */
.aw-audience {
  display: flex;
  gap: 1.5rem;
  margin-top: 2.5rem;
  flex-wrap: wrap;
  justify-content: center;
}

.aw-audience__card {
  flex: 1 1 180px;
  max-width: 200px;
  text-align: center;
  padding: 1.5rem 1rem;
  border-radius: 14px;
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  transition: transform .35s, border-color .35s;
}
.aw-audience__card:hover {
  transform: translateY(-4px);
  border-color: var(--aw-accent);
}

.aw-audience__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: var(--aw-accent-dim);
  color: var(--aw-accent-light);
  font-size: 1.3rem;
  margin: 0 auto .8rem;
}

.aw-audience__card h3 {
  font-size: .92rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .4rem;
}

.aw-audience__card p {
  font-size: .8rem;
  line-height: 1.5;
  color: var(--wf-text-3);
}


/* ═══════════════════════════════════
   CASES DE USO
   ═══════════════════════════════════ */
.aw-cases {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.2rem;
  margin-top: 2.5rem;
}

.aw-case-card {
  position: relative;
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  border-radius: 14px;
  padding: 1.6rem;
  text-decoration: none;
  transition: transform .35s, border-color .35s;
  display: block;
}
a.aw-case-card:hover {
  transform: translateY(-4px);
  border-color: var(--aw-accent);
}

.aw-case-card__icon {
  font-size: 1.4rem;
  color: var(--aw-accent-light);
  margin-bottom: .8rem;
}

.aw-case-card h3 {
  font-size: .95rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .4rem;
}

.aw-case-card p {
  font-size: .82rem;
  line-height: 1.5;
  color: var(--wf-text-3);
}

.aw-case-card__tag {
  display: inline-block;
  margin-top: .6rem;
  padding: .15rem .55rem;
  border-radius: 5px;
  font-size: .7rem;
  font-weight: 600;
  background: var(--aw-accent-dim);
  color: var(--aw-accent-light);
}


/* ═══════════════════════════════════
   DIFERENCIAIS
   ═══════════════════════════════════ */
.aw-diff-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.aw-diff-card {
  text-align: center;
  padding: 2rem 1.5rem;
  border-radius: 14px;
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  transition: transform .35s, border-color .35s;
}
.aw-diff-card:hover {
  transform: translateY(-4px);
  border-color: var(--aw-accent);
}

.aw-diff-card__icon {
  width: 54px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: var(--aw-accent-dim);
  color: var(--aw-accent-light);
  font-size: 1.5rem;
  margin: 0 auto .8rem;
}

.aw-diff-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin-bottom: .4rem;
}

.aw-diff-card p {
  font-size: .85rem;
  line-height: 1.5;
  color: var(--wf-text-3);
}


/* ═══════════════════════════════════
   VERSUS — COMPARATIVO
   ═══════════════════════════════════ */
.aw-versus-section {
  position: relative;
}

.aw-versus {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  margin-top: 3rem;
}

.aw-versus__col {
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--aw-border);
}

.aw-versus__col--market {
  background: rgba(239, 68, 68, .03);
  border-color: rgba(239, 68, 68, .12);
}

.aw-versus__col--wf {
  background: rgba(20, 184, 166, .03);
  border-color: rgba(20, 184, 166, .15);
  box-shadow: 0 0 60px rgba(20, 184, 166, .06);
}

.aw-versus__col-header {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: 1.4rem 1.8rem;
  font-size: 1rem;
}

.aw-versus__col-header i {
  font-size: 1.5rem;
}

.aw-versus__col-header h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--wf-text-1);
  margin: 0;
}

.aw-versus__col-header--market {
  background: rgba(239, 68, 68, .06);
  border-bottom: 1px solid rgba(239, 68, 68, .10);
}
.aw-versus__col-header--market i {
  color: #f87171;
}

.aw-versus__col-header--wf {
  background: rgba(20, 184, 166, .08);
  border-bottom: 1px solid rgba(20, 184, 166, .12);
}
.aw-versus__col-header--wf i {
  color: var(--aw-accent-light);
}

.aw-versus__list {
  list-style: none;
  padding: .8rem 1.8rem 1.8rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .1rem;
}

.aw-versus__item {
  display: flex;
  gap: .9rem;
  padding: .85rem 0;
  border-bottom: 1px solid var(--aw-border);
  align-items: flex-start;
}
.aw-versus__item:last-child {
  border-bottom: none;
}

.aw-versus__item > i {
  font-size: 1.3rem;
  flex-shrink: 0;
  margin-top: .1rem;
}

.aw-versus__item--bad > i {
  color: #f87171;
}

.aw-versus__item--good > i {
  color: var(--aw-accent-light);
}

.aw-versus__item strong {
  display: block;
  font-size: .92rem;
  font-weight: 700;
  color: var(--wf-text-1);
  line-height: 1.3;
  margin-bottom: .2rem;
}

.aw-versus__item span {
  font-size: .82rem;
  color: var(--wf-text-3);
  line-height: 1.55;
}


/* ── Parceiros & Integrações ── */
.aw-versus-partners {
  margin-top: 3rem;
  border-radius: 18px;
  padding: 2.5rem;
  background: linear-gradient(135deg, rgba(20, 184, 166, .04), rgba(167, 139, 250, .04));
  border: 1px solid var(--aw-border);
}

.aw-versus-partners__header {
  text-align: center;
  margin-bottom: 2rem;
}

.aw-versus-partners__header > i {
  font-size: 2rem;
  color: var(--aw-accent-light);
  margin-bottom: .5rem;
  display: block;
}

.aw-versus-partners__header h3 {
  font-family: var(--wf-font-heading);
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--wf-text-1);
  margin-bottom: .5rem;
}

.aw-versus-partners__header p {
  font-size: .95rem;
  color: var(--wf-text-2);
  max-width: 540px;
  margin: 0 auto;
  line-height: 1.6;
}

.aw-versus-partners__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem;
}

.aw-versus-partner {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  padding: 1.3rem;
  border-radius: 12px;
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  transition: transform .3s, border-color .3s;
}
.aw-versus-partner:hover {
  transform: translateY(-3px);
  border-color: var(--aw-accent);
}

.aw-versus-partner > i {
  font-size: 1.6rem;
  color: var(--aw-accent-light);
  margin-bottom: .3rem;
}

.aw-versus-partner strong {
  font-size: .9rem;
  font-weight: 700;
  color: var(--wf-text-1);
}

.aw-versus-partner span {
  font-size: .78rem;
  color: var(--wf-text-3);
  line-height: 1.5;
}


/* ── CTA Comparativo ── */
.aw-versus-cta {
  margin-top: 3rem;
  border-radius: 18px;
  padding: 3rem 2.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(20, 184, 166, .08), rgba(99, 102, 241, .08));
  border: 1px solid rgba(20, 184, 166, .15);
}

.aw-versus-cta__content {
  position: relative;
  z-index: 2;
}

.aw-versus-cta h3 {
  font-family: var(--wf-font-heading);
  font-size: clamp(1.4rem, 2.5vw, 1.9rem);
  font-weight: 800;
  color: var(--wf-text-1);
  margin-bottom: .8rem;
}

.aw-versus-cta p {
  font-size: 1rem;
  color: var(--wf-text-2);
  max-width: 580px;
  margin: 0 auto 1.8rem;
  line-height: 1.65;
}

.aw-versus-cta__actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}


/* ═══════════════════════════════════
   TESTIMONIALS
   ═══════════════════════════════════ */
.aw-testimonials {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.aw-testimonial {
  position: relative;
  background: var(--aw-surface-2);
  border: 1px solid var(--aw-border);
  border-radius: 14px;
  padding: 2rem 1.8rem;
}

.aw-testimonial__quote-icon {
  font-size: 1.6rem;
  color: var(--aw-accent);
  opacity: .4;
  display: block;
  margin-bottom: .8rem;
}

.aw-testimonial p {
  font-size: .92rem;
  line-height: 1.65;
  color: var(--wf-text-2);
  font-style: italic;
}


/* ═══════════════════════════════════
   FAQ
   ═══════════════════════════════════ */
.aw-faq {
  max-width: 720px;
  margin: 2.5rem auto 0;
}

.aw-faq__item {
  border-bottom: 1px solid var(--aw-border);
}
.aw-faq__item:last-child {
  border-bottom: none;
}

.aw-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: 1.2rem 0;
  font-size: .95rem;
  font-weight: 600;
  color: var(--wf-text-1);
  list-style: none;
  gap: 1rem;
}
.aw-faq__question::-webkit-details-marker { display: none; }

.aw-faq__chevron {
  font-size: 1rem;
  color: var(--aw-accent);
  transition: transform .3s;
  flex-shrink: 0;
}

.aw-faq__item[open] .aw-faq__chevron {
  transform: rotate(180deg);
}

.aw-faq__answer {
  padding-bottom: 1.2rem;
}

.aw-faq__answer p {
  font-size: .9rem;
  line-height: 1.65;
  color: var(--wf-text-2);
}


/* ═══════════════════════════════════
   CTA
   ═══════════════════════════════════ */
.aw-cta {
  position: relative;
  text-align: center;
  padding: 4rem 2rem;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(20, 184, 166, .06), rgba(167, 139, 250, .06));
  border: 1px solid var(--aw-border);
}

.aw-cta__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.aw-cta__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
}
.aw-cta__orb--1 { width: 350px; height: 350px; background: rgba(20, 184, 166, .12); top: -40%; right: -10%; }
.aw-cta__orb--2 { width: 300px; height: 300px; background: rgba(167, 139, 250, .08); bottom: -30%; left: -5%; }

.aw-cta__content {
  position: relative;
  z-index: 2;
}

.aw-cta__title {
  font-family: var(--wf-font-heading);
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 800;
  color: var(--wf-text-1);
  margin-bottom: 1rem;
}

.aw-cta__desc {
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--wf-text-2);
  max-width: 640px;
  margin: 0 auto 2rem;
}

.aw-cta__actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

.aw-cta__note {
  font-size: .78rem;
  color: var(--wf-text-3);
  margin-top: 1.5rem;
}


/* ═══════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════ */
@media (max-width: 1024px) {
  .aw-pain-grid,
  .aw-studio-grid,
  .aw-gov-grid,
  .aw-diff-grid,
  .aw-testimonials,
  .aw-ceci-benefits {
    grid-template-columns: repeat(2, 1fr);
  }

  .aw-cases {
    grid-template-columns: repeat(2, 1fr);
  }

  .aw-ceci-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .aw-pipeline__arrow { display: none; }
  .aw-pipeline {
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
  }
  .aw-pipeline__step { max-width: 280px; }

  .aw-versus {
    grid-template-columns: 1fr;
  }

  .aw-versus-partners__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .aw-autoteste {
    grid-template-columns: 1fr;
  }

  /* BPMN diagram */
  .aw-bpmn-app__sidebar { display: none; }
  .aw-bpmn-app__security { gap: .8rem; flex-wrap: wrap; justify-content: flex-start; padding: .55rem .8rem; }
}

@media (max-width: 640px) {
  .aw-hero { min-height: auto; padding: 7rem 0 3rem; }
  .aw-hero__title { font-size: 1.8rem; }

  .aw-pain-grid,
  .aw-studio-grid,
  .aw-gov-grid,
  .aw-diff-grid,
  .aw-testimonials,
  .aw-ceci-benefits,
  .aw-config-grid,
  .aw-ceci-grid,
  .aw-cases {
    grid-template-columns: 1fr;
  }

  .aw-audience {
    flex-direction: column;
    align-items: center;
  }
  .aw-audience__card { max-width: 100%; }

  .aw-kpi-strip { flex-direction: column; gap: 1.5rem; }
  .aw-kpi-strip__sep { width: 60px; height: 1px; }

  .aw-hero__ctas { flex-direction: column; align-items: center; }
  .aw-cta__actions { flex-direction: column; align-items: center; }

  .aw-versus-partners__grid {
    grid-template-columns: 1fr;
  }

  .aw-versus-partners {
    padding: 1.5rem;
  }

  .aw-versus-cta {
    padding: 2rem 1.5rem;
  }

  .aw-versus__list {
    padding: .5rem 1.2rem 1.2rem;
  }

  .aw-versus-cta__actions {
    flex-direction: column;
    align-items: center;
  }

  .aw-autoteste {
    padding: 1.5rem;
    gap: 1.5rem;
  }

  .aw-ceci-avatar {
    width: 48px;
    height: 48px;
    border-radius: 12px;
  }

  /* BPMN diagram */
  .aw-bpmn-layer__label { display: none; }
  .aw-bpmn-app__breadcrumb { display: none; }
  .aw-bpmn-app__security { flex-direction: column; gap: .3rem; align-items: flex-start; }
  .aw-bpmn-varrow__label { display: none; }
}
