/* ---------- 12. COMEÇAR + GARANTIA · 13. FAQ + OBJEÇÕES · 14. CTA FINAL · RODAPÉ ---------- */
.start { position: relative; padding: var(--s-10) 0 var(--s-9); text-align: center; }
.start-in { display: grid; justify-items: center; gap: var(--s-6); }
.start-lead { font-size: var(--t-lg); color: var(--ink-2); max-width: 36rem; text-wrap: balance; } .start-lead .g { color: var(--accent); }
.mini { --fill: 1; position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-5); width: min(100%, 60rem); margin-top: var(--s-5); }
.mini::before, .mini::after { content: ""; position: absolute; top: 1.5rem; left: 16.66%; right: 16.66%; height: 2px; border-radius: 2px; }
.mini::before { background: var(--line-strong); }
.mini::after { background: var(--accent); transform-origin: 0 50%; transform: scaleX(var(--fill)); }
.mini li { position: relative; z-index: 1; display: grid; justify-items: center; gap: var(--s-4); --lit: 1; }
.mini-n { width: 3rem; height: 3rem; border-radius: 50%; display: grid; place-items: center; font-family: var(--font-display); font-size: 1.3rem; font-weight: 600; box-sizing: border-box;
  background: color-mix(in oklab, var(--bg) calc((1 - var(--lit)) * 100%), var(--accent) calc(var(--lit) * 100%)); color: color-mix(in oklab, var(--ink-3) calc((1 - var(--lit)) * 100%), var(--accent-ink) calc(var(--lit) * 100%));
  border: 2px solid color-mix(in oklab, var(--line-strong) calc((1 - var(--lit)) * 100%), var(--accent) calc(var(--lit) * 100%)); }
.mini-t { font-family: var(--font-display); font-weight: var(--display-weight); font-size: var(--t-h3); letter-spacing: -.02em; line-height: 1.15; max-width: 12em; text-wrap: balance; }
.punch-line { font-size: var(--t-lg); color: var(--ink-2); margin-top: var(--s-4); } .punch-line b { color: var(--accent); }
.cta { display: flex; flex-direction: column; align-items: center; gap: var(--s-4); margin-top: var(--s-4); }
.btn-lg { --h: 3.75rem; padding: 0 2.1rem; font-size: 1.125rem; }
@media (max-width: 40rem) { .mini { grid-template-columns: 1fr; gap: var(--s-6); } .mini::before, .mini::after { display: none; } }

/* garantia */
.guar { position: relative; padding: var(--s-9) 0 var(--s-10); overflow-x: clip; }
.guar-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.seal-wrap { position: relative; display: grid; place-items: center; }
.seal { width: min(100%, 19rem); overflow: visible; }
.seal-ring { fill: var(--accent-soft); stroke: var(--accent); stroke-width: 3; }
.seal-ring2 { fill: none; stroke: var(--accent); stroke-width: 1.2; stroke-dasharray: 2 5; stroke-linecap: round; }
.seal-arc { font: 600 10.5px var(--font-body); fill: var(--accent); }
.seal-n { font: 700 56px var(--font-display); fill: var(--ink); letter-spacing: -.04em; }
.seal-d { font: 600 12px var(--font-body); letter-spacing: .3em; fill: var(--ink-2); }
.seal-shock { position: absolute; inset: 8%; border-radius: 50%; border: 2px solid var(--accent); opacity: 0; pointer-events: none; }
.guar-text { display: grid; gap: var(--s-6); }
.guar-copy { display: grid; gap: var(--s-4); color: var(--ink-2); max-width: 36rem; }
.guar-copy p { text-wrap: pretty; } .guar-copy b { color: var(--ink); } .guar-copy .g { color: var(--accent); }
.guar-copy .lead { font-family: var(--font-display); font-size: var(--t-h3); letter-spacing: -.02em; line-height: 1.2; color: var(--ink); }
.guar-copy .condition { padding: var(--s-4) 0; border-block: 1px solid var(--line); }
.guar-end { color: var(--ink); }
@media (max-width: 56rem) { .guar-grid { grid-template-columns: minmax(0, 1fr); } .seal-wrap { width: 14rem; justify-self: center; } .seal { width: 100%; } }

/* FAQ */
.faq { position: relative; padding-top: var(--s-9); }
.faq .sec-head { margin-bottom: var(--s-8); }
.faq-list { max-width: 52rem; }
.qa { border-top: 1px solid var(--line); }
.qa:last-child { border-bottom: 1px solid var(--line); }
.qa summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: var(--s-5); padding: var(--s-5) 0; cursor: pointer; font-family: var(--font-display); font-weight: var(--display-weight); font-size: clamp(1.15rem, 1.05rem + .5vw, 1.45rem); letter-spacing: -.02em; line-height: 1.25; transition: color var(--d-base) ease; }
.qa summary::-webkit-details-marker { display: none; }
@media (hover: hover) { .qa summary:hover { color: var(--accent); } }
.qa-ico { position: relative; flex: none; width: 1.4rem; height: 1.4rem; }
.qa-ico::before, .qa-ico::after { content: ""; position: absolute; left: 0; right: 0; top: calc(50% - 1px); height: 2px; border-radius: 2px; background: var(--accent); transition: transform var(--d-slow) var(--ease-out); }
.qa-ico::after { transform: rotate(90deg); }
.qa[open] .qa-ico::after { transform: rotate(0); }
.ans { overflow: hidden; }
.ans-in { padding: 0 0 var(--s-6); display: grid; gap: var(--s-4); color: var(--ink-2); max-width: 42rem; }
.ans-in p { text-wrap: pretty; } .ans-in b { color: var(--ink); } .ans-in .g { color: var(--accent); } .ans-in .k { color: var(--ink); font-weight: 600; }

