/* ==========================================================================
   Cofre do Nome v2: diagramação variada, logo, telas do app e transições
   ========================================================================== */
:root { --vermelho: #ef5a5a; --folha: 44px; }

/* Subheadline do topo: mais larga e menor, em menos linhas */
.hero--B .hero__sub { max-width: 860px; font-size: clamp(15px, 1.1vw, 16.5px); line-height: 1.65; text-wrap: pretty; color: var(--texto-3); }

/* Logo */
.logo { display: inline-flex; align-items: center; gap: 10px; line-height: 1; }
.logo__icone { flex: none; filter: drop-shadow(0 4px 14px color-mix(in srgb, var(--dst-500) 35%, transparent)); }
.logo__txt { font-family: var(--font-display); font-size: 20px; font-weight: 700; letter-spacing: -0.025em; color: var(--branco); white-space: nowrap; }
.logo__txt em { font-family: var(--font-serif); font-style: italic; font-weight: 400; font-size: 1.15em; color: var(--dst-300); padding: 0 0.04em; }
.site-footer .logo__txt { font-size: 18px; }

/* Transição: cada seção sobe por cima da anterior, como folhas empilhadas */
.testimonials, .mentor, .movement, .different, .how, .deliver, .offer, .guarantee, .faq, .final {
  position: relative;
  z-index: 1;
  margin-top: calc(var(--folha) * -1);
  padding-top: calc(var(--section-y) + var(--folha));
  border-radius: var(--folha) var(--folha) 0 0;
  box-shadow: 0 -24px 60px -30px rgba(0, 0, 0, 0.55);
}
.mentor { background: var(--esc-900); }
.different, .final { background-color: var(--esc-950); }

/* Relatos em bento: o primeiro grande e escuro, os outros dois empilhados */
.relatos { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
.relato:first-child {
  grid-row: span 2;
  position: relative;
  justify-content: space-between;
  background: radial-gradient(70% 60% at 100% 0%, color-mix(in srgb, var(--ac-500) 35%, transparent), transparent 70%), var(--esc-900);
  border-color: transparent;
  overflow: hidden;
}
.relato:first-child::after { content: "“"; position: absolute; right: 24px; bottom: -40px; font-family: var(--font-serif); font-size: 220px; line-height: 1; color: color-mix(in srgb, var(--dst-500) 30%, transparent); pointer-events: none; }
.relato:first-child p { font-size: clamp(18px, 1.7vw, 21px); line-height: 1.6; color: var(--texto-2); margin-top: auto; position: relative; z-index: 1; }
.relato:first-child .relato__rotulo { color: var(--dst-300); }
.relato:first-child .relato__num { color: var(--texto-3); }
.relato:first-child .relato__icone { background: var(--grad-cta); color: var(--esc-900); }

/* Folha de caderno: a frase da Vó */
.mentor .purpose--sem-img {
  --margem: clamp(56px, 7vw, 104px);
  max-width: 900px;
  margin-inline: auto;
  padding: clamp(36px, 5vw, 64px) clamp(28px, 5vw, 72px) clamp(36px, 5vw, 56px) var(--margem);
  border-radius: 6px 26px 26px 6px;
  background:
    linear-gradient(90deg, transparent calc(var(--margem) - 22px), rgba(239, 90, 90, 0.45) calc(var(--margem) - 22px), rgba(239, 90, 90, 0.45) calc(var(--margem) - 20px), transparent calc(var(--margem) - 20px)),
    repeating-linear-gradient(180deg, transparent 0 39px, rgba(31, 26, 56, 0.12) 39px 40px),
    #f6efdf;
  box-shadow: 0 50px 90px -40px rgba(0, 0, 0, 0.9);
  transform: rotate(-1deg);
  text-align: left;
}
.mentor .purpose--sem-img .purpose__quote { font-family: var(--font-serif); font-style: italic; font-weight: 400; font-size: clamp(28px, 3.4vw, 44px); line-height: 1.25; color: #1f1a38; letter-spacing: 0; text-align: left; }
.mentor .purpose--sem-img .purpose__by { color: #7a5a1c; font-family: var(--font-mono); letter-spacing: 0.1em; }

/* Painéis escuros dentro de seções claras: cores de seção escura */
.section--light .gluta .eyebrow { color: var(--dst-400); }
.section--light .gluta .eyebrow::before { background: var(--dst-500); }
.section--light .gluta .text-gold { background-image: var(--grad-dst); }

/* Bloco "tela": texto + celular */
.gluta--tela { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: clamp(32px, 5vw, 72px); align-items: center; }
.gluta--reverso { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); }
.gluta--reverso .gluta__visual { order: -1; }
.gluta--tela .gluta__head { margin-bottom: 32px; }
.gluta__col, .gluta__visual { position: relative; }
.lista-ico { display: grid; }
.gluta--reverso .lista-ico { grid-template-columns: 1fr 1fr; column-gap: 28px; }
.lista-ico li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 16px; padding: 16px 0; border-top: 1px solid rgba(255, 255, 255, 0.08); }
.lista-ico__icone { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: color-mix(in srgb, var(--dst-500) 14%, transparent); border: 1px solid color-mix(in srgb, var(--dst-400) 30%, transparent); color: var(--dst-300); }
.lista-ico__icone svg { width: 20px; height: 20px; }
.lista-ico small { display: block; font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--dst-400); margin-bottom: 4px; }
.lista-ico b { display: block; font-size: 16px; font-weight: 600; color: var(--branco); line-height: 1.4; }
.lista-ico p { font-size: 14.5px; color: var(--texto-3); margin: 4px 0 0; }
.gluta__nota { display: flex; gap: 12px; align-items: flex-start; margin: 24px 0 0; padding: 16px 18px; border-radius: 16px; background: color-mix(in srgb, var(--dst-500) 8%, transparent); border: 1px solid color-mix(in srgb, var(--dst-400) 25%, transparent); font-size: 15px; color: var(--texto-2); }
.gluta__nota svg { width: 20px; height: 20px; flex: none; color: var(--dst-400); margin-top: 2px; }
.gluta--tela .conta { margin: 0 0 24px; }

/* Celular com a tela do app */
.fone { position: relative; width: min(330px, 100%); margin: 0 auto; }
.fone::before { content: ""; position: absolute; inset: 10% -25%; background: radial-gradient(closest-side, color-mix(in srgb, var(--dst-500) 30%, transparent), color-mix(in srgb, var(--ac-500) 20%, transparent) 60%, transparent); filter: blur(30px); }
.fone__corpo { position: relative; padding: 10px; border-radius: 48px; background: linear-gradient(145deg, #4a4370, #15122a 45%, #0c0a18); box-shadow: 0 60px 100px -40px rgba(0, 0, 0, 0.95), inset 0 0 0 1px rgba(255, 255, 255, 0.14); transform: rotate(-4deg); transition: transform 0.8s var(--ease); }
.gluta--reverso .fone__corpo { transform: rotate(4deg); }
.fone:hover .fone__corpo { transform: rotate(0deg); }
.fone__ilha { position: absolute; z-index: 2; top: 22px; left: 50%; width: 92px; height: 26px; border-radius: 20px; background: #000; transform: translateX(-50%); }
.fone__tela { min-height: 0; border-radius: 39px; background: radial-gradient(90% 50% at 50% 0%, color-mix(in srgb, var(--ac-500) 22%, transparent), transparent 70%), #0b0918; padding: 58px 18px 22px; color: var(--branco); overflow: hidden; font-family: var(--font-body); line-height: 1.4; }
.app__topo { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; margin-bottom: 20px; }
.app__marca { width: 18px; height: 18px; border-radius: 50%; background: var(--grad-cta); box-shadow: 0 0 0 3px rgba(232, 184, 79, 0.18); }
.app__passo { margin-left: auto; font-family: var(--font-mono); font-size: 12px; color: var(--texto-3); }
.app__rotulo { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--texto-3); margin: 0 0 10px; }
.app__letras { display: flex; justify-content: center; gap: 8px; }
.app__letras span { display: grid; justify-items: center; gap: 4px; width: 58px; padding: 10px 0; border-radius: 14px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); }
.app__letras b { font-family: var(--font-mono); font-size: 13px; font-weight: 500; color: var(--texto-3); }
.app__letras i { font-style: normal; font-family: var(--font-display); font-size: 28px; font-weight: 700; line-height: 1; background: var(--grad-dst); -webkit-background-clip: text; background-clip: text; color: transparent; }
.app__soma { text-align: center; font-family: var(--font-mono); font-size: 13px; color: var(--texto-3); margin: 12px 0 18px; }
.app__soma strong { color: var(--dst-300); font-size: 16px; }
.app__selos { display: grid; gap: 8px; margin-bottom: 20px; }
.app__selo { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; border-radius: 14px; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); }
.app__selo small { font-size: 12.5px; color: var(--texto-2); }
.app__selo strong { font-family: var(--font-display); font-size: 22px; color: var(--branco); }
.app__selo--ouro { background: linear-gradient(120deg, rgba(232, 184, 79, 0.26), rgba(232, 184, 79, 0.05)); border-color: rgba(232, 184, 79, 0.5); }
.app__selo--ouro strong { color: var(--dst-300); }
.app__talentos { display: flex; flex-wrap: wrap; gap: 6px; }
.app__talentos span { font-size: 12px; padding: 6px 10px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.12); color: var(--texto-3); }
.app__talentos .is-on { border-color: color-mix(in srgb, var(--dst-400) 60%, transparent); background: color-mix(in srgb, var(--dst-500) 14%, transparent); color: var(--dst-200); }
.app__cartao { padding: 16px; border-radius: 18px; margin-bottom: 12px; background: linear-gradient(160deg, rgba(232, 184, 79, 0.28), rgba(123, 97, 255, 0.12)); border: 1px solid rgba(232, 184, 79, 0.45); }
.app__cartao > small { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--dst-200); }
.app__cartao > strong { display: block; font-family: var(--font-display); font-size: 18px; line-height: 1.2; margin: 6px 0 12px; color: var(--branco); }
.app__mini { font-size: 12px; color: var(--texto-3); margin: 0 0 4px; }
.app__cartao li { padding: 4px 0; }
.app__cartao li i { display: block; height: 7px; border-radius: 4px; background: rgba(255, 255, 255, 0.2); }
.app__preco { display: grid; gap: 2px; margin-top: 12px; }
.app__preco span { font-size: 13px; font-weight: 600; color: var(--branco); }
.app__preco em { font-style: normal; font-size: 12px; color: var(--texto-3); }
.app__msg { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 10px 9px 14px; margin-bottom: 7px; border-radius: 14px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.08); }
.app__msg small { font-size: 12.5px; color: var(--texto-2); }
.app__msg span { font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: 999px; background: #3ddc84; color: #062b14; white-space: nowrap; }
.app__agenda { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin-top: 12px; }
.app__agenda span { display: grid; justify-items: center; gap: 2px; padding: 7px 0; border-radius: 10px; background: rgba(255, 255, 255, 0.04); font-size: 12px; color: var(--texto-3); }
.app__agenda b { font-size: 14px; color: var(--branco); }
.app__agenda .is-on { background: color-mix(in srgb, var(--dst-500) 24%, transparent); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--dst-400) 60%, transparent); }
.fone__nota { position: relative; text-align: center; margin-top: 22px; font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--texto-3); }

