/* ============================================================
   37 SCRIPTS — Landing Page Premium
   Light Mode · Gold · SaaS Style (Stripe / Linear / Notion)
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }



:root {
    /* Light theme surfaces (off-white, subtle contrast cards, soft borders) */
    --bg: #FAF9F6; --bg-2: #F3F1EA; --bg-card: rgba(0,0,0,.025); --bg-card-h: rgba(0,0,0,.05);
    /* Gold: darkened for readable text on white, still premium; brighter tones live in solid fills */
    --gold-hi: #C9A227; --gold: #A9821E; --gold-lo: #8a6f1a;
    --gold-glow: rgba(201,162,39,.22);
    --border: rgba(0,0,0,.09); --border-h: rgba(201,162,39,.42);
    /* Text: main / secondary body / muted-legend */
    --white: #1A1614; --muted: #4A453E; --muted-2: #8A857D;
    --bad: #c0392b; --bad-glow: rgba(201,71,71,.18);
    --r: 12px; --r-lg: 20px;
    --ease: cubic-bezier(.4,0,.2,1); --dur: .3s;
    --font: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}


html { scroll-behavior: smooth; }


body { font-family: var(--font); background: var(--bg); color: var(--white); line-height: 1.65; -webkit-font-smoothing: antialiased; overflow-x: hidden; }


img { max-width: 100%; display: block; }


.container { max-width: 1100px; margin: 0 auto; padding: 0 24px; }


.section { padding: 100px 0; position: relative; }



.gold-text {
    background: linear-gradient(130deg, var(--gold-hi) 0%, var(--gold) 50%, var(--gold-hi) 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}


.gold { color: var(--gold); }



.section-label { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--gold); margin-bottom: 14px; }


.section-title { font-size: clamp(30px, 4.5vw, 52px); font-weight: 800; line-height: 1.13; letter-spacing: -.025em; margin-bottom: 18px; }


.section-header.center { text-align: center; }



/* BUTTONS */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-family: var(--font); font-weight: 700; letter-spacing: .04em; text-decoration: none; border: none; cursor: pointer; border-radius: var(--r); transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), background var(--dur) var(--ease), color var(--dur) var(--ease); position: relative; overflow: hidden; white-space: nowrap; }


.btn::after { content: ''; position: absolute; inset: 0; background: rgba(255,255,255,.08); opacity: 0; transition: opacity var(--dur) var(--ease); }


.btn:hover::after { opacity: 1; }


.btn-primary { background: linear-gradient(130deg, var(--gold-hi), var(--gold) 60%, #a07820); color: #000; font-size: 15px; padding: 18px 36px; box-shadow: 0 4px 28px var(--gold-glow); }


.btn-primary:hover { transform: translateY(-3px); box-shadow: 0 10px 44px rgba(201,162,39,.55); }


.btn-primary svg { flex-shrink: 0; transition: transform var(--dur) var(--ease); }


.btn-primary:hover svg { transform: translateX(5px); }


.btn-xl { font-size: 17px; padding: 22px 48px; border-radius: 14px; }


.btn-glow { position: relative; box-shadow: 0 6px 30px rgba(201,162,39,.42); }



/* ANIMATIONS */
.fade-in { opacity: 0; transform: translateY(16px); transition: opacity .5s var(--ease), transform .5s var(--ease); }


.fade-in.visible { opacity: 1; transform: translateY(0); }

.faq-item:nth-child(2) { transition-delay: .08s; }

.faq-item:nth-child(3) { transition-delay: .16s; }

.faq-item:nth-child(4) { transition-delay: .24s; }

.faq-item:nth-child(5) { transition-delay: .32s; }

.faq-item:nth-child(6) { transition-delay: .40s; }

.faq-item:nth-child(7) { transition-delay: .48s; }


.faq-item:nth-child(8) { transition-delay: .35s; }

 .faq-item:nth-child(9) { transition-delay: .40s; }

 .faq-item:nth-child(10) { transition-delay: .45s; }



/* NAVBAR */
.navbar { position: fixed; top: 0; left: 0; right: 0; z-index: 100; padding: 22px 0; transition: background var(--dur) var(--ease), padding var(--dur) var(--ease), border-color var(--dur) var(--ease); border-bottom: 1px solid transparent; }


.navbar.scrolled { background: rgba(250,249,246,.97); padding: 14px 0; border-bottom-color: var(--border); box-shadow: 0 4px 20px rgba(0,0,0,.05); }


.nav-inner { display: flex; align-items: center; justify-content: space-between; }


.nav-logo { font-size: 22px; font-weight: 800; letter-spacing: .06em; color: var(--white); user-select: none; }



/* HERO */
.hero { min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 140px 0 100px; position: relative; overflow: hidden; text-align: center; }


.hero-bg { position: absolute; inset: 0; pointer-events: none; }


.hero-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(0,0,0,.028) 1px, transparent 1px), linear-gradient(90deg, rgba(0,0,0,.028) 1px, transparent 1px); background-size: 64px 64px; }


.hero-glow { position: absolute; top: -15%; left: 50%; transform: translateX(-50%); width: 900px; height: 700px; max-width: 100%; background: radial-gradient(ellipse at center, rgba(212,175,55,.14) 0%, transparent 68%); }












/* DOR */
.dor-section { background: var(--bg-2); }


.chk { flex-shrink: 0; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(130deg, var(--gold-hi), var(--gold)); color: #000; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 13px; margin-top: 2px; }



/* AUTHOR */
.author-section { overflow: hidden; }


.author-card { position: relative; display: grid; grid-template-columns: 280px 1fr; gap: 56px; align-items: center; background: linear-gradient(155deg, #ffffff 0%, #f6f2e6 100%); border: 1px solid var(--border-h); border-radius: 28px; padding: 56px 56px; overflow: hidden; box-shadow: 0 8px 30px rgba(0,0,0,.05); }


.author-glow { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 15% 50%, rgba(212,175,55,.1) 0%, transparent 50%), radial-gradient(circle at 90% 0%, rgba(212,175,55,.07) 0%, transparent 45%); }


.author-photo-wrap { position: relative; z-index: 3; width: 260px; height: 320px; justify-self: center; isolation: isolate; }


.author-photo { position: relative; z-index: 2; display: block; width: 100%; height: 100%; border-radius: 20px; overflow: hidden; border: 1px solid var(--border-h); box-shadow: 0 12px 34px rgba(0,0,0,.16); background: linear-gradient(155deg, #efe9da 0%, #e2dbc9 100%); }


.author-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 20%; transition: transform .6s var(--ease); }


.author-card:hover .author-photo img { transform: scale(1.04); }


.author-photo-ring { position: absolute; inset: -12px; border-radius: 24px; background: linear-gradient(135deg, rgba(245,208,96,.4), transparent 40%, transparent 60%, rgba(201,162,39,.4)); z-index: 0; filter: blur(8px); opacity: .55; pointer-events: none; }


.author-body { position: relative; z-index: 2; }


.author-name-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 18px; }


.author-name { font-size: clamp(28px, 3.4vw, 38px); font-weight: 800; letter-spacing: -.02em; line-height: 1.1; }


.author-tag { display: inline-block; padding: 5px 12px; background: rgba(201,162,39,.1); border: 1px solid var(--border-h); border-radius: 100px; font-size: 11px; font-weight: 700; color: var(--gold); letter-spacing: .08em; text-transform: uppercase; }


.author-meta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 22px; }


.author-validated { display: inline-flex; align-items: center; gap: 10px; padding: 9px 18px 9px 14px; background: linear-gradient(130deg, rgba(245,208,96,.1), rgba(201,162,39,.04)); border: 1px solid var(--border-h); border-radius: 100px; font-size: 13px; color: var(--muted); }


.author-validated svg { width: 16px; height: 16px; color: var(--gold); flex-shrink: 0; }


.author-validated strong { color: var(--white); font-weight: 700; }


.author-social { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px 9px 12px; background: transparent; border: 1px solid var(--border); border-radius: 100px; color: var(--muted); font-size: 13px; font-weight: 700; text-decoration: none; transition: all var(--dur) var(--ease); }


.author-social svg { width: 16px; height: 16px; color: var(--gold); flex-shrink: 0; transition: transform var(--dur) var(--ease); }


.author-social:hover { color: var(--white); border-color: var(--border-h); background: rgba(201,162,39,.06); }


.author-social:hover svg { transform: scale(1.1); }


.author-bio { font-size: 16px; color: var(--muted); line-height: 1.75; margin-bottom: 16px; }


.author-bio:last-of-type { margin-bottom: 28px; }


.author-bio strong { font-weight: 800; }



/* CTA MAIN */
.cta-main-section { overflow: hidden; }


.cta-main-glow { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 50% 110%, rgba(201,162,39,.14) 0%, transparent 65%); }