/* objeções finais */
.objs { position: relative; padding: var(--s-10) 0; }
.objs-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.ob-tabs { display: grid; }
.ob-tabs button { position: relative; text-align: left; padding: var(--s-5) 0; border-top: 1px solid var(--line); font-family: var(--font-display); font-size: clamp(1.1rem, 1rem + .6vw, 1.5rem); letter-spacing: -.02em; line-height: 1.25; color: var(--ink-3); transition: color var(--d-base) ease; }
.ob-tabs button:last-child { border-bottom: 1px solid var(--line); }
.ob-tabs button[aria-selected="true"] { color: var(--ink); }
@media (hover: hover) { .ob-tabs button:hover { color: var(--ink); } }
.ob-bar { position: absolute; left: 0; top: -1px; height: 2px; width: 100%; background: var(--accent); transform: scaleX(0); transform-origin: 0 50%; }
.ob-tabs button[aria-selected="true"] .ob-bar { transform: scaleX(var(--ob, 1)); }
.ob-stage { min-height: 11rem; }
.ob-panel[hidden] { display: none; }
.ob-panel p { font-family: var(--font-display); font-weight: var(--display-weight); font-size: clamp(1.5rem, 1.1rem + 1.8vw, 2.5rem); letter-spacing: -.03em; line-height: 1.2; color: var(--ink-2); text-wrap: balance; }
.ob-panel b { color: var(--ink); font-weight: inherit; } .ob-panel .g { color: var(--accent); }
@media (max-width: 56rem) { .objs-grid { grid-template-columns: 1fr; } .ob-stage { min-height: 0; order: -1; } }

/* CTA final */
.final { position: relative; padding: var(--s-10) 0 calc(var(--s-10) + var(--s-6)); background: var(--bg-sunken); border-top: 1px solid var(--line); overflow: clip; isolation: isolate; text-align: center; }
.final-glow { position: absolute; left: 50%; bottom: -30%; width: min(90rem, 150vw); aspect-ratio: 1.6; translate: -50% 0; background: radial-gradient(closest-side, var(--accent-glow), transparent 70%); z-index: -1; pointer-events: none; }
.final-in { display: grid; justify-items: center; gap: var(--s-7); }
.final .h2 { max-width: 16em; margin-inline: auto; }
.vsf { display: grid; gap: var(--s-4); max-width: 44rem; }
.vsf-row { display: grid; justify-items: center; gap: var(--s-2); font-size: var(--t-lg); color: var(--ink-2); text-wrap: balance; }
.vsf-tag { font-size: .75rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; border: 1px solid var(--line-strong); color: var(--ink-3); border-radius: 999px; padding: .2rem .75rem; }
.vsf-tag.good { color: var(--accent); border-color: var(--accent); }
.vsf-row b { color: var(--ink); }
.final-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-5) var(--s-8); width: min(100%, 54rem); text-align: left; }
.final-grid li { display: grid; gap: .1rem; padding-top: var(--s-4); border-top: 1px solid var(--line-strong); }
.fg-k { font-family: var(--font-display); font-weight: var(--display-weight); font-size: var(--t-h3); letter-spacing: -.03em; line-height: 1.1; color: var(--ink); } .fg-k b { color: var(--accent); font-weight: inherit; }
.final-grid li > span:last-child { color: var(--ink-2); font-size: var(--t-lg); }
.final-punch { font-size: clamp(2rem, 1.3rem + 3.4vw, 4rem); max-width: 14em; margin-top: var(--s-5); } .final-punch b { font-weight: inherit; }
.final .cta { margin-top: var(--s-3); }
.btn[data-magnet] { will-change: transform; }
@media (max-width: 40rem) { .final-grid { grid-template-columns: 1fr; } }

/* rodapé */
.footer { padding: var(--s-9) 0 var(--s-6); border-top: 1px solid var(--line); color: var(--ink-3); font-size: var(--t-sm); }
.footer-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, .7fr)) minmax(0, 1.2fr); gap: var(--s-7) var(--s-6); }
.f-brand { display: grid; gap: var(--s-4); align-content: start; } .f-brand p { max-width: 24rem; text-wrap: pretty; }
.footer .logo b { color: var(--ink); }
.social { display: flex; gap: var(--s-4); } .social a, .footer li a { color: var(--ink-2); transition: color var(--d-base) ease; }
.footer h4 { margin: 0 0 var(--s-4); font-size: var(--t-sm); color: var(--ink); font-weight: 600; }
.footer ul { display: grid; gap: var(--s-3); }
.f-contact li { display: grid; gap: .1rem; } .f-contact li span { font-size: var(--t-xs); color: var(--ink-3); }
@media (hover: hover) { .social a:hover, .footer li a:hover, .to-top:hover { color: var(--accent); } }
.footer-bottom { display: flex; justify-content: space-between; gap: var(--s-4); flex-wrap: wrap; margin-top: var(--s-8); padding-top: var(--s-5); border-top: 1px solid var(--line); }
.to-top { color: var(--ink-2); transition: color var(--d-base) ease; }
@media (max-width: 56rem) { .footer-grid { grid-template-columns: 1fr 1fr; } .f-brand { grid-column: 1 / -1; } .f-contact { grid-column: 1 / -1; } }