/* Bloco "lista": o que já foi tentado, em linhas */
.bloco-lista, .bloco-colunas, .bloco-passos { margin-top: clamp(72px, 9vw, 120px); }
.bloco-lista .gluta__head, .bloco-colunas .gluta__head, .bloco-passos .gluta__head { max-width: 720px; margin-bottom: 48px; }
.riscos { border-top: 1px solid rgba(255, 255, 255, 0.1); }
.riscos li { display: grid; grid-template-columns: 48px 150px minmax(0, 0.8fr) minmax(0, 1.3fr) 36px; gap: 24px; align-items: center; padding: 24px 12px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); transition: background 0.35s; }
.riscos li:hover { background: rgba(255, 255, 255, 0.025); }
.riscos__num { font-family: var(--font-mono); font-size: 13px; color: var(--texto-3); }
.riscos__kicker { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ac-200); }
.riscos__titulo { font-family: var(--font-display); font-size: clamp(19px, 1.8vw, 23px); font-weight: 600; color: var(--branco); line-height: 1.25; }
.riscos li p { font-size: 15px; color: var(--texto-3); margin: 0; }
.riscos__x { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: color-mix(in srgb, var(--vermelho) 14%, transparent); color: var(--vermelho); }
.riscos__x svg { width: 14px; height: 14px; }

