/* =========================================================================
   NEW Link -- página pública de indicação do parceiro.
   Identidade do site (NEW-WEBSITE): vinho #862029, Fraunces + Montserrat.
   ========================================================================= */
:root {
	--ni-red: #862029;
	--ni-red-bright: #B22234;
	--ni-ink: #232323;
	--ni-slate: #535353;
	--ni-paper: #FAFAFA;
	--ni-paper-alt: #F0EFED;
	--ni-border: rgba(0, 0, 0, .08);
	--ni-radius: 18px;
	--ni-radius-pill: 50px;
	--ni-shadow-sm: 0 6px 18px rgba(35, 21, 12, .06);
	--ni-shadow: 0 20px 42px rgba(35, 21, 12, .12);
}

* { box-sizing: border-box; }
body {
	margin: 0;
	font-family: 'Montserrat', system-ui, -apple-system, sans-serif;
	color: var(--ni-ink);
	background: var(--ni-paper);
	-webkit-font-smoothing: antialiased;
}

/* fundo com o vinho da marca no topo, papel embaixo */
.lk-bg {
	position: relative; /* ancora o botão de idioma no canto */
	min-height: 100vh;
	background: linear-gradient(180deg, var(--ni-red) 0%, var(--ni-red) 118px, var(--ni-paper) 118px);
	padding: 0 18px 56px;
}
.lk-wrap { max-width: 520px; margin: 0 auto; padding-top: 40px; }

/* ---------- cabeçalho do parceiro ---------- */
.lk-head { text-align: center; }
.lk-photo {
	width: 118px; height: 118px; border-radius: 50%;
	object-fit: cover; background: var(--ni-paper-alt);
	border: 4px solid #fff; box-shadow: var(--ni-shadow-sm);
	display: block; margin: 0 auto 16px;
}
.lk-photo-empty {
	display: flex; align-items: center; justify-content: center;
	font-family: 'Fraunces', Georgia, serif; font-size: 2.6rem; color: var(--ni-red);
}
.lk-name {
	font-family: 'Fraunces', Georgia, serif;
	font-size: 1.72rem; font-weight: 600; margin: 0 0 4px; line-height: 1.2;
}
.lk-headline {
	font-size: .94rem; color: var(--ni-slate); margin: 0 auto 6px;
	/* Frase de duas linhas com a segunda quase vazia fica torta. A largura
	   máxima obriga a quebrar antes da borda e o balance reparte as linhas
	   por igual (onde o navegador não conhece balance, a largura sozinha já
	   melhora). */
	max-width: 34ch; text-wrap: balance; line-height: 1.5;
}
.lk-bio { font-size: .9rem; color: var(--ni-slate); line-height: 1.6; margin: 12px 0 0; }

/* selo de parceiro NEW */
.lk-badge {
	display: inline-flex; align-items: center; gap: 6px;
	background: rgba(134, 32, 41, .08); color: var(--ni-red);
	font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
	padding: 5px 12px; border-radius: var(--ni-radius-pill); margin-top: 10px;
}

