/* Conceito: a capa é a protagonista. Fundo preto-quente, texto à esquerda, livro à direita,
   e um painel nude fecha a Home na compra. Tipografia de capa (Bodoni) contra sans neutra. */
:root {
  --noir: #0b0909;
  --grafite: #1c1718;
  --grafite-2: #272022;
  --vinho: #3a1e29;
  --vinho-2: #25131a;
  --malva: #a98b97;
  --malva-d: #7a6370;
  --nude: #e7d4c8;
  --creme: #f3ebe0;
  --ouro: #c9ae88;
  --txt: #e8dfd5;
  --txt-dim: #b9adaa;
  --tinta: #241a1d;
  --tinta-dim: #5b4a50;
  --linha: rgba(243, 235, 224, 0.16);
  --linha-tinta: rgba(36, 26, 29, 0.2);

  --font-quote: "Cormorant Garamond", "Bodoni Moda", Georgia, serif;
  --font-display: "Bodoni Moda", "Didot", "Bodoni 72", Georgia, serif;
  --font-ui: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;

  --gutter: clamp(1rem, 4.5vw, 2rem);
  --maxw: 76rem;
  --hdr-h: 3.5rem;
  --arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 12'%3E%3Cpath d='M0 6h17M12 1l5 5-5 5' fill='none' stroke='black' stroke-width='1.6'/%3E%3C/svg%3E");
  color-scheme: dark;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--noir);
  color: var(--txt);
  font: 400 1.0625rem/1.6 var(--font-ui);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
p, h1, h2, h3, ol, ul, figure, blockquote, dl, dd { margin: 0; padding: 0; }
ol, ul { list-style: none; }
h1, h2, h3 { font-family: var(--font-display); font-weight: 400; text-wrap: balance; }
:focus-visible { outline: 2px solid var(--ouro); outline-offset: 3px; border-radius: 2px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 1rem; top: -4rem; z-index: 100; background: var(--creme); color: var(--noir); padding: 0.7rem 1rem; border-radius: 4px; }
.skip:focus { top: 1rem; }
.wrap { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: var(--gutter); }
html.menu-open { overflow: hidden; }

.eyebrow {
  font: 600 0.72rem/1.2 var(--font-ui);
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--malva);
}

/* ---------- Botões ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.7em;
  min-height: 3.25rem; padding: 0 1.75rem;
  border-radius: 999px; border: 1px solid var(--nude);
  background: var(--nude); color: var(--noir);
  font: 600 0.78rem/1 var(--font-ui); letter-spacing: 0.16em; text-transform: uppercase;
  text-decoration: none; cursor: pointer;
  transition: background 0.25s, color 0.25s, border-color 0.25s, transform 0.25s;
}
.btn::after {
  content: ""; width: 1.15em; height: 0.7em; background: currentColor;
  -webkit-mask: var(--arrow) center / contain no-repeat; mask: var(--arrow) center / contain no-repeat;
  transition: transform 0.25s;
}
.btn:hover { background: var(--creme); border-color: var(--creme); transform: translateY(-1px); }
.btn:hover::after { transform: translateX(3px); }
.btn--ghost { background: transparent; color: var(--creme); border-color: rgba(243, 235, 224, 0.4); }
.btn--ghost:hover { background: var(--creme); color: var(--noir); }
.btn--sm { min-height: 2.5rem; padding: 0 1.1rem; font-size: 0.7rem; }
.btn--sm::after { display: none; }

/* ---------- Header ---------- */
.hdr {
  position: sticky; top: env(safe-area-inset-top, 0px); z-index: 50;
  background: linear-gradient(180deg, rgba(11, 9, 9, 0.75), rgba(11, 9, 9, 0));
  border-bottom: 1px solid transparent; transition: border-color 0.3s, background 0.3s;
}
.hdr.is-scrolled { background: rgba(11, 9, 9, 0.9); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom-color: var(--linha); }
body[data-page="home"] .hdr { margin-bottom: calc(var(--hdr-h) * -1); }
.hdr__in { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; height: var(--hdr-h); }
.hdr__brand {
  font: 500 0.82rem/1 var(--font-display); letter-spacing: 0.3em; text-transform: uppercase;
  text-decoration: none; color: var(--creme); white-space: nowrap;
}
.hdr__nav { display: none; }
.hdr__burger {
  display: grid; place-content: center; gap: 6px; width: 2.75rem; height: 2.75rem; margin-left: -0.6rem;
  background: none; border: 0; cursor: pointer; color: var(--creme);
}
.hdr__burger span { display: block; width: 22px; height: 1.5px; background: currentColor; transition: transform 0.3s; }
.hdr__burger[aria-expanded="true"] span:first-child { transform: translateY(3.75px) rotate(45deg); }
.hdr__burger[aria-expanded="true"] span:last-child { transform: translateY(-3.75px) rotate(-45deg); }
.hdr__buy .short { display: inline; }
.hdr__buy .long { display: none; }

.mmenu {
  position: fixed; inset: 0; z-index: 40; overflow-y: auto;
  padding: calc(var(--hdr-h) + env(safe-area-inset-top, 0px) + 1.5rem) var(--gutter) calc(2rem + env(safe-area-inset-bottom, 0px));
  background: var(--noir);
  display: flex; flex-direction: column; justify-content: space-between; gap: 2rem;
}
.mmenu[hidden] { display: none; }
.mmenu__nav { display: flex; flex-direction: column; }
.mmenu__link {
  font: 400 clamp(1.9rem, 8vw, 2.6rem)/1.15 var(--font-display); text-decoration: none; color: var(--creme);
  padding: 0.85rem 0; border-bottom: 1px solid var(--linha);
}
.mmenu__link[aria-current="page"] { color: var(--ouro); font-style: italic; }
.mmenu__buy { width: 100%; }