.cta-main-inner { text-align: center; max-width: 720px; margin: 0 auto; position: relative; z-index: 2; }


.cta-main-title { font-size: clamp(34px, 5vw, 60px); font-weight: 900; letter-spacing: -.025em; line-height: 1.12; margin-bottom: 16px; }


.cta-main-sub { font-size: 18px; color: var(--muted); margin-bottom: 44px; }


.price-block { margin-bottom: 40px; }


.price-now { display: flex; align-items: flex-start; justify-content: center; gap: 6px; margin-bottom: 8px; }


.price-currency { font-size: 26px; font-weight: 700; color: var(--gold); padding-top: 14px; }


.price-amount { font-size: 96px; font-weight: 900; line-height: 1; background: linear-gradient(130deg, var(--gold-hi), var(--gold)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }



/* FAQ */
.faq-section { background: var(--bg-2); }


.faq-list { max-width: 800px; margin: 54px auto 0; display: flex; flex-direction: column; gap: 10px; text-align: left; }


.faq-item { background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--r); overflow: hidden; transition: border-color var(--dur) var(--ease); }


.faq-item.open { border-color: var(--border-h); }


.faq-q { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 22px 26px; background: transparent; border: none; color: var(--white); font-family: var(--font); font-size: 16px; font-weight: 700; cursor: pointer; text-align: left; transition: color var(--dur) var(--ease); }


.faq-q:hover { color: var(--gold); }


.faq-item.open .faq-q { color: var(--gold); }


.faq-ico { font-size: 26px; font-weight: 400; color: var(--gold); flex-shrink: 0; line-height: 1; transition: transform .35s var(--ease); display: block; }


.faq-item.open .faq-ico { transform: rotate(45deg); }


.faq-a { max-height: 0; overflow: hidden; transition: max-height .42s var(--ease); }


.faq-item.open .faq-a { max-height: 400px; }


.faq-a p { padding: 0 26px 22px; font-size: 15px; color: var(--muted); line-height: 1.75; }



/* FOOTER */
.footer { background: var(--bg-2); border-top: 1px solid var(--border); padding: 52px 0; text-align: center; }


.footer-brand { font-size: 22px; font-weight: 800; letter-spacing: .06em; margin-bottom: 14px; }


.footer-social { display: flex; justify-content: center; margin-bottom: 22px; }


.footer-social-link { display: inline-flex; align-items: center; gap: 8px; padding: 9px 18px 9px 14px; background: var(--bg-card); border: 1px solid var(--border); border-radius: 100px; color: var(--muted); font-size: 13px; font-weight: 700; text-decoration: none; transition: all var(--dur) var(--ease); }


.footer-social-link svg { width: 16px; height: 16px; color: var(--gold); flex-shrink: 0; transition: transform var(--dur) var(--ease); }


.footer-social-link:hover { color: var(--white); border-color: var(--border-h); background: var(--bg-card-h); }


.footer-social-link:hover svg { transform: scale(1.1); }


.footer-copy { font-size: 14px; color: var(--muted); margin-bottom: 12px; }



/* STICKY MOBILE CTA */
.sticky-cta { position: fixed; bottom: 0; left: 0; right: 0; z-index: 90; padding: 12px 16px; padding-bottom: max(12px, env(safe-area-inset-bottom)); background: linear-gradient(180deg, rgba(250,249,246,0) 0%, rgba(250,249,246,.96) 42%, var(--bg) 100%); transform: translateY(120%); transition: transform .4s var(--ease); pointer-events: none; display: none; }


.sticky-cta.visible { transform: translateY(0); pointer-events: auto; }


.btn-sticky { width: 100%; font-size: 15px; padding: 16px 24px; border-radius: 12px; box-shadow: 0 8px 24px rgba(201,162,39,.4); animation: none; }


.btn-sticky::before { display: none; }





















/* PRICE — destaque no parcelamento 12x */
.price-inst-lead { font-size: 20px; font-weight: 800; letter-spacing: .01em; color: var(--gold); margin-bottom: 0; }


.price-cash { font-size: 15px; color: var(--muted); margin-top: 8px; }


.price-cash strong { color: var(--white); font-weight: 800; }



/* DEPOIMENTO — card único centralizado (novo) */
.testimonial-section { overflow: hidden; }


.testimonial-card { max-width: 560px; margin: 0 auto; background: linear-gradient(155deg, #ffffff 0%, #f6f2e6 100%); border: 1px solid var(--border-h); border-radius: 24px; padding: 44px 40px; text-align: center; box-shadow: 0 16px 44px rgba(0,0,0,.06); }


.testimonial-avatar { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; margin: 0 auto 16px; border: 2px solid var(--gold-hi); box-shadow: 0 6px 18px rgba(201,162,39,.25); }


.testimonial-stars { color: var(--gold-hi); font-size: 20px; letter-spacing: 3px; margin-bottom: 16px; }


.testimonial-quote { font-size: 17px; line-height: 1.75; color: var(--white); margin-bottom: 18px; font-style: italic; }


.testimonial-name { font-size: 15px; font-weight: 800; color: var(--gold); letter-spacing: .01em; }



/* PARA QUEM É — lista de identificação (novo) */
.audience-section { overflow: hidden; }


.audience-list { list-style: none; max-width: 760px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; }


.audience-list li { display: flex; align-items: flex-start; gap: 14px; padding: 16px 20px; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--r); font-size: 15px; color: var(--white); line-height: 1.5; text-align: left; transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease); }


.audience-list li:hover { border-color: var(--border-h); background: var(--bg-card-h); }


.audience-list .chk { margin-top: 1px; }


.audience-list li:nth-child(2) { transition-delay: .05s; }

 .audience-list li:nth-child(3) { transition-delay: .10s; }


.audience-list li:nth-child(4) { transition-delay: .15s; }

 .audience-list li:nth-child(5) { transition-delay: .20s; }


.audience-list li:nth-child(6) { transition-delay: .25s; }

 .audience-list li:nth-child(7) { transition-delay: .30s; }



/* RESPONSIVE — imagens/produto (novo) */
@media (max-width: 960px) {
    .hero--split .hero-inner { grid-template-columns: 1fr; gap: 44px; }
    .hero--split .hero-content { text-align: center; }
    .hero--split .hero-lead, .hero--split .hero-sub { margin-left: auto; margin-right: auto; }
    .hero-product { order: 2; min-height: auto; }
}


@media (max-width: 640px) {
    .testimonial-card { padding: 36px 24px; }}