/* Bloco "versus": o mesmo nome em vermelho e em dourado */
.gluta--versus .gluta__head { margin-inline: auto; text-align: center; }
.gluta--versus .gluta__head .eyebrow { justify-content: center; }
.versus { position: relative; display: grid; grid-template-columns: 1fr 1fr; border-radius: 24px; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.08); }
.versus__lado { padding: clamp(28px, 4vw, 52px); }
.versus__lado--nao { background: linear-gradient(160deg, color-mix(in srgb, var(--vermelho) 9%, transparent), transparent 60%), rgba(255, 255, 255, 0.02); }
.versus__lado--sim { background: linear-gradient(200deg, color-mix(in srgb, var(--dst-500) 16%, transparent), transparent 60%), rgba(255, 255, 255, 0.03); border-left: 1px solid rgba(255, 255, 255, 0.08); }
.versus__kicker { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; }
.versus__lado--nao .versus__kicker { color: color-mix(in srgb, var(--vermelho) 75%, white); }
.versus__lado--sim .versus__kicker { color: var(--dst-400); }
.versus .conta { margin: 20px 0 24px; }
.versus h4 { font-family: var(--font-display); font-size: clamp(20px, 2vw, 25px); font-weight: 600; color: var(--branco); line-height: 1.25; margin-bottom: 12px; }
.versus p { font-size: 15px; color: var(--texto-3); margin: 0; }
.versus__meio { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--esc-900); border: 1px solid rgba(255, 255, 255, 0.12); font-family: var(--font-serif); font-style: italic; font-size: 30px; color: var(--dst-300); }
.conta--vermelho .conta__par { background: color-mix(in srgb, var(--vermelho) 6%, transparent); border-color: color-mix(in srgb, var(--vermelho) 30%, transparent); }
.conta--vermelho .conta__num { background: none; color: var(--vermelho); -webkit-text-fill-color: var(--vermelho); }

