/* AVA Legacy — pagina da casa: galeria orbital WebGL full-screen + chrome flutuante */

.casa-page{
  background:#000;
  overflow:hidden;
  height:100dvh;
}
/* neutraliza o glow/grao ambiente do site nesta pagina (fundo preto puro, igual ao componente) */
.casa-page::before,.casa-page::after{display:none !important}

/* header flutuante */
.casa-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:30;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:1.2rem var(--pad-x);
  pointer-events:none;
}
.casa-header > *{pointer-events:auto}
.casa-header .wordmark{
  font-family:var(--font-mono);
  font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--text);
  text-shadow:0 1px 12px rgba(0,0,0,.6);
}
.casa-header__back{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;
  color:var(--text-dim);
  padding:.5em .9em;
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  background:rgba(10,10,11,.4);
  backdrop-filter:blur(6px);
  transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);
}
.casa-header__back:hover{color:var(--text);border-color:var(--hairline-amber)}
.casa-header__back span:first-child{color:var(--amber)}

/* legenda flutuante */
.casa-caption{
  position:fixed;
  top:clamp(4.5rem,12vh,7rem);
  left:var(--pad-x);
  z-index:20;
  pointer-events:none;
  max-width:min(90vw,40ch);
}
.casa-caption .eyebrow{text-shadow:0 1px 14px rgba(0,0,0,.7)}
.casa-caption__place{
  margin-top:.55rem;
  font-family:var(--font-serif);
  font-size:var(--fs-h2);
  line-height:var(--lh-snug);
  letter-spacing:var(--tracking-serif);
  font-weight:400;
  text-shadow:0 2px 24px rgba(0,0,0,.7);
}
.casa-caption__addr{
  margin-top:.4rem;
  font-family:var(--font-mono);
  font-size:.9rem;
  color:var(--text-dim);
  letter-spacing:.03em;
  text-shadow:0 1px 14px rgba(0,0,0,.7);
}

/* palco WebGL */
.orbit{
  position:fixed;
  inset:0;
  z-index:1;
  background:#000;
}
.orbit__canvas{
  display:block;
  width:100%;
  height:100%;
  cursor:grab;
  touch-action:pan-y;
}
.orbit__canvas.is-dragging{cursor:grabbing}

/* aviso mobile */
.orbit__hint{
  position:fixed;
  left:0;right:0;
  bottom:clamp(1.5rem,5vh,2.5rem);
  z-index:20;
  text-align:center;
  font-family:var(--font-mono);
  font-size:var(--fs-micro);
  letter-spacing:var(--tracking-micro);
  text-transform:uppercase;
  color:var(--text-mute);
  opacity:0;
  pointer-events:none;
  transition:opacity .4s var(--ease-out);
}
.orbit__hint.is-on{opacity:1}

/* lightbox — foto ampliada, sem ocupar tudo */
.orbit__lightbox{
  position:fixed;inset:0;
  z-index:60;
  display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.8);
  opacity:0;visibility:hidden;
  transition:opacity .35s var(--ease-out), visibility .35s;
  cursor:zoom-out;
}
.orbit__lightbox.is-open{opacity:1;visibility:visible}
.orbit__lightbox img{
  height:min(84vh,780px);      /* altura fixa => todas as fotos abrem no mesmo tamanho de detalhe */
  width:auto;
  max-width:92vw;              /* so limita fotos muito panoramicas */
  object-fit:contain;
  border-radius:8px;
  border:1px solid var(--hairline-amber);
  box-shadow:0 44px 100px -24px rgba(0,0,0,.9);
  transform:scale(.92);
  transition:transform .4s var(--ease-out);
}
.orbit__lightbox.is-open img{transform:scale(1)}

@media (prefers-reduced-motion: reduce){
  .orbit__lightbox,.orbit__lightbox img{transition:none}
}
