/* =========================================================
   AULA 01 — ABERTURA DE IMPACTO PRO
   Polimento visual/pedagógico do bloco inicial da aula
   ========================================================= */

#abertura.abertura-pro {
  position: relative;
  overflow: hidden;
  border-color: rgba(56, 189, 248, 0.28);
  background:
    radial-gradient(circle at top right, rgba(56, 189, 248, 0.13), transparent 34%),
    radial-gradient(circle at bottom left, rgba(34, 197, 94, 0.08), transparent 30%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(2, 6, 23, 0.94));
}

#abertura.abertura-pro::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(56, 189, 248, 0.08), transparent 30%, rgba(247, 201, 72, 0.06));
  pointer-events: none;
}

#abertura .abertura-pro-inner {
  position: relative;
  z-index: 1;
}

#abertura .abertura-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(56, 189, 248, 0.28);
  background: rgba(56, 189, 248, 0.08);
  color: #67e8f9;
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

#abertura .abertura-title {
  max-width: 820px;
  margin: 0 0 14px;
  font-size: clamp(2rem, 5vw, 4.2rem);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

#abertura .abertura-title span {
  color: #38bdf8;
  text-shadow: 0 0 24px rgba(56, 189, 248, 0.16);
}

#abertura .abertura-lead {
  max-width: 900px;
  margin: 0;
  color: #dbeafe;
  font-size: clamp(1rem, 1.7vw, 1.22rem);
  line-height: 1.75;
}

#abertura .abertura-focus {
  margin-top: 22px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

#abertura .abertura-focus-card {
  border: 1px solid rgba(56, 189, 248, 0.18);
  border-radius: 18px;
  padding: 18px;
  background: rgba(2, 6, 23, 0.55);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02);
}

#abertura .abertura-focus-card strong {
  display: block;
  margin-bottom: 8px;
  color: #7dd3fc;
  font-size: 1rem;
}

#abertura .abertura-focus-card p {
  margin: 0;
  color: #cbd5e1;
  line-height: 1.6;
}

#abertura .abertura-master-note {
  margin-top: 22px;
  border: 1px solid rgba(247, 201, 72, 0.28);
  border-left: 4px solid rgba(247, 201, 72, 0.86);
  border-radius: 18px;
  padding: 18px;
  background:
    radial-gradient(circle at top right, rgba(247, 201, 72, 0.12), transparent 35%),
    rgba(247, 201, 72, 0.06);
}

#abertura .abertura-master-note strong {
  display: block;
  margin-bottom: 8px;
  color: #fde68a;
}

#abertura .abertura-master-note p {
  margin: 0;
  color: #fff7ed;
}

#abertura .abertura-promise {
  margin-top: 22px;
  border: 1px solid rgba(34, 197, 94, 0.32);
  border-radius: 20px;
  padding: 20px;
  background:
    linear-gradient(180deg, rgba(5, 46, 36, 0.42), rgba(3, 30, 27, 0.5));
  box-shadow: 0 16px 36px rgba(0, 45, 40, 0.16);
}

#abertura .abertura-promise strong {
  display: block;
  margin-bottom: 8px;
  color: #bbf7d0;
}

#abertura .abertura-promise p {
  margin: 0;
  color: #dcfce7;
}

@media (max-width: 860px) {
  #abertura .abertura-focus {
    grid-template-columns: 1fr;
  }

  #abertura .abertura-title {
    font-size: clamp(2rem, 10vw, 3.2rem);
  }
}

/* =========================================================
   AULA 01 — ABERTURA DE IMPACTO PRO
   POLIMENTO FINAL 10/10
   ========================================================= */

/* Corrige quebras e espaçamentos estranhos em textos normais */
#abertura.abertura-pro,
#abertura.abertura-pro p,
#abertura.abertura-pro strong,
#abertura.abertura-pro article,
#abertura.abertura-pro div {
  word-spacing: normal !important;
  letter-spacing: normal;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* Mantém letter spacing apenas no selo */
#abertura .abertura-kicker {
  letter-spacing: 0.12em !important;
}

/* Título mais premium sem exagero */
#abertura .abertura-title span {
  color: #38bdf8;
  background: linear-gradient(135deg, #67e8f9, #38bdf8, #2563eb);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 28px rgba(56, 189, 248, 0.18);
}

/* Melhor leitura do parágrafo principal */
#abertura .abertura-lead {
  max-width: 980px;
  color: #e0f2fe;
  line-height: 1.85;
}

/* Cards dos três pilares com acabamento mais forte */
#abertura .abertura-focus-card {
  position: relative;
  overflow: hidden;
  min-height: 126px;
  border-color: rgba(56, 189, 248, 0.26);
  background:
    radial-gradient(circle at top right, rgba(56, 189, 248, 0.08), transparent 38%),
    rgba(2, 6, 23, 0.62);
  transition:
    transform 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease;
}

#abertura .abertura-focus-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.025);
}

#abertura .abertura-focus-card:hover {
  transform: translateY(-2px);
  border-color: rgba(56, 189, 248, 0.42);
  box-shadow: 0 16px 34px rgba(0, 20, 60, 0.22);
}

#abertura .abertura-focus-card strong {
  color: #7dd3fc;
  font-size: 1.02rem;
  letter-spacing: 0.01em;
}

#abertura .abertura-focus-card p {
  color: #dbeafe;
  font-size: 0.98rem;
}

/* Card amarelo mais premium */
#abertura .abertura-master-note {
  position: relative;
  border-color: rgba(247, 201, 72, 0.38);
  border-left: 5px solid rgba(247, 201, 72, 0.95);
  background:
    radial-gradient(circle at top right, rgba(247, 201, 72, 0.15), transparent 36%),
    linear-gradient(180deg, rgba(247, 201, 72, 0.09), rgba(120, 80, 10, 0.08));
  box-shadow: 0 16px 34px rgba(120, 80, 10, 0.12);
}

#abertura .abertura-master-note strong {
  color: #fde68a;
  font-size: 1rem;
}

#abertura .abertura-master-note p {
  color: #fff7ed;
  line-height: 1.75;
}

/* Promessa da aula mais elegante */
#abertura .abertura-promise {
  border-color: rgba(34, 197, 94, 0.42);
  background:
    radial-gradient(circle at top right, rgba(34, 197, 94, 0.13), transparent 34%),
    linear-gradient(180deg, rgba(5, 46, 36, 0.48), rgba(3, 30, 27, 0.58));
}

#abertura .abertura-promise strong {
  color: #bbf7d0;
  font-size: 1rem;
}

#abertura .abertura-promise p {
  color: #eafff2;
  line-height: 1.75;
}

/* Mobile: mantém leitura limpa */
@media (max-width: 860px) {
  #abertura.abertura-pro {
    padding: 22px !important;
  }

  #abertura .abertura-focus-card {
    min-height: auto;
  }

  #abertura .abertura-lead,
  #abertura .abertura-focus-card p,
  #abertura .abertura-master-note p,
  #abertura .abertura-promise p {
    font-size: 0.98rem;
    line-height: 1.7;
  }
}