/* Bloco "colunas": texto aberto com fio dourado */
.colunas { display: grid; grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); gap: clamp(28px, 4vw, 64px); }
.colunas__item { padding-top: 24px; border-top: 1px solid color-mix(in srgb, var(--dst-400) 45%, transparent); }
.colunas__kicker { display: flex; align-items: center; gap: 10px; font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dst-400); margin-bottom: 16px; }
.colunas__kicker svg { width: 18px; height: 18px; }
.colunas h4 { font-family: var(--font-display); font-size: clamp(22px, 2.2vw, 28px); font-weight: 600; color: var(--branco); line-height: 1.2; margin-bottom: 12px; }
.colunas p { font-size: 16px; color: var(--texto-2); }

/* Bloco "passos": trilha numerada em fundo claro */
.trilha { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); }
.trilha li { position: relative; padding: 32px 32px 0 0; border-top: 2px solid var(--linha); }
.trilha li::before { content: ""; position: absolute; top: -2px; left: 0; width: 72px; height: 2px; background: var(--ac-500); }
.trilha__num { display: block; font-family: var(--font-display); font-size: clamp(60px, 6vw, 92px); font-weight: 700; line-height: 0.9; color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--dst-600) 80%, transparent); margin-bottom: 20px; }
.trilha__kicker { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: color-mix(in srgb, var(--ac-600) 85%, black); }
.trilha h4 { font-family: var(--font-display); font-size: clamp(21px, 2vw, 25px); font-weight: 600; color: var(--tinta); line-height: 1.2; margin: 10px 0; }
.trilha p { font-size: 15px; color: var(--tinta-suave); }

