/* CAP — Ciclo de Aceleração Profissional
   Estilos exclusivos desta LP. float, fbob, pip e [data-reveal] já estão em amalia.css. */

:root {
  --cap-red: #E8334A;
  --cap-cyan: #22D3EE;
  --cap-amber: #F59E0B;
  --cap-bg: #05060A;
}

/* Fontes utilitárias (aliases para Tailwind font-display/font-mono não funcionarem) */
.cap-font-display { font-family: 'Space Grotesk', system-ui, sans-serif; }
.cap-font-mono    { font-family: 'Fira Code', ui-monospace, monospace; }

/* Divider horizontal sutil */
.hr-soft {
  height: 1px;
  border: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.09), transparent);
}

/* Pulse ring (para eventual uso em badges de status) */
@keyframes pulseRing {
  0%   { transform: scale(.95); opacity: .6; }
  50%  { transform: scale(1.15); opacity: 0; }
  100% { transform: scale(.95); opacity: 0; }
}

/* FAQ — accordion nativo com animação */
details.faq > summary {
  list-style: none;
  cursor: pointer;
}
details.faq > summary::-webkit-details-marker {
  display: none;
}
details.faq .faq-icon {
  transition: transform .2s ease;
}
details.faq[open] .faq-icon {
  transform: rotate(45deg);
}
details.faq[open] .faq-body {
  animation: faqSlide .25s ease;
}

@keyframes faqSlide {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: none; }
}

/* Hero donut — 4 segmentos, um por encontro */
.donut-segment {
  fill: none;
  stroke-width: 10;
  stroke-linecap: round;
  stroke-dasharray: 0 314.15;
  animation: fillDonut 1.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

@keyframes fillDonut {
  to { stroke-dasharray: 60 254.15; }
}

/* Hero progress bars — preenchimento neon com flicker CRT */
.cap-neon-bar {
  height: 100%;
  width: 0%;
  border-radius: inherit;
  animation: neonBarFill 1.1s ease-out both;
}

@keyframes neonBarFill {
  from { width: 0%; }
  to   { width: 100%; }
}

/* Amália — animação de revisão de aplicação */
@keyframes capScan {
  0%   { top: -10%; opacity: 0; }
  10%  { opacity: 1; }
  90%  { opacity: 1; }
  100% { top: 110%; opacity: 0; }
}
.cap-scanner {
  position: absolute;
  animation: capScan 3s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

@keyframes capShimmer {
  0%   { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
.cap-shimmer {
  position: relative;
  overflow: hidden;
}
.cap-shimmer::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(167, 139, 250, 0.10), transparent);
  animation: capShimmer 2s infinite;
}
