:root { 
    --color-bg: #0a0a0a; 
    --color-bg-2: #121212; 
    --color-panel: #161616; 
    --color-panel-2: #1d1d1d; 
    --color-border: #2a2a2a; 
    --color-line: rgba(255, 255, 255, 0.08); 
    --color-text: #f2f2f2; 
    --color-muted: #c2c2c2; 
    --color-muted-2: #8e8e8e; 
    --color-accent: #f7931e; 
    --color-accent-2: #ffa53d; 
    --color-accent-soft: rgba(247, 147, 30, 0.12); 
    --color-danger: #ff5a4a; 
    --color-success: #3ad07f; 
    --footer-bg: #000000; 
    --font-display: 'Space Grotesk', system-ui, sans-serif; 
    --font-body: 'Inter', system-ui, sans-serif; 
    --max-width: 1180px; 
    --section-padding: 6.5rem 1.5rem; 
    --header-h: 70px; 
    --radius: 14px; 
}

* { 
    margin: 0; 
    padding: 0; 
    box-sizing: border-box; 
}

html { 
    scroll-behavior: smooth; 
    scroll-padding-top: 1rem; 
}

body { 
    background-color: var(--color-bg); 
    color: var(--color-text); 
    font-family: var(--font-body); 
    line-height: 1.5; 
    -webkit-font-smoothing: antialiased; 
    -moz-osx-font-smoothing: grayscale; 
    min-height: 100vh; 
    overflow-x: hidden; 
}

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


.container { 
    width: 100%; 
    max-width: var(--max-width); 
    margin: 0 auto; 
}

.text-accent { 
    color: var(--color-accent); 
}

.section { 
    padding: var(--section-padding); 
    position: relative; 
}

.section + .section::before { 
    content: ''; 
    position: absolute; 
    top: 0; 
    left: 50%; 
    transform: translateX(-50%); 
    width: min(var(--max-width), calc(100% - 3rem)); 
    height: 1px; 
    background: linear-gradient(90deg, transparent, var(--color-line) 18%, var(--color-line) 82%, transparent); 
}

.bar { 
    display: inline-block; 
    width: 26px; 
    height: 2px; 
    background: var(--color-accent); 
    vertical-align: middle; 
    margin-right: 0.7rem; 
}


.shead { 
    max-width: 760px; 
    margin: 0 auto 3.25rem; 
    text-align: center; 
}

.shead__kicker { 
    font-family: var(--font-display); 
    font-size: 0.82rem; 
    font-weight: 600; 
    letter-spacing: 0.16em; 
    text-transform: uppercase; 
    color: var(--color-muted-2); 
    margin-bottom: 1.1rem; 
}

.shead__title { 
    font-family: var(--font-display); 
    font-size: clamp(1.95rem, 4.4vw, 3.1rem); 
    font-weight: 700; 
    line-height: 1.08; 
    letter-spacing: -0.02em; 
}

.shead__lead { 
    color: var(--color-muted); 
    font-size: 1.08rem; 
    line-height: 1.6; 
    margin: 1rem auto 0; 
    max-width: 620px; 
}


.shead--center { 
    margin-left: auto; 
    margin-right: auto; 
    text-align: center; 
}

.media-ph { 
    position: relative; 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    justify-content: center; 
    gap: 0.85rem; 
    text-align: center; 
    width: 100%; 
    border: 1.5px dashed rgba(247, 147, 30, 0.45); 
    border-radius: var(--radius); 
    background: repeating-linear-gradient(45deg, rgba(247, 147, 30,0.04) 0, rgba(247, 147, 30,0.04) 14px, transparent 14px, transparent 28px), var(--color-panel); 
    color: var(--color-muted-2); 
    overflow: hidden; 
}

.media-ph > i { 
    font-size: 2.4rem; 
    color: var(--color-accent); 
    opacity: 0.85; 
}

.media-ph__caption { 
    font-family: var(--font-display); 
    font-size: 0.78rem; 
    font-weight: 600; 
    letter-spacing: 0.08em; 
    text-transform: uppercase; 
    color: var(--color-muted); 
}

.media-ph--video { 
    aspect-ratio: 16 / 9; 
}

.media-ph--mockup { 
    aspect-ratio: 16 / 9; 
}

.media-ph--portrait { 
    aspect-ratio: 3 / 4; 
}

.media-ph__play { 
    width: 76px; 
    height: 76px; 
    border: none; 
    border-radius: 50%; 
    background: var(--color-accent); 
    color: #fff; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-size: 1.6rem; 
    cursor: pointer; 
    transition: transform 0.2s ease, background-color 0.2s ease; 
    box-shadow: 0 14px 34px -10px rgba(247, 147, 30,0.7); 
}

.media-ph__play:hover { 
    transform: scale(1.07); 
    background: var(--color-accent-hover, var(--color-accent-2)); 
}

.vframe { 
    position: relative; 
    margin: 0 auto; 
    max-width: 820px; 
}

.vframe__tick { 
    position: absolute; 
    width: 18px; 
    height: 18px; 
    z-index: 2; 
    border-color: var(--color-accent); 
    border-style: solid; 
    border-width: 0; 
}

.vframe__tick--tl { 
    top: -6px; 
    left: -6px; 
    border-top-width: 2px; 
    border-left-width: 2px; 
}

.vframe__tick--tr { 
    top: -6px; 
    right: -6px; 
    border-top-width: 2px; 
    border-right-width: 2px; 
}

.vframe__tick--bl { 
    bottom: -6px; 
    left: -6px; 
    border-bottom-width: 2px; 
    border-left-width: 2px; 
}

.vframe__tick--br { 
    bottom: -6px; 
    right: -6px; 
    border-bottom-width: 2px; 
    border-right-width: 2px; 
}