/* ---------- Hero ---------- */
.hero { position: relative; overflow: hidden; isolation: isolate; background: var(--noir); padding-block: 0 clamp(1.5rem, 4vw, 2.5rem); }
.hero__scene { display: none; }
.hero__grid { display: grid; gap: 1.6rem; grid-template-areas: "photo" "head" "foot" "book"; justify-items: start; }
.hero__photo { grid-area: photo; position: relative; justify-self: stretch; margin-inline: calc(var(--gutter) * -1); aspect-ratio: 5 / 6.5; -webkit-mask-image: linear-gradient(180deg, #000 58%, transparent 100%); mask-image: linear-gradient(180deg, #000 58%, transparent 100%); }
.hero__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 8%; }
.hero__head { grid-area: head; display: grid; gap: 1rem; margin-top: -3.5rem; position: relative; }
.hero__book { grid-area: book; justify-self: stretch; margin: 0.5rem calc(var(--gutter) * -1) 0; -webkit-mask-image: linear-gradient(180deg, transparent, #000 14%, #000 82%, transparent), linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); -webkit-mask-composite: source-in; mask-image: linear-gradient(180deg, transparent, #000 14%, #000 82%, transparent), linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-composite: intersect; }
.hero__book img { width: 100%; height: auto; }
.hero__foot { grid-area: foot; display: grid; gap: 1.5rem; width: 100%; }
.hero h1 {
  font-size: clamp(2.7rem, 12.2vw, 5.6rem); line-height: 0.98; letter-spacing: 0.01em;
  text-transform: uppercase; color: var(--creme); font-weight: 400;
}
.hero__sub { font: italic 400 clamp(1.35rem, 5.6vw, 1.9rem)/1.25 var(--font-display); color: var(--nude); max-width: 22ch; }
.hero__lista { display: grid; gap: 0.15rem; color: var(--txt-dim); font-size: 1rem; }
.hero__frase {
  font: italic 400 clamp(1.25rem, 5vw, 1.55rem)/1.35 var(--font-display); color: var(--creme);
  padding-left: 1rem; border-left: 1px solid var(--ouro); max-width: 26ch;
}
.hero__cta { display: grid; gap: 0.9rem; justify-items: start; }
.hero__cta .btn { width: 100%; }
.hero__meta { font-size: 0.82rem; letter-spacing: 0.06em; color: var(--txt-dim); }

/* Livro: mockup 3D recortado (a perspectiva e a sombra já vêm na imagem) */
.livro { position: relative; }
.livro img { width: 100%; height: auto; filter: drop-shadow(0 38px 34px rgba(0, 0, 0, 0.6)) drop-shadow(0 0 70px rgba(169, 139, 151, 0.22)); }

/* ---------- Gancho (fama → propósito) ---------- */
.gancho { padding-block: clamp(1.5rem, 4vw, 3rem) clamp(3.5rem, 8vw, 6rem); background: var(--noir); }
.gancho__title { display: grid; gap: 0.6rem; max-width: 28ch; margin-bottom: clamp(2rem, 5vw, 3.25rem); }
.gancho__title span { font-size: clamp(1.3rem, 5vw, 1.8rem); line-height: 1.25; color: var(--txt-dim); }
.gancho__title em { font-size: clamp(2.1rem, 8.4vw, 3.9rem); line-height: 1.04; color: var(--creme); font-style: italic; }
.etapas { display: grid; gap: 0.75rem; }
.etapa {
  position: relative; isolation: isolate; overflow: hidden; border-radius: 6px; background: var(--grafite);
  aspect-ratio: 16 / 10; display: grid; place-items: end center; text-align: center;
  box-shadow: inset 0 0 0 1px rgba(243, 235, 224, 0.1);
}
.etapa__img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 50% var(--pt, 30%); transition: transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1); }
.etapa::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(11, 9, 9, 0.05) 20%, rgba(11, 9, 9, 0.9)); }
.etapa:hover .etapa__img { transform: scale(1.04); }
.etapa__txt { padding: 1rem 1.4rem 1.1rem; max-width: 24rem; }
.etapa h3 { font-size: 1.7rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--creme); line-height: 1.1; }
.etapa p { color: rgba(243, 235, 224, 0.88); font-size: 0.95rem; line-height: 1.4; margin-top: 0.35rem; }
.gancho__cta { margin-top: clamp(2rem, 5vw, 3rem); }

/* ---------- A pergunta ---------- */
.pergunta { position: relative; isolation: isolate; overflow: hidden; background: var(--noir); padding-bottom: clamp(3.5rem, 9vw, 5rem); }
.pergunta__foto { position: relative; aspect-ratio: 4 / 3; max-height: 26rem; width: 100%; }
.pergunta__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 62% 30%; }
.pergunta__foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, var(--noir) 3%, rgba(11, 9, 9, 0.5) 30%, transparent 62%), linear-gradient(180deg, var(--noir), transparent 16%); }
.pergunta__body { position: relative; display: grid; gap: 0.5rem; justify-items: start; margin-top: -4.5rem; max-width: 36rem; }
.pergunta__aspas { position: absolute; left: 0; top: -0.9em; font: 400 7rem/1 var(--font-display); color: var(--ouro); opacity: 0.55; pointer-events: none; }
.pergunta__pre { font: 600 0.74rem/1.3 var(--font-ui); letter-spacing: 0.3em; text-transform: uppercase; color: var(--malva); }
.pergunta__velha { font: italic 400 clamp(1.5rem, 6vw, 2.4rem)/1.15 var(--font-display); color: var(--txt-dim); margin-bottom: 1.2rem; }
.pergunta__velha s { text-decoration-thickness: 1.5px; text-decoration-color: var(--ouro); }
.pergunta__nova { font-family: var(--font-display); font-weight: 400; font-size: clamp(2.6rem, 12.4vw, 5.4rem); line-height: 0.95; letter-spacing: 0.01em; text-transform: uppercase; color: var(--creme); margin-top: 0.4rem; }
.pergunta__nova .pq { display: block; color: var(--nude); font-style: italic; }
.pergunta__fonte { margin-top: 1rem; font-size: 0.8rem; letter-spacing: 0.08em; color: var(--txt-dim); }
.pergunta__rodape { margin-top: clamp(1.8rem, 5vw, 2.6rem); display: grid; gap: 1.3rem; justify-items: start; }
.pergunta__rodape p { font: italic 400 clamp(1.2rem, 4.4vw, 1.5rem)/1.3 var(--font-display); color: var(--creme); max-width: 24ch; }