/* RESPONSIVE */
@media (max-width: 960px) {
    .learn-inner { grid-template-columns: 1fr; gap: 56px; }
    .learn-mockup { order: -1; }
    .book-wrap { transform: perspective(900px) rotateY(0deg) rotateX(0deg); }
    .book-wrap:hover { transform: scale(1.04); }
    .guarantee-box { flex-direction: column; align-items: center; text-align: center; padding: 48px 36px; }
    .guarantee-body p { margin-left: auto; margin-right: auto; }
    .guarantee-tags { justify-content: center; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .compare-grid { grid-template-columns: 1fr; gap: 16px; }
    .compare-vs { order: 0; margin: 4px auto; padding: 6px 18px; background: rgba(201,162,39,.06); border: 1px solid var(--border); border-radius: 100px; }
    .compare-vs::before, .compare-vs::after { display: none; }
    .author-card { grid-template-columns: 1fr; gap: 36px; padding: 48px 36px; text-align: center; }
    .author-photo-wrap { margin: 0 auto; display: block; position: relative; z-index: 3; }
    .author-meta-row { justify-content: center; }
    .author-name-row { justify-content: center; }
    .author-stats { grid-template-columns: 1fr; gap: 18px; text-align: center; }
    .author-stat { align-items: center; }
    .author-bio { text-align: left; }
    .upsell-book { width: 260px !important; height: 360px !important; }
    .upsell-book .book-pages-back { width: 244px; height: 348px; }
    .upsell-book-title { font-size: 32px !important; }
    .transition-quote { padding: 30px 32px; }
    .transition-quote p { font-size: 16px; }

    .upsell-simple-card { grid-template-columns: 1fr; gap: 40px; padding: 48px 36px; text-align: center; }
    .upsell-simple-info { align-items: stretch; }
    .upsell-simple-list { text-align: left; }
    .upsell-simple-price .price-now { justify-content: center; }
}



@media (max-width: 760px) {
    .sticky-cta { display: block; }


    body { padding-bottom: 90px; }}



@media (max-width: 640px) {
    .section { padding: 72px 0; }


    .hero { padding: 120px 0 80px; }


    .btn-xl { font-size: 15px; padding: 18px 28px; }


    .price-amount { font-size: 76px; }


    .author-card { padding: 36px 24px; border-radius: 22px; }


    .author-photo-wrap { width: 240px; height: 300px; margin: 0 auto; display: block; position: relative; z-index: 3; }


    .author-photo, .author-photo img { display: block !important; width: 100% !important; height: 100% !important; }}



@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }}



/* Caixa de oferta destacada */
.offer-box { position: relative; max-width: 640px; margin: 0 auto; background: linear-gradient(165deg, #17140c 0%, #0c0a07 100%); border: 1px solid var(--border-h); border-radius: 24px; padding: 44px 40px; box-shadow: 0 24px 70px rgba(0,0,0,.55), 0 0 90px rgba(233,207,122,.06); }


.offer-box::before { content: ''; position: absolute; top: 0; left: 24px; right: 24px; height: 2px; background: linear-gradient(90deg, transparent, var(--gold-hi), transparent); }


.offer-badge { display: inline-block; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #000; background: linear-gradient(130deg, var(--gold-hi), var(--gold)); padding: 6px 16px; border-radius: 100px; margin-bottom: 22px; }


@media (max-width: 560px) { .offer-box { padding: 36px 22px; }}



/* ============================================================
   ESTRUTURA 14 BLOCOS — componentes novos (tema escuro)
   ============================================================ */
/* Bloco 1 — promessa sem botão */
.promise-hero { padding: 120px 0 80px; text-align: center; position: relative; overflow: hidden; }


.promise-media { max-width: 720px; margin: 34px auto 0; }


.promise-media img { width: 100%; height: auto; border-radius: 16px; box-shadow: 0 30px 70px rgba(0,0,0,.55); }



/* Lista de bullets check (vários blocos) */
.bullets { list-style: none; max-width: 640px; margin: 26px auto 0; display: flex; flex-direction: column; gap: 12px; text-align: left; }


.bullets li { display: flex; gap: 12px; align-items: flex-start; font-size: 16px; color: var(--white); line-height: 1.55; }


.bullets li .bchk { color: var(--gold-hi); font-weight: 900; flex-shrink: 0; margin-top: 1px; }


.bullets.center { align-items: stretch; }


.dor-close { max-width: 680px; margin: 24px auto 0; text-align: center; }


.dor-close p { font-size: 17px; color: var(--muted); line-height: 1.8; margin-bottom: 12px; }


.dor-close strong { color: var(--white); }



/* Bloco 4 — 5 motivos numerados */
.reasons { max-width: 780px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }


.reason { display: flex; gap: 18px; align-items: flex-start; padding: 24px 26px; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--r-lg); text-align: left; transition: border-color var(--dur) var(--ease); }


.reason:hover { border-color: var(--border-h); }


.reason-num { flex-shrink: 0; width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(130deg, var(--gold-hi), var(--gold)); color: #000; font-weight: 900; font-size: 18px; display: flex; align-items: center; justify-content: center; }


.reason h3 { font-size: 17px; font-weight: 800; margin-bottom: 6px; line-height: 1.35; }


.reason p { font-size: 14.5px; color: var(--muted); line-height: 1.7; }


.reasons-close { max-width: 720px; margin: 34px auto 0; text-align: center; }


.reasons-close h3 { font-size: clamp(20px, 2.6vw, 28px); font-weight: 800; line-height: 1.35; margin-bottom: 16px; }


.reasons-close p { font-size: 16px; color: var(--muted); line-height: 1.75; margin-bottom: 12px; }



/* Bloco 5 — passo a passo vertical */
.flow { max-width: 780px; margin: 0 auto; display: flex; flex-direction: column; gap: 18px; }


.flow-step { display: flex; gap: 20px; align-items: flex-start; padding: 26px 28px; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--r-lg); text-align: left; transition: border-color var(--dur) var(--ease); }


.flow-step:hover { border-color: var(--border-h); }


.flow-num { flex-shrink: 0; width: 48px; height: 48px; border-radius: 14px; background: linear-gradient(135deg, rgba(233,207,122,.16), rgba(233,207,122,.05)); border: 1px solid var(--border-h); color: var(--gold-hi); font-weight: 900; font-size: 20px; display: flex; align-items: center; justify-content: center; }


.flow-step h3 { font-size: 18px; font-weight: 800; margin-bottom: 8px; }


.flow-step p { font-size: 15px; color: var(--muted); line-height: 1.7; }


.flow-step p + p { margin-top: 4px; }



/* Bloco 6 — entregáveis detalhados */
.deliverables { max-width: 760px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }


.deliverable { padding: 24px 26px; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--r-lg); text-align: left; transition: border-color var(--dur) var(--ease); }


.deliverable:hover { border-color: var(--border-h); }


.deliverable h3 { font-size: 16px; font-weight: 800; color: var(--gold-hi); letter-spacing: .02em; margin-bottom: 8px; }


.deliverable p { font-size: 14.5px; color: var(--muted); line-height: 1.7; }


.deliverable-plus { max-width: 760px; margin: 22px auto 8px; text-align: center; font-size: 18px; font-weight: 800; color: var(--white); }



/* Bloco 8 — tabela de valor */
.value-table { max-width: 620px; margin: 0 auto; border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: var(--bg-card); }


.value-row { display: flex; justify-content: space-between; gap: 16px; padding: 15px 22px; border-bottom: 1px solid var(--border); font-size: 15px; }


.value-row:last-child { border-bottom: none; }


.value-row .v-name { color: var(--white); text-align: left; }


.value-row .v-price { color: var(--muted-2); white-space: nowrap; }


.value-row .v-price s { color: var(--muted-2); text-decoration-color: rgba(233,207,122,.5); }


.value-total { max-width: 620px; margin: 26px auto 0; text-align: center; font-size: clamp(19px, 2.4vw, 24px); color: var(--muted); line-height: 1.5; }


.value-total strong { color: var(--white); font-weight: 900; }



/* Bloco 10 — conversa séria */
.serious { max-width: 720px; margin: 0 auto; text-align: center; }


.serious p { font-size: 17px; color: var(--muted); line-height: 1.8; margin-bottom: 14px; }


.serious p strong { color: var(--white); }


.serious .q { font-size: clamp(22px, 3.2vw, 32px); font-weight: 800; color: var(--white); line-height: 1.35; margin: 6px 0 24px; }


.serious .opt { text-align: left; max-width: 620px; margin: 16px auto; padding: 22px 26px; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--r-lg); font-size: 16px; color: var(--white); line-height: 1.6; }


.serious .opt.gold { border-color: var(--border-h); background: linear-gradient(130deg, rgba(233,207,122,.08), rgba(233,207,122,.03)); }


.serious .opt strong { color: var(--gold-hi); }


.serious .or { font-size: 16px; font-weight: 800; color: var(--gold-hi); margin: 6px 0; }



/* Ofertas (blocos 9 e 12) — reforço */
.offer-price-from { font-size: 15px; color: var(--muted); margin-top: 6px; }


