/* Home con foto a tutto schermo e frase sovrapposta (temi Galleria e Bianco) */
.hero-full .hero {
  display: block; position: relative; margin: 0 calc(-1 * var(--gut)); padding: 0;
  min-height: calc(100svh - 104px); overflow: hidden; background: #111;
}
.hero-full .hero-figure { position: absolute; inset: 0; }
.hero-full .hero-figure img { width: 100%; height: 100%; object-fit: cover; animation: hero-zoom 2.4s cubic-bezier(.2, .7, .2, 1) both; }
.hero-full .hero-figure::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.62) 100%);
}
.hero-full .figcap {
  position: absolute; right: var(--gut); bottom: 28px; z-index: 2; padding: 0; gap: 24px; color: #fff; font-size: .95rem;
}
.hero-full .figcap span { color: rgba(255, 255, 255, .78); }
.hero-full .hero-text {
  position: relative; z-index: 2; pointer-events: none;
  min-height: calc(100svh - 104px); display: flex; flex-direction: column; justify-content: flex-end;
  padding: 0 var(--gut) 88px; color: #fff; animation: rise 1.1s .25s cubic-bezier(.2, .7, .2, 1) both;
}
.hero-full .hero-text a { pointer-events: auto; }
.hero-full .hero .statement { color: #fff; font-size: clamp(2.6rem, 6.6vw, 6.8rem); line-height: 1; max-width: 13ch; margin-bottom: 36px; }
.hero-full .hero .btn { background: #fff; color: #111; }
.hero-full .hero .btn:hover { background: #e5e5e2; }
.hero-full .hero .link { color: #fff; text-decoration-color: rgba(255, 255, 255, .6); }
@keyframes hero-zoom { from { transform: scale(1.06); } to { transform: none; } }
.hero-full .selected { padding-top: clamp(64px, 9vw, 140px); }

/* comparsa dei lavori allo scorrimento */
.reveal { opacity: 0; transform: translateY(28px); transition: opacity .9s cubic-bezier(.2, .7, .2, 1), transform .9s cubic-bezier(.2, .7, .2, 1); }
.reveal.in { opacity: 1; transform: none; }

@media (max-width: 960px) {
  .hero-full .hero-figure { order: 0; }
  .hero-full .hero-figure img { aspect-ratio: auto; height: 100%; }
  .hero-full .hero-text { padding-bottom: 96px; }
  .hero-full .figcap { left: var(--gut); right: auto; bottom: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; }
}