/* Entregáveis em bento */
.bento { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 20px); }
.bento__card { position: relative; display: flex; flex-direction: column; gap: 24px; padding: clamp(24px, 2.6vw, 34px); border-radius: 26px; background: var(--vidro); border: 1px solid var(--vidro-borda); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06); overflow: hidden; transition: border-color 0.45s, transform 0.45s var(--ease); }
.bento__card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--dst-400) 40%, transparent); }
.bento__card--largo { grid-column: span 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); align-items: end; gap: 24px 32px; }
.bento__card--largo .bento__topo { grid-column: 1 / -1; }
.bento__card--1 { background: radial-gradient(70% 90% at 100% 100%, color-mix(in srgb, var(--dst-500) 22%, transparent), transparent 70%), var(--vidro); }
.bento__card--4 { background: radial-gradient(70% 90% at 100% 100%, color-mix(in srgb, var(--ac-500) 26%, transparent), transparent 70%), var(--vidro); }
.bento__card--5 { background: radial-gradient(70% 90% at 0% 100%, color-mix(in srgb, var(--dst-500) 16%, transparent), transparent 70%), var(--vidro); }
.bento__topo { display: flex; align-items: center; justify-content: space-between; }
.bento__icone { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: color-mix(in srgb, var(--dst-500) 14%, transparent); border: 1px solid color-mix(in srgb, var(--dst-400) 30%, transparent); color: var(--dst-300); }
.bento__icone svg { width: 20px; height: 20px; }
.bento__num { font-family: var(--font-mono); font-size: 13px; color: var(--texto-3); }
.bento__txt { margin-top: auto; }
.bento__card .deliver-card__title { margin-bottom: 10px; }
.bento__card p { color: var(--texto-2); font-size: 15px; }
.bento__vis--numeros { display: flex; gap: 10px; justify-content: flex-end; }
.bento__vis--numeros span { display: grid; justify-items: center; gap: 4px; flex: 1; max-width: 96px; padding: 18px 0 14px; border-radius: 18px; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); }
.bento__vis--numeros b { font-family: var(--font-display); font-size: 40px; line-height: 1; background: var(--grad-dst); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bento__vis--numeros small { font-size: 12px; color: var(--texto-3); }
.bento__vis--numeros .is-on { border-color: color-mix(in srgb, var(--dst-400) 60%, transparent); background: color-mix(in srgb, var(--dst-500) 12%, transparent); }
.bento__vis--msgs { display: grid; gap: 8px; }
.bento__vis--msgs span { display: flex; align-items: center; gap: 12px; padding: 10px 10px 10px 14px; border-radius: 14px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.08); }
.bento__vis--msgs small { width: 58px; font-family: var(--font-mono); font-size: 12px; color: var(--texto-2); }
.bento__vis--msgs i { flex: 1; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, 0.14); }
.bento__vis--msgs em { font-style: normal; font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: 999px; background: #3ddc84; color: #062b14; white-space: nowrap; }
.bento__vis--agenda { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.bento__vis--agenda span { display: grid; justify-items: center; gap: 2px; padding: 12px 0; border-radius: 12px; background: rgba(255, 255, 255, 0.04); font-size: 12px; color: var(--texto-3); }
.bento__vis--agenda b { font-family: var(--font-display); font-size: 20px; color: var(--branco); }
.bento__vis--agenda .is-on { background: color-mix(in srgb, var(--dst-500) 22%, transparent); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--dst-400) 60%, transparent); }