.btn { 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    gap: 0.7rem; 
    background-color: var(--color-accent); 
    color: #fff; 
    text-decoration: none; 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 1.05rem; 
    padding: 1.05rem 2rem; 
    border: none; 
    border-radius: 999px; 
    width: fit-content; 
    cursor: pointer; 
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease; 
    box-shadow: 0 12px 32px -12px rgba(247, 147, 30, 0.65); 
}

.btn:hover { 
    background-color: var(--color-accent-2); 
    transform: translateY(-2px); 
    box-shadow: 0 16px 38px -10px rgba(247, 147, 30, 0.7); 
}

.btn i { 
    transition: transform 0.2s ease; 
}

.btn:hover i { 
    transform: translateX(4px); 
}

.btn--full { 
    width: 100%; 
}

.btn-ghost { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.6rem; 
    background: transparent; 
    color: var(--color-text); 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 1rem; 
    padding: 1.05rem 1.6rem; 
    border: 1px solid var(--color-border); 
    border-radius: 999px; 
    cursor: pointer; 
    transition: border-color 0.2s ease, color 0.2s ease; 
}

.btn-ghost i { 
    color: var(--color-accent); 
}

.btn-ghost:hover { 
    border-color: var(--color-accent); 
}

.whatsapp-float { 
    position: fixed; 
    width: 58px; 
    height: 58px; 
    bottom: 26px; 
    right: 26px; 
    background-color: #25d366; 
    color: #fff; 
    border-radius: 50%; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    box-shadow: 0 8px 24px -6px rgba(37, 211, 102, 0.6); 
    z-index: 1000; 
    transition: transform 0.2s ease; 
}

.whatsapp-float svg { 
    width: 32px; 
    height: 32px; 
}

.whatsapp-float:hover { 
    transform: scale(1.08); 
}

.nav { 
    position: static; 
    width: 100%; 
    height: var(--header-h); 
    background: var(--color-bg); 
    border-bottom: 1px solid var(--color-border); 
}

.nav__inner { 
    max-width: var(--max-width); 
    height: 100%; 
    margin: 0 auto; 
    padding: 0 1.5rem; 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
}

.nav__logo { 
    height: 28px; 
    width: auto; 
}

.nav__meta { 
    display: flex; 
    align-items: center; 
    gap: 1.25rem; 
}

.nav__tag { 
    font-family: var(--font-display); 
    font-size: 0.75rem; 
    font-weight: 600; 
    letter-spacing: 0.14em; 
    text-transform: uppercase; 
    color: var(--color-muted-2); 
}

.nav__cta { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.5rem; 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 0.9rem; 
    color: #fff; 
    text-decoration: none; 
    padding: 0.55rem 1.2rem; 
    border-radius: 999px; 
    background: var(--color-accent); 
    transition: background-color 0.2s ease, transform 0.2s ease; 
}

.nav__cta:hover { 
    background: var(--color-accent-2); 
    transform: translateY(-1px); 
}

.nav__cta i { 
    font-size: 0.8rem; 
}

.hero { 
    position: relative; 
    overflow: visible; 
    padding: 4.5rem 1.5rem 5rem; 
    background: var(--color-bg); 
}

.hero__glow { 
    position: absolute; 
    inset: 0; 
    z-index: 0; 
    pointer-events: none; 
    background: radial-gradient(58% 48% at 82% -8%, rgba(247, 147, 30, 0.16) 0%, transparent 62%), radial-gradient(48% 42% at 8% 6%, rgba(255, 165, 61, 0.10) 0%, transparent 60%); 
}

.hero__container { 
    position: relative; 
    z-index: 1; 
    max-width: var(--max-width); 
}

.hero__main { 
    display: grid; 
    grid-template-columns: 1.05fr 0.95fr; 
    gap: 3.25rem; 
    align-items: center; 
    text-align: left; 
}

.hero__content { 
    min-width: 0; 
}

.hero__media { 
    position: relative; 
    min-width: 0; 
    display: flex; 
    justify-content: center; 
}

.hero__media .vframe { 
    max-width: 100%; 
    margin: 0; 
}

.hero__img { 
    width: 100%; 
    max-width: 560px; 
    height: auto; 
    display: block; 
    transform: scale(1.42) translateX(-4%); 
    transform-origin: center; 
    filter: drop-shadow(0 22px 45px rgba(0, 0, 0, 0.22)); 
    animation: heroFloat 6s ease-in-out infinite; 
}

@keyframes heroFloat { 
    0%, 100% { 
        transform: scale(1.42) translate(-4%, 0); 
    }

    50% { 
        transform: scale(1.42) translate(-4%, -10px); 
    }
}

@media (prefers-reduced-motion: reduce) { 
    .hero__img { 
        animation: none; 
    }
}

.hero__kicker { 
    font-family: var(--font-display); 
    font-size: 0.85rem; 
    font-weight: 600; 
    letter-spacing: 0.16em; 
    text-transform: uppercase; 
    color: var(--color-muted); 
    margin-bottom: 1.6rem; 
}

.hero__title { 
    font-family: var(--font-display); 
    font-size: clamp(2.3rem, 4.6vw, 4.2rem); 
    font-weight: 700; 
    line-height: 1.04; 
    letter-spacing: -0.03em; 
}

.hero__title-stroke { 
    color: transparent; 
    -webkit-text-stroke: 2px var(--color-accent); 
    text-stroke: 2px var(--color-accent); 
}

.hero__lead { 
    font-size: 1.15rem; 
    color: var(--color-muted); 
    line-height: 1.65; 
    max-width: 540px; 
    margin: 1.6rem 0 0; 
}

.hero__lead strong { 
    color: var(--color-text); 
}

.hero__actions { 
    display: flex; 
    flex-wrap: wrap; 
    align-items: center; 
    gap: 1rem; 
    margin: 2.25rem 0 0; 
}

.vframe { 
    margin-top: 0.5rem; 
}

