/* Newsletter: bloco de subscrição e páginas de confirmar e anular. */
.nl-secao { overflow: hidden; }
.nl-secao__simbolo { position: absolute; left: -80px; bottom: -90px; width: 380px; opacity: .06; pointer-events: none; }
.nl-bloco { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
@media (max-width: 900px) { .nl-bloco { grid-template-columns: minmax(0, 1fr); } }
.nl-bloco h2 { max-width: 14em; }
.nl-form { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); border-radius: 20px; padding: clamp(20px, 3vw, 32px); }
.nl-form .campo > label, .nl-form legend { color: #C9CEDA; }
.nl-form input[type=email], .nl-form input[type=text] { background: rgba(255,255,255,.95); }
.nl-opcional { font-weight: 400; opacity: .7; }
.nl-interesses { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.nl-interesses legend { font: 600 .78rem/1.3 var(--f-texto); letter-spacing: .04em; margin-bottom: 8px; padding: 0; }
.nl-chip { position: relative; cursor: pointer; }
.nl-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.nl-chip > span { display: inline-flex; align-items: center; gap: 8px; padding: .6em 1em; border-radius: 999px; border: 1px solid rgba(255,255,255,.2); color: #DDE1EA; font-size: .85rem; transition: all .2s; }
.nl-chip input:checked + span { background: var(--papel); color: var(--noite); border-color: var(--papel); }
.nl-chip input:focus-visible + span { outline: 2px solid var(--areia); outline-offset: 2px; }
.nl-consentimento { color: #C9CEDA; font-size: .85rem; }
.nl-consentimento a { color: var(--areia); }
.secao--escura .nl-form .check input { accent-color: var(--areia); }

.nl-pagina { min-height: 56vh; display: grid; place-items: center; }
.nl-cartao { max-width: 560px; margin: 0 auto; text-align: left; }
.nl-cartao h1 { font-size: clamp(1.8rem, 4vw, 2.6rem); }
.nl-cartao .nl-interesses > span, .nl-cartao .nl-chip > span { color: var(--tinta-2); border-color: var(--linha); }
.nl-cartao .nl-chip input:checked + span { background: var(--azul); color: var(--papel); border-color: var(--azul); }
.nl-cartao .nl-interesses legend { color: var(--tinta-2); }