/* Oferta: recibo de preços + cartão com o cofre */
.offer__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 80px); align-items: center; margin-top: 24px; }
.offer__ancoras-rotulo { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: color-mix(in srgb, var(--ac-600) 85%, black); }
.recibo { margin-top: 16px; border-top: 1px dashed color-mix(in srgb, var(--tinta) 25%, transparent); }
.recibo li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 24px; padding: 22px 0; border-bottom: 1px dashed color-mix(in srgb, var(--tinta) 25%, transparent); }
.recibo small { font-size: 12px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--tinta); }
.recibo s { grid-column: 2; grid-row: 1 / span 2; align-self: center; font-family: var(--font-display); font-size: clamp(20px, 2vw, 26px); font-weight: 700; color: var(--tinta); text-decoration-color: var(--ac-500); text-decoration-thickness: 2px; white-space: nowrap; }
.recibo p { grid-column: 1; font-size: 14.5px; color: var(--tinta-suave); margin: 0; }
.offer__just { margin-top: 28px; font-size: clamp(17px, 1.6vw, 19px); color: var(--tinta-suave); }
.price-card--cofre { max-width: none; margin: 110px 0 0; overflow: visible; }
.price-card__cofre { width: 270px; margin: -140px auto 0; filter: drop-shadow(0 30px 40px rgba(0, 0, 0, 0.5)); }
.price-card--cofre .price-card__right { padding-top: 8px; }
.cofre svg { width: 100%; height: auto; }

/* Fechamento com o cofre */
.final__cofre { position: absolute; z-index: 1; right: max(-40px, calc(50% - 760px)); bottom: 12%; width: clamp(240px, 26vw, 380px); opacity: 0.45; transform: rotate(-8deg); pointer-events: none; }