.hero__stats { 
    list-style: none; 
    display: flex; 
    flex-wrap: wrap; 
    gap: 0; 
    margin-top: 3rem; 
    border: 1px solid var(--color-border); 
    border-radius: var(--radius); 
    background: var(--color-panel); 
    overflow: hidden; 
}

.hero__stats li { 
    flex: 1 1 0; 
    min-width: 150px; 
    padding: 1.4rem 1.5rem; 
    display: flex; 
    flex-direction: column; 
    gap: 0.2rem; 
    border-right: 1px solid var(--color-border); 
}

.hero__stats li:last-child { 
    border-right: none; 
}

.hero__stats strong { 
    font-family: var(--font-display); 
    font-size: 1.9rem; 
    font-weight: 700; 
    color: var(--color-accent); 
    line-height: 1; 
}

.hero__stats span { 
    font-size: 0.86rem; 
    color: var(--color-muted-2); 
}

.transform-sec { 
    background: var(--color-bg-2); 
}

.transform { 
    max-width: 940px; 
    margin: 0 auto; 
    border: 1px solid var(--color-border); 
    border-radius: var(--radius); 
    overflow: hidden; 
    background: var(--color-panel); 
}

.transform__head, .transform__row { 
    display: grid; 
    grid-template-columns: 1fr 64px 1fr; 
    align-items: center; 
}

.transform__head { 
    background: var(--color-panel-2); 
    border-bottom: 1px solid var(--color-border); 
}

.transform__head span { 
    padding: 0.9rem 1.5rem; 
    font-family: var(--font-display); 
    font-size: 0.8rem; 
    font-weight: 600; 
    letter-spacing: 0.1em; 
    text-transform: uppercase; 
}

.transform__head-from { 
    color: var(--color-muted-2); 
    text-align: center; 
}

.transform__head-to { 
    color: var(--color-accent); 
    grid-column: 3; 
    text-align: center; 
}

.transform__row { 
    border-bottom: 1px solid var(--color-line); 
}

.transform__row:last-child { 
    border-bottom: none; 
}

.transform__from, .transform__to { 
    padding: 1.25rem 1.5rem; 
    font-size: 1rem; 
    line-height: 1.45; 
    text-align: center; 
}

.transform__from { 
    color: var(--color-muted-2); 
    position: relative; 
}

.transform__from::before { 
    content: '\f00d'; 
    font-family: 'Font Awesome 6 Free'; 
    font-weight: 900; 
    color: var(--color-danger); 
    margin-right: 0.6rem; 
    font-size: 0.85rem; 
}

.transform__to { 
    color: var(--color-text); 
    background: rgba(247, 147, 30, 0.06); 
}

.transform__to::before { 
    content: '\f00c'; 
    font-family: 'Font Awesome 6 Free'; 
    font-weight: 900; 
    color: var(--color-success); 
    margin-right: 0.6rem; 
    font-size: 0.85rem; 
}

.transform__arrow { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    color: var(--color-accent); 
    font-size: 1.1rem; 
    border-left: 1px solid var(--color-line); 
    border-right: 1px solid var(--color-line); 
    align-self: stretch; 
}

.bond { 
    background: var(--color-bg); 
}

.bond__container { 
    max-width: 820px; 
    position: relative; 
}

.bond__mark { 
    font-family: var(--font-display); 
    font-size: 7rem; 
    line-height: 0.7; 
    color: var(--color-accent); 
    opacity: 0.5; 
    display: block; 
    height: 3rem; 
}

.bond__quote { 
    font-family: var(--font-display); 
    font-weight: 500; 
    font-size: clamp(1.5rem, 3.3vw, 2.3rem); 
    line-height: 1.3; 
    letter-spacing: -0.01em; 
    color: var(--color-text); 
    margin-bottom: 2rem; 
}

.bond__sign { 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
    margin-bottom: 2rem; 
}

.bond__sign-line { 
    width: 42px; 
    height: 2px; 
    background: var(--color-accent); 
    flex-shrink: 0; 
}

.bond__sign strong { 
    display: block; 
    font-family: var(--font-display); 
    font-size: 1.05rem; 
}

.bond__sign span { 
    font-size: 0.9rem; 
    color: var(--color-muted-2); 
}

.bond__text { 
    color: var(--color-muted); 
    font-size: 1.12rem; 
    line-height: 1.75; 
    margin-bottom: 2rem; 
}

.bond__text strong { 
    color: var(--color-text); 
}

.bond__stats { 
    list-style: none; 
    display: flex; 
    flex-wrap: wrap; 
    gap: 0.7rem; 
    margin-bottom: 2.25rem; 
}

.bond__stats li { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.55rem; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: 999px; 
    padding: 0.55rem 1.1rem; 
    font-size: 0.92rem; 
    color: var(--color-muted); 
}

.bond__stats i { 
    color: var(--color-accent); 
}

.warn { 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
    border-left: 3px solid var(--color-accent); 
    background: linear-gradient(90deg, rgba(247, 147, 30,0.1), transparent); 
    padding: 1.1rem 1.35rem; 
    border-radius: 0 10px 10px 0; 
}

.warn i { 
    color: var(--color-accent); 
    font-size: 1.4rem; 
    flex-shrink: 0; 
}

.warn p { 
    color: var(--color-text); 
    font-size: 0.98rem; 
    line-height: 1.5; 
}

.steps { 
    background: var(--color-bg-2); 
}

.timeline { 
    list-style: none; 
    max-width: 880px; 
    margin: 0 auto; 
    position: relative; 
}

.timeline::before { 
    content: ''; 
    position: absolute; 
    left: 31px; 
    top: 12px; 
    bottom: 12px; 
    width: 2px; 
    background: linear-gradient(var(--color-accent), rgba(247, 147, 30,0.15)); 
}

.tl { 
    position: relative; 
    display: grid; 
    grid-template-columns: 64px 1fr; 
    gap: 1.5rem; 
}

.tl:not(:last-child) { 
    padding-bottom: 2.25rem; 
}

