/* ===== Gabriel & Emile · paleta: azul marinho + amarelo manteiga + dourado champanhe ===== */
:root{
  --marinho:#1b2a49; --marinho-fundo:#0e1729; --marinho-claro:#2a3d66;
  --manteiga:#f3e3a3; --manteiga-claro:#faf1cf; --papel:#fbf6e6;
  --tinta:#1f2d4d; --ouro:#b39246; --ouro-claro:#ecd99b;
  --serifa:"Bodoni Moda",Georgia,serif; --texto:"Cormorant Garamond",Georgia,serif; --script:"Pinyon Script",cursive;
  --fibra:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45  0 0 0 0 .38  0 0 0 0 .2  0 0 0 .09 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--marinho-fundo)}
html.travado,html.travado body{overflow:hidden}
body{font-family:var(--texto);color:var(--tinta);background:var(--papel);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
.papel{background:var(--fibra),radial-gradient(120% 80% at 50% 0%,#fffbec,var(--papel) 60%,#f6eed6)}
.e{font-family:var(--script)}

/* marca do que ainda falta preencher (some quando o dado chegar) */
.a-preencher{display:inline-block;padding:0 .4em;border:1px dashed currentColor;border-radius:4px;opacity:.75;font-style:italic;font-size:.92em}
.a-preencher::before{content:"✎ ";font-style:normal;opacity:.7}

/* revelação suave ao rolar */
.revela{opacity:0;transform:translateY(26px);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.revela.visivel{opacity:1;transform:none}

/* ================= 1 · TOPO ================= */
.topo{position:relative;height:100svh;min-height:560px;display:grid;place-items:center;overflow:hidden;background:var(--marinho-fundo);color:var(--manteiga-claro)}
.topo-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.topo-veu{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(10,16,32,.35) 0%,rgba(10,16,32,.15) 35%,rgba(10,16,32,.55) 75%,var(--papel) 100%)}
.topo-texto{position:relative;text-align:center;padding:0 16px;margin-top:-6vh}
.topo-ano{display:flex;align-items:center;justify-content:center;gap:18px;font:500 13px/1 var(--texto);letter-spacing:.4em;opacity:.9}
.mini-ge{width:26px;height:26px}
.topo-nomes{font:400 clamp(52px,10vw,132px)/1 var(--serifa);letter-spacing:.01em;margin-top:18px;text-shadow:0 4px 30px rgba(5,10,25,.45)}
.topo-nomes .e{color:var(--ouro-claro);font-size:.8em;margin:0 .06em;position:relative;top:.06em}
.topo-data{margin-top:20px;font:400 clamp(15px,1.6vw,20px)/1 var(--serifa);letter-spacing:.35em}
.rolar{position:absolute;bottom:34px;left:50%;width:26px;height:42px;margin-left:-13px;border:1.5px solid rgba(250,241,207,.7);border-radius:14px}
.rolar span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--manteiga-claro);animation:rolar 1.8s ease-in-out infinite}
@keyframes rolar{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* ================= 2 · CONVITE ================= */
.convite{padding:clamp(70px,10vw,130px) 16px clamp(80px,10vw,140px);text-align:center}
.pais-linha{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(18px,4vw,48px);max-width:980px;margin:0 auto}
.pais-lado{font:400 clamp(14px,1.6vw,18px)/1.45 var(--serifa)}
.pais-lado:first-child{text-align:right}
.pais-lado:last-child{text-align:left}
.oval{width:clamp(78px,10vw,112px);aspect-ratio:3/4;border:1.5px solid var(--ouro);border-radius:50%;display:grid;place-items:center;position:relative}
.oval::after{content:"";position:absolute;inset:5px;border:.5px solid rgba(179,146,70,.55);border-radius:50%}
.oval svg{width:56%;height:56%}
.bencao-site{margin-top:clamp(36px,5vw,56px);font:italic 400 clamp(18px,2vw,24px)/1.3 var(--texto)}
.nomes-grandes{margin-top:clamp(18px,3vw,34px);font:400 clamp(58px,11vw,150px)/.95 var(--serifa);color:var(--marinho);display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap}
.nomes-grandes .e{color:var(--ouro);font-size:1.15em;line-height:0;margin:0 -.08em;position:relative;top:.22em;opacity:.85}
.nomes-grandes .n2{position:relative;top:.38em}
.texto-convite{margin-top:clamp(70px,8vw,100px);font:500 clamp(18px,2vw,24px)/1.45 var(--texto);letter-spacing:.04em}

/* ================= 3 · DATA E LOCAL ================= */
.quando{position:relative;background:#141820;color:#fff;overflow:hidden}
.quando-foto{position:absolute;inset:0;background-size:cover;background-position:center 30%;filter:grayscale(1) contrast(1.05) brightness(.62)}
.quando-foto::after{content:"";position:absolute;inset:0;opacity:.35;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.quando-conteudo{position:relative;max-width:1100px;margin:0 auto;padding:clamp(80px,10vw,130px) 24px clamp(110px,12vw,160px);
  display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:40px}
.rotulo{font:400 clamp(22px,2.4vw,30px)/1 var(--serifa);text-align:center;margin-bottom:16px;padding-right:12%}
.numeros{position:relative;width:min(100%,420px);height:clamp(230px,26vw,330px);margin:0 auto;font:500 clamp(110px,13vw,170px)/1 var(--serifa);color:#fff}
.numeros span{position:absolute;text-shadow:0 10px 30px rgba(0,0,0,.45)}
.numeros .d{left:0;top:0}
.numeros .m{left:36%;top:22%;color:var(--manteiga-claro)}
.numeros .a{left:6%;top:52%}
.dia{text-align:center;font:400 clamp(20px,2.2vw,28px)/1 var(--serifa);padding-right:12%;margin-top:10px}
.dia i{font-style:normal;opacity:.6;margin:0 .3em}
.quando-local{text-align:center}
.rotulo-local{font:600 clamp(26px,2.6vw,34px)/1 var(--serifa)}
.endereco{margin:14px 0 26px;font:400 clamp(17px,1.6vw,20px)/1.6 var(--texto)}
.botao-linha{display:inline-flex;align-items:center;gap:12px;padding:12px 34px 12px 22px;border:1px solid rgba(255,255,255,.75);border-radius:999px;
  color:#fff;text-decoration:underline;text-underline-offset:4px;font:600 18px/1 var(--texto)}
.botao-linha svg{width:22px;height:22px}
.endereco small{display:block;margin-top:8px;font-size:.85em;opacity:.85;line-height:1.4}
.botoes-mapa{display:flex;flex-direction:column;align-items:center;gap:12px}
.botao-waze{color:var(--manteiga-claro);font:italic 400 16px var(--texto);text-decoration:underline;text-underline-offset:3px;opacity:.9}
.mapa{margin-top:12px;border-radius:6px;overflow:hidden;border:1px solid rgba(179,146,70,.5);aspect-ratio:16/10}
.mapa iframe{width:100%;height:100%;border:0;display:block}
.links-mapa{margin-top:8px;font-size:16px}
.links-mapa a{color:var(--marinho)}
.botao-linha[aria-disabled="true"]{opacity:.85;cursor:help}
.curva{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(30px,5vw,70px);fill:var(--marinho-fundo)}

/* ================= 4 · INFORMAÇÕES ================= */
.informacoes{position:relative;min-height:clamp(520px,80vh,760px);display:grid;place-items:center;background-size:cover;background-position:center 35%;background-color:var(--marinho-fundo)}
.info-veu{position:absolute;inset:0;background:linear-gradient(180deg,var(--marinho-fundo) 0%,rgba(14,23,41,.35) 18%,rgba(14,23,41,.35) 82%,var(--papel) 100%);filter:grayscale(.3)}
.envelope-info{position:relative;width:min(78vw,360px);aspect-ratio:1402/905;border:0;background:none;cursor:pointer;filter:drop-shadow(0 18px 30px rgba(5,10,25,.5));transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.envelope-info:hover,.envelope-info:focus-visible{transform:translateY(-6px) rotate(-1.2deg)}
.envelope-info:focus-visible{outline:2px solid var(--manteiga);outline-offset:8px;border-radius:6px}
.ei-envelope{position:absolute;inset:0;background:url("assets/pecas/envelope-fechado.webp") center/100% 100% no-repeat}
.ei-titulo{position:absolute;left:0;right:0;top:22%;text-align:center;font:400 clamp(30px,4.6vw,44px)/1 var(--script);color:var(--marinho)}
.ei-lacre{position:absolute;left:50%;top:63%;width:26%;aspect-ratio:1;transform:translate(-50%,-50%);background:url("assets/pecas/lacre.webp") center/100% 100% no-repeat;display:grid;place-items:center}
.ei-lacre svg{width:52%;height:52%}
.ei-clique{position:absolute;left:0;right:0;bottom:7%;text-align:center;font:600 13px/1 var(--texto);letter-spacing:.18em;text-transform:uppercase;text-decoration:underline;color:var(--marinho)}

/* ================= 5 · CONFIRME ================= */
.confirme{padding:clamp(80px,10vw,130px) 16px}
.confirme-grade{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(30px,5vw,60px)}
.cartao-rsvp{background:var(--fibra),linear-gradient(160deg,#22355d,var(--marinho) 60%,#15213b);color:var(--manteiga-claro);border-radius:22px;
  padding:clamp(34px,4vw,50px) clamp(26px,4vw,46px);text-align:center;transform:rotate(-2.5deg);box-shadow:0 24px 50px rgba(14,23,41,.3)}
.cartao-rsvp h2{font:400 clamp(34px,4vw,48px)/1.05 var(--serifa)}
.cartao-rsvp h2 em{display:block;font:400 1.15em/1.1 var(--script);color:var(--ouro-claro)}
.prazo{margin:16px 0 24px;font:italic 400 18px/1.4 var(--texto);opacity:.9}
.botao-claro,.botao-escuro{font:600 15px/1 var(--texto);letter-spacing:.14em;text-transform:uppercase;padding:15px 28px;border-radius:999px;cursor:pointer;transition:background .3s,color .3s}
.botao-claro{background:transparent;color:var(--manteiga-claro);border:1px solid var(--manteiga-claro)}
.botao-claro:hover{background:var(--manteiga-claro);color:var(--marinho)}
.botao-escuro{background:var(--marinho);color:var(--manteiga-claro);border:1px solid var(--marinho);width:100%}
.botao-escuro:hover{background:var(--marinho-claro)}
.colagem{position:relative;aspect-ratio:1/1;max-width:560px;width:100%;justify-self:center}
.moldura-ouro{position:absolute;left:18%;top:4%;width:60%;aspect-ratio:3/4;border-radius:50%;padding:14px;
  background:conic-gradient(from 30deg,#8f702e,#f1dc9c,#b8964b,#fff1c4,#9a7a35,#e6cf8a,#8f702e);box-shadow:0 20px 40px rgba(14,23,41,.35),inset 0 0 0 3px rgba(255,255,255,.25)}
.moldura-ouro img{width:100%;height:100%;object-fit:cover;border-radius:50%;box-shadow:inset 0 0 20px rgba(0,0,0,.4);border:3px solid #7c5f24}
.polaroide{position:absolute;width:36%;background:#fffdf6;padding:7px 7px 26px;box-shadow:0 14px 28px rgba(14,23,41,.28)}
.polaroide img{width:100%;aspect-ratio:4/5;object-fit:cover}
.p1{right:-2%;top:2%;transform:rotate(6deg)}
.p2{left:-4%;bottom:2%;transform:rotate(-8deg)}
.p3{right:4%;bottom:-4%;transform:rotate(4deg);width:32%}

/* ================= 6 · GALERIA ================= */
.galeria{padding:0 16px clamp(80px,10vw,120px);text-align:center}
.rotulo-escuro{font:400 clamp(30px,4vw,46px)/1 var(--script);color:var(--marinho);margin-bottom:30px}
.mosaico{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.mosaico img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:4px;box-shadow:0 10px 24px rgba(14,23,41,.15)}
.mosaico img:nth-child(even){margin-top:40px}

/* ================= 7 · FINAL ================= */
/* final: o casal fazendo o coração diante do mar; o GE fica no céu, sem cobrir ninguém */
.final{position:relative;height:clamp(560px,100vh,980px);background-size:cover;background-position:center 18%;display:grid;place-items:start center}
.final-veu{position:absolute;inset:0;background:linear-gradient(180deg,var(--papel) 0%,rgba(250,241,207,0) 14%,rgba(14,23,41,0) 55%,rgba(14,23,41,.35) 80%,var(--marinho-fundo) 100%)}
.final-ge{position:relative;margin-top:clamp(110px,16vh,190px);width:clamp(110px,14vw,190px);height:clamp(110px,14vw,190px);filter:drop-shadow(0 4px 14px rgba(14,23,41,.35))}

.rodape{background:var(--marinho-fundo);color:var(--manteiga-claro);text-align:center;padding:50px 16px 60px}
.rodape-nomes{font:400 clamp(28px,3vw,38px)/1 var(--serifa)}
.rodape-nomes span{font-family:var(--script);color:var(--ouro-claro)}
.rodape-data{margin-top:12px;letter-spacing:.35em;font:400 15px var(--serifa);opacity:.85}
.rever{margin-top:26px;background:none;border:0;color:var(--ouro-claro);font:italic 400 16px var(--texto);text-decoration:underline;cursor:pointer}

/* ================= JANELAS ================= */
.janela{margin:auto;width:min(92vw,520px);max-height:88vh;border:0;border-radius:6px;padding:clamp(28px,5vw,44px);color:var(--tinta);
  background:var(--fibra),linear-gradient(170deg,#fffbea,var(--papel) 60%,#f3e8c6);box-shadow:0 30px 80px rgba(5,10,25,.55)}
/* (sem position:relative: a janela modal precisa do posicionamento fixo padrão para ficar centralizada) */
.janela::backdrop{background:rgba(8,13,26,.72);backdrop-filter:blur(3px)}
.janela[open]{animation:abreJanela .5s cubic-bezier(.2,.7,.2,1)}
@keyframes abreJanela{from{opacity:0;transform:translateY(30px) scale(.97)}}
.carta-janela{outline:1px solid rgba(179,146,70,.6);outline-offset:-12px}
.janela h3{font:400 clamp(38px,6vw,50px)/1 var(--script);color:var(--marinho);text-align:center;margin-bottom:24px}
.fechar{position:absolute;right:12px;top:8px;background:none;border:0;font:300 34px/1 var(--texto);color:var(--tinta);cursor:pointer}
.lista-info div{padding:12px 0;border-bottom:1px solid rgba(179,146,70,.35)}
.lista-info dt{font:600 13px/1 var(--texto);letter-spacing:.2em;text-transform:uppercase;color:var(--ouro)}
.lista-info dd{margin-top:6px;font:400 19px/1.4 var(--texto)}
.lista-info dd p+p,.lista-info dd ul{margin-top:8px}
.lista-info .sub{font-style:italic;opacity:.85}
.orientacoes{padding-left:0;list-style:none;display:grid;gap:8px}
.orientacoes li{position:relative;padding-left:20px;font-size:17px;line-height:1.45}
.orientacoes li::before{content:"";position:absolute;left:2px;top:.6em;width:7px;height:7px;transform:rotate(45deg);background:linear-gradient(135deg,#f2df9f,#a5843c)}
.horarios{display:flex;gap:28px;flex-wrap:wrap;font:400 22px/1.2 var(--serifa);color:var(--marinho)}
.horarios b{display:block;font:600 12px/1.6 var(--texto);letter-spacing:.2em;text-transform:uppercase;color:var(--ouro)}
.janela-ge{display:block;width:44px;height:44px;margin:24px auto 0}
.form-rsvp{display:grid;gap:16px}
.form-rsvp label{display:grid;gap:6px;font:600 14px/1.2 var(--texto);letter-spacing:.06em}
.form-rsvp small{font-weight:400;opacity:.7}
.form-rsvp input,.form-rsvp select,.form-rsvp textarea{font:400 18px var(--texto);padding:11px 14px;border:1px solid rgba(27,42,73,.35);border-radius:6px;background:rgba(255,255,255,.7);color:var(--tinta)}
.form-rsvp input:focus,.form-rsvp select:focus,.form-rsvp textarea:focus{outline:2px solid var(--ouro);border-color:transparent}
.form-rsvp fieldset{border:0;display:grid;gap:8px}
.form-rsvp legend{font:600 14px var(--texto);letter-spacing:.06em;margin-bottom:6px}
.form-rsvp .opcao{display:flex;align-items:center;gap:10px;font:400 18px var(--texto);letter-spacing:0}
.form-rsvp fieldset.erro{outline:2px solid #b4462f;outline-offset:6px;border-radius:4px}
.detalhes-presenca{display:grid;gap:16px}
.detalhes-presenca[hidden]{display:none}
.campos-criancas{display:grid;gap:16px;padding:14px;border-left:2px solid var(--ouro);background:rgba(243,227,163,.25)}
.campos-criancas[hidden]{display:none}
.aviso-form{min-height:1.4em;text-align:center;font:italic 400 17px var(--texto);color:var(--marinho)}

/* ================= CELULAR ================= */
@media (max-width:760px){
  .pais-linha{grid-template-columns:1fr;gap:18px}
  .pais-lado:first-child,.pais-lado:last-child{text-align:center}
  .oval{margin:0 auto;order:-1}
  .nomes-grandes{flex-direction:column;align-items:center}
  .nomes-grandes .e{margin:.05em 0;top:0;line-height:.7}
  .nomes-grandes .n2{top:0}
  .quando-conteudo{grid-template-columns:1fr;gap:50px}
  .rotulo,.dia{padding-right:0}
  .numeros{width:300px}
  .confirme-grade{grid-template-columns:1fr}
  .cartao-rsvp{transform:rotate(-1.5deg)}
  .mosaico{grid-template-columns:repeat(2,1fr)}
  .mosaico img:nth-child(even){margin-top:24px}
}

/* =================================================================
   ABERTURA (a carta) — mesmo desenho aprovado na prévia
   ================================================================= */
#ab{position:fixed;inset:0;z-index:50;display:grid;place-items:center;cursor:pointer;overflow:hidden;
  background:#0e1729 url("assets/fundo-flores-16x9.jpg") center/cover no-repeat}
@media (orientation:portrait){ #ab{background-image:url("assets/fundo-flores-9x16.jpg")} }
#ab .escuro{position:absolute;inset:0;background:#070c18;pointer-events:none;z-index:20}
#ab .vinheta{position:absolute;inset:0;pointer-events:none;z-index:15;background:radial-gradient(80% 80% at 50% 48%,transparent 60%,rgba(4,8,18,.55) 100%)}
#ab canvas#po{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:14}
.bloom{position:fixed;inset:-25%;z-index:52;pointer-events:none;opacity:0;will-change:transform,opacity;
  background:radial-gradient(closest-side,rgba(255,252,238,1) 0%,rgba(250,241,207,.92) 30%,rgba(243,227,163,.45) 58%,rgba(230,205,130,0) 100%)}
#ab .camera{position:relative;display:grid;place-items:center;will-change:transform}
#ab .env{position:relative;width:min(78vw,700px,70vh);aspect-ratio:1402/905;will-change:transform}
@media (orientation:portrait){ #ab .env{width:min(88vw,520px)} }
#ab .env > *{position:absolute}
#ab .sombra{left:3%;right:3%;top:12%;bottom:-8%;border-radius:40%;background:radial-gradient(closest-side,rgba(2,5,14,.7),transparent);filter:blur(16px)}
#ab .contato{left:1%;right:1%;bottom:-1%;height:5%;border-radius:50%;background:radial-gradient(closest-side,rgba(2,5,14,.65),transparent);filter:blur(5px)}
#ab .foto{background-size:100% 100%;background-repeat:no-repeat}
#ab .corpo{inset:0;filter:drop-shadow(0 -2px 3px rgba(30,20,5,.28))}
#ab .bolso{position:absolute;inset:0;background-image:url("assets/pecas/envelope-corpo-liso.webp");clip-path:polygon(0 0,9.1% 0,49.6% 57.3%,90% 0,100% 0,100% 100%,0 100%)}
#ab .interior{inset:0;clip-path:polygon(8% 0,91.2% 0,49.6% 58.2%);
  background:linear-gradient(180deg,rgba(4,8,18,.6),rgba(4,8,18,0) 40%),radial-gradient(70% 60% at 50% 30%,rgba(255,255,255,.05),transparent 70%),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .55  0 0 0 0 .62  0 0 0 0 .8  0 0 0 .22 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"),
    linear-gradient(180deg,#16233f,#1b2a49 60%,#1f3052)}
#ab .fechado{inset:0;background-image:url("assets/pecas/envelope-fechado.webp")}
#ab .aba{left:0;top:0;width:100%;height:78%;transform-origin:50% 0;transform-style:preserve-3d}
#ab .aba .frente{position:absolute;left:0;top:0;width:100%;height:128.2%;background-image:url("assets/pecas/envelope-fechado.webp");
  clip-path:polygon(0 0,100% 0,100% 2.6%,50.6% 79.8%,49.4% 79.8%,0 2.6%);backface-visibility:hidden}
#ab .aba .verso{position:absolute;left:0;top:0;width:100%;height:101.4%;background-image:url("assets/pecas/aba-forro-lisa.webp");transform:rotateX(180deg);backface-visibility:hidden}
#ab .lacre{position:absolute;left:50%;top:89%;width:25%;aspect-ratio:600/606;transform:translate(-50%,-50%);backface-visibility:hidden;
  background:url("assets/pecas/lacre.webp") center/100% 100% no-repeat;filter:drop-shadow(0 7px 9px rgba(10,16,32,.45)) drop-shadow(0 2px 2px rgba(10,16,32,.3))}
#ab .lacre svg{position:absolute;left:23%;top:23%;width:54%;height:54%;overflow:visible}
#ab .carta{left:6%;width:88%;top:4%;aspect-ratio:1400/946;background-image:url("assets/pecas/cartao.webp");transform-origin:50% 50%;filter:drop-shadow(0 14px 22px rgba(3,7,18,.5));--brilho:120%}
#ab .area{position:absolute;left:6.5%;right:6.5%;top:9.8%;bottom:9.6%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--tinta)}
#ab .bencao{font:500 1.42em/1.3 var(--texto);letter-spacing:.34em;text-transform:uppercase;opacity:.82;padding-left:.34em}
#ab .area svg.ge{width:7.8em;height:auto;margin:3.2em 0 2.2em;overflow:visible;filter:drop-shadow(0 .06em .04em rgba(60,40,10,.35))}
#ab .nomes{font:400 6.1em/1 var(--serifa);letter-spacing:.012em;text-shadow:0 .012em 0 rgba(255,255,255,.8)}
#ab .nomes .e{font-size:1.45em;line-height:0;position:relative;top:.2em;padding:0 .1em;-webkit-text-stroke:.012em #a5843c}
#ab .orn{display:flex;align-items:center;gap:.8em;width:36%;margin:2.6em 0 2.2em}
#ab .orn i{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(179,146,70,.9))}
#ab .orn i:last-child{background:linear-gradient(270deg,transparent,rgba(179,146,70,.9))}
#ab .orn b{width:.55em;height:.55em;transform:rotate(45deg);background:linear-gradient(135deg,#f2df9f,#a5843c)}
#ab .data{font:400 3.1em/1 var(--serifa);letter-spacing:.22em;padding-left:.22em;margin-bottom:2.6em;text-shadow:0 .02em 0 rgba(255,255,255,.8)}
#ab .pais{display:flex;align-items:center;justify-content:center;gap:4%;width:100%;font:italic 400 1.95em/1.5 var(--texto)}
#ab .pais p{flex:1}
#ab .pais p:first-child{text-align:right}
#ab .pais p:last-child{text-align:left}
#ab .pais i{width:1px;align-self:stretch;background:linear-gradient(180deg,transparent,rgba(179,146,70,.85),transparent)}
.folha-ouro{background:linear-gradient(110deg,#8f702e 0%,#e9d491 18%,#b8964b 34%,#fff4cc 50%,#a5843c 66%,#e6cf8a 82%,#8f702e 100%);
  background-size:280% 100%;background-position:var(--brilho) 0;-webkit-background-clip:text;background-clip:text;color:transparent!important;text-shadow:none!important}
#ab .reflexo{position:absolute;inset:0;pointer-events:none;mix-blend-mode:soft-light;opacity:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.9) 50%,transparent 65%);background-size:300% 100%}
#ab .pular{position:absolute;right:22px;bottom:22px;z-index:30;font:500 12px/1 var(--texto);letter-spacing:.2em;text-transform:uppercase;
  color:rgba(250,241,207,.85);background:rgba(8,14,28,.3);border:1px solid rgba(243,227,163,.3);padding:11px 16px;border-radius:999px;cursor:pointer;backdrop-filter:blur(4px)}

/* esconde o botão de play nativo do Safari/iPhone sobre o vídeo do topo (aparece quando o aparelho bloqueia o autoplay) */
.topo-video::-webkit-media-controls,
.topo-video::-webkit-media-controls-panel,
.topo-video::-webkit-media-controls-play-button,
.topo-video::-webkit-media-controls-start-playback-button,
.topo-video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none;opacity:0!important;pointer-events:none}

/* vídeo bloqueado pelo aparelho: mostra a capa com zoom lento (barato, roda na GPU) */
.topo-capa{position:absolute;inset:0;background:url("assets/video/capa-pc-hd.jpg") center/cover no-repeat;opacity:0;transition:opacity .6s}
@media (orientation:portrait){ .topo-capa{background-image:url("assets/video/capa-celular-hd.jpg")} }
.video-bloqueado .topo-capa{opacity:1;animation:capaLenta 14s ease-in-out infinite alternate}
@keyframes capaLenta{from{transform:scale(1)}to{transform:scale(1.08) translate(-1%,-1%)}}
