/* Escolher a marca pelo domínio visível, mesmo atrás de um proxy. */
body.jt-public a.cv-subathon-brand { display: none; }
html[data-cv-subathon="true"] body.jt-public a.cv-default-brand { display: none; }
html[data-cv-subathon="true"] body.jt-public a.cv-subathon-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: #fff;
  text-decoration: none;
}
.cv-subathon-brand .cv-subathon-face {
  display: block;
  flex: 0 0 auto;
  height: 36px;
  width: auto;
  object-fit: contain;
}
body.jt-public .cv-subathon-brand .cv-subathon-word {
  position: relative;
  display: block;
  font-family: 'Arial Black', 'Inter', Arial, sans-serif;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -.035em;
  white-space: nowrap;
  color: #fff;
  transform: skewX(-6deg);
  filter: none;
  text-shadow: none;
}
.cv-subathon-word::after {
  content: attr(data-word);
  position: absolute;
  inset: 0;
  color: transparent;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(100deg, transparent 40%, #ff3535 47%, #ff7878 50%, #ff2424 53%, transparent 60%);
  background-size: 300% 100%;
  background-repeat: no-repeat;
  background-position: 100% 0;
  -webkit-background-clip: text;
  background-clip: text;
  pointer-events: none;
  animation: cv-subathon-red-sweep 3.6s ease-in-out infinite;
}
/* Com um fundo de 300%, 100% -> 0% desloca a faixa da esquerda para a direita. */
@keyframes cv-subathon-red-sweep {
  0%, 12% { background-position: 100% 0; opacity: 0; }
  18% { opacity: 1; }
  72% { background-position: 0% 0; opacity: 1; }
  78%, 100% { background-position: 0% 0; opacity: 0; }
}
.cv-subathon-brand:focus-visible { outline: 2px solid #ff8b8b; outline-offset: 5px; border-radius: 4px; }
@media (min-width: 640px) {
  .cv-subathon-brand .cv-subathon-face { height: 44px; }
  body.jt-public .cv-subathon-brand .cv-subathon-word { font-size: 26px; }
}
@media (prefers-reduced-motion: reduce) {
  .cv-subathon-word::after { animation: none; opacity: 0; }
}
