/* Nelma Core — vitrine de produtos, ficha, CTA de artigo e quiz. P&B, sem cantos. */
.nelma-produtos { display: grid; gap: 2.5rem 2rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 1.5rem 0 2.5rem; }
.nelma-produtos--1 { grid-template-columns: minmax(0, 1fr); }
.nelma-produtos--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 960px) { .nelma-produtos { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .nelma-produtos, .nelma-produtos--2 { grid-template-columns: 1fr; } }
.nelma-produto { border: 1px solid #e3e3e0; display: flex; flex-direction: column; background: #fff; transition: border-color .3s; }
.nelma-produto:hover { border-color: #0d0d0d; }
.nelma-produto__imagem { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: #f5f5f3; }
.nelma-produto--ebook .nelma-produto__imagem { aspect-ratio: 4 / 5; }
.nelma-produto__imagem img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); transition: filter .7s cubic-bezier(.22,1,.36,1); }
.nelma-produto--ebook .nelma-produto__imagem img { object-fit: contain; padding: 1rem; }
.nelma-produto:hover .nelma-produto__imagem img { filter: grayscale(0); }
.nelma-produto__sem-imagem { display: block; width: 100%; height: 100%; background: repeating-linear-gradient(45deg, #f5f5f3 0 12px, #ecece9 12px 24px); }
.nelma-produto__texto { padding: 1.4rem 1.4rem 1.6rem; display: flex; flex-direction: column; flex: 1; }
.nelma-produto__titulo { font-size: 1.35rem; margin: 0 0 .5rem; line-height: 1.2; }
.nelma-produto__titulo a { text-decoration: none; color: #0d0d0d; }
.nelma-produto__resumo { color: #6b6b6b; font-size: .95rem; margin: 0 0 1rem; }
.nelma-produto__meta { display: flex; justify-content: space-between; gap: 1rem; font-size: .85rem; border-top: 1px solid #e3e3e0; padding-top: .75rem; margin: auto 0 1rem; }
.nelma-produto__meta strong { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; font-size: 1.1rem; }
.nelma-produto__acoes { display: flex; align-items: center; gap: 1.25rem; flex-wrap: wrap; margin: 0; }

.nelma-ficha { border: 1px solid #0d0d0d; padding: 1.75rem; display: grid; gap: .75rem; align-content: start; background: #fff; }
.nelma-ficha dl { margin: 0 0 .75rem; display: grid; grid-template-columns: auto 1fr; gap: .5rem 1rem; font-size: .95rem; }
.nelma-ficha dt { font-size: .6875rem; letter-spacing: .16em; text-transform: uppercase; font-weight: 600; color: #6b6b6b; padding-top: .2rem; }
.nelma-ficha dd { margin: 0; }
.nelma-ficha .botao { width: 100%; }

.nelma-cta-artigo { margin-top: 3rem; border-top: 2px solid #0d0d0d; padding-top: 2rem; max-width: 44rem; }
.nelma-cta-artigo h2 { font-size: clamp(1.5rem, 3vw, 2rem); }

/* Quiz */
.nelma-quiz { border: 1px solid #0d0d0d; background: #fff; max-width: 46rem; margin: 2rem 0; }
.nelma-quiz__progresso { height: 3px; background: #e3e3e0; }
.nelma-quiz__progresso span { display: block; height: 100%; background: #0d0d0d; transition: width .4s cubic-bezier(.22,1,.36,1); }
.nelma-quiz__form, .nelma-quiz__resultado { padding: clamp(1.5rem, 4vw, 2.75rem); }
.nelma-quiz__resultado:focus { outline: none; }
.nelma-quiz fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.nelma-quiz legend { display: block; margin-bottom: 1.25rem; padding: 0; }
.nelma-quiz__pergunta { display: block; font-family: 'Playfair Display', Georgia, serif; font-size: clamp(1.4rem, 3vw, 1.9rem); line-height: 1.2; color: #0d0d0d; }
.nelma-quiz__opcoes { display: grid; gap: .6rem; }
.nelma-quiz__opcao { display: flex; align-items: center; gap: .9rem; border: 1px solid #e3e3e0; padding: .95rem 1.1rem; cursor: pointer; transition: border-color .2s, background .2s; }
.nelma-quiz__opcao:hover { border-color: #0d0d0d; }
.nelma-quiz__opcao input { appearance: none; -webkit-appearance: none; width: 1.1rem; height: 1.1rem; border: 1px solid #0d0d0d; margin: 0; flex: none; display: grid; place-content: center; }
.nelma-quiz__opcao input:checked { background: #0d0d0d; box-shadow: inset 0 0 0 3px #fff; }
.nelma-quiz__opcao:has(input:checked) { border-color: #0d0d0d; background: #f5f5f3; }
.nelma-quiz__nav { display: flex; justify-content: space-between; gap: 1rem; margin-top: 1.75rem; flex-wrap: wrap; }
.nelma-quiz__nav [data-avancar]:only-child, .nelma-quiz__nav [type=submit]:only-child { margin-left: auto; }
.nelma-quiz__aviso { color: #0d0d0d; font-weight: 600; border-left: 2px solid #0d0d0d; padding-left: .75rem; margin-top: 1rem; }
.nelma-quiz__lead label { display: block; font-size: .72rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #6b6b6b; }
.nelma-quiz__lead input[type=text], .nelma-quiz__lead input[type=email], .nelma-quiz__lead input[type=tel] { margin-top: .35rem; }
.nelma-quiz__consentimento label { display: flex; gap: .75rem; align-items: flex-start; text-transform: none; letter-spacing: 0; font-weight: 400; font-size: .875rem; color: #1a1a1a; }
.nelma-quiz__consentimento input { margin-top: .25rem; width: 1rem; height: 1rem; accent-color: #0d0d0d; }
.nelma-quiz__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.nelma-quiz__titulo-resultado { font-size: clamp(1.75rem, 4vw, 2.5rem); }
.nelma-quiz__texto-resultado { font-size: 1.1rem; }
.nelma-quiz__rec-titulo { margin-top: 2rem; }
.nelma-quiz__nota { font-size: .8rem; color: #6b6b6b; margin-top: 1.5rem; }