.offer-price-from s { color: var(--muted-2); text-decoration-color: rgba(233,207,122,.6); }


.offer-note { margin-top: 18px; font-size: 13px; color: var(--muted); }


.offer-note strong { color: var(--gold-hi); font-weight: 700; }


.offer-box .bullets { margin: 22px auto 26px; }



/* Rodapé expandido */
.footer-support { font-size: 14px; color: var(--muted); margin: 8px auto 0; }


.footer-support a { color: var(--gold-hi); text-decoration: none; }


.footer-legal { font-size: 12px; color: var(--muted-2); max-width: 760px; margin: 20px auto 0; line-height: 1.75; }


.footer-addr { font-size: 12px; color: var(--muted-2); margin-top: 14px; line-height: 1.6; }



@media (max-width: 560px) {
    .reason, .flow-step { padding: 20px 20px; gap: 14px; }


    .value-row { padding: 14px 16px; font-size: 14px; }}


.proof-headline { max-width: 680px; margin: 0 auto 26px; font-size: clamp(19px, 2.6vw, 26px); font-weight: 800; color: var(--white); line-height: 1.4; text-align: center; }


.proof-headline .gold-text { display: inline; }


.value-row .v-name { display: flex; align-items: center; gap: 10px; }


.value-row .v-name::before { content: '✓'; color: var(--gold-hi); font-weight: 900; font-size: 13px; flex-shrink: 0; }


.auth-points { list-style: none; display: flex; flex-direction: column; gap: 10px; margin: 4px 0 24px; }


.auth-points li { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; color: var(--white); line-height: 1.5; }


.auth-points li span { color: var(--gold-hi); font-weight: 900; flex-shrink: 0; }


.conversa-lead { max-width: 620px; margin: 0 auto 8px; }



/* Grid de mockups individuais (bloco 8) */
.mockup-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; max-width: 760px; margin: 0 auto 34px; }


.mockup-tile { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; transition: border-color var(--dur) var(--ease), transform var(--dur) var(--ease); }


.mockup-tile:hover { border-color: var(--border-h); transform: translateY(-4px); }


.mockup-tile img { width: 100%; height: auto; display: block; }


.mockup-tile .cap { padding: 14px 16px 16px; text-align: center; }


.mockup-tile .cap .t { display: block; font-size: 13.5px; font-weight: 700; color: var(--white); line-height: 1.35; }


.mockup-tile .cap .p { display: block; font-size: 13px; color: var(--muted-2); margin-top: 4px; }


.mockup-tile .cap .p s { color: var(--gold-hi); }


@media (max-width: 760px) { .mockup-grid { grid-template-columns: 1fr; max-width: 460px; }}



/* ===== Otimizações finas (auditoria) ===== */
/* Mini-bloco de ancoragem de ROI logo após o hero */
.money-section { padding: 60px 0; }


.money-block { max-width: 700px; margin: 0 auto; text-align: center; background: linear-gradient(160deg, rgba(233,207,122,.08), rgba(233,207,122,.02)); border: 1px solid var(--border-h); border-radius: 20px; padding: 42px 34px; }


.money-block h2 { font-size: clamp(23px, 3.4vw, 34px); font-weight: 900; letter-spacing: -.02em; line-height: 1.2; margin-bottom: 18px; }


.money-block p { font-size: 17px; color: var(--muted); line-height: 1.75; }


.money-block p strong { color: var(--white); }


.money-block .big { color: var(--gold-hi); font-weight: 800; }



/* Micro-compromisso no hero */
.hero-microcommit { max-width: 640px; margin: 26px auto 0; font-size: clamp(15px, 2vw, 18px); font-weight: 700; color: var(--gold-hi); line-height: 1.5; }



/* Frase de ponte no depoimento */
.depo-bridge { max-width: 620px; margin: 24px auto 0; text-align: center; font-size: 17px; font-weight: 700; color: var(--white); }



/* Destaque amarelo (marca-texto) para a frase-chave do bloco 4 */
.hl { background: linear-gradient(180deg, transparent 55%, rgba(233,207,122,.32) 55%); color: var(--gold-hi); font-weight: 800; padding: 0 2px; }



/* Passo 5 (payoff) com destaque */
.flow-step.payoff { border-color: var(--border-h); background: linear-gradient(130deg, rgba(233,207,122,.10), rgba(233,207,122,.03)); box-shadow: 0 12px 40px rgba(233,207,122,.10); }


.flow-step.payoff .flow-num { background: linear-gradient(130deg, var(--gold-hi), var(--gold)); color: #000; border-color: transparent; }



/* Ícones nos entregáveis */
.deliverable-head { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }


.deliverable-head svg { width: 22px; height: 22px; color: var(--gold-hi); flex-shrink: 0; }


.deliverable-head h3 { margin: 0; }



/* Selo de compra segura abaixo do botão */
.offer-secure { margin-top: 14px; font-size: 13px; color: var(--muted); }


.offer-secure strong { color: var(--white); font-weight: 700; }



/* Blocos assimétricos (duas colunas) — quebra a monotonia central */
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; max-width: 1040px; margin: 0 auto; }


.split-body { min-width: 0; }


.split-media img { width: 100%; height: auto; border-radius: 16px; border: 1px solid var(--border); box-shadow: 0 24px 60px rgba(0,0,0,.5); }


.split .dor-close { text-align: left; margin: 0; }


.split .flow { max-width: none; }


@media (max-width: 880px) {
    .split { grid-template-columns: 1fr; gap: 30px; }


    .split-media { order: 1; max-width: 560px; margin: 0 auto; width: 100%; }


    .split .dor-close { text-align: center; }}



/* ============================================================
   TEMA CLARO — BRANCO + VERDE + DOURADO  (body.lp-green)
   Verde = positivo/venda · Dourado = destaque/CTA
   ============================================================ */
body.lp-green {
    --green-dk: #0F7A5F; --green: #12916F; --green-hi: #16A97F; --green-soft: #D9F2E7; --green-mint: #E8F8F1;
    --bg: #FFFFFF; --bg-2: var(--green-mint); --bg-card: #FFFFFF; --bg-card-h: #FBFEFC;
    --gold-hi: #E0A93B; --gold: #C4881C; --gold-lo: #9c6c15;
    --gold-glow: rgba(224,169,59,.28);
    --border: rgba(15,122,95,.14); --border-h: rgba(18,145,111,.45);
    --white: #12261F; --muted: #4B5A54; --muted-2: #7D8B85;
    --bad: #d9534f;
    background: var(--bg); color: var(--white);
}