.tl__num { 
    position: relative; 
    z-index: 1; 
    width: 64px; 
    height: 64px; 
    border-radius: 50%; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-family: var(--font-display); 
    font-size: 1.25rem; 
    font-weight: 700; 
    color: #fff; 
    background: var(--color-accent); 
    box-shadow: 0 0 0 6px var(--color-bg-2), 0 10px 26px -8px rgba(247, 147, 30,0.7); 
}

.tl__body { 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: var(--radius); 
    padding: 1.6rem 1.75rem; 
    transition: border-color 0.2s ease, transform 0.2s ease; 
}

.tl__body:hover { 
    border-color: var(--color-accent); 
    transform: translateX(4px); 
}

.tl__chip { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.45rem; 
    font-family: var(--font-display); 
    font-size: 0.74rem; 
    font-weight: 600; 
    letter-spacing: 0.08em; 
    text-transform: uppercase; 
    color: var(--color-accent); 
    background: var(--color-accent-soft); 
    padding: 0.3rem 0.8rem; 
    border-radius: 999px; 
    margin-bottom: 0.9rem; 
}

.tl__body h3 { 
    font-family: var(--font-display); 
    font-size: 1.4rem; 
    font-weight: 700; 
    margin-bottom: 0.6rem; 
}

.tl__body p { 
    color: var(--color-muted); 
    font-size: 1.02rem; 
    line-height: 1.6; 
}

.tl__body strong { 
    color: var(--color-text); 
}

.deliverables { 
    background: var(--color-bg); 
}

.bento { 
    display: grid; 
    grid-template-columns: repeat(6, 1fr); 
    gap: 1rem; 
}

.bento__item { 
    grid-column: span 2; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: var(--radius); 
    padding: 1.85rem 1.6rem; 
    display: flex; 
    flex-direction: column; 
    gap: 0.7rem; 
    transition: border-color 0.2s ease, transform 0.2s ease, background-color 0.2s ease; 
}

.bento__item:hover { 
    border-color: var(--color-accent); 
    transform: translateY(-3px); 
}

/* primeiras duas tiles maiores */

.bento__item:nth-child(1), .bento__item:nth-child(2) { 
    grid-column: span 3; 
}

.bento__item--wide { 
    grid-column: span 6 !important; 
    flex-direction: row; 
    align-items: center; 
    gap: 1.5rem; 
    background: linear-gradient(120deg, rgba(247, 147, 30,0.1), rgba(247, 147, 30,0.02)); 
    border-color: rgba(247, 147, 30,0.4); 
}

.bento__icon { 
    width: 52px; 
    height: 52px; 
    flex-shrink: 0; 
    border-radius: 12px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-size: 1.3rem; 
    color: #fff; 
    background: linear-gradient(135deg, var(--color-accent), var(--color-accent-2)); 
    box-shadow: 0 8px 20px -10px rgba(247, 147, 30,0.7); 
}

.bento__item h3 { 
    font-family: var(--font-display); 
    font-size: 1.18rem; 
    font-weight: 600; 
}

.bento__item p { 
    color: var(--color-muted); 
    font-size: 0.96rem; 
    line-height: 1.5; 
}

.bonus { 
    background: var(--color-bg-2); 
}

.bonuses { 
    display: flex; 
    flex-direction: column; 
    gap: 1rem; 
    max-width: 920px; 
    margin: 0 auto; 
}

.brow { 
    display: grid; 
    grid-template-columns: auto 1fr auto; 
    align-items: center; 
    gap: 1.5rem; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: var(--radius); 
    padding: 1.4rem 1.75rem; 
    transition: border-color 0.2s ease, transform 0.2s ease; 
}

.brow:hover { 
    border-color: var(--color-accent); 
    transform: translateX(5px); 
}

.brow__num { 
    font-family: var(--font-display); 
    font-size: 2.6rem; 
    font-weight: 700; 
    line-height: 1; 
    color: transparent; 
    -webkit-text-stroke: 1.5px var(--color-accent); 
}

.brow__body h3 { 
    font-family: var(--font-display); 
    font-size: 1.2rem; 
    font-weight: 600; 
    margin-bottom: 0.3rem; 
}

.brow__body p { 
    color: var(--color-muted); 
    font-size: 0.96rem; 
    line-height: 1.5; 
}

.brow__ico { 
    color: var(--color-accent); 
    font-size: 1.3rem; 
    opacity: 0.6; 
}

.audience { 
    background: var(--color-bg); 
}

.personas { 
    list-style: none; 
    display: grid; 
    grid-template-columns: repeat(2, 1fr); 
    gap: 0.85rem; 
    max-width: 940px; 
    margin: 0 auto; 
}

.persona { 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: 12px; 
    padding: 1.1rem 1.3rem; 
    font-size: 1.01rem; 
    line-height: 1.4; 
    transition: border-color 0.2s ease, transform 0.2s ease; 
}

.persona:hover { 
    border-color: var(--color-accent); 
    transform: translateY(-2px); 
}

.persona__check { 
    width: 30px; 
    height: 30px; 
    flex-shrink: 0; 
    border-radius: 8px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    background: var(--color-accent-soft); 
    color: var(--color-accent); 
    font-size: 0.85rem; 
}

.recap { 
    background: var(--color-bg-2); 
}

.ledger { 
    max-width: 760px; 
    margin: 0 auto; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: var(--radius); 
    padding: 1.75rem 1.85rem; 
}

.ledger__row { 
    display: flex; 
    align-items: baseline; 
    gap: 0.5rem; 
    padding: 0.7rem 0; 
}

.ledger__row + .ledger__row { 
    border-top: 1px dashed var(--color-line); 
}

.ledger__name { 
    color: var(--color-text); 
    font-size: 0.98rem; 
}

.ledger__dots { 
    flex: 1; 
    border-bottom: 1px dotted var(--color-muted-2); 
    opacity: 0.4; 
    transform: translateY(-3px); 
}