/* ---------- botões de link ---------- */
.lk-buttons { margin: 28px 0 0; display: flex; flex-direction: column; gap: 12px; }
.lk-btn {
	display: flex; align-items: center; gap: 12px;
	background: #fff; border: 1px solid var(--ni-border); border-radius: var(--ni-radius);
	padding: 16px 20px; text-decoration: none; color: var(--ni-ink);
	font-size: .95rem; font-weight: 600;
	box-shadow: var(--ni-shadow-sm);
	transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.lk-btn:hover { transform: translateY(-2px); box-shadow: var(--ni-shadow); border-color: rgba(134,32,41,.25); }
.lk-btn i { color: var(--ni-red); width: 22px; text-align: center; font-size: 1.05rem; }
.lk-btn span { flex: 1; }
.lk-btn::after { content: '›'; color: var(--ni-slate); font-size: 1.3rem; line-height: 1; opacity: .5; }

/* ---------- bloco de indicação (o coração) ---------- */
.lk-refer {
	margin-top: 28px; background: #fff; border: 1px solid var(--ni-border);
	border-radius: var(--ni-radius); box-shadow: var(--ni-shadow-sm); overflow: hidden;
}
.lk-refer-head { background: var(--ni-red); color: #fff; padding: 20px 22px; }
.lk-refer-head h2 {
	font-family: 'Fraunces', Georgia, serif; font-size: 1.2rem; font-weight: 600; margin: 0 0 4px;
}
.lk-refer-head p { margin: 0; font-size: .84rem; opacity: .9; line-height: 1.5; }
.lk-refer-body { padding: 20px 22px 22px; }
.lk-field { margin-bottom: 14px; }
.lk-field label { display: block; font-size: .78rem; font-weight: 700; color: var(--ni-slate); margin-bottom: 6px; }
.lk-field input, .lk-field textarea {
	width: 100%; border: 1px solid var(--ni-border); border-radius: 10px;
	padding: 12px 14px; font-family: inherit; font-size: .92rem; color: var(--ni-ink);
	background: var(--ni-paper); transition: border-color .14s, background .14s;
}
.lk-field input:focus, .lk-field textarea:focus {
	outline: none; border-color: var(--ni-red); background: #fff;
}
.lk-submit {
	width: 100%; border: 0; border-radius: var(--ni-radius-pill);
	background: var(--ni-red); color: #fff; font-family: inherit;
	font-size: .96rem; font-weight: 700; padding: 15px 20px; cursor: pointer;
	transition: background .14s, transform .14s;
}
.lk-submit:hover { background: var(--ni-red-bright); transform: translateY(-1px); }
.lk-submit:disabled { opacity: .6; cursor: default; transform: none; }
.lk-note { font-size: .74rem; color: var(--ni-slate); text-align: center; margin: 12px 0 0; line-height: 1.5; }

/* estado de sucesso */
.lk-done { text-align: center; padding: 34px 22px; }
.lk-done i { font-size: 2.6rem; color: #1f9254; }
.lk-done h2 { font-family: 'Fraunces', Georgia, serif; font-size: 1.3rem; margin: 14px 0 8px; }
.lk-done p { color: var(--ni-slate); font-size: .9rem; line-height: 1.6; margin: 0; }

/* ---------- rodapé ---------- */
.lk-foot { text-align: center; margin-top: 30px; }
.lk-foot img { height: 30px; opacity: .55; }
.lk-foot p { font-size: .74rem; color: var(--ni-slate); margin: 10px 0 0; }
.lk-foot a { color: var(--ni-red); text-decoration: none; font-weight: 600; }

/* ---------- página não encontrada ---------- */

@media (max-width: 420px) {
	.lk-wrap { padding-top: 30px; }
	.lk-name { font-size: 1.5rem; }
}

/* Logo da marca no círculo do topo: cabe inteira, sem cortar (a foto do
   parceiro continua preenchendo o círculo, essa aqui não). */
.lk-photo-brand { object-fit: contain; background: #fff; padding: 13px; }

/* Ao voltar do envio (?enviado=1#indicar) o navegador pula pra cá: um respiro
   em cima pra confirmação não colar no topo da janela. */
#indicar { scroll-margin-top: 18px; }

/* Botão de idioma (PT/EN). Solto no canto porque a página não tem menu: é uma
   coluna só. Fica sobre a faixa vinho do topo, então usa branco translúcido. */
.lk-lang {
	position: absolute; top: 16px; right: 16px; z-index: 5;
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 42px; padding: 6px 12px;
	font-family: 'Montserrat', system-ui, sans-serif;
	font-size: .74rem; font-weight: 700; letter-spacing: .06em;
	color: #fff; text-decoration: none;
	background: rgba(255, 255, 255, .16);
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: var(--ni-radius-pill);
	backdrop-filter: blur(4px);
	transition: background .15s, border-color .15s;
}
.lk-lang:hover { background: rgba(255, 255, 255, .28); border-color: rgba(255, 255, 255, .6); }
.lk-lang:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