/* Garantia detalhada */
.guarantee--det {
  background:
    radial-gradient(50% 40% at 15% 10%, color-mix(in srgb, var(--dst-500) 14%, transparent), transparent 70%),
    radial-gradient(45% 40% at 90% 90%, color-mix(in srgb, var(--ac-500) 18%, transparent), transparent 70%),
    var(--esc-900);
}
.g-topo { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: clamp(32px, 6vw, 88px); align-items: center; max-width: 1040px; margin: 0 auto clamp(48px, 6vw, 72px); }
.g-cabeca .h-section { margin-bottom: 16px; }
.g-cabeca .lead { margin: 0; }
.g-selo { position: relative; width: clamp(200px, 22vw, 280px); aspect-ratio: 1; }
.g-selo__anel { position: absolute; inset: 0; width: 100%; height: 100%; animation: rot 40s linear infinite; }
.g-selo__aro { fill: none; stroke: color-mix(in srgb, var(--dst-400) 45%, transparent); stroke-width: 1; }
.g-selo__aro--fino { stroke: rgba(255, 255, 255, 0.1); stroke-dasharray: 2 5; }
.g-selo__txt { fill: var(--dst-300); font-family: var(--font-mono); font-size: 11.5px; letter-spacing: 2px; }
.g-selo__core { inset: 24%; }
.g-grade { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(14px, 1.6vw, 20px); }
.g-card { display: flex; flex-direction: column; gap: 18px; padding: clamp(24px, 3vw, 40px); border-radius: 26px; background: var(--vidro); border: 1px solid var(--vidro-borda); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06); }
.g-card p { font-size: 16px; color: var(--texto-2); margin: 0; }
.g-card--teste { grid-row: span 2; background: radial-gradient(70% 60% at 0% 0%, color-mix(in srgb, var(--dst-500) 16%, transparent), transparent 70%), var(--vidro); }
.g-card--teste p { font-size: clamp(16.5px, 1.4vw, 18px); line-height: 1.75; color: var(--texto); }
.g-card--teste .g-dias { margin-top: auto; padding-top: 24px; }
.g-kicker { display: flex; align-items: center; gap: 10px; font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dst-400); }
.g-kicker svg { width: 18px; height: 18px; }
.g-dias { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; position: relative; }
.g-dias::before { content: ""; position: absolute; left: 4%; right: 4%; top: 50%; height: 1px; background: linear-gradient(90deg, color-mix(in srgb, var(--dst-400) 15%, transparent), var(--dst-400)); }
.g-dias li { position: relative; display: grid; justify-items: center; gap: 2px; padding: 12px 0; border-radius: 14px; background: var(--esc-900); border: 1px solid rgba(255, 255, 255, 0.1); }
.g-dias small { font-size: 12px; color: var(--texto-3); }
.g-dias b { font-family: var(--font-display); font-size: clamp(20px, 2vw, 26px); color: var(--branco); line-height: 1; }
.g-dias .is-fim { background: var(--grad-cta); border-color: transparent; }
.g-dias .is-fim small, .g-dias .is-fim b { color: var(--esc-900); }
.g-lei { display: flex; align-items: center; gap: 16px; }
.g-lei b { font-family: var(--font-serif); font-style: italic; font-weight: 400; font-size: clamp(44px, 4.4vw, 60px); line-height: 1; background: var(--grad-dst); -webkit-background-clip: text; background-clip: text; color: transparent; }
.g-lei span { font-size: 13px; line-height: 1.4; color: var(--texto-3); text-transform: uppercase; letter-spacing: 0.08em; }
.g-fecho { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: clamp(24px, 4vw, 56px); align-items: center; margin-top: clamp(14px, 1.6vw, 20px); padding: clamp(24px, 3vw, 40px); border-radius: 26px; border: 1px solid color-mix(in srgb, var(--dst-400) 35%, transparent); background: linear-gradient(120deg, color-mix(in srgb, var(--dst-500) 12%, transparent), color-mix(in srgb, var(--ac-500) 10%, transparent)); }
.g-fecho p { font-size: 16.5px; color: var(--texto); margin: 0; max-width: 720px; }
.g-fecho .guarantee__pills { margin: 18px 0 0; }
.g-fecho .guarantee__pills span { display: inline-flex; align-items: center; gap: 8px; }
.g-fecho .guarantee__pills svg { width: 12px; height: 12px; }

@media (max-width: 960px) {
  :root { --folha: 28px; }
  .g-topo, .g-grade, .g-fecho { grid-template-columns: 1fr; }
  .g-topo { justify-items: start; }
  .g-card--teste { grid-row: auto; }
  .g-dias { gap: 4px; }
  .g-dias::before { display: none; }
  .relatos { grid-template-columns: 1fr; }
  .relato:first-child { grid-row: auto; }
  .gluta--tela, .offer__grid, .versus, .colunas, .trilha, .bento { grid-template-columns: 1fr; }
  .gluta--reverso .gluta__visual { order: 0; }
  .gluta--reverso .lista-ico { grid-template-columns: 1fr; }
  .gluta__visual { margin-top: 24px; }
  .versus__lado--sim { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.08); }
  .versus__meio { display: none; }
  .trilha { gap: 40px; }
  .trilha li { padding-right: 0; }
  .bento__card--largo { grid-column: auto; grid-template-columns: 1fr; }
  .riscos li { grid-template-columns: 40px minmax(0, 1fr) 36px; gap: 6px 14px; padding: 20px 4px; align-items: start; }
  .riscos__kicker, .riscos__titulo, .riscos li p { grid-column: 2; }
  .riscos__num { grid-row: 1; }
  .riscos__x { grid-column: 3; grid-row: 1; }
  .final__cofre { display: none; }
  .price-card--cofre { margin-top: 90px; }
}
@media (max-width: 600px) {
  .lista-ico p, .recibo p { font-size: 15px; }
  .recibo li { grid-template-columns: 1fr; }
  .recibo s { grid-column: 1; grid-row: auto; }
  .bento__vis--numeros b { font-size: 32px; }
  .mentor .purpose--sem-img { transform: none; }
}