.ledger__price { 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 0.95rem; 
    color: var(--color-muted-2); 
    text-decoration: line-through; 
    text-decoration-color: var(--color-accent); 
    white-space: nowrap; 
}

.ledger__total { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    margin-top: 1.1rem; 
    padding-top: 1.1rem; 
    border-top: 2px solid var(--color-border); 
}

.ledger__total span { 
    color: var(--color-muted); 
    font-size: 1rem; 
}

.ledger__total strong { 
    font-family: var(--font-display); 
    font-size: 1.6rem; 
    font-weight: 700; 
    color: var(--color-muted-2); 
    text-decoration: line-through; 
    text-decoration-color: var(--color-accent); 
}

.recap__note { 
    text-align: center; 
    margin-top: 1.75rem; 
    font-family: var(--font-display); 
    font-size: 1.15rem; 
    font-weight: 600; 
    color: var(--color-accent); 
}

.offer { 
    background: var(--color-bg); 
}

.offer--repeat { 
    background: var(--color-bg-2); 
}

.offer__grid { 
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    gap: 3rem; 
    align-items: center; 
}

.offer__media { 
    display: flex; 
    justify-content: center; 
}

.offer__img { 
    width: 100%; 
    max-width: 600px; 
    height: auto; 
    display: block; 
    transform: translateX(16%) scale(1.16); 
    transform-origin: center right; 
    filter: drop-shadow(0 22px 48px rgba(0, 0, 0, 0.28)); 
}

.pricecard { 
    position: relative; 
    max-width: 460px; 
    margin: 0 auto; 
    width: 100%; 
    background: var(--color-panel); 
    border: 1px solid var(--color-accent); 
    border-radius: 20px; 
    padding: 2.75rem 2rem 2rem; 
    text-align: center; 
    box-shadow: 0 24px 60px -30px rgba(247, 147, 30, 0.3), 0 8px 24px -16px rgba(0, 0, 0, 0.25); 
}

.pricecard::before { 
    content: ''; 
    position: absolute; 
    inset: 0 0 auto 0; 
    height: 4px; 
    background: linear-gradient(90deg, var(--color-accent), var(--color-accent-2)); 
    border-radius: 20px 20px 0 0; 
}

.pricecard--solo { 
    max-width: 520px; 
}

.pricecard__ribbon { 
    position: absolute; 
    top: -14px; 
    left: 50%; 
    transform: translateX(-50%); 
    font-family: var(--font-display); 
    font-size: 0.74rem; 
    font-weight: 600; 
    letter-spacing: 0.1em; 
    text-transform: uppercase; 
    color: #fff; 
    white-space: nowrap; 
    background: var(--color-accent); 
    padding: 0.4rem 1.1rem; 
    border-radius: 999px; 
    box-shadow: 0 8px 18px -8px rgba(247, 147, 30,0.8); 
}

.pricecard__label { 
    font-family: var(--font-display); 
    font-size: 1rem; 
    font-weight: 600; 
    color: var(--color-muted); 
    margin: 0.5rem 0 1.4rem; 
}

.pricecard__price { 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    gap: 0.3rem; 
}

.pricecard__prefix { 
    font-size: 0.95rem; 
    color: var(--color-muted-2); 
}

.pricecard__value { 
    font-family: var(--font-display); 
    font-size: clamp(2.2rem, 6vw, 3.2rem); 
    font-weight: 700; 
    line-height: 1.05; 
}

.pricecard__value strong { 
    color: var(--color-accent); 
}

.pricecard__cash { 
    color: var(--color-muted); 
    font-size: 1rem; 
}

.pricecard__cash strong { 
    color: var(--color-text); 
}

.pay { 
    margin: 1.6rem 0; 
    padding: 1.4rem 0; 
    border-top: 1px solid var(--color-border); 
    border-bottom: 1px solid var(--color-border); 
}

.pay h5 { 
    font-family: var(--font-display); 
    font-size: 0.78rem; 
    font-weight: 600; 
    letter-spacing: 0.1em; 
    text-transform: uppercase; 
    color: var(--color-muted-2); 
    margin-bottom: 0.9rem; 
}

.pay__list { 
    display: flex; 
    flex-wrap: wrap; 
    align-items: center; 
    justify-content: center; 
    gap: 0.6rem; 
}

.pay__item { 
    width: 62px; 
    height: 40px; 
    background: #fff; 
    border-radius: 8px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    padding: 6px; 
    box-shadow: 0 2px 6px rgba(0,0,0,0.3); 
}

.pay__item img { 
    max-width: 100%; 
    max-height: 100%; 
    width: auto; 
    height: auto; 
    object-fit: contain; 
}

.pricecard .btn { 
    margin-top: 0.25rem; 
}

.pricecard__secure { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 0.5rem; 
    margin-top: 1.1rem; 
    color: var(--color-muted-2); 
    font-size: 0.85rem; 
}

.pricecard__secure-icon { 
    width: 18px; 
    height: 18px; 
    object-fit: contain; 
}

.access { 
    background: var(--color-bg); 
}

.stepper { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 1.5rem; 
    position: relative; 
    max-width: 960px; 
    margin: 0 auto; 
}

.stepper::before { 
    content: ''; 
    position: absolute; 
    top: 26px; 
    left: 16.6%; 
    right: 16.6%; 
    height: 2px; 
    background: linear-gradient(90deg, var(--color-accent), rgba(247, 147, 30,0.2)); 
    z-index: 0; 
}

.stepper__step { 
    position: relative; 
    z-index: 1; 
    text-align: center; 
    padding: 0 0.5rem; 
}

.stepper__num { 
    width: 54px; 
    height: 54px; 
    margin: 0 auto 1.1rem; 
    border-radius: 50%; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-family: var(--font-display); 
    font-size: 1.3rem; 
    font-weight: 700; 
    color: #fff; 
    background: var(--color-accent); 
    box-shadow: 0 0 0 6px var(--color-bg); 
}

