/* =========================================================
   Componente: Cursor personalizado (bolinha seguindo o mouse)
   - .cursor-dot  -> ponto que cola no ponteiro
   - .cursor-ring -> anel que segue suavemente (com leve atraso)
   - Ativo só em telas com mouse fino (hover:hover / pointer:fine)
   Dependências: nenhuma. Variável de cor pode ser sobrescrita.
   ========================================================= */
:root{
  --cursor-color: #1E84B5;   /* cor do ponto e do anel */
}

.cursor-dot,.cursor-ring{
  position:fixed;top:0;left:0;border-radius:50%;pointer-events:none;z-index:9999;
  transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease;
}
.cursor-dot{width:8px;height:8px;background:var(--cursor-color)}
.cursor-ring{
  width:34px;height:34px;border:2px solid color-mix(in srgb, var(--cursor-color) 50%, transparent);
  transition:width .25s ease,height .25s ease,background .25s ease,border-color .25s ease,opacity .3s ease;
}
.cursor-ring.hover{
  width:52px;height:52px;
  background:color-mix(in srgb, var(--cursor-color) 12%, transparent);
  border-color:var(--cursor-color);
}
/* Aparecem só depois que o mouse se move dentro da janela */
body.has-cursor.ready .cursor-dot,
body.has-cursor.ready .cursor-ring{opacity:1}

/* Esconde o cursor nativo nos elementos interativos */
@media (hover:hover) and (pointer:fine){
  body.has-cursor,
  body.has-cursor a,
  body.has-cursor button,
  body.has-cursor [data-modal-open],
  body.has-cursor .faq-q{cursor:none}
  body.has-cursor input,
  body.has-cursor select,
  body.has-cursor textarea{cursor:auto}
}
/* Desativa em telas pequenas / touch */
@media (max-width:980px){
  .cursor-dot,.cursor-ring{display:none}
}
