/* Galeria completa com fotos reais da Casa Vellaris. */
.galeria-completa { width: min(90vw, 1380px); margin: clamp(32px, 5vw, 72px) auto 0; }
.galeria-completa > summary { display: flex; width: fit-content; margin-inline: auto; cursor: pointer; list-style: none; }
.galeria-completa > summary::-webkit-details-marker { display: none; }
.galeria-completa[open] > summary { margin-bottom: 28px; }
.galeria-completa__filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-bottom: 24px; }
.galeria-completa__filters button { min-height: 42px; padding: 9px 16px; border: 1px solid rgba(238,238,230,.3); border-radius: 999px; color: var(--marfim); font: inherit; font-size: 14px; cursor: pointer; }
.galeria-completa__filters button[aria-pressed="true"] { border-color: var(--neon); background: var(--neon); color: var(--carvao); }
.galeria-completa__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.galeria-completa__item { aspect-ratio: 4 / 3; min-height: 0; }
.galeria-completa__item[hidden] { display: none; }
.galeria-completa__close { display: none; }
@media (max-width: 1024px) { .galeria-completa__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 768px) {
  .galeria-completa { width: calc(100% - 32px); }
  .galeria-completa__filters {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 6px;
    cursor: grab;
    user-select: none;
    scroll-snap-type: x proximity;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
  }
  .galeria-completa__filters.is-dragging { cursor: grabbing; scroll-snap-type: none; }
  .galeria-completa__filters button { flex: 0 0 auto; scroll-snap-align: start; }
  .galeria-completa__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .galeria-completa[open].is-in-view .galeria-completa__close {
    position: fixed;
    z-index: 80;
    left: 50%;
    bottom: max(18px, env(safe-area-inset-bottom));
    display: inline-flex;
    width: auto;
    min-width: min(56vw, 220px);
    justify-content: center;
    white-space: nowrap;
    transform: translateX(-50%);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .34);
  }
  .galeria-completa[open].is-in-view .galeria-completa__close:hover { transform: translateX(-50%) translateY(-2px); }
  .galeria-completa[open].is-in-view .galeria-completa__close:active { transform: translateX(-50%); }
}
@media (max-width: 430px) { .galeria-completa__grid { grid-template-columns: 1fr; } }


/* Oculta barras visuais sem desativar a rolagem horizontal. */
.experiencia__cards,
.galeria__grid,
.galeria-completa__filters {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.experiencia__cards::-webkit-scrollbar,
.galeria__grid::-webkit-scrollbar,
.galeria-completa__filters::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