.stepper__step h3 { 
    font-family: var(--font-display); 
    font-size: 1.15rem; 
    font-weight: 600; 
    margin-bottom: 0.4rem; 
}

.stepper__step p { 
    color: var(--color-muted); 
    font-size: 0.96rem; 
    line-height: 1.5; 
}

.author { 
    background: var(--color-bg-2); 
    overflow: hidden; 
}

.author__grid { 
    display: grid; 
    grid-template-columns: 0.85fr 1fr; 
    gap: 3rem; 
    align-items: center; 
}

.author__media { 
    position: relative; 
    max-width: 380px; 
    justify-self: center; 
    width: 100%; 
}

.author__img { 
    width: 100%; 
    aspect-ratio: 3 / 4; 
    object-fit: cover; 
    border-radius: var(--radius); 
    box-shadow: 0 25px 55px rgba(0, 0, 0, 0.3); 
}

.author__name { 
    font-family: var(--font-display); 
    font-size: clamp(2rem, 4.5vw, 3rem); 
    font-weight: 700; 
    line-height: 1.05; 
    margin-top: 0.3rem; 
}

.author__role { 
    color: var(--color-accent); 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 1.1rem; 
    margin: 0.4rem 0 1.25rem; 
}

.author__bio { 
    color: var(--color-muted); 
    font-size: 1.06rem; 
    line-height: 1.7; 
    margin-bottom: 1.5rem; 
}

.author__facts { 
    list-style: none; 
    display: flex; 
    flex-wrap: wrap; 
    gap: 0.6rem; 
}

.author__facts li { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.5rem; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: 999px; 
    padding: 0.5rem 1rem; 
    font-size: 0.9rem; 
    color: var(--color-muted); 
}

.author__facts li::before { 
    content: '\f00c'; 
    font-family: 'Font Awesome 6 Free'; 
    font-weight: 900; 
    color: var(--color-accent); 
    font-size: 0.8rem; 
}

.duel-sec { 
    background: var(--color-bg); 
    text-align: center; 
}

.duel { 
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    gap: 1.5rem; 
    max-width: 920px; 
    margin: 0 auto 2.5rem; 
    text-align: left; 
}

.duel__card { 
    position: relative; 
    border-radius: 18px; 
    padding: 2.5rem 1.85rem 2rem; 
    border: 1px solid var(--color-border); 
    background: var(--color-panel); 
    overflow: hidden; 
}

.duel__num { 
    position: absolute; 
    top: 0.5rem; 
    right: 1.1rem; 
    font-family: var(--font-display); 
    font-size: 4.5rem; 
    font-weight: 700; 
    line-height: 1; 
    color: transparent; 
    -webkit-text-stroke: 1.5px var(--color-border); 
}

.duel__card--bad { 
    background: linear-gradient(180deg, rgba(255,77,67,0.06), transparent); 
}

.duel__card--good { 
    border-color: var(--color-accent); 
    background: linear-gradient(180deg, rgba(247, 147, 30,0.1), rgba(247, 147, 30,0.02)); 
}

.duel__card--good .duel__num { 
    -webkit-text-stroke-color: rgba(247, 147, 30,0.45); 
}

.duel__tag { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.5rem; 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 1.05rem; 
    margin-bottom: 0.9rem; 
}

.duel__card--bad .duel__tag { 
    color: var(--color-danger); 
}

.duel__card--good .duel__tag { 
    color: var(--color-accent); 
}

.duel__card p { 
    color: var(--color-text); 
    font-size: 1.04rem; 
    line-height: 1.6; 
    position: relative; 
}

.duel__close { 
    font-family: var(--font-display); 
    font-size: clamp(1.2rem, 2.5vw, 1.55rem); 
    font-weight: 600; 
    max-width: 680px; 
    margin: 0 auto 2rem; 
    line-height: 1.3; 
}

.duel-sec .btn { 
    margin: 0 auto; 
}

.faq { 
    background: var(--color-bg-2); 
}

.faq__container { 
    max-width: 840px; 
}

.faq__list { 
    display: flex; 
    flex-direction: column; 
    gap: 0.75rem; 
}

.qa { 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: 12px; 
    overflow: hidden; 
    transition: border-color 0.2s ease; 
}

.qa[open] { 
    border-color: var(--color-accent); 
}

.qa summary { 
    list-style: none; 
    cursor: pointer; 
    padding: 1.2rem 1.5rem; 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 1.05rem; 
    color: var(--color-text); 
    display: flex; 
    align-items: center; 
    gap: 0.9rem; 
}

.qa summary::-webkit-details-marker { 
    display: none; 
}

.qa__idx { 
    font-size: 0.85rem; 
    color: var(--color-accent); 
    font-weight: 700; 
}

.qa summary::after { 
    content: '\f067'; 
    font-family: 'Font Awesome 6 Free'; 
    font-weight: 900; 
    color: var(--color-accent); 
    font-size: 0.85rem; 
    margin-left: auto; 
    transition: transform 0.2s ease; 
}

.qa[open] summary::after { 
    content: '\f068'; 
}

.qa p { 
    padding: 0 1.5rem 1.3rem 3.4rem; 
    color: var(--color-muted); 
    font-size: 1rem; 
    line-height: 1.6; 
}

.foot { 
    background: var(--footer-bg); 
    padding-top: 3rem; 
}

.foot__inner { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    flex-wrap: wrap; 
    gap: 2rem; 
    padding: 0 1.5rem 2.5rem; 
}

.foot__logo { 
    height: 36px; 
    width: auto; 
    margin-bottom: 0.85rem; 
}

.foot__brand p { 
    color: rgba(246, 245, 243, 0.6); 
    font-size: 0.95rem; 
    max-width: 360px; 
}

