/* Área de confirmação do convite (site do convidado). Segue o visual do site: vidro, champanhe, serifa itálica nos nomes. */
.rsvp{margin-top:30px;max-width:540px}
.rsvp .tt{margin:0;font-size:clamp(19px,2.8vw,24px);color:var(--ink-2);letter-spacing:-.015em;line-height:1.35}
.rsvp .lista{margin-top:22px;border-radius:24px;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);overflow:hidden;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.rsvp .pes{padding:16px 18px;border-bottom:1px solid var(--line)}
.rsvp .pes:last-child{border-bottom:0}
.rsvp .ln{display:flex;align-items:center;gap:14px}
.rsvp .nm{flex:1;min-width:0;font-family:var(--serif);font-style:italic;font-weight:500;font-size:22px;line-height:1.15;overflow-wrap:anywhere}
.rsvp .nm small{display:block;font-family:var(--sf);font-style:normal;font-size:13px;color:var(--ink-3);margin-top:3px}
.rsvp .st{font-size:13px;color:var(--ink-2);min-width:58px;text-align:right}
.rsvp .alt{position:relative;width:51px;height:31px;flex:none}
.rsvp .alt input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;z-index:1}
.rsvp .alt span{position:absolute;inset:0;border-radius:31px;background:rgba(255,255,255,.16);transition:background .2s}
.rsvp .alt span::after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.3);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.rsvp .alt input:checked+span{background:var(--gold-2)}
.rsvp .alt input:checked+span::after{transform:translateX(20px)}
.rsvp .alt input:disabled+span{opacity:.5}
.rsvp .alt input:focus-visible+span{box-shadow:0 0 0 4px rgba(228,207,164,.45)}
.rsvp .acomp{margin-top:12px;width:100%;height:50px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.25);color:var(--ink);padding:0 14px;font:inherit;font-size:17px;outline:none}
.rsvp .acomp:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(228,207,164,.22)}
.rsvp .acomp.erro{border-color:#EBCF62}
.rsvp .msg-erro{margin-top:8px;font-size:14px;color:#F7EF9F}
.rsvp .aviso{margin-top:16px;padding:12px 16px;border-radius:14px;background:rgba(235,207,98,.14);color:#F7EF9F;font-size:15px}
.rsvp .btns{margin-top:26px;display:grid;gap:12px;justify-items:start}
.rsvp .pill{min-width:min(100%,340px);min-height:56px;font-size:18px}
.rsvp .pill[disabled]{opacity:.45;pointer-events:none}
.rsvp .pill.sm{min-height:46px;font-size:16px;padding:10px 20px}
.rsvp .nota{margin-top:16px;font-size:15px;color:var(--ink-2)}
.rsvp .nota b{color:var(--gold);font-weight:600}
.rsvp .ok-t{margin:0;font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(30px,6vw,40px);line-height:1.1;color:var(--gold)}
.rsvp .qr{margin-top:22px;width:min(78vw,290px);background:#fff;border-radius:26px;padding:16px;box-shadow:0 30px 60px rgba(0,0,0,.5),0 0 0 1px rgba(228,207,164,.35)}
.rsvp .qr svg{display:block;width:100%;height:auto}
.rsvp .quem{margin-top:18px;display:grid;gap:4px}
.rsvp .quem span{font-family:var(--serif);font-style:italic;font-weight:500;font-size:21px}
.rsvp .quem em{font-style:normal;font-family:var(--sf);font-size:13px;color:var(--ink-3);margin-left:8px}
.rsvp .acoes{margin-top:24px;display:flex;flex-wrap:wrap;gap:10px}
.rsvp .carregando{display:flex;align-items:center;gap:12px;color:var(--ink-2);margin-top:22px}
.rsvp .carregando i{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.15);border-top-color:var(--gold);animation:rsvpgira .8s linear infinite}
@keyframes rsvpgira{to{transform:rotate(360deg)}}
.rsvp .lgpd{margin-top:22px;font-size:13px;color:var(--ink-3)}
@media (max-width:760px){.rsvp{margin-left:auto;margin-right:auto}.rsvp .btns{justify-items:stretch}.rsvp .pill{width:100%}.ctag .rsvp{text-align:left}}

/* Pré-visualização com dados fictícios */
.faixa-previa{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:60;
  padding:9px 16px;border-radius:980px;background:rgba(3,20,12,.88);border:1px solid rgba(228,207,164,.55);color:var(--gold);
  font-size:13px;font-weight:600;letter-spacing:.01em;white-space:nowrap;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  box-shadow:0 10px 30px rgba(0,0,0,.45);pointer-events:none;max-width:calc(100vw - 28px);overflow:hidden;text-overflow:ellipsis}
.rsvp .amostra{margin:12px 0 0;font-size:13px;font-weight:700;letter-spacing:.12em;color:#F7EF9F}
.rsvp .confirma-recusa{margin:0 0 4px;font-size:16px;color:var(--ink);max-width:30em}

/* Faixa de palavras do final: branco e dourado alternados (quantidade par de palavras, sem salto na emenda) */
.marquee span:nth-child(odd){color:var(--ink)!important}
.marquee span:nth-child(even){color:var(--gold)!important}

/* Data grande ("29 novembro 2026"): cabe em telas estreitas; o mês vem do evento e pode ser mais longo */
.bigdate .d{font-size:clamp(96px,36vw,300px)!important}
.bigdate .my b{font-size:clamp(24px,8vw,60px)!important}

/* Título "Colheita Premiada": mesmo tamanho durante e depois da animação de entrada
   (o espaço extra do texto dourado vale desde o início, então nada se mexe na troca de estilo) */
.hero h1{padding-right:.04em!important;padding-bottom:.06em!important}
.hero h1 .bt{vertical-align:top}

/* Nomes grandes dos prêmios (BROS 160, STRADA, HILUX): fonte própria, sem peças sobrepostas.
   A fonte do sistema (SF, Segoe, Roboto) monta letras com partes sobrepostas e, só com contorno
   (-webkit-text-stroke), as linhas internas aparecem "por cima" da letra. */
@font-face{font-family:"Poppins Contorno";src:url("../fonts/poppins-extrabold-contorno.woff2") format("woff2");font-weight:800;font-style:normal;font-display:block}
.bigname{font-family:"Poppins Contorno","Poppins",var(--sf)!important;font-weight:800!important;letter-spacing:.015em!important}


/* ===== Visual da campanha: área de confirmação ===== */
.rsvp .lista{background:linear-gradient(160deg,rgba(33,98,40,.92),rgba(13,56,22,.95));border:1px solid rgba(235,207,98,.35)}
.rsvp .alt input:checked+span{background:#EBCF62}
.rsvp .alt input:checked+span::after{background:#FFFFFF}
.rsvp .acomp{background:rgba(6,30,12,.55);border-color:rgba(235,207,98,.35)}
.rsvp .acomp:focus{border-color:#EBCF62}
.rsvp .aviso{border:1px solid rgba(235,207,98,.40)}
.rsvp .qr{box-shadow:0 26px 60px rgba(0,0,0,.45),0 0 0 2px rgba(235,207,98,.65)}
.faixa-previa{background:rgba(12,51,19,.92);border-color:rgba(235,207,98,.60);color:#F7EF9F;-webkit-backdrop-filter:none;backdrop-filter:none}

.rsvp .tt,.rsvp .nota,.rsvp .lgpd{color:#E3EDD8;text-shadow:0 1px 12px rgba(0,0,0,.40)}
.rsvp .nota b{color:#F7EF9F}
