/* =========================================================================
   V2 · Hero com retrato do Dr. Diego ("foto viva" em WebGL)
   Carregado só pelo index.html da pasta v2, depois do style.css. O resto da página
   é idêntico à v1.
   ========================================================================= */

/* pôster com o mesmo enquadramento do WebGL (object-position + zoom), para a
   troca entre os dois não dar salto */
.hero--v2 .hero__media img {
  object-position: 72% 12%;
  transform: scale(1.07);
  transform-origin: 72% 12%;
}
.hero--v2 .hero__depth,
.hero--v2 .hero__dust {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
}
.hero--v2 .hero__depth { opacity: 0; transition: opacity 900ms var(--ease-out); }
.hero--v2 .hero__depth.is-live { opacity: 1; }
.hero--v2 .hero__dust { mix-blend-mode: screen; opacity: 0; transition: opacity 1.8s var(--ease-out); }
.hero--v2 .hero__dust.is-live { opacity: 0.9; }

/* véu: claro à esquerda para o texto, some antes do rosto */
.hero--v2 .hero__veil {
  background:
    linear-gradient(90deg, rgba(246, 242, 236, 0.93) 0%, rgba(246, 242, 236, 0.8) 28%, rgba(246, 242, 236, 0.34) 44%, rgba(246, 242, 236, 0) 55%),
    linear-gradient(0deg, rgba(246, 242, 236, 0.5) 0%, rgba(246, 242, 236, 0) 28%);
}
.hero--v2 .hero__title { max-width: 9.4em; font-size: min(var(--fs-display), 4.7rem); }
.hero--v2 .hero__sub { max-width: 36ch; }

/* placa com nome e credenciais, flutua com o mouse */
.hero-tag {
  position: absolute;
  right: clamp(16px, 2.2vw, 32px);
  bottom: clamp(16px, 2.2vw, 32px);
  z-index: 2;
}
.hero-tag__float {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 22px 16px 16px;
  border-radius: 24px;
  background: rgba(251, 249, 245, 0.64);
  -webkit-backdrop-filter: blur(16px) saturate(150%);
  backdrop-filter: blur(16px) saturate(150%);
  border: 1px solid rgba(255, 255, 255, 0.66);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 22px 44px -26px rgba(52, 38, 22, 0.45);
  will-change: transform;
}
.hero-tag__mark {
  position: relative;
  flex: none;
  width: 10px;
  height: 10px;
  margin-top: 6px;
  border-radius: 50%;
  background: var(--gold);
}
.hero-tag__mark::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid var(--gold);
  animation: ring 2.6s var(--ease-out) infinite;
}
.hero-tag__name { font-weight: 500; font-size: 1.02rem; line-height: 1.2; }
.hero-tag__role { margin-top: 3px; font-size: 0.8rem; color: var(--ink-2); line-height: 1.35; }
.hero-tag__meta {
  display: flex;
  gap: 14px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--line);
  font-size: 0.78rem;
  color: var(--ink-2);
  white-space: nowrap;
}
.hero-tag__meta strong { color: var(--gold-deep); font-weight: 600; }

/* chips duplicados para o mobile (lá eles saem de cima do retrato) */
.hero-chips-m { display: none; }

@media (min-width: 768px) and (max-height: 860px) {
  .hero--v2 .hero__title { font-size: min(var(--fs-display), 4.7rem, 8.2vh); }
}

@media (max-width: 1023px) {
  .hero--v2 .hero__title { max-width: 10.5em; }
}

/* retrato vertical: celular e tablet em pé (mesmo critério do <picture> e do JS) */
@media (max-width: 767px), (max-width: 1100px) and (orientation: portrait) {
  .hero--v2 .hero__media img { object-position: 50% 20%; transform-origin: 50% 20%; }
  .hero--v2 .hero__veil {
    background: linear-gradient(0deg, rgba(246, 242, 236, 0.98) 0%, rgba(246, 242, 236, 0.9) 34%, rgba(246, 242, 236, 0.4) 46%, rgba(246, 242, 236, 0) 57%);
  }
  .hero--v2 .hero__frame { align-items: flex-end; }
  .hero--v2 .hero__content { padding-block: 46svh 22px; }
  .hero--v2 .hero__title { max-width: 12em; }
  .hero-tag { display: none; }
}

@media (max-width: 767px) {
  /* texto centralizado sob o retrato */
  .hero--v2 .hero__content { padding-block: 52svh 18px; text-align: center; }
  .hero--v2 .hero__title { max-width: none; font-size: clamp(2rem, 8.6vw, 2.5rem); }
  .hero--v2 .hero__sub { margin-inline: auto; }
  .hero--v2 .hero__chips { display: none; }
  .hero-chips-m {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 14px var(--frame-gap) 0;
  }
  .hero-chips-m li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px 10px 10px;
    border-radius: 16px;
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1.25;
    background: var(--paper);
    border: 1px solid rgba(26, 22, 18, 0.07);
  }
  .hero-chips-m svg {
    flex: none;
    width: 20px;
    height: 20px;
    padding: 4px;
    border-radius: 50%;
    background: rgba(176, 141, 87, 0.18);
    color: var(--gold-deep);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-tag__mark::after { animation: none; }
}