.foot__contact { 
    display: flex; 
    flex-direction: column; 
    gap: 0.65rem; 
}

.foot__contact a { 
    display: inline-flex; 
    align-items: center; 
    gap: 0.6rem; 
    color: rgba(246, 245, 243, 0.82); 
    text-decoration: none; 
    font-size: 0.96rem; 
    transition: color 0.2s ease; 
}

.foot__contact a:hover { 
    color: var(--color-accent); 
}

.foot__contact i { 
    color: var(--color-accent); 
    width: 18px; 
    text-align: center; 
}

.foot__legal { 
    border-top: 1px solid rgba(255, 255, 255, 0.1); 
    padding: 1.5rem; 
    text-align: center; 
}

.foot__legal p { 
    color: rgba(246, 245, 243, 0.45); 
    font-size: 0.82rem; 
    line-height: 1.6; 
}

.reveal { 
    opacity: 0; 
    transform: translateY(22px); 
    transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.22, 1, 0.36, 1); 
    will-change: opacity, transform; 
}

.reveal.reveal--in { 
    opacity: 1; 
    transform: none; 
}

@media (prefers-reduced-motion: reduce) { 
    .reveal { 
        opacity: 1 !important; 
        transform: none !important; 
        transition: none; 
    }
}


.transform, .tl__body, .bento__item, .brow, .persona, .ledger, .qa, .hero__stats { 
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 10px 26px -18px rgba(0, 0, 0, 0.22); 
}

.bento__item--wide { 
    box-shadow: 0 10px 30px -18px rgba(247, 147, 30, 0.4); 
}

.modal { 
    position: fixed; 
    inset: 0; 
    z-index: 1000; 
    display: none; 
    align-items: center; 
    justify-content: center; 
    padding: 1.5rem; 
}

.modal.is-open { 
    display: flex; 
    animation: modalFadeIn 0.2s ease; 
}

.modal__overlay { 
    position: absolute; 
    inset: 0; 
    background: rgba(0,0,0,0.65); 
    backdrop-filter: blur(6px); 
    -webkit-backdrop-filter: blur(6px); 
}

.modal__dialog { 
    position: relative; 
    width: 100%; 
    max-width: 420px; 
    background: var(--color-panel); 
    border: 1px solid var(--color-border); 
    border-radius: 18px; 
    padding: 2.25rem 2rem 1.75rem; 
    box-shadow: 0 25px 60px -15px rgba(0,0,0,0.7); 
    animation: modalSlideUp 0.25s ease; 
    max-height: calc(100vh - 3rem); 
    overflow-y: auto; 
}

.modal__close { 
    position: absolute; 
    top: 0.9rem; 
    right: 0.9rem; 
    width: 34px; 
    height: 34px; 
    border-radius: 50%; 
    border: none; 
    background: transparent; 
    color: var(--color-muted-2); 
    font-size: 1rem; 
    cursor: pointer; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    transition: background-color 0.2s ease, color 0.2s ease; 
}

.modal__close:hover { 
    background: rgba(255,255,255,0.08); 
    color: var(--color-text); 
}

.modal__header { 
    text-align: center; 
    margin-bottom: 1.5rem; 
}

.modal__title { 
    font-family: var(--font-display); 
    font-size: 1.55rem; 
    font-weight: 700; 
    line-height: 1.2; 
    margin-bottom: 0.5rem; 
}

.modal__subtitle { 
    font-size: 0.95rem; 
    color: var(--color-muted-2); 
    line-height: 1.5; 
}

.modal__form { 
    display: flex; 
    flex-direction: column; 
    gap: 1rem; 
}

.modal__field { 
    display: flex; 
    flex-direction: column; 
    gap: 0.4rem; 
}

.modal__field label { 
    font-size: 0.85rem; 
    font-weight: 600; 
    color: var(--color-muted); 
}

.modal__field input { 
    width: 100%; 
    background: var(--color-bg-2); 
    border: 1px solid var(--color-border); 
    border-radius: 10px; 
    padding: 0.85rem 1rem; 
    color: var(--color-text); 
    font-family: inherit; 
    font-size: 0.98rem; 
    transition: border-color 0.2s ease, background-color 0.2s ease; 
}

.modal__field input::placeholder { 
    color: var(--color-muted-2); 
    opacity: 0.7; 
}

.modal__field input:focus { 
    outline: none; 
    border-color: var(--color-accent); 
    background: var(--color-bg); 
}

.modal__field--error input { 
    border-color: var(--color-danger); 
}

.modal__field-error { 
    font-size: 0.8rem; 
    color: var(--color-danger); 
}

.modal__submit { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 0.65rem; 
    width: 100%; 
    margin-top: 0.5rem; 
    background: var(--color-accent); 
    color: #fff; 
    font-family: var(--font-display); 
    font-weight: 600; 
    font-size: 1rem; 
    padding: 1rem 1.25rem; 
    border: none; 
    border-radius: 10px; 
    cursor: pointer; 
    transition: background-color 0.2s ease, transform 0.2s ease; 
    box-shadow: 0 10px 25px -12px rgba(247, 147, 30,0.55); 
}

.modal__submit:hover:not(:disabled) { 
    background: var(--color-accent-2); 
    transform: translateY(-1px); 
}

.modal__submit:disabled { 
    opacity: 0.7; 
    cursor: not-allowed; 
}

.modal__privacy { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 0.45rem; 
    margin-top: 0.5rem; 
    color: var(--color-muted-2); 
    font-size: 0.8rem; 
}

.modal__privacy i { 
    color: var(--color-accent); 
}

.modal__success { 
    text-align: center; 
    padding: 1rem 0 0.5rem; 
}

.modal__success-icon { 
    width: 64px; 
    height: 64px; 
    margin: 0 auto 1.25rem; 
    border-radius: 50%; 
    background: rgba(58,208,127,0.12); 
    color: var(--color-success); 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-size: 1.75rem; 
}