/* ---------- Compra ---------- */
.compra { background: var(--nude); color: var(--tinta); padding-block: clamp(3.5rem, 9vw, 7rem); scroll-margin-top: var(--hdr-h); }
.compra__grid { display: grid; gap: 2.25rem; }
.compra .livro { width: clamp(12rem, 56vw, 17rem); justify-self: center; }
.compra .livro img { border-radius: 2px 5px 5px 2px; box-shadow: 0 30px 50px -24px rgba(36, 26, 29, 0.7); filter: none; }
.compra .eyebrow { color: var(--malva-d); }
.compra__info { display: grid; gap: 1.2rem; justify-items: start; min-width: 0; }
.compra h2 { font-size: clamp(2.4rem, 9.5vw, 4.4rem); line-height: 1; text-transform: uppercase; letter-spacing: 0.01em; color: var(--tinta); }
.compra__autor { font: italic 400 1.35rem/1.2 var(--font-display); color: var(--tinta-dim); }
.compra__desc { max-width: 46ch; color: var(--tinta); }
.ficha { display: grid; grid-template-columns: auto 1fr; gap: 0.45rem 1.2rem; font-size: 0.95rem; padding-block: 1rem; border-block: 1px solid var(--linha-tinta); width: 100%; max-width: 30rem; }
.ficha dt { color: var(--tinta-dim); font-size: 0.74rem; letter-spacing: 0.14em; text-transform: uppercase; padding-top: 0.15rem; }
.preco { display: grid; gap: 0.5rem; width: 100%; max-width: 30rem; }
.preco__valor { font: 500 clamp(2rem, 8vw, 2.6rem)/1 var(--font-display); color: var(--tinta); }
.preco__info { color: var(--tinta-dim); font-size: 0.95rem; }
.ph {
  display: inline-flex; align-items: center; gap: 0.6rem; flex-wrap: wrap;
  padding: 0.5rem 0.8rem; border: 1px dashed var(--malva-d); border-radius: 4px; font-size: 0.9rem; color: var(--tinta-dim);
}
.ph b { font: 700 0.6rem/1 var(--font-ui); letter-spacing: 0.16em; text-transform: uppercase; background: var(--tinta); color: var(--nude); padding: 0.3rem 0.45rem; border-radius: 2px; }
.compra .btn { background: var(--tinta); border-color: var(--tinta); color: var(--nude); width: 100%; max-width: 30rem; }
.compra .btn:hover { background: #000; border-color: #000; color: var(--creme); }
.compra__link { font-size: 0.92rem; color: var(--tinta); text-underline-offset: 4px; }
.compra__nota { font-size: 0.85rem; color: var(--tinta-dim); max-width: 46ch; }

/* ---------- Rodapé ---------- */
.ftr { background: var(--noir); border-top: 1px solid var(--linha); padding-block: clamp(2.5rem, 7vw, 4rem) calc(2rem + env(safe-area-inset-bottom, 0px)); }
.ftr__in { display: grid; gap: 2rem; }
.ftr__id { display: grid; gap: 0.5rem; justify-items: start; }
.ftr__name { font: 500 0.85rem/1 var(--font-display); letter-spacing: 0.3em; text-transform: uppercase; color: var(--creme); }
.ftr__book { font: italic 400 1.6rem/1.2 var(--font-display); color: var(--nude); margin-bottom: 0.6rem; }
.ftr__nav { display: grid; gap: 0.2rem; }
.ftr__nav a { padding: 0.55rem 0; color: var(--txt-dim); text-decoration: none; min-height: 2.75rem; display: flex; align-items: center; }
.ftr__nav a:hover, .ftr__extra a:hover { color: var(--creme); }
.ftr__extra { display: flex; flex-wrap: wrap; gap: 0.5rem 1.4rem; color: var(--txt-dim); font-size: 0.92rem; }
.ftr__legal { font-size: 0.8rem; color: var(--txt-dim); padding-top: 1.5rem; border-top: 1px solid var(--linha); }

/* ---------- Páginas internas (provisórias) ---------- */
.em-breve { padding-block: clamp(4rem, 12vw, 8rem); min-height: 60vh; }
.em-breve h1 { font-size: clamp(2.4rem, 9vw, 4.4rem); line-height: 1.02; color: var(--creme); margin-block: 1rem 1.4rem; text-transform: uppercase; }
.em-breve p { color: var(--txt-dim); max-width: 42ch; margin-bottom: 2rem; }

/* ---------- Cards no celular: miniatura à esquerda, texto ao lado ---------- */
@media (max-width: 599.98px) {
  .etapas { gap: 0.4rem; }
  .etapa { aspect-ratio: auto; display: grid; grid-template-columns: 4.6rem 1fr; place-items: stretch; text-align: left; min-height: 4.2rem; border-radius: 5px; }
  .etapa::before { display: none; }
  .etapa__img { position: static; z-index: 0; grid-column: 1; height: 100%; min-height: 4.2rem; }
  .etapa__txt { grid-column: 2; align-self: center; padding: 0.4rem 0.8rem; }
  .etapa h3 { font-size: 0.95rem; letter-spacing: 0.08em; }
  .etapa p { font-size: 0.76rem; line-height: 1.25; margin-top: 0.1rem; }
}

/* ---------- Botão de compra fixo (celular) ---------- */
.sbuy {
  position: fixed; inset: auto 0 0 0; z-index: 45; padding: 0.7rem var(--gutter) calc(0.7rem + env(safe-area-inset-bottom, 0px));
  background: linear-gradient(0deg, rgba(11, 9, 9, 0.96) 55%, rgba(11, 9, 9, 0));
  transform: translateY(110%); transition: transform 0.35s ease; pointer-events: none;
}
.sbuy .btn { width: 100%; box-shadow: 0 10px 30px -8px rgba(0, 0, 0, 0.7); }
html.show-sbuy:not(.at-buy):not(.menu-open) .sbuy { transform: none; pointer-events: auto; }
.ftr { padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px)); }

/* ---------- Tablet / Desktop ---------- */
@media (min-width: 600px) {
  .etapas { grid-template-columns: 1fr 1fr; }
  .etapa { aspect-ratio: 4 / 3.3; }
  .etapa__img { object-position: 50% var(--pd, 30%); }
  .hero__cta .btn { width: auto; }
  .hdr__buy .long { display: inline; }
  .hdr__buy .short { display: none; }
}

@media (min-width: 900px) {
  :root { --hdr-h: 4.5rem; }
  .sbuy { display: none; }
  .ftr { padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0px)); }


  .gancho__title { max-width: 46ch; margin-inline: auto; text-align: center; }
  .gancho__title em { font-size: clamp(2.2rem, 3.6vw, 3.3rem); }
  .gancho__cta { text-align: center; }
  .etapas { grid-template-columns: repeat(4, 1fr); gap: 1rem; }
  .etapa { aspect-ratio: 3 / 4.2; place-items: end center; padding-bottom: 0.6rem; }
  .etapa::before { background: linear-gradient(180deg, rgba(11, 9, 9, 0.08) 25%, rgba(11, 9, 9, 0.9)); }
  .etapa__txt { padding: 1rem 1.1rem 1.3rem; }
  .etapa h3 { font-size: 1.8rem; }

  .pergunta { display: grid; align-items: center; min-height: 38rem; padding-block: clamp(4rem, 8vw, 7rem); }
  .pergunta__foto { position: absolute; inset: 0 0 0 44%; width: auto; max-height: none; aspect-ratio: auto; z-index: -1; }
  .pergunta__foto img { object-position: 55% 30%; }
  .pergunta__foto::after { background: linear-gradient(90deg, var(--noir) 0%, rgba(11, 9, 9, 0.35) 35%, transparent 70%), linear-gradient(0deg, var(--noir), transparent 18%), linear-gradient(180deg, var(--noir), transparent 18%); }
  .pergunta__body { margin-top: 0; }
  .pergunta__aspas { font-size: 9rem; left: -0.05em; top: -0.45em; }
  .pergunta__nova { font-family: var(--font-display); font-weight: 400; font-size: clamp(3rem, 5.2vw, 5.4rem); }

  .compra__grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); align-items: center; gap: clamp(3rem, 8vw, 7rem); }
  .compra .livro { width: min(100%, 21rem); justify-self: end; }
  .compra .btn { width: auto; min-width: 17rem; }

  .ftr__in { grid-template-columns: 1.2fr 1fr; align-items: start; }
  .ftr__extra, .ftr__legal { grid-column: 1 / -1; }
}

