/* ============================================================
   Ápice Escola – Non-critical CSS (carregado diferido)
   ============================================================ */

/* Scrollbar sutil */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Foco acessível */
:focus-visible {
  outline: 3px solid var(--orange);
  outline-offset: 3px;
  border-radius: 4px;
}

/* Skip link (acessibilidade) */
.skip-link {
  position: absolute;
  top: -100%;
  left: 1rem;
  background: var(--orange);
  color: #fff;
  padding: .5rem 1rem;
  border-radius: 0 0 .5rem .5rem;
  font-weight: 700;
  font-size: .875rem;
  z-index: 9999;
  transition: top .2s;
}
.skip-link:focus { top: 0; }

/* Smooth scroll com offset para header fixo */
[id] { scroll-margin-top: 72px; }

/* Botão submit – estado loading */
.btn[disabled] {
  opacity: .7;
  cursor: not-allowed;
  transform: none !important;
}

/* Input erro */
.form__input.error {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239,68,68,.12);
}

/* Tooltip de erro inline */
.form__error {
  display: block;
  font-size: .75rem;
  color: #ef4444;
  margin-top: .3rem;
}

/* Print – esconde blocos desnecessários */
@media print {
  .header, .hero__actions, .numbers, .cta-final, .footer { display: none; }
  body { font-size: 12pt; color: #000; }
}