.modal__success h4 { 
    font-family: var(--font-display); 
    font-size: 1.3rem; 
    font-weight: 700; 
    margin-bottom: 0.5rem; 
}

.modal__success p { 
    color: var(--color-muted-2); 
    font-size: 0.95rem; 
    line-height: 1.5; 
}

@keyframes modalFadeIn { 
    from { 
        opacity: 0; 
    }

    to { 
        opacity: 1; 
    }
}

@keyframes modalSlideUp { 
    from { 
        opacity: 0; 
        transform: translateY(12px); 
    }

    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

body.modal-open { 
    overflow: hidden; 
}

@media (max-width: 1024px) { 
    :root { 
        --section-padding: 5rem 1.25rem; 
    }

    .hero__main { 
        grid-template-columns: 1fr; 
        gap: 2.5rem; 
        text-align: center; 
    }

    .hero__content { 
        max-width: 640px; 
        margin: 0 auto; 
    }

    .hero__lead { 
        margin-left: auto; 
        margin-right: auto; 
    }

    .hero__actions { 
        justify-content: center; 
    }

    .hero__media { 
        max-width: 560px; 
        margin: 0 auto; 
        width: 100%; 
    }

    .hero__img { 
        transform: none; 
        animation: none; 
    }

    .offer__grid { 
        grid-template-columns: 1fr; 
        gap: 2.5rem; 
    }

    .offer__media { 
        max-width: 620px; 
        margin: 0 auto; 
    }

    .offer__img { 
        transform: none; 
    }

    .author__grid { 
        grid-template-columns: 1fr; 
        gap: 2.25rem; 
    }

    .author__media { 
        order: -1; 
    }

    .bento__item:nth-child(1), .bento__item:nth-child(2) { 
        grid-column: span 3; 
    }

    .bento__item { 
        grid-column: span 3; 
    }
}

@media (max-width: 768px) { 
    :root { 
        --section-padding: 3.75rem 1.1rem; 
    }

    .hero { 
        padding: 2.75rem 1.1rem 3.25rem; 
    }

    .hero__title-stroke { 
        -webkit-text-stroke-width: 1.5px; 
    }

    .hero__actions { 
        flex-direction: column; 
        align-items: stretch; 
    }

    .hero__actions .btn, .hero__actions .btn-ghost { 
        width: 100%; 
        justify-content: center; 
    }

    .hero__stats li { 
        flex: 1 1 50%; 
        min-width: 50%; 
        border-bottom: 1px solid var(--color-border); 
    }

    .hero__stats li:nth-child(odd) { 
        border-right: 1px solid var(--color-border); 
    }

    .hero__stats li:nth-child(even) { 
        border-right: none; 
    }

    .hero__stats li:nth-last-child(-n+2) { 
        border-bottom: none; 
    }

    .nav__tag { 
        display: none; 
    }

    .transform__head { 
        display: none; 
    }

    .transform__row { 
        grid-template-columns: 1fr; 
    }

    .transform__from, .transform__to { 
        padding: 1rem 1.25rem; 
    }

    .transform__arrow { 
        display: none; 
    }

    .transform__to { 
        border-top: 1px solid var(--color-line); 
    }

    .timeline::before { 
        left: 23px; 
    }

    .tl { 
        grid-template-columns: 48px 1fr; 
        gap: 1rem; 
    }

    .tl__num { 
        width: 48px; 
        height: 48px; 
        font-size: 1rem; 
    }

    .bento__item, .bento__item:nth-child(1), .bento__item:nth-child(2) { 
        grid-column: span 6 !important; 
    }

    .bento__item--wide { 
        flex-direction: column; 
        align-items: flex-start; 
        text-align: left; 
    }

    .brow { 
        grid-template-columns: auto 1fr; 
    }

    .brow__ico { 
        display: none; 
    }

    .personas, .duel { 
        grid-template-columns: 1fr; 
    }

    .stepper { 
        grid-template-columns: 1fr; 
        gap: 2rem; 
    }

    .stepper::before { 
        display: none; 
    }

    .btn { 
        width: 100%; 
    }

    .duel-sec .btn { 
        width: 100%; 
    }

    .pricecard { 
        padding: 2.5rem 1.35rem 1.75rem; 
    }

    .pay__item { 
        width: 56px; 
        height: 38px; 
    }

    .foot__inner { 
        flex-direction: column; 
        align-items: flex-start; 
        gap: 1.5rem; 
    }

    .modal { 
        padding: 1rem; 
        align-items: flex-end; 
    }

    .modal__dialog { 
        max-width: 100%; 
        padding: 1.75rem 1.25rem 1.25rem; 
        border-radius: 18px 18px 14px 14px; 
        max-height: 92vh; 
    }
}

@media (max-width: 420px) { 
    .pay__list { 
        gap: 0.45rem; 
    }

    .pay__item { 
        width: 50px; 
        height: 34px; 
    }

    .ledger__name { 
        font-size: 0.9rem; 
    }
}

/* =========================================================
   [BLACK DA SOLUTE - ajustes]
========================================================= */
.nav__cta, .btn:not(.bf-cta), .pricecard__ribbon { color: #0c0c0c; }
.bf-price .btn.bf-cta { width: 100%; white-space: nowrap; padding: 16px 18px; font-size: clamp(1.05rem, 0.95rem + 0.6vw, 1.3rem); }
.offer__grid { align-items: center; }
.whatsapp-float { transition: transform 0.2s ease, box-shadow 0.2s ease, bottom 0.35s ease; }
body:has(.bf-sticky) .whatsapp-float { bottom: calc(92px + env(safe-area-inset-bottom)); }
@media (max-width: 520px) { body:has(.bf-sticky) .whatsapp-float { width: 52px; height: 52px; right: 14px; bottom: calc(84px + env(safe-area-inset-bottom)); } }
@media (max-width: 1024px) { .hero .bf-hero { justify-content: center; } }
