:root{
  --marinho:#16233B; --azul:#1A5A9E; --azul-claro:#2F7BD0; --gelo:#F5F5F3; --papel:#FFFFFF;
  --tinta:#1B2433; --cinza:#5B6474; --linha:#DFE3EA; --verde:#1F9D6B;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
main{overflow-x:clip}
body{font-family:'Archivo',system-ui,sans-serif;color:var(--tinta);background:var(--gelo);line-height:1.55;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:repeating-linear-gradient(135deg,transparent 0 22px,rgba(22,35,59,.035) 22px 23px)}
a{color:inherit}
.envolve{max-width:1180px;margin:0 auto;padding:0 24px}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}

/* topo */
.idioma{white-space:nowrap;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.08em;margin-left:28px;color:var(--cinza)}
nav .idioma a{font-size:inherit;text-decoration:none;color:var(--cinza);margin-left:0}
.idioma a:hover,.idioma b{color:var(--marinho)}
.idioma b{font-weight:500}
header{position:sticky;top:0;z-index:20;background:rgba(245,245,243,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
header .envolve{display:flex;align-items:center;justify-content:space-between;height:68px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:'Poppins';font-weight:600;font-size:22px;color:var(--marinho)}
.marca svg{width:30px;height:30px}
.marca small{font-family:'IBM Plex Mono';font-size:11px;font-weight:500;color:var(--azul);letter-spacing:.14em;text-transform:uppercase;margin-left:2px;padding:3px 7px;border:1px solid var(--azul)}
nav a{font-size:15px;color:var(--cinza);text-decoration:none;margin-left:28px}
nav a:hover{color:var(--marinho)}
.botao{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:15px;text-decoration:none;border:0;cursor:pointer;padding:15px 26px;transition:transform .15s ease,background .15s ease}
.botao.cheio{background:var(--azul);color:#fff}
.botao.cheio:hover{background:var(--marinho);transform:translateY(-1px)}
.botao.contorno{background:transparent;color:var(--marinho);border:1px solid #9FB3CC}
.botao.contorno:hover{border-color:var(--marinho)}
nav .botao{padding:11px 18px;margin-left:28px;background:var(--marinho);color:#fff;white-space:nowrap}

/* hero */
.hero{padding:88px 0 96px}
.hero .envolve{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.etiqueta{display:inline-flex;align-items:center;gap:10px;background:var(--marinho);color:#E8EDF5;font-size:12px;padding:8px 14px}
.etiqueta::before{content:"";width:8px;height:8px;background:var(--azul-claro)}
h1{font-family:'Poppins';font-weight:700;font-size:clamp(44px,6vw,76px);line-height:1.02;letter-spacing:-.02em;color:var(--marinho);margin:26px 0 24px}
h1 .bloco{display:inline;background:var(--azul);color:#fff;padding:0 .16em;-webkit-box-decoration-break:clone;box-decoration-break:clone;line-height:1.16}
.lead{font-size:20px;color:var(--cinza);max-width:540px}
.acoes{display:flex;gap:14px;flex-wrap:wrap;margin:36px 0 34px}
.selos{display:flex;gap:28px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--linha);font-size:14.5px;color:var(--cinza)}
.selos span::before{content:"";display:inline-block;width:0;height:0;border-left:7px solid var(--azul);border-top:5px solid transparent;border-bottom:5px solid transparent;margin-right:10px}

/* palco dos cartões */
.palco{position:relative;height:520px;display:flex;align-items:center;justify-content:center}
.cartao{position:absolute;width:320px;background:var(--papel);border:1px solid var(--linha);box-shadow:0 30px 60px -28px rgba(22,35,59,.45);padding:26px 26px 22px}
.cartao .topo{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.avatar{width:54px;height:54px;display:grid;place-items:center;font-family:'Poppins';font-weight:700;font-size:20px;color:#fff}
.cartao h3{font-family:'Poppins';font-size:19px;font-weight:600;color:var(--marinho);line-height:1.2}
.cartao .local{font-size:13px;color:var(--cinza)}
.cartao .rotulo{font-size:10.5px;color:var(--azul);margin:14px 0 6px}
.cartao p{font-size:14.5px;color:var(--tinta)}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.tags i{font-style:normal;font-size:12px;padding:4px 9px;background:#EEF3FA;color:var(--azul)}
.gestos{display:flex;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--linha)}
.gesto{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--linha);font-size:18px;color:var(--cinza)}
.gesto.sim{background:var(--azul);border-color:var(--azul);color:#fff}
.c2,.c3{height:403px}
.c3{transform:translate(26px,26px) rotate(5deg);opacity:.55}
.c2{transform:translate(13px,13px) rotate(2.5deg);opacity:.8}
.c1{z-index:3;animation:curtir 7s ease-in-out infinite}
.carimbo{position:absolute;bottom:31px;left:50%;margin-left:-46px;font-family:'IBM Plex Mono';font-weight:500;font-size:13px;letter-spacing:.14em;color:var(--verde);border:2px solid var(--verde);padding:4px 10px;transform:rotate(-8deg);opacity:0;animation:carimbo 7s ease-in-out infinite}
.match{position:absolute;z-index:5;width:340px;background:var(--marinho);color:#fff;padding:26px;opacity:0;transform:scale(.92);animation:match 7s ease-in-out infinite;box-shadow:0 30px 70px -26px rgba(22,35,59,.7)}
.match .mono{font-size:11px;color:#9DB9DD}
.match h4{font-family:'Poppins';font-size:26px;font-weight:700;margin:8px 0 14px;line-height:1.1}
.match .par{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.match .par .avatar{width:44px;height:44px;font-size:16px}
.match .par b{font-size:22px;color:#9DB9DD}
.match p{font-size:14px;color:#C9D6E8}
@keyframes curtir{0%,30%{transform:none;opacity:1}46%{transform:translate(420px,-30px) rotate(18deg);opacity:0}47%,100%{transform:translate(420px,-30px) rotate(18deg);opacity:0}}
@keyframes carimbo{0%,16%{opacity:0}24%,40%{opacity:1}46%,100%{opacity:0}}
@keyframes match{0%,48%{opacity:0;transform:scale(.92)}54%,88%{opacity:1;transform:scale(1)}96%,100%{opacity:0;transform:scale(.96)}}

/* seções */
section{padding:96px 0}
.claro{background:var(--papel);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.escuro{background:var(--marinho);color:#E8EDF5}
.sobre-titulo{font-size:12px;color:var(--azul);margin-bottom:14px}
.escuro .sobre-titulo{color:#9DB9DD}
h2{font-family:'Poppins';font-weight:700;font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.015em;color:var(--marinho);max-width:760px}
.escuro h2{color:#fff}
.sub{font-size:18px;color:var(--cinza);max-width:640px;margin-top:16px}
.escuro .sub{color:#B8C7DC}
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:56px;border:1px solid var(--linha)}
.passo{padding:34px 30px;border-right:1px solid var(--linha);background:var(--gelo)}
.passo:last-child{border-right:0}
.passo .n{font-family:'IBM Plex Mono';font-size:13px;color:var(--azul)}
.passo h3{font-family:'Poppins';font-weight:600;font-size:22px;color:var(--marinho);margin:14px 0 10px}
.passo p{color:var(--cinza);font-size:16px}
.grade{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:52px}
.item{border:1px solid rgba(157,185,221,.25);padding:30px;background:rgba(255,255,255,.03)}
.item h3{font-family:'Poppins';font-weight:600;font-size:20px;color:#fff;margin-bottom:10px;display:flex;gap:12px;align-items:center}
.item h3::before{content:"";width:10px;height:10px;background:var(--azul-claro);flex:none}
.item p{color:#B8C7DC;font-size:16px}
.publico{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
.publico div{border-top:3px solid var(--azul);padding-top:20px}
.publico h3{font-family:'Poppins';font-weight:600;font-size:20px;color:var(--marinho);margin-bottom:8px}
.publico p{color:var(--cinza)}

/* lista de espera */
.espera .envolve{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
form{background:var(--papel);border:1px solid var(--linha);padding:34px;box-shadow:0 30px 60px -40px rgba(22,35,59,.4)}
.linha2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:13px;font-weight:600;color:var(--marinho);margin:0 0 6px}
input,select{width:100%;font:inherit;font-size:16px;padding:13px 14px;border:1px solid #C9D2DE;background:#fff;color:var(--tinta);margin-bottom:16px;border-radius:0}
input:focus,select:focus{outline:2px solid var(--azul);outline-offset:-1px;border-color:var(--azul)}
.armadilha{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aceite{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--cinza);margin:4px 0 22px}
.aceite input{width:18px;height:18px;margin:2px 0 0;flex:none}
form .botao{width:100%;justify-content:center}
.aviso{margin-top:14px;font-size:15px;min-height:22px}
.aviso.ok{color:var(--verde)} .aviso.erro{color:#B42318}

footer{padding:36px 0;border-top:1px solid var(--linha);font-size:14px;color:var(--cinza)}
footer .envolve{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

@media (max-width:920px){
  .hero{padding:48px 0 64px}
  .hero .envolve,.espera .envolve{grid-template-columns:1fr}
  .palco{height:470px}
  .passos,.publico{grid-template-columns:1fr}
  .passo{border-right:0;border-bottom:1px solid var(--linha)}
  .grade{grid-template-columns:1fr}
  nav > a:not(.botao){display:none}
  .idioma{margin-left:0}
  nav .botao{margin-left:16px}
  nav .botao{padding:10px 14px;font-size:14px}
  .marca{font-size:20px}
}
@media (max-width:520px){nav .botao{display:none}.idioma{font-size:13px}.linha2{grid-template-columns:1fr}.cartao,.match{width:290px}}
@media (prefers-reduced-motion:reduce){.c1,.carimbo,.match{animation:none}.match{opacity:1;transform:none;position:relative}.c1,.c2,.c3,.carimbo{display:none}}
