/* Ajustes especificos do WordPress. Nao altera o design do site. */

/* Animacoes de entrada (equivalente ao componente Reveal do site original) */
.v-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 700ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}

.v-reveal.is-in {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .v-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Barra de administracao do WordPress nao deve tapar o header fixo */
body.admin-bar .site-header-fixed {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .site-header-fixed {
    top: 46px;
  }
}

/* Estado do lightbox do portefolio */
body.v-lock {
  overflow: hidden;
}

.v-lightbox[hidden] {
  display: none !important;
}

/* Mensagens do formulario */
.v-form-message {
  display: block;
}

/* O WordPress aplica margin ao <figure>; o layout do site nao a tem. */
figure.media-slot,
.v-content figure {
  margin: 0;
}

/* VinilArt v4 — blocos criados no Construtor. */
@media (min-width: 1024px) {
  .vinilart-builder-cards {
    grid-template-columns: repeat(var(--va-builder-cols, 3), minmax(0, 1fr));
  }
}
.vinilart-rich > :first-child { margin-top: 0; }
.vinilart-rich > :last-child { margin-bottom: 0; }
.vinilart-rich p { margin: .9em 0; line-height: 1.75; }
.vinilart-rich h2,.vinilart-rich h3,.vinilart-rich h4 { margin: 1.15em 0 .45em; color: var(--foreground); font-family: Archivo, sans-serif; font-weight: 800; text-transform: uppercase; }
.vinilart-rich ul,.vinilart-rich ol { margin: .9em 0; padding-left: 1.35em; }
.vinilart-rich a { color: var(--cyan); text-decoration: underline; text-underline-offset: 3px; }
.vinilart-builder-gallery{display:grid;grid-template-columns:1fr;gap:1rem}.vinilart-builder-gallery figure{aspect-ratio:4/3}.vinilart-builder-gallery img{width:100%;height:100%;object-fit:cover;display:block}@media(min-width:640px){.vinilart-builder-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.vinilart-builder-gallery{grid-template-columns:repeat(var(--va-builder-cols,3),minmax(0,1fr))}}


/* Canais adicionais do rodape: icone fixo e conteudo empilhado para evitar linhas demasiado compridas. */
.vinilart-footer-extra-channel {
  display: grid;
  grid-template-columns: 0.875rem minmax(0, 1fr);
  align-items: start;
  column-gap: 0.5rem;
  width: 100%;
  max-width: 18rem;
}
.vinilart-footer-extra-channel__icon {
  display: inline-flex;
  flex-shrink: 0;
  padding-top: 0.08rem;
}
.vinilart-footer-extra-channel__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.35;
}
.vinilart-footer-extra-channel__label {
  display: block;
  margin-bottom: 0.1rem;
}
.vinilart-footer-extra-channel__value {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* v11 — páginas livres do Construtor e contactos adicionais organizados. */
.vinilart-free-page-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.34}
.vinilart-free-page-hero__shade{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(7,9,12,.96) 0%,rgba(7,9,12,.78) 48%,rgba(7,9,12,.46) 100%)}
.vinilart-contact-extra-section{margin-top:2rem;padding-top:1.35rem;border-top:1px solid rgba(255,255,255,.08)}
.vinilart-contact-extra-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}
.vinilart-contact-extra-heading>span{font-family:monospace;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.52)}
.vinilart-contact-extra-heading>small{font-family:monospace;font-size:.65rem;color:rgba(255,255,255,.28)}
.vinilart-contact-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.vinilart-contact-extra-card{min-width:0;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.82rem .9rem;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.018);color:rgba(255,255,255,.78);text-decoration:none;transition:border-color .18s ease,background .18s ease,transform .18s ease,color .18s ease}
a.vinilart-contact-extra-card:hover{border-color:rgba(0,204,255,.26);background:rgba(0,204,255,.035);color:#fff;transform:translateY(-1px)}
.vinilart-contact-extra-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(0,204,255,.22);background:rgba(0,204,255,.06);color:var(--cyan)}
.vinilart-contact-extra-icon svg{width:16px;height:16px}
.vinilart-contact-extra-copy{min-width:0}.vinilart-contact-extra-copy small{display:block;margin-bottom:.18rem;font-size:.58rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.38)}
.vinilart-contact-extra-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;color:inherit}
.vinilart-contact-extra-arrow{color:rgba(255,255,255,.28);font-size:.85rem}
@media(max-width:680px){.vinilart-contact-extra-grid{grid-template-columns:1fr}}