/* Menu completo no topo só quando cabe */
@media (min-width: 1100px) {
  .hdr__burger { display: none; }
  .hdr__in { gap: 1.5rem; }
  .hdr__nav { display: flex; gap: clamp(0.8rem, 1.4vw, 1.6rem); margin-left: auto; margin-right: 0.5rem; }
  .hdr__link { font: 500 0.66rem/1 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase; text-decoration: none; color: var(--txt-dim); padding: 0.6rem 0; border-bottom: 1px solid transparent; transition: color 0.25s, border-color 0.25s; white-space: nowrap; }
  .hdr__link:hover { color: var(--creme); }
  .hdr__link[aria-current="page"] { color: var(--creme); border-bottom-color: var(--ouro); }
  .hdr__brand { order: -1; font-size: 0.88rem; }
}

/* ---------- Movimento ---------- */
@keyframes rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.hero .rv { animation: rise 0.9s cubic-bezier(0.2, 0.7, 0.2, 1) both; animation-delay: calc(var(--i, 0) * 110ms); }
@supports (animation-timeline: view()) {
  .rv-s { animation: rise linear both; animation-timeline: view(); animation-range: entry 4% entry 38%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* =====================================================================
   PÁGINAS INTERNAS
   ===================================================================== */
.pg-hero { padding-block: clamp(3rem, 9vw, 6.5rem) clamp(1.5rem, 4vw, 2.5rem); background: radial-gradient(60% 80% at 85% 0%, rgba(122, 99, 112, 0.22), transparent 70%), var(--noir); }
.pg-hero h1 { font-size: clamp(2.6rem, 10vw, 5.4rem); line-height: 1; text-transform: uppercase; color: var(--creme); margin-block: 1rem 1.2rem; }
.pg-hero__lead { font: italic 400 clamp(1.2rem, 4.6vw, 1.7rem)/1.35 var(--font-display); color: var(--nude); max-width: 34ch; }

.bloco { padding-block: clamp(2.75rem, 8vw, 5.5rem); }
.bloco--grafite { background: var(--grafite); border-block: 1px solid var(--linha); }
.bloco__t { font-size: clamp(1.9rem, 6.5vw, 3rem); line-height: 1.05; color: var(--creme); margin-bottom: 1rem; }
.bloco__lead { color: var(--txt-dim); max-width: 52ch; margin-bottom: 1.75rem; }
.bloco__lead strong { color: var(--creme); font-weight: 600; }
.duas { display: grid; gap: 2.5rem; }

blockquote.grande { margin: 1.25rem 0 1.5rem; padding-left: 1.1rem; border-left: 1px solid var(--ouro); }
blockquote.grande p { font: italic 400 clamp(1.5rem, 5.6vw, 2.2rem)/1.25 var(--font-display); color: var(--creme); }
blockquote.grande footer { margin-top: 0.7rem; font-size: 0.8rem; letter-spacing: 0.08em; color: var(--txt-dim); }

/* O livro */
.livro-topo { display: grid; gap: 2rem; align-items: center; }
.livro-topo__img img { width: 100%; max-width: 30rem; margin-inline: auto; border-radius: 6px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.livro-topo__txt { display: grid; gap: 1rem; justify-items: start; }
.livro-topo__txt p:not(.eyebrow) { color: var(--txt); max-width: 46ch; }
.sementes { display: grid; gap: 0.9rem; }
.sementes li { padding: 1.3rem 1.3rem 1.1rem; border: 1px solid var(--linha); border-radius: 6px; background: var(--noir); display: grid; gap: 0.8rem; }
.sementes q { font: italic 400 1.3rem/1.3 var(--font-display); color: var(--creme); quotes: none; }
.sementes q::before { content: "“"; } .sementes q::after { content: "”"; }
.sementes span { font: 600 0.7rem/1.2 var(--font-ui); letter-spacing: 0.16em; text-transform: uppercase; color: var(--malva); }
.sumario-wrap { display: grid; gap: 1.5rem; }
.sum li { display: grid; grid-template-columns: 1fr auto; gap: 0.1rem 1rem; padding: 0.85rem 0; border-bottom: 1px solid var(--linha); align-items: baseline; }
.sum__n { grid-column: 1 / -1; font: 600 0.68rem/1.2 var(--font-ui); letter-spacing: 0.2em; text-transform: uppercase; color: var(--malva); }
.sum__t { font: 400 1.25rem/1.25 var(--font-display); color: var(--creme); }
.sum__p { font: 500 0.9rem var(--font-ui); color: var(--txt-dim); font-variant-numeric: tabular-nums; }
.ficha--escura { border-color: var(--linha); max-width: 34rem; }
.ficha--escura dt { color: var(--txt-dim); }
.ficha--escura dd { color: var(--creme); }
.nota { display: grid; gap: 0.9rem; align-content: start; }
.nota p { color: var(--txt); }
.nota__citacao { font: italic 400 1.3rem/1.35 var(--font-display); color: var(--nude) !important; padding-left: 1rem; border-left: 1px solid var(--ouro); }
.nota__fonte { font-size: 0.8rem; color: var(--txt-dim) !important; letter-spacing: 0.08em; }

/* Faixa de compra no fim das páginas */
.cta-band { padding-block: clamp(3rem, 8vw, 5.5rem); background: var(--nude); color: var(--tinta); text-align: center; }
.cta-band__in { display: grid; gap: 1.1rem; justify-items: center; }
.cta-band h2 { font-size: clamp(1.9rem, 6.8vw, 3.2rem); line-height: 1.05; max-width: 20ch; color: var(--tinta); }
.cta-band p { color: var(--tinta-dim); max-width: 40ch; }
.cta-band .btn { background: var(--tinta); border-color: var(--tinta); color: var(--nude); }
.cta-band .btn:hover { background: #000; border-color: #000; color: var(--creme); }
.cta-band .ph { background: transparent; }

/* A história: linha do tempo */
.tl { display: grid; gap: 2.75rem; position: relative; }
.tl__item { display: grid; gap: 1.1rem; position: relative; }
.tl__foto { position: relative; border-radius: 6px; overflow: hidden; aspect-ratio: 4 / 3; box-shadow: inset 0 0 0 1px rgba(243, 235, 224, 0.1); }
.tl__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 24%; }
.tl__foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(11, 9, 9, 0.7)); }
.tl__num { font: 500 0.8rem/1 var(--font-ui); letter-spacing: 0.3em; color: var(--ouro); }
.tl__corpo { display: grid; gap: 0.8rem; align-content: start; }
.tl__corpo h2 { font-size: clamp(2.2rem, 9vw, 3.6rem); line-height: 1; text-transform: uppercase; color: var(--creme); letter-spacing: 0.02em; }
.tl__corpo blockquote { border-left: 1px solid var(--ouro); padding-left: 1rem; }
.tl__corpo blockquote p { font: italic 400 1.25rem/1.35 var(--font-display); color: var(--nude); }
.tl__corpo blockquote footer { margin-top: 0.5rem; font-size: 0.78rem; letter-spacing: 0.08em; color: var(--txt-dim); }
.tl__caps { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.tl__caps li { display: inline-flex; gap: 0.5rem; align-items: baseline; padding: 0.4rem 0.7rem; border: 1px solid var(--linha); border-radius: 999px; font-size: 0.82rem; color: var(--txt); }
.tl__caps li span { font: 600 0.65rem var(--font-ui); letter-spacing: 0.1em; color: var(--malva); }
.tl__aviso { margin-top: 2.5rem; font-size: 0.82rem; color: var(--txt-dim); }

/* Leia um trecho */
.leitura { max-width: 38rem; margin-inline: auto; }
.leitura__cap { font: 600 0.72rem/1 var(--font-ui); letter-spacing: 0.3em; text-transform: uppercase; color: var(--malva); margin-bottom: 1.8rem; text-align: center; }
.leitura p { font: 400 1.18rem/1.8 "Source Serif 4", Georgia, "Times New Roman", serif; color: var(--txt); margin-bottom: 1.25em; text-wrap: pretty; }
.leitura p.abre::first-letter { font: 400 4.4rem/0.8 var(--font-display); float: left; padding: 0.35rem 0.6rem 0 0; color: var(--ouro); }
.leitura p:last-of-type { font-style: italic; color: var(--creme); font-size: 1.3rem; padding-left: 1rem; border-left: 1px solid var(--ouro); }
.leitura__fim { text-align: center; font: 600 0.7rem/1 var(--font-ui) !important; letter-spacing: 0.24em; text-transform: uppercase; color: var(--txt-dim) !important; margin-top: 2.5rem; border: 0 !important; padding: 0 !important; }

/* Depoimentos */
.depos { columns: 1; column-gap: 1rem; }
.depo { break-inside: avoid; margin: 0 0 1rem; padding: 1.5rem; border: 1px solid var(--linha); border-radius: 6px; background: var(--grafite); display: grid; gap: 1rem; }
.depo blockquote p { font: italic 400 1.3rem/1.4 var(--font-display); color: var(--creme); }
.depo figcaption { display: grid; gap: 0.15rem; padding-top: 0.9rem; border-top: 1px solid var(--linha); }
.depo figcaption strong { font: 600 0.8rem var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; color: var(--nude); }
.depo figcaption span { font-size: 0.85rem; color: var(--txt-dim); }
.depos__nota { margin-top: 1.5rem; font-size: 0.85rem; color: var(--txt-dim); max-width: 60ch; }

/* Sobre */
.sobre { display: grid; gap: 2rem; align-items: center; }
.sobre__foto img { width: 100%; border-radius: 6px; -webkit-mask-image: linear-gradient(180deg, #000 80%, transparent); mask-image: linear-gradient(180deg, #000 80%, transparent); }
.sobre__txt { display: grid; gap: 1.1rem; }
.sobre__txt p { color: var(--txt); max-width: 52ch; }
.fecho { text-align: center; display: grid; gap: 1rem; justify-items: center; }
.fecho__q { font: italic 400 clamp(1.6rem, 6vw, 2.8rem)/1.25 var(--font-display); color: var(--creme); max-width: 26ch; }
.fecho__fonte { font-size: 0.8rem; letter-spacing: 0.08em; color: var(--txt-dim); }
.fecho__redes { display: flex; gap: 0.8rem; flex-wrap: wrap; justify-content: center; color: var(--txt-dim); }

@media (min-width: 900px) {
  .duas { grid-template-columns: 1fr 1fr; gap: 5rem; }
  .livro-topo { grid-template-columns: 0.9fr 1.1fr; gap: 4rem; }
  .sementes { grid-template-columns: repeat(3, 1fr); }
  .sumario-wrap { grid-template-columns: 0.6fr 1.4fr; gap: 4rem; }
  .sum { columns: 1; }
  .sum li { grid-template-columns: 8rem 1fr auto; }
  .sum__n { grid-column: auto; }
  .tl { gap: 4.5rem; }
  .tl::before { content: ""; position: absolute; left: 50%; top: 0; bottom: 0; width: 1px; background: var(--linha); }
  .tl__item { grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; }
  .tl__item:nth-child(even) .tl__foto { order: 2; }
  .tl__item::after { content: ""; position: absolute; left: 50%; top: 50%; width: 11px; height: 11px; border-radius: 50%; background: var(--ouro); transform: translate(-50%, -50%); box-shadow: 0 0 0 6px var(--noir); }
  .tl__foto { aspect-ratio: 4 / 4.4; }
  .depos { columns: 2; column-gap: 1.25rem; }
  .depo { margin-bottom: 1.25rem; }
  .sobre { grid-template-columns: 0.9fr 1.1fr; gap: 5rem; }
}
@media (min-width: 1100px) { .depos { columns: 3; } }

/* =====================================================================
   PAINEL DA EQUIPE
   ===================================================================== */
.pn { padding-block: 1.5rem 4rem; min-height: 100vh; }
.pn__top { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--linha); margin-bottom: 1.75rem; }
.pn h1 { font-size: clamp(1.8rem, 6vw, 2.6rem); color: var(--creme); line-height: 1.05; }
.pn h2 { font: 600 0.72rem/1.3 var(--font-ui); letter-spacing: 0.16em; text-transform: uppercase; color: var(--nude); margin-bottom: 1rem; }
.pn__login { max-width: 24rem; margin: 3rem auto; display: grid; gap: 1rem; }
.pn__login form { display: grid; gap: 1rem; }
.pn__login p { color: var(--txt-dim); }
.pn label { display: grid; gap: 0.4rem; font-size: 0.82rem; color: var(--txt-dim); }
.pn input, .pn select { font: 400 1rem var(--font-ui); color: var(--creme); background: var(--grafite); border: 1px solid var(--linha); border-radius: 6px; padding: 0.8rem 0.9rem; min-height: 3rem; }
.pn input:focus-visible, .pn select:focus-visible { outline: 2px solid var(--ouro); outline-offset: 1px; }
.pn__erro { color: #e6a3a3 !important; font-size: 0.9rem; }
.pn__bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1.25rem; }
.pn__ctrl { display: flex; gap: 0.6rem; align-items: center; }
.pn__ctrl select { min-height: 2.5rem; padding: 0.4rem 0.8rem; }
.pn__demo { padding: 0.8rem 1rem; border: 1px dashed var(--ouro); border-radius: 6px; color: var(--nude); font-size: 0.9rem; margin-bottom: 1.25rem; }
.pn__msg { color: var(--txt-dim); margin-bottom: 1rem; }
.pn__kpis { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-bottom: 1rem; }
.pn__kpi { padding: 1.1rem 1.1rem 1rem; border: 1px solid var(--linha); border-radius: 8px; background: var(--grafite); display: grid; gap: 0.25rem; }
.pn__kpi p { font: 600 0.68rem/1.2 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase; color: var(--txt-dim); }
.pn__kpi strong { font: 500 clamp(1.7rem, 6vw, 2.4rem)/1.1 var(--font-display); color: var(--creme); font-variant-numeric: tabular-nums; }
.pn__kpi span { font-size: 0.8rem; color: var(--txt-dim); }
.pn__card { padding: 1.2rem; border: 1px solid var(--linha); border-radius: 8px; background: var(--grafite); margin-bottom: 1rem; min-width: 0; }
.pn__cardhead { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; flex-wrap: wrap; }
.pn__link { background: none; border: 0; color: var(--malva); font: 500 0.82rem var(--font-ui); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; padding: 0.3rem 0; margin-bottom: 1rem; }
.pn__grid { display: grid; gap: 1rem; }
.pn__grid .pn__card { margin-bottom: 0; }
.pn svg { width: 100%; height: auto; display: block; overflow: visible; }
.pn__grid-line, .pn__grid { stroke: var(--linha); stroke-width: 1; }
.pn__tick { fill: var(--txt-dim); font: 500 11px var(--font-ui); }
.pn__bar { fill: var(--ouro); }
.pn__hit { fill: transparent; cursor: pointer; }
.pn__hit:hover { fill: rgba(243, 235, 224, 0.07); }
.pn__tip { position: absolute; z-index: 90; pointer-events: none; padding: 0.5rem 0.7rem; border: 1px solid var(--linha); border-radius: 6px; background: var(--noir); color: var(--creme); font-size: 0.82rem; line-height: 1.35; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.5); }
.pn__list { display: grid; gap: 0.7rem; }
.pn__list li { display: grid; grid-template-columns: minmax(0, 9.5rem) 1fr auto; gap: 0.7rem; align-items: center; font-size: 0.9rem; }
.pn__lname { color: var(--txt); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pn__lbar { height: 8px; background: rgba(243, 235, 224, 0.08); border-radius: 4px; overflow: hidden; }
.pn__lbar i { display: block; height: 100%; background: var(--ouro); border-radius: 4px; }
.pn__lval { font-variant-numeric: tabular-nums; color: var(--creme); font-weight: 600; }
.pn__vazio { color: var(--txt-dim); font-size: 0.9rem; }
.pn__scroll { max-height: 18rem; overflow: auto; }
.pn table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }
.pn th, .pn td { text-align: left; padding: 0.5rem 0.4rem; border-bottom: 1px solid var(--linha); }
.pn th { color: var(--txt-dim); font: 600 0.7rem var(--font-ui); letter-spacing: 0.12em; text-transform: uppercase; }
.pn td:last-child, .pn th:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.pn__nota { margin-top: 1.25rem; font-size: 0.82rem; color: var(--txt-dim); max-width: 60ch; }
@media (min-width: 700px) { .pn__kpis { grid-template-columns: repeat(4, 1fr); } .pn__grid { grid-template-columns: 1fr 1fr; } }

.pn [hidden], .pn__tip[hidden] { display: none !important; }

/* =====================================================================
   REFINAMENTO EDITORIAL (tipografia, hero em cena única, coerência)
   ===================================================================== */
.hdr:not(.is-scrolled) { border-bottom-color: transparent; }
.btn { font-weight: 600; letter-spacing: 0.14em; }
h1, h2, h3 { letter-spacing: 0; }

/* Frases em destaque: Cormorant Garamond itálico */
.hero__frase, .pergunta__velha, blockquote.grande p, .nota__citacao, .depo blockquote p,
.tl__corpo blockquote p, .sementes q, .fecho__q, .pergunta__rodape p {
  font-family: var(--font-quote); font-style: italic; font-weight: 500;
}
.hero__frase { font-size: clamp(1.55rem, 5.6vw, 2.1rem); line-height: 1.3; padding-left: 1.3rem; max-width: 30ch; }
.pergunta__velha { font-size: clamp(1.9rem, 6.8vw, 3rem); }
.pergunta__rodape p { font-size: clamp(1.4rem, 5vw, 1.8rem); }
blockquote.grande p { font-size: clamp(1.8rem, 6.2vw, 2.6rem); }
.nota__citacao { font-size: 1.5rem; }
.depo blockquote p { font-size: 1.5rem; }
.tl__corpo blockquote p { font-size: 1.5rem; }
.sementes q { font-size: 1.5rem; }
.fecho__q { font-size: clamp(1.9rem, 6.6vw, 3.1rem); }

/* Hero: hierarquia e respiro */
.hero h1 { font-weight: 400; line-height: 0.96; letter-spacing: -0.005em; }
.hero__head { gap: 1.1rem; }
.hero__sub { font-size: clamp(1.45rem, 5.6vw, 2rem); line-height: 1.25; }
.hero__sub::after { content: ""; display: block; width: 4.5rem; height: 1px; background: var(--ouro); margin-top: 1.5rem; }
.hero__lista { gap: 0.2rem; font-size: 1rem; line-height: 1.7; font-weight: 400; }
.hero__foot { gap: 2rem; }
.hero__meta { letter-spacing: 0.08em; }
.hero__photo::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 7rem; z-index: 1; background: linear-gradient(180deg, rgba(11, 9, 9, 0.6), transparent); pointer-events: none; }

@media (min-width: 600px) { .hero__photo { max-height: 38rem; } .hero__book { max-width: 34rem; justify-self: center; } }
.hdr__buy::after { display: none; }

/* Hero em uma única cena (computador) */
@media (min-width: 1100px) {
  .hero { min-height: 41rem; display: grid; align-items: start; padding-top: calc(var(--hdr-h) + 2.25rem); padding-bottom: 1rem; }
  .hero__scene {
    display: block; position: absolute; z-index: -1; top: 0; right: -8%; height: 100%; aspect-ratio: 2200 / 924;
    background: url("assets/hero-cena.webp") center / cover no-repeat;
    -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 16%, #000 80%, transparent 100%), linear-gradient(90deg, transparent 0, rgba(0,0,0,.4) 24%, #000 44%);
    -webkit-mask-composite: source-in;
    mask-image: linear-gradient(180deg, transparent 0, #000 16%, #000 80%, transparent 100%), linear-gradient(90deg, transparent 0, rgba(0,0,0,.4) 24%, #000 44%);
    mask-composite: intersect;
  }
  .hero__grid { grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.12fr) minmax(0, 0.96fr); grid-template-areas: "photo head ." "photo foot ."; column-gap: clamp(1.5rem, 3vw, 3rem); row-gap: 2.1rem; align-items: start; }
  .hero__photo { grid-row: 1 / 3; aspect-ratio: auto; max-height: none; min-height: 39rem; align-self: stretch;
    margin: calc(-1 * (var(--hdr-h) + 2.25rem)) 0 -1rem calc(-1 * (max(0px, (100vw - var(--maxw)) / 2) + var(--gutter)));
    -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent 100%); mask-image: linear-gradient(180deg, #000 70%, transparent 100%); }
  .hero__photo img { object-position: 50% 10%; -webkit-mask-image: linear-gradient(90deg, #000 62%, transparent 100%); mask-image: linear-gradient(90deg, #000 62%, transparent 100%); }
  .hero__photo::before { display: none; }
  .hero__head { align-self: start; margin-top: 0; padding-top: 0; }
  .hero__foot { align-self: start; padding-bottom: 0; }
  .hero h1 { font-size: clamp(2.7rem, 4.3vw, 4.5rem); }
  .hero__book { display: none; }
  .hdr__buy::after { display: inline-block; }
}

/* Bloco de compra: foto do exemplar sobre a mesa */
.compra .livro { width: clamp(13rem, 60vw, 20rem); }
.compra .livro img { border-radius: 6px; box-shadow: 0 34px 60px -26px rgba(36, 26, 29, 0.8); }
@media (min-width: 900px) { .compra .livro { width: min(100%, 24rem); } }

/* mockup do livro (png transparente) */
.compra .livro img{border-radius:0;box-shadow:none;filter:drop-shadow(0 28px 26px rgba(36,26,29,.45));width:100%;height:auto}

/* Redes sociais: só logos */
.soc { display: flex; align-items: center; gap: 0.35rem; }
.soc__a { display: inline-grid; place-items: center; width: 2.4rem; height: 2.4rem; color: var(--creme); opacity: .8; border-radius: 50%; transition: opacity .2s, color .2s; }
.soc__a svg { width: 1.3rem; height: 1.3rem; }
.soc__a:hover, .soc__a:focus-visible { opacity: 1; color: var(--nude); }
.soc--hdr { display: none; }
@media (min-width: 1100px) { .soc--hdr { display: flex; margin-right: .25rem; } }
.soc--menu { justify-content: center; margin: 1.25rem 0 .5rem; gap: .75rem; }
.soc--ftr { margin: .25rem 0; }

/* ===== Bloco de compra compacto + lojas ===== */
.compra { padding-block: clamp(2rem, 5vw, 3.5rem); }
.compra__grid { gap: 1.25rem; }
.compra .livro, .compra .livro { width: clamp(15rem, 80vw, 24rem); }
@media (min-width: 900px) {
  .compra__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 4rem); }
  .compra .livro { width: min(112%, 34rem); justify-self: center; margin-block: -2.5rem; }
}
.compra h2 { font-size: clamp(1.9rem, 5vw, 2.9rem); }
.compra__autor { font-size: 1.15rem; }
.compra__autor span { font: 400 .85rem var(--font-ui); letter-spacing: .02em; color: var(--tinta-dim); }
.compra__info { gap: .9rem; }
.compra .preco { max-width: 32rem; gap: .35rem; padding-block: .9rem; border-block: 1px solid var(--linha-tinta); }
.preco__linha { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; }
.preco__tipo { font-size: .74rem; letter-spacing: .14em; text-transform: uppercase; color: var(--tinta-dim); }
.compra .preco__valor { font: 500 1.7rem/1.1 var(--font-display); }
.compra .preco__info { font-size: .85rem; }
.lojas { display: grid; gap: .6rem; width: 100%; max-width: 32rem; }
@media (min-width: 520px) { .lojas { grid-template-columns: 1fr 1fr; } }
.compra .btn.loja, .loja {
  display: inline-flex; align-items: center; justify-content: center; gap: .6rem; min-height: 3.2rem; padding: .5rem 1.1rem;
  width: 100%; max-width: none; min-width: 0; border-radius: 999px; border: 0; text-decoration: none;
  font: 700 .78rem/1 var(--font-ui); letter-spacing: .12em; text-transform: uppercase; transition: filter .2s, transform .2s;
}
.loja:hover { filter: brightness(1.06); transform: translateY(-1px); }
.loja__logo { height: 1.5rem; width: auto; flex: none; }
.loja__logo--ic { height: 1.35rem; }
.compra .loja--amazon { background: #ff9900; color: #111; }
.compra .loja--amazon:hover { background: #ff9900; color: #111; }
.compra .loja--shopee { background: #ee4d2d; color: #fff; }
.compra .loja--shopee:hover { background: #ee4d2d; color: #fff; }
.compra .loja--ml { background: #ffe600; color: #2d3277; }
.compra .loja--ml:hover { background: #ffe600; color: #2d3277; }
.compra .loja--ebook { background: #5b3b5a; color: #f6e9ef; }
.compra .loja--ebook:hover { background: #5b3b5a; color: #fff; }
.loja__logo { text-transform: none; letter-spacing: 0; }
.loja--amazon .smile { stroke: #111; }

/* Rodapé: login + créditos centralizados */
.ftr__base { grid-column: 1 / -1; display: grid; justify-items: center; gap: .9rem; text-align: center; padding-top: 1.5rem; border-top: 1px solid var(--linha); }
.ftr__base .ftr__legal { border: 0; padding: 0; }
.ftr__login { opacity: .75; }
.ftr__login:hover { opacity: 1; }
.ftr__credito { font-size: .8rem; color: var(--txt-dim); display: flex; align-items: center; justify-content: center; gap: .4rem; flex-wrap: wrap; }
.ftr__credito a { display: inline-flex; align-items: center; gap: .45rem; color: var(--creme); text-decoration: none; }
.ftr__credito a:hover span { text-decoration: underline; text-underline-offset: 3px; }
.ftr__credito img { height: 1.05rem; width: auto; opacity: .9; }
.pn__rodape { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid var(--linha); display: grid; justify-items: center; }
.ftr__medida { border-top: 0; padding-top: 0; }

.obrigado__acoes { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; margin-top: 1.5rem; }
.pn__kpis { grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr)) !important; }

/* ===== Página de pré-inscrição ===== */
.lista { display: grid; gap: 2rem; align-items: center; }
.lista__img { width: min(70%, 20rem); justify-self: center; }
.lista__img img { width: 100%; height: auto; filter: drop-shadow(0 24px 24px rgba(0, 0, 0, .55)); }
.lista__form { width: 100%; max-width: 30rem; justify-self: center; }
.lista form { display: grid; gap: 1.1rem; }
.lista label { display: grid; gap: .4rem; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--txt-dim); }
.lista input[type="text"], .lista input[type="email"], .lista input[type="tel"] {
  font: 400 1rem var(--font-ui); letter-spacing: 0; text-transform: none; color: var(--creme);
  background: var(--grafite); border: 1px solid var(--linha); border-radius: 8px; padding: .85rem 1rem; min-height: 3rem; width: 100%;
}
.lista input:focus-visible { outline: 2px solid var(--nude); outline-offset: 2px; }
.lista .lista__isca { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.lista .lista__aceite { display: flex; gap: .7rem; align-items: flex-start; text-transform: none; letter-spacing: 0; font-size: .92rem; color: var(--txt); }
.lista .lista__aceite input { width: 1.2rem; height: 1.2rem; margin-top: .15rem; accent-color: var(--nude); flex: none; }
.lista__erro { color: #f1a6a6; font-size: .92rem; }
.lista__nota { font-size: .82rem; color: var(--txt-dim); }
.lista .btn { width: 100%; }
.lista__ok { display: grid; gap: 1rem; justify-items: start; }
.lista__ok h2 { font-size: clamp(1.8rem, 6vw, 2.6rem); }
@media (min-width: 900px) { .lista { grid-template-columns: 1fr 1fr; gap: 5rem; } .lista__img { width: min(100%, 26rem); } }

/* Painel: lista de espera */
.pn__leadbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: .75rem; }
.pn__leadbar h2 { margin: 0; }

/* ===== Menu único de compra (com cadeado) ===== */
.comprar-menu { position: relative; width: 100%; max-width: 32rem; }
.comprar-btn {
  display: flex; align-items: center; gap: .75rem; width: 100%; min-height: 3.6rem; padding: .6rem 1.3rem;
  background: var(--tinta); color: var(--nude); border: 1px solid var(--tinta); border-radius: 999px; cursor: pointer;
  font: 700 .9rem/1 var(--font-ui); letter-spacing: .16em; text-transform: uppercase;
  box-shadow: 0 14px 28px -18px rgba(36, 26, 29, .8); transition: background .2s, transform .2s;
}
.comprar-btn:hover, .comprar-menu.is-open .comprar-btn { background: #000; }
.comprar-btn:focus-visible { outline: 2px solid var(--malva-d); outline-offset: 3px; }
.comprar-btn .lock { width: 1.15rem; height: 1.15rem; color: var(--ouro); flex: none; }
.comprar-btn span { flex: 1; text-align: left; }
.comprar-btn__soon { font: 600 .66rem/1 var(--font-ui); font-style: normal; letter-spacing: .14em; color: var(--ouro); border: 1px solid rgba(201, 174, 136, .55); border-radius: 999px; padding: .35rem .6rem; }
.comprar-btn .chev { width: 1.1rem; height: 1.1rem; flex: none; transition: transform .2s; }
.comprar-menu.is-open .chev { transform: rotate(180deg); }
.comprar-opcoes {
  position: absolute; z-index: 30; left: 0; right: 0; top: calc(100% + .5rem); margin: 0; padding: .6rem; list-style: none;
  display: grid; gap: .5rem; background: #f7efe6; border: 1px solid var(--linha-tinta); border-radius: 18px;
  box-shadow: 0 28px 50px -24px rgba(36, 26, 29, .75);
}
.comprar-opcoes[hidden] { display: none; }
.comprar-opcoes .loja { position: relative; justify-content: center; }
.comprar-opcoes .loja .lock { position: absolute; right: 1.1rem; width: 1rem; height: 1rem; opacity: .75; }
.vendas-abertas .comprar-btn .lock, .vendas-abertas .comprar-opcoes .lock, .vendas-abertas .comprar-btn__soon, .vendas-abertas #avise { display: none; }
.lista--inline { display: block; margin-top: .4rem; padding-top: 1.1rem; border-top: 1px solid var(--linha-tinta); width: 100%; max-width: 32rem; }
.lista--inline .lista__form { max-width: none; }
.lista--inline .lista__t { font: 500 1.35rem/1.2 var(--font-display); color: var(--tinta); }
.lista--inline form { gap: .8rem; }
.compra .lista label { color: var(--tinta-dim); }
.compra .lista input[type="text"], .compra .lista input[type="email"], .compra .lista input[type="tel"] { background: #f7efe6; border-color: var(--linha-tinta); color: var(--tinta); }
.compra .lista .lista__aceite { color: var(--tinta); font-size: .85rem; }
.compra .lista .lista__nota { color: var(--tinta-dim); }
.compra .lista .lista__erro { color: #9b2c2c; }
.compra .lista .btn { background: var(--tinta); color: var(--nude); border-color: var(--tinta); }
.compra .lista__ok h3 { font: 500 1.5rem/1.2 var(--font-display); color: var(--tinta); }
.lista [hidden], .comprar-menu [hidden] { display: none !important; }
.compra .lista .btn { max-width: none; width: 100%; }

/* Painel: abas e formulário de preços */
.pn__tabs { display: flex; gap: .4rem; margin-bottom: 1rem; overflow-x: auto; border-bottom: 1px solid var(--linha); }
.pn__tab { font: 600 .85rem var(--font-ui); letter-spacing: .06em; color: var(--txt-dim); background: none; border: 0; border-bottom: 2px solid transparent; padding: .8rem 1rem; cursor: pointer; white-space: nowrap; min-height: 2.75rem; }
.pn__tab.is-on { color: var(--creme); border-bottom-color: var(--nude); }
.pn__tab:focus-visible { outline: 2px solid var(--nude); outline-offset: -2px; }
.pn .pn__pane[hidden] { display: none !important; }
.pn__cfg { display: grid; gap: 1rem; grid-template-columns: 1fr; margin-top: 1rem; }
@media (min-width: 700px) { .pn__cfg { grid-template-columns: 1fr 1fr; } .pn__cfg-wide { grid-column: 1 / -1; } }
.pn__cfg label { display: grid; gap: .4rem; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--txt-dim); }
.pn__cfg input[type="text"], .pn__cfg input[type="url"] { font: 400 1rem var(--font-ui); letter-spacing: 0; text-transform: none; color: var(--creme); background: var(--noir); border: 1px solid var(--linha); border-radius: 8px; padding: .8rem 1rem; min-height: 3rem; width: 100%; }
.pn__cfg-check { display: flex !important; gap: .7rem; align-items: flex-start; text-transform: none !important; letter-spacing: 0 !important; font-size: .92rem !important; color: var(--txt) !important; }
.pn__cfg-check input { width: 1.2rem; height: 1.2rem; accent-color: var(--nude); margin-top: .15rem; flex: none; }