/* "gold-text" vira verde no tema claro (positivo) */
.lp-green .gold-text { background: linear-gradient(130deg, var(--green-hi) 0%, var(--green-dk) 60%, var(--green) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }


.lp-green .gold { color: var(--green); }


.lp-green .section-label { color: var(--green); }


.lp-green .navbar.scrolled { background: rgba(255,255,255,.97); border-bottom-color: var(--border); box-shadow: 0 4px 18px rgba(15,122,95,.08); }


.lp-green .nav-logo { color: var(--white); }


.lp-green .hero-grid { background-image: linear-gradient(rgba(15,122,95,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(15,122,95,.045) 1px, transparent 1px); }


.lp-green .hero-glow { background: radial-gradient(ellipse at center, rgba(18,145,111,.10) 0%, transparent 68%); }

 .lp-green .reason,
.lp-green .flow-step, .lp-green .deliverable, .lp-green .audience-list li,
.lp-green .faq-item, .lp-green .mockup-tile, .lp-green .value-table {
    background: #fff; border-color: var(--border); box-shadow: 0 4px 18px rgba(15,122,95,.06);
}

 .lp-green .reason:hover, .lp-green .flow-step:hover,
.lp-green .deliverable:hover, .lp-green .audience-list li:hover, .lp-green .mockup-tile:hover {
    border-color: var(--border-h); box-shadow: 0 10px 28px rgba(15,122,95,.12);
}


/* Checks e números → verde */
.lp-green .chk, .lp-green .reason-num {
    background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); color: #fff;
}


.lp-green .bullets li .bchk, .lp-green .auth-points li span, .lp-green .deliverable-head svg { color: var(--green); }


.lp-green .flow-num { background: var(--green-soft); border-color: var(--border-h); color: var(--green-dk); }


.lp-green .deliverable h3 { color: var(--green-dk); }


.lp-green .hl { background: linear-gradient(180deg, transparent 55%, rgba(224,169,59,.45) 55%); color: var(--white); }



/* Seções alternadas: branco → mint */
.lp-green .dor-section, .lp-green .faq-section, .lp-green .audience-section{ background: var(--green-mint); }


.lp-green .footer { background: var(--green-mint); border-top-color: var(--border); }



/* Faixas verdes (hero, oferta, autor) */
.lp-green .band-green { background: linear-gradient(160deg, var(--green-dk), var(--green)); color: #fff; }


.lp-green .band-green .section-title, .lp-green .band-green h2, .lp-green .band-green h3 { color: #fff; }


.lp-green .band-green .section-label { color: #BFF3E1; }


.lp-green .band-green p { color: rgba(255,255,255,.92); }


.lp-green .band-green .gold-text { background: linear-gradient(130deg, #FFD98A, var(--gold-hi)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }



/* Botão CTA — dourado forte (destaque) */
.lp-green .btn-primary { background: linear-gradient(130deg, var(--gold-hi), var(--gold)); color: #2A1C00; box-shadow: 0 6px 24px rgba(224,169,59,.4); }


.lp-green .btn-glow { box-shadow: 0 8px 30px rgba(224,169,59,.45); }



/* Blocos escuros → claros */
.lp-green .offer-box { background: #fff; border-color: var(--border-h); box-shadow: 0 20px 50px rgba(15,122,95,.12); }


.lp-green .offer-badge { background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); color: #fff; }


.lp-green .author-card, .lp-green .testimonial-card { background: linear-gradient(155deg, #ffffff, var(--green-mint)); box-shadow: 0 16px 44px rgba(15,122,95,.10); }


.lp-green .money-block { background: linear-gradient(160deg, var(--green-soft), #fff); border-color: var(--border-h); }


.lp-green .money-block .big { color: var(--green-dk); }


.lp-green .split-media img, .lp-green .promise-media img,
.lp-green .mockup-tile img{ box-shadow: 0 16px 40px rgba(15,122,95,.14); }


.lp-green .price-amount, .lp-green .price-inst-lead { background: linear-gradient(130deg, var(--gold-hi), var(--gold)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }


.lp-green .price-currency { color: var(--gold); }


.lp-green .price-inst-lead { -webkit-text-fill-color: transparent; }


.lp-green .value-row { border-bottom-color: var(--border); }


.lp-green .value-row .v-name::before { color: var(--green); }


.lp-green .serious .opt { background: #fff; border-color: var(--border); }


.lp-green .serious .opt.gold { background: linear-gradient(130deg, var(--green-soft), #fff); border-color: var(--border-h); }


.lp-green .serious .opt.gold strong, .lp-green .serious .or { color: var(--green-dk); }


.lp-green .flow-step.payoff { background: linear-gradient(130deg, var(--green-soft), #fff); border-color: var(--border-h); box-shadow: 0 12px 32px rgba(18,145,111,.14); }


.lp-green .flow-step.payoff .flow-num { background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); color: #fff; }


.lp-green .sticky-cta { background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.97) 42%, #fff); }


.lp-green .testimonial-avatar { border-color: var(--green); }


.lp-green .testimonial-stars{ color: var(--gold-hi); }


.lp-green .cta-main-glow, .lp-green .author-glow, .lp-green .author-photo-ring { display: none; }

 .lp-green .author-tag, .lp-green .author-validated { background: var(--green-soft); border-color: var(--border-h); color: var(--green-dk); }


.lp-green .author-social { border-color: var(--border); color: var(--muted); }


.lp-green .author-social svg, .lp-green .author-validated svg { color: var(--green); }


.lp-green .footer-social-link { background: #fff; border-color: var(--border); }



/* ===== COMPONENTES NO PADRÃO DA REFERÊNCIA ===== */
/* Logo + nome do produto no topo do hero */
.brandmark { display: flex; flex-direction: column; align-items: center; gap: 6px; margin-bottom: 26px; }


.brandmark-icon { width: 54px; height: 54px; border-radius: 16px; background: linear-gradient(135deg, var(--green-hi), var(--green-dk)); display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 22px rgba(18,145,111,.28); }


.brandmark-icon svg { width: 28px; height: 28px; color: #fff; }


.brandmark-name { font-size: clamp(15px, 2.2vw, 19px); font-weight: 900; letter-spacing: .01em; line-height: 1.15; text-align: center; }


.brandmark-name em { font-style: normal; color: var(--gold); }


.brandmark-sub { font-size: 10.5px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: var(--muted-2); }



/* Promessa grande do hero */
.big-promise { font-size: clamp(30px, 5.2vw, 56px); font-weight: 900; line-height: 1.12; letter-spacing: -.028em; max-width: 940px; margin: 0 auto 26px; }



/* "Feito para..." + chips */
.madefor { font-size: clamp(15px, 2vw, 18px); color: var(--muted); margin-bottom: 16px; }


.chips { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-bottom: 8px; }


.chip { display: inline-flex; align-items: center; gap: 8px; padding: 11px 22px; border-radius: 100px; background: #fff; border: 1.5px solid var(--border-h); font-size: 15px; font-weight: 700; color: var(--green-dk); box-shadow: 0 4px 14px rgba(15,122,95,.08); }


.band-green .chip { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.45); color: #fff; box-shadow: none; }



/* Antes → Depois lado a lado com seta */
.beforeafter { display: grid; grid-template-columns: 1fr auto 1fr; gap: 18px; align-items: center; max-width: 980px; margin: 40px auto 0; }


.ba-item { position: relative; }


.ba-item img { width: 100%; height: auto; border-radius: 18px; display: block; }


.ba-tag { position: absolute; top: 12px; left: 12px; z-index: 2; font-size: .72rem; font-weight: 800; letter-spacing: .08em; padding: .35rem .8rem; border-radius: 999px; box-shadow: 0 3px 10px rgba(0,0,0,.18); }


.ba-before .ba-tag { background: #E9584F; color: #fff; }


.ba-after .ba-tag { background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); color: #fff; }


.ba-arrow { display: flex; align-items: center; justify-content: center; width: 68px; height: 68px; }


.ba-arrow svg { width: 100%; height: 100%; color: var(--gold-hi); }


@media (max-width: 760px) {
    .beforeafter { grid-template-columns: 1fr; gap: 12px; max-width: 440px; }


    .ba-arrow { transform: rotate(90deg); margin: -4px auto; width: 48px; height: 48px; }}



/* Ruminações em balões ao redor da pessoa */
.bubbles-stage { position: relative; max-width: 940px; margin: 0 auto; display: grid; grid-template-columns: 1fr minmax(220px, 300px) 1fr; gap: 16px; align-items: center; }


.bubbles-col { display: flex; flex-direction: column; gap: 16px; }


.bubbles-person img { width: 100%; height: auto; border-radius: 18px; box-shadow: 0 16px 40px rgba(15,122,95,.16); }


.bubble-think { position: relative; padding: 16px 20px; background: linear-gradient(160deg, var(--green), var(--green-dk)); color: #fff; border-radius: 16px; font-size: 14.5px; font-weight: 700; line-height: 1.45; box-shadow: 0 8px 22px rgba(15,122,95,.22); }


.bubble-think .emoji { display: block; font-size: 22px; margin-bottom: 6px; }


.bubbles-col:first-child .bubble-think::after { content: ''; position: absolute; right: -9px; top: 50%; transform: translateY(-50%); border: 9px solid transparent; border-left-color: var(--green-dk); border-right: 0; }


.bubbles-col:last-child .bubble-think::after { content: ''; position: absolute; left: -9px; top: 50%; transform: translateY(-50%); border: 9px solid transparent; border-right-color: var(--green); border-left: 0; }


@media (max-width: 860px) {
    .bubbles-stage { grid-template-columns: 1fr; max-width: 480px; }


    .bubbles-person { order: -1; }


    .bubble-think::after { display: none !important; }}



/* Faixa verde de seção (full-bleed) */
.band-green { padding: 74px 0; }


.band-green .bullets li, .band-green .audience-list li { color: #fff; }



/* Fix: dentro da faixa verde, o card de oferta é branco — restaura cores de texto */
.lp-green .band-green .offer-box, .lp-green .band-green .offer-box p,
.lp-green .band-green .offer-box li, .lp-green .band-green .offer-box .bullets li { color: var(--white); }


.lp-green .band-green .offer-box .cta-main-title,
.lp-green .band-green .offer-box h2, .lp-green .band-green .offer-box h3 { color: var(--white); }


.lp-green .band-green .offer-box .gold-text { background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }


.lp-green .band-green .offer-box .cta-main-sub,
.lp-green .band-green .offer-box .offer-note,
.lp-green .band-green .offer-box .offer-secure,
.lp-green .band-green .offer-box .price-cash,
.lp-green .band-green .offer-box .offer-price-from { color: var(--muted); }


.lp-green .band-green .offer-box .offer-secure strong,
.lp-green .band-green .offer-box .price-cash strong { color: var(--white); }


/* Card do autor dentro da faixa verde */
.lp-green .band-green .author-card, .lp-green .band-green .author-card p,
.lp-green .band-green .author-card h3, .lp-green .band-green .author-card li { color: var(--white); }


.lp-green .band-green .author-card .author-bio { color: var(--muted); }



/* Fix de contraste — faixa verde: só o cabeçalho da seção é branco, cards são claros */
.lp-green .band-green .section-header .section-title { color: #fff; }


.lp-green .band-green .section-header .section-label { color: #BFF3E1; }


/* Card do autor é branco → texto escuro */
.lp-green .band-green .author-card { background: #fff; }


.lp-green .band-green .author-card .author-name { color: var(--white); }


.lp-green .band-green .author-card .author-bio{ color: var(--muted); }


.lp-green .band-green .author-card .auth-points li { color: var(--white); }


.lp-green .band-green .author-card .author-tag,
.lp-green .band-green .author-card .author-validated { color: var(--green-dk); }


.lp-green .band-green .author-card .author-validated span,
.lp-green .band-green .author-card .author-social span { color: var(--green-dk); }


.lp-green .band-green .author-card .author-validated strong { color: var(--white); }


/* Selo DEPOIS/ANTES do antes→depois e tags claras */
.lp-green .ba-after .ba-tag, .lp-green .ba-before .ba-tag { color: #fff; }
/* Passo a passo ilustrado — alterna os lados (padrão da referência) */
.stepzig { max-width: 980px; margin: 0 auto; display: flex; flex-direction: column; gap: 26px; }
.zig { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: center; padding: 26px 30px; background: #fff; border: 1px solid var(--border); border-radius: 22px; box-shadow: 0 6px 22px rgba(15,122,95,.07); }
.zig:nth-child(even) .zig-media { order: 2; }
.zig-media img { width: 100%; height: auto; max-width: 300px; margin: 0 auto; display: block; border-radius: 16px; }
.zig-body { text-align: left; }
.zig-badge { display: inline-block; font-size: 12px; font-weight: 800; letter-spacing: .1em; color: #fff; background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); padding: 5px 14px; border-radius: 8px; margin-bottom: 12px; }
.zig-body h3 { font-size: clamp(19px, 2.4vw, 25px); font-weight: 800; line-height: 1.25; margin-bottom: 10px; color: var(--white); }
.zig-body p { font-size: 15.5px; color: var(--muted); line-height: 1.7; }
.zig.payoff { border-color: var(--border-h); background: linear-gradient(130deg, var(--green-soft), #fff); box-shadow: 0 12px 32px rgba(18,145,111,.14); }
@media (max-width: 820px) {
    .zig, .zig:nth-child(even) .zig-media { grid-template-columns: 1fr; gap: 18px; order: 0; }
    .zig-body, .zig-body h3 { text-align: center; }
    .zig-media img { max-width: 220px; }
}
/* Logo do produto no hero */
.lp-green .brandmark-icon { background: none; box-shadow: none; width: 62px; height: 62px; padding: 0; }
.lp-green .brandmark-icon img { width: 100%; height: 100%; object-fit: contain; border-radius: 16px; }

/* Cards de entregáveis com imagem (padrão da referência) */
.gain-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; max-width: 1000px; margin: 0 auto 30px; }
.gain-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 22px 24px 26px; text-align: center; transition: transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease); box-shadow: 0 6px 22px rgba(15,122,95,.07); }
.gain-card:hover { transform: translateY(-5px); border-color: var(--border-h); box-shadow: 0 14px 34px rgba(15,122,95,.13); }
.gain-card img { width: 100%; max-width: 190px; height: auto; margin: 0 auto 16px; display: block; }
.gain-card h3 { font-size: 16.5px; font-weight: 800; color: var(--green-dk); line-height: 1.3; margin-bottom: 8px; }
.gain-card p { font-size: 14px; color: var(--muted); line-height: 1.65; }
.gain-more { text-align: center; font-size: 19px; font-weight: 800; color: var(--white); margin: 6px 0 24px; }
@media (max-width: 820px) { .gain-grid { grid-template-columns: 1fr; max-width: 420px; } }

/* ===== Elementos do padrão da referência (auditoria) ===== */
/* 1. Caixa verde de confirmação ("se identifica com 2 itens") */
.confirm-box { display: flex; align-items: center; gap: 16px; max-width: 720px; margin: 34px auto 0; padding: 22px 28px; background: linear-gradient(160deg, var(--green-dk), var(--green)); border-radius: 18px; box-shadow: 0 12px 30px rgba(15,122,95,.22); text-align: left; }
.confirm-box svg { width: 38px; height: 38px; color: #fff; flex-shrink: 0; }
.confirm-box p { font-size: clamp(16px, 2.1vw, 20px); font-weight: 800; color: #fff; line-height: 1.35; margin: 0; }
.confirm-box em { font-style: normal; color: #BFF3E1; }

/* 2. Caixa âmbar de agitação + alerta */
.agitate { max-width: 760px; margin: 44px auto 0; border-radius: 20px; overflow: hidden; box-shadow: 0 12px 32px rgba(0,0,0,.08); }
.agitate-top { background: linear-gradient(160deg, #F0B429, #E09B1F); padding: 30px 34px; text-align: center; }
.agitate-top h3 { font-size: clamp(20px, 2.8vw, 27px); font-weight: 900; color: #2E2100; margin-bottom: 12px; }
.agitate-top p { font-size: 16px; color: #4A3600; line-height: 1.7; margin: 0 0 8px; }
.agitate-warn { background: #FFFBF0; border: 1px dashed #E0A93B; border-top: none; padding: 28px 34px; text-align: center; }
.agitate-warn .ico { font-size: 34px; display: block; margin-bottom: 10px; }
.agitate-warn h4 { font-size: clamp(18px, 2.4vw, 23px); font-weight: 900; color: var(--white); margin-bottom: 10px; }
.agitate-warn p { font-size: 15.5px; color: var(--muted); line-height: 1.7; margin: 0; }
.agitate-warn u { text-decoration-color: var(--green); font-weight: 700; color: var(--white); }

/* 3. Faixa verde com checklist em 2 colunas */
.outcome-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; max-width: 860px; margin: 0 auto; }
.outcome-item { display: flex; align-items: flex-start; gap: 12px; padding: 16px 20px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.28); border-radius: 12px; font-size: 15px; color: #fff; line-height: 1.45; text-align: left; }
.outcome-item span { flex-shrink: 0; color: #BFF3E1; font-weight: 900; }
@media (max-width: 720px) { .outcome-grid { grid-template-columns: 1fr; } }

/* 4. Como você recebe (3 passos com ícone) */
.receive-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; max-width: 900px; margin: 0 auto; }
.receive-item { text-align: center; }
.receive-ico { width: 66px; height: 66px; border-radius: 50%; background: linear-gradient(135deg, var(--green-hi), var(--green-dk)); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; box-shadow: 0 8px 20px rgba(18,145,111,.25); }
.receive-ico svg { width: 30px; height: 30px; color: #fff; }
.receive-item h3 { font-size: 15px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--green-dk); margin-bottom: 8px; }
.receive-item p { font-size: 14px; color: var(--muted); line-height: 1.65; }
@media (max-width: 720px) { .receive-grid { grid-template-columns: 1fr; gap: 30px; } }

/* 5. "Para quem serve" com pessoa ao lado */
.audience-split { display: grid; grid-template-columns: 1.15fr .85fr; gap: 40px; align-items: center; max-width: 1000px; margin: 0 auto; }
.audience-split .audience-list { margin: 0; }
.audience-person img { width: 100%; height: auto; max-width: 380px; margin: 0 auto; display: block; }
@media (max-width: 880px) { .audience-split { grid-template-columns: 1fr; gap: 24px; } .audience-person { display: none; } }

/* ===== Bloco de compra (9 e 12) — componente reutilizável ===== */
.offer-logo { width: 74px; margin: 0 auto 14px; }
.offer-logo img { width: 100%; height: auto; border-radius: 18px; }
.offer-tudao { max-width: 460px; margin: 22px auto 26px; }
.offer-tudao img { width: 100%; height: auto; }
.offer-guarantee { margin-top: 16px; font-size: 15px; color: var(--muted); }
.offer-guarantee strong { color: var(--green-dk); font-weight: 800; }
.lp-green .band-green .offer-box .offer-guarantee { color: var(--muted); }
.footer-logo { width: 56px; margin: 0 auto 12px; }
.footer-logo img { width: 100%; height: auto; border-radius: 14px; }

/* ===== Seção de dados (bloco 2b) ===== */
.data-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; max-width: 1000px; margin: 0 auto 34px; }
.data-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 32px 26px 24px; text-align: center; box-shadow: 0 6px 22px rgba(15,122,95,.07); transition: transform var(--dur) var(--ease), border-color var(--dur) var(--ease); }
.data-card:hover { transform: translateY(-4px); border-color: var(--border-h); }
.data-num { display: block; font-size: clamp(38px, 5vw, 52px); font-weight: 900; line-height: 1; letter-spacing: -.02em; background: linear-gradient(130deg, var(--green-hi), var(--green-dk)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 12px; }
.data-card p { font-size: 15px; color: var(--white); line-height: 1.55; }
.data-src { display: block; margin-top: 14px; font-size: 11.5px; color: var(--muted-2); letter-spacing: .01em; }
.data-close { max-width: 720px; margin: 0 auto; text-align: center; font-size: clamp(16px, 2.1vw, 19px); color: var(--muted); line-height: 1.7; }
.data-close strong { color: var(--white); font-weight: 800; }
@media (max-width: 820px) { .data-grid { grid-template-columns: 1fr; max-width: 440px; } }

/* ===== Bloco de projeção (antes da ancoragem) ===== */
.projection { max-width: 720px; margin: 0 auto; background: linear-gradient(160deg, var(--green-soft), #fff); border: 1px solid var(--border-h); border-radius: 22px; padding: 40px 42px; box-shadow: 0 10px 30px rgba(15,122,95,.10); }
.projection p { font-size: clamp(16px, 2.05vw, 18px); color: var(--muted); line-height: 1.8; margin-bottom: 16px; }
.projection p:last-child { margin-bottom: 0; }
.projection .hit { display: block; font-size: clamp(19px, 2.6vw, 25px); font-weight: 900; color: var(--green-dk); line-height: 1.35; margin: 22px 0; letter-spacing: -.01em; }
.projection .kicker { color: var(--white); font-weight: 700; }
@media (max-width: 560px) { .projection { padding: 30px 22px; } }

/* ===== Linha de acesso imediato (bloco de oferta) ===== */
.offer-immediate { margin-top: 10px; font-size: 14.5px; font-weight: 700; color: var(--green-dk); }
.lp-green .band-green .offer-box .offer-immediate { color: var(--green-dk); }

/* ===== Custo de não agir (bloco 10) ===== */
.cost-warn { max-width: 640px; margin: 0 auto 26px; padding: 20px 26px; background: #FFFBF0; border: 1px dashed #E0A93B; border-radius: 14px; font-size: 16px; color: var(--muted); line-height: 1.7; text-align: left; }
.cost-warn strong { color: var(--white); font-weight: 800; }

/* ===== HOTMART — trava de estilo dos botões de checkout =====
   A classe .hotmart__button-checkout vem com o visual verde padrão da Hotmart
   e sobrescreveria os botões dourados da página. O CSS da Hotmart não é
   carregado (ver comentário no <head> do index.html), mas isto garante o
   visual correto mesmo que ele apareça por outro caminho. */
a.btn.hotmart__button-checkout,
.lp-green a.btn.hotmart__button-checkout {
    display: inline-flex;
    box-sizing: border-box;
    font-family: var(--font);
    font-weight: 700;
    line-height: normal;
    letter-spacing: .04em;
    text-shadow: none;
    border: none;
    text-decoration: none !important;
    background: linear-gradient(130deg, var(--gold-hi), var(--gold));
    color: #2A1C00 !important;
    box-shadow: 0 8px 30px rgba(224,169,59,.45);
}
a.btn.btn-xl.hotmart__button-checkout { font-size: 17px; padding: 22px 48px; border-radius: 14px; }
a.btn.hotmart__button-checkout:hover,
a.btn.hotmart__button-checkout:focus,
a.btn.hotmart__button-checkout:active {
    background: linear-gradient(130deg, var(--gold-hi), var(--gold));
    color: #2A1C00 !important;
    box-shadow: 0 10px 44px rgba(201,162,39,.55);
}
@media (max-width: 640px) {
    a.btn.btn-xl.hotmart__button-checkout { font-size: 15px; padding: 18px 28px; }
}

/* ============================================================
   CONSÓRCIO — Darius Ventures
   Componentes da nova página. Tudo escopado para não colidir
   com o que já existia.
   ============================================================ */

/* ---- Navbar com marca ---- */
.nav-brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; }
.nav-brand-mark { width: 38px; height: 38px; border-radius: 50%; flex-shrink: 0; }
.nav-brand-text { font-size: 16px; font-weight: 800; letter-spacing: .08em; color: var(--white); white-space: nowrap; }
.btn-nav { font-size: 13px; padding: 11px 20px; border-radius: 100px; }
@media (max-width: 560px) {
    .nav-brand-text { display: none; }
    .btn-nav { font-size: 12px; padding: 10px 16px; }
}

/* ---- Hero de identificação ---- */
.ident-hero { min-height: auto; padding: 130px 0 76px; }
.ident-strip {
    display: inline-flex; align-items: center; gap: 16px; text-align: left;
    max-width: 620px; margin: 0 auto 30px; padding: 14px 22px 14px 14px;
    background: #fff; border: 1px solid var(--border); border-radius: 100px;
    box-shadow: 0 6px 24px rgba(15,122,95,.08);
}
.ident-logo { width: 56px; height: 56px; border-radius: 50%; flex-shrink: 0; }
.ident-name { font-size: 15px; font-weight: 800; color: var(--white); line-height: 1.3; }
.ident-role { color: var(--green-dk); }
.ident-sub { font-size: 12.5px; color: var(--muted); line-height: 1.5; margin-top: 3px; }
@media (max-width: 620px) {
    .ident-strip { border-radius: 20px; gap: 13px; padding: 14px 16px; }
    .ident-logo { width: 46px; height: 46px; }
    .ident-sub { font-size: 12px; }
}

.hero-cta { display: flex; flex-direction: column; align-items: center; gap: 16px; margin: 30px 0 34px; }
.hero-link { font-size: 14.5px; font-weight: 600; color: var(--green-dk); text-decoration: none; border-bottom: 1px solid var(--border-h); padding-bottom: 2px; }
.hero-link:hover { color: var(--green-hi); }

.section-sub { font-size: clamp(15px, 2vw, 17.5px); color: var(--muted); line-height: 1.65; max-width: 660px; margin: 0 auto; }

/* ---- Cards de simulação ---- */
.sim-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
    gap: 22px; max-width: 1060px; margin: 44px auto 0; align-items: start;
}
.sim-card {
    display: flex; flex-direction: column; background: #fff;
    border: 1px solid var(--border); border-radius: 20px; padding: 26px 24px 24px;
    box-shadow: 0 6px 24px rgba(15,122,95,.07);
    transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.sim-card:hover { border-color: var(--border-h); box-shadow: 0 12px 34px rgba(15,122,95,.13); }
.sim-card.is-featured { border-color: var(--green); box-shadow: 0 10px 34px rgba(15,122,95,.16); }

.sim-head { text-align: center; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.sim-tipo {
    display: inline-block; font-size: 10.5px; font-weight: 800; letter-spacing: .18em;
    text-transform: uppercase; color: var(--green); margin-bottom: 8px;
}
.sim-credito { font-size: 32px; font-weight: 900; letter-spacing: -.02em; color: var(--white); line-height: 1.1; }

.sim-planos { display: flex; flex-direction: column; gap: 4px; padding: 4px 0 18px; flex: 1; }
.sim-plano { padding: 16px 0; border-bottom: 1px dashed var(--border); }
.sim-plano:last-child { border-bottom: none; padding-bottom: 6px; }
.sim-prazo {
    font-size: 11px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase;
    color: var(--muted-2); margin-bottom: 10px;
}
.sim-linha { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 6px; }
.sim-rot { font-size: 13.5px; color: var(--muted); }
.sim-val { font-size: 20px; font-weight: 800; color: var(--white); font-variant-numeric: tabular-nums; white-space: nowrap; }
.sim-linha.is-red .sim-rot { color: var(--green-dk); font-weight: 600; }
.sim-linha.is-red .sim-val { font-size: 17px; color: var(--green-dk); }
.sim-inicial { font-size: 11.5px; color: var(--muted-2); line-height: 1.5; margin-top: 8px; }

.btn-sim { width: 100%; font-size: 14px; padding: 15px 20px; border-radius: 12px; }

/* ---- Nota honesta sobre a reduzida ---- */
.sim-nota {
    max-width: 760px; margin: 40px auto 0; padding: 28px 30px;
    background: var(--green-mint); border: 1px solid var(--border-h); border-radius: 18px;
}
.sim-nota-titulo { font-size: 17px; font-weight: 800; color: var(--green-dk); margin-bottom: 12px; }
.sim-nota p { font-size: 15px; color: var(--muted); line-height: 1.7; margin-bottom: 12px; }
.sim-nota p:last-child { margin-bottom: 0; }
.sim-nota strong { color: var(--white); font-weight: 700; }
.sim-nota-legal { font-size: 12.5px !important; color: var(--muted-2) !important; padding-top: 14px; border-top: 1px solid var(--border-h); }
.sim-rodape { max-width: 640px; margin: 32px auto 0; text-align: center; font-size: 14.5px; color: var(--muted); line-height: 1.7; }

/* ---- Bloco explicativo ---- */
.explica { max-width: 680px; margin: 0 auto; text-align: left; }
.explica p { font-size: 16.5px; line-height: 1.8; margin-bottom: 18px; }
.explica-quem { font-size: 14px !important; color: var(--muted); padding-top: 16px; border-top: 1px solid rgba(255,255,255,.28); }
.band-green .explica p { color: #fff; }
.band-green .explica strong { color: #fff; }

/* ---- Passos ---- */
.passos { list-style: none; max-width: 780px; margin: 44px auto 0; display: flex; flex-direction: column; gap: 14px; }
.passo {
    display: grid; grid-template-columns: 52px 1fr; gap: 20px; align-items: start;
    padding: 22px 26px; background: #fff; border: 1px solid var(--border); border-radius: 16px;
}
.passo-n {
    display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; border-radius: 50%;
    background: var(--green-soft); color: var(--green-dk);
    font-size: 18px; font-weight: 900;
}
.passo h3 { font-size: 17px; font-weight: 800; color: var(--white); margin-bottom: 6px; }
.passo p { font-size: 15px; color: var(--muted); line-height: 1.6; }
@media (max-width: 560px) {
    .passo { grid-template-columns: 40px 1fr; gap: 14px; padding: 18px 18px; }
    .passo-n { width: 36px; height: 36px; font-size: 15px; }
}

/* ---- Bloco de honestidade (contemplação) ---- */
.honesto { max-width: 760px; margin: 0 auto; text-align: left; }
.honesto-lead { font-size: 19px; line-height: 1.6; color: var(--white); margin-bottom: 18px; }
.honesto > p { font-size: 16px; color: var(--muted); line-height: 1.75; margin-bottom: 22px; }
.honesto-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 26px 0; }
.honesto-item { padding: 22px 24px; background: #fff; border: 1px solid var(--border); border-radius: 16px; }
.honesto-item h3 { font-size: 14px; font-weight: 800; color: var(--green-dk); margin-bottom: 8px; }
.honesto-item p { font-size: 14.5px; color: var(--muted); line-height: 1.6; }
.honesto-fecho {
    font-size: 16.5px !important; color: var(--white) !important; line-height: 1.7;
    padding: 20px 24px; background: var(--green-mint);
    border-left: 3px solid var(--green); border-radius: 0 12px 12px 0; margin: 0 !important;
}
@media (max-width: 640px) { .honesto-grid { grid-template-columns: 1fr; } }

/* ---- Para quem serve / não serve ---- */
.fit-split { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 980px; margin: 44px auto 0; align-items: start; }
.fit-col { padding: 28px 26px; border-radius: 18px; border: 1px solid var(--border); background: #fff; }
.fit-col.is-yes { border-color: var(--border-h); background: var(--green-mint); }
.fit-h { font-size: 16px; font-weight: 800; margin-bottom: 16px; }
.fit-col.is-yes .fit-h { color: var(--green-dk); }
.fit-col.is-no .fit-h { color: var(--bad); }
.fit-list { list-style: none; display: flex; flex-direction: column; gap: 12px; }
.fit-list li { position: relative; padding-left: 26px; font-size: 15px; line-height: 1.55; color: var(--muted); }
.fit-list li::before { position: absolute; left: 0; top: -1px; font-weight: 900; font-size: 15px; }
.fit-col.is-yes .fit-list li::before { content: '\2713'; color: var(--green); }
.fit-col.is-no .fit-list li::before { content: '\00D7'; color: var(--bad); font-size: 17px; }
@media (max-width: 720px) { .fit-split { grid-template-columns: 1fr; gap: 16px; } }

/* ---- CTA ---- */
.cta-main-nota { font-size: 13.5px; color: var(--muted-2); margin-top: 18px; }

/* ---- Rodapé ---- */
.footer-logo-img { width: 52px; height: 52px; border-radius: 50%; margin: 0 auto 14px; }
.footer-aviso {
    max-width: 560px; margin: 22px auto 0; padding: 13px 20px;
    font-size: 13px; font-weight: 600; color: var(--green-dk);
    background: var(--green-mint); border: 1px solid var(--border-h); border-radius: 10px;
}

/* Dois perfis no rodapé — quebra em telas estreitas */
.footer-social { flex-wrap: wrap; gap: 10px; }

/* ---- Imagens de desejo (imóvel / carro) ---- */
.dream-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 18px;
    max-width: 1060px; margin: 40px auto 0;
}
.dream { margin: 0; border-radius: 18px; overflow: hidden; box-shadow: 0 8px 28px rgba(15,122,95,.12); }
.dream img { width: 100%; height: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
@media (max-width: 720px) { .dream-grid { grid-template-columns: 1fr; gap: 14px; margin-top: 30px; } }

/* Linha de prova sob a promessa do topo */
.hero-proof {
    max-width: 560px; margin: 18px auto 0;
    font-size: 14.5px; line-height: 1.6; color: var(--muted-2);
}

/* Faixa levemente tingida — separa as duas seções de simulação */
.section-tint { background: var(--green-mint); }
.section-tint .sim-card,
.section-tint .passo { background: #fff; }
