*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Jost',system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:#fff;min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:48px 18px;-webkit-font-smoothing:antialiased}
.page{width:100%;max-width:520px;text-align:center}
.avatar{width:108px;height:108px;border-radius:50%;object-fit:cover;border:3px solid var(--accent);margin:0 auto 16px;display:block;box-shadow:0 8px 30px rgba(0,0,0,.35)}
.brandlogo{max-width:260px;max-height:88px;width:auto;height:auto;object-fit:contain;margin:0 auto 10px;display:block}
h1{font-size:26px;font-weight:700;letter-spacing:-.3px;margin-bottom:6px}
.bio{color:#d9d7cf;font-size:15px;margin:0 auto 26px;max-width:44ch;line-height:1.55}

.links{display:flex;flex-direction:column;gap:14px}

/* Links */
.link{display:flex;align-items:center;justify-content:center;gap:10px;position:relative;background:rgba(255,255,255,.06);border:1.5px solid var(--accent);color:#fff;text-decoration:none;padding:15px 44px;border-radius:14px;font-size:16px;font-weight:600;transition:transform .12s ease,background .12s ease,color .12s ease}
.link:hover{transform:translateY(-2px);background:var(--accent);color:#14260a}
.link .ic{position:absolute;left:16px;display:flex;align-items:center}
.link .ic.thumb img{width:30px;height:30px;border-radius:8px;object-fit:cover;display:block}
.link .lbl{line-height:1.2}

/* Botão "Adicionar contacto" (vCard) */
.vcard-btn{display:inline-flex;align-items:center;gap:8px;margin:-6px auto 22px;color:var(--accent);border:1.5px solid var(--accent);background:transparent;border-radius:999px;padding:8px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .12s ease,color .12s ease}
.vcard-btn:hover{background:var(--accent);color:#14260a}
/* Link em destaque (featured) */
.link.highlight{background:var(--accent);color:#14260a;font-size:17px;padding:18px 44px;box-shadow:0 6px 22px rgba(0,0,0,.28)}
.link.highlight:hover{transform:translateY(-2px);filter:brightness(1.05)}

/* Grupos / separadores */
.group{margin:22px 0 4px}
.group.plain{color:#fff;font-size:14px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;opacity:.9}
.group.line{display:flex;align-items:center;gap:12px;color:#cfcdc4;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase}
.group.line:before,.group.line:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.22)}
.group.line span{white-space:nowrap}
.group.solid{background:var(--accent);color:#14260a;font-size:14px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:10px 14px;border-radius:12px}

/* Redes sociais */
.socials{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:28px}
.soc{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--accent);color:var(--accent);text-decoration:none;transition:transform .12s ease,background .12s ease,color .12s ease}
.soc:hover{background:var(--accent);color:#14260a;transform:translateY(-2px)}

/* Rodapé */
.ft{margin-top:26px;color:#9a988e;font-size:13px;font-family:inherit}
.footerlinks{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px}
.footerlinks a{color:#cfcdc4;text-decoration:none;font-family:inherit}
.footerlinks a:hover{color:#fff;text-decoration:underline}
.footerlinks .sep{color:#5f5e5a}
.ft .copy{margin-top:12px;font-family:inherit}
.ft .copy a{color:#fff;text-decoration:none;font-family:inherit}
.ft .copy a:hover{text-decoration:underline}

/* Botão flutuante WhatsApp */
.wa-fab{position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.35);z-index:60;transition:transform .12s ease}
.wa-fab:hover{transform:translateY(-2px)}

@media(max-width:420px){h1{font-size:22px}.link{font-size:15px}}
