/* casal.css — o que só as páginas de casal de verdade (/c/<slug>) usam. */

/* "Como chegar" e "lista de presentes" dentro de uma página do convite */
.pagina__link{
  color: var(--magenta);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 600;
}

/* convite não encontrado ou fora do ar */
.casal-erro{
  min-height: 100vh; min-height: 100dvh;
  display: grid; place-content: center; gap: 1rem; padding: 2rem 16px;
  text-align: center; font-family: "Archivo", system-ui, sans-serif;
  background: #1b1916; color: #f1ece2;
}
.casal-erro a{ color: #e0558f; }

/* enquanto os dados chegam */
.casal-carregando{
  position: fixed; inset: 0; display: grid; place-items: center;
  background: #1b1916; color: rgba(241,236,226,.6);
  font: 500 .8rem/1 "Archivo", system-ui, sans-serif; letter-spacing: .2em; text-transform: uppercase;
}

/* o botão de confirmar é um link (vai para a página de resposta do convidado) */
a.rsvp-demo__b{ text-decoration: none; text-align: center; flex: 1 1 auto; }
/* no celular as setas ficam no canto de baixo: a confirmação sobe para não ficar embaixo delas */
.v2--convidado .pagina--rsvp .rsvp-demo{ margin-bottom: 4.5rem; }

/* "50 anos" em destaque (aniversário, bodas): logo abaixo do nome */
.pagina__anos{
  margin-top: .35em;
  font-family: var(--display);
  font-size: clamp(1.1rem, 8cqi, 2.4rem);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--magenta);
}
.capa__anos{
  margin: -.2rem 0 .6rem;
  font-family: var(--display);
  font-size: clamp(1.3rem, 3.4vw, 2.1rem);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--magenta);
}

/* capa do site sem foto (aniversário, bodas…): o número ou as iniciais na moldura */
.capa__foto--sem{
  display: grid; place-items: center;
  background: color-mix(in srgb, var(--magenta) 10%, var(--papel, #fff));
  color: var(--magenta);
}
.capa__foto--sem span{
  font-family: var(--display);
  font-size: clamp(5rem, 28vw, 11rem);
  line-height: 1;
}
[data-formato="cheio"] .capa__foto--sem::after{ background: none; }
