/* Capa independiente del primer hero de AETERNA. */
.hero-visual { position: relative; overflow: hidden; isolation: isolate; }
.hero-visual .hero-campaign-image { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero-visual .hero-overlay-image {
  display: block;
  position: absolute;
  z-index: 2;
  left: 76%;
  top: 50%;
  width: min(59%, 480px);
  height: auto;
  max-height: 94%;
  object-fit: contain;
  pointer-events: none;
  filter: drop-shadow(0 22px 22px rgba(0,0,0,.22));
  animation: aeternaFloat 5.6s ease-in-out infinite;
  transform-origin: center;
}
@keyframes aeternaFloat {
  0%,100% { transform: translate(-50%, -50%) translateY(0); }
  50% { transform: translate(-50%, -50%) translateY(-8px); }
}
.admin-overlay-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(100%, 430px);
  min-height: 220px;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid #d8d8d8;
  background-color: #e9e9e9;
  background-image: linear-gradient(45deg,#fff 25%,transparent 25%),linear-gradient(-45deg,#fff 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#fff 75%),linear-gradient(-45deg,transparent 75%,#fff 75%);
  background-size: 24px 24px;
  background-position: 0 0,0 12px,12px -12px,-12px 0;
}
.admin-overlay-preview img { display:block; width:auto; max-width:100%; max-height:230px; object-fit:contain; }
@media(max-width:900px) {
  .hero-visual .hero-campaign-image { object-position: 70% center; }
  .hero-visual .hero-overlay-image { left: 70%; width: min(64%, 420px); max-height: 93%; }
}
@media(max-width:650px) {
  .hero-visual .hero-campaign-image { object-position: 76% center; }
  .hero-visual .hero-overlay-image { left: 58%; top: 49%; width: min(78%, 330px); max-height: 90%; }
}
@media(prefers-reduced-motion:reduce) {
  .hero-visual .hero-overlay-image { animation:none; transform:translate(-50%,-50%); }
}
