    :root {
        --purple-1000: #16091f;
        --purple-950: #24102f;
        --purple-900: #351346;
        --purple-850: #43155e;
        --purple-800: #541b74;
        --purple-700: #6d2493;
        --purple-600: #8537ae;
        --purple-500: #a45acc;
        --purple-400: #be85db;
        --purple-300: #d4b3e8;
        --purple-200: #e8d8f2;
        --purple-100: #f3eafa;
        --purple-50: #fbf8fd;
        --ink: #201825;
        --ink-soft: #3b3240;
        --muted: #6c6371;
        --muted-light: #9d93a4;
        --line: #eae2ee;
        --line-strong: #d9cae1;
        --white: #ffffff;
        --green: #198754;
        --green-soft: #e8f7ef;
        --amber: #9a5a00;
        --amber-soft: #fff5df;
        --danger: #b6314b;
        --shadow-xs: 0 4px 14px rgba(44, 18, 61, .06);
        --shadow-sm: 0 12px 34px rgba(44, 18, 61, .09);
        --shadow-md: 0 22px 65px rgba(44, 18, 61, .14);
        --shadow-lg: 0 40px 100px rgba(35, 11, 50, .22);
        --radius-sm: 14px;
        --radius-md: 22px;
        --radius-lg: 34px;
        --radius-xl: 46px;
        --container: 1180px;
        --header-h: 78px;
    }

    /* Background animado da primeira seção / VSL */
    #inicio.hero {
        position: relative;
        overflow: hidden;
        isolation: isolate;
        background:
            radial-gradient(circle at 12% 18%, rgba(145, 76, 210, 0.24), transparent 34%),
            radial-gradient(circle at 88% 28%, rgba(94, 31, 155, 0.22), transparent 38%),
            radial-gradient(circle at 50% 82%, rgba(203, 163, 235, 0.16), transparent 42%),
            linear-gradient(180deg, #f7f7f7 0%, #ca7aff 42%, #330855 100%) !important;
        background-size: 145% 145%, 155% 155%, 135% 135%, 100% 100%;
        animation: heroBackgroundDrift 18s ease-in-out infinite alternate;
    }

    #inicio.hero::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        background:
            linear-gradient(115deg, transparent 15%, rgba(255, 255, 255, 0.18) 42%, transparent 68%);
        background-size: 220% 100%;
        opacity: 0.55;
        animation: heroLightSweep 13s ease-in-out infinite;
    }

    #inicio.hero::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        opacity: 0.18;
        background-image:
            radial-gradient(rgba(255, 255, 255, 0.7) 0.7px, transparent 0.7px);
        background-size: 28px 28px;
        -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 34%, black 100%);
        mask-image: linear-gradient(to bottom, transparent 0%, black 34%, black 100%);
    }

    #inicio .aurora {
        position: absolute;
        inset: -15%;
        z-index: 0;
        overflow: hidden;
        pointer-events: none;
        filter: blur(34px);
    }

    #inicio .aurora-blob {
        position: absolute;
        display: block;
        border-radius: 999px;
        opacity: 0.34;
        will-change: transform;
        transform: translate3d(0, 0, 0);
    }

    #inicio .aurora-blob:nth-child(1) {
        width: clamp(260px, 38vw, 620px);
        aspect-ratio: 1;
        top: -8%;
        left: -4%;
        background: radial-gradient(circle, rgba(188, 121, 237, 0.78) 0%, rgba(127, 53, 183, 0.28) 52%, transparent 74%);
        animation: heroBlobOne 15s ease-in-out infinite alternate;
    }

    #inicio .aurora-blob:nth-child(2) {
        width: clamp(230px, 32vw, 520px);
        aspect-ratio: 1;
        top: 24%;
        right: -7%;
        background: radial-gradient(circle, rgba(112, 39, 174, 0.68) 0%, rgba(77, 27, 116, 0.24) 55%, transparent 75%);
        animation: heroBlobTwo 18s ease-in-out infinite alternate;
    }

    #inicio .aurora-blob:nth-child(3) {
        width: clamp(280px, 42vw, 680px);
        aspect-ratio: 1;
        bottom: -24%;
        left: 28%;
        background: radial-gradient(circle, rgba(222, 183, 247, 0.58) 0%, rgba(140, 76, 191, 0.22) 56%, transparent 76%);
        animation: heroBlobThree 20s ease-in-out infinite alternate;
    }

    #inicio>.container {
        position: relative;
        z-index: 2;
    }

    @keyframes heroBackgroundDrift {
        0% {
            background-position: 0% 0%, 100% 4%, 45% 100%, center;
        }

        50% {
            background-position: 10% 8%, 90% 14%, 56% 90%, center;
        }

        100% {
            background-position: 4% 14%, 96% 2%, 48% 82%, center;
        }
    }

    @keyframes heroLightSweep {

        0%,
        18% {
            background-position: 210% 0;
            opacity: 0;
        }

        42% {
            opacity: 0.48;
        }

        70%,
        100% {
            background-position: -110% 0;
            opacity: 0;
        }
    }

    @keyframes heroBlobOne {
        0% {
            transform: translate3d(-3%, -2%, 0) scale(0.96) rotate(0deg);
        }

        100% {
            transform: translate3d(18%, 14%, 0) scale(1.12) rotate(16deg);
        }
    }

    @keyframes heroBlobTwo {
        0% {
            transform: translate3d(5%, -7%, 0) scale(1.04) rotate(0deg);
        }

        100% {
            transform: translate3d(-18%, 17%, 0) scale(0.9) rotate(-20deg);
        }
    }

    @keyframes heroBlobThree {
        0% {
            transform: translate3d(-8%, 8%, 0) scale(0.92) rotate(0deg);
        }

        100% {
            transform: translate3d(14%, -16%, 0) scale(1.1) rotate(14deg);
        }
    }

    @media (max-width: 768px) {
        #inicio.hero {
            background-size: 175% 175%, 185% 185%, 165% 165%, 100% 100%;
            animation-duration: 22s;
        }

        #inicio.hero::before {
            opacity: 0.36;
            animation-duration: 16s;
        }

        #inicio.hero::after {
            opacity: 0.1;
            background-size: 24px 24px;
        }

        #inicio .aurora {
            inset: -8%;
            filter: blur(44px);
        }

        #inicio .aurora-blob {
            opacity: 0.26;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #inicio.hero,
        #inicio.hero::before,
        #inicio .aurora-blob {
            animation: none !important;
        }
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    * {
        margin: 0;
    }

    html {
        scroll-behavior: smooth;
        scroll-padding-top: calc(var(--header-h) + 22px);
    }

    body {
        min-width: 320px;
        color: var(--ink);
        background: var(--white);
        font-family: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        line-height: 1.6;
        text-rendering: optimizeLegibility;
        -webkit-font-smoothing: antialiased;
        overflow-x: hidden;
    }

    body.modal-open {
        overflow: hidden;
    }

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

    button,
    input,
    textarea,
    select {
        font: inherit;
    }

    button,
    a {
        -webkit-tap-highlight-color: transparent;
    }

    a {
        color: inherit;
        text-decoration: none;
    }

    ::selection {
        color: var(--white);
        background: var(--purple-700);
    }

    .skip-link {
        position: fixed;
        top: 8px;
        left: 8px;
        z-index: 9999;
        padding: 10px 14px;
        color: var(--white);
        background: var(--purple-900);
        border-radius: 10px;
        transform: translateY(-150%);
        transition: transform .2s ease;
    }

    .skip-link:focus {
        transform: translateY(0);
    }

    .container {
        width: min(calc(100% - 40px), var(--container));
        margin-inline: auto;
    }

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

    .section-sm {
        padding: 72px 0;
    }

    .section-soft {
        background: var(--purple-50);
    }

    .section-dark {
        color: var(--white);
        background: var(--purple-1000);
    }

    .section-heading {
        max-width: 790px;
        margin-bottom: 54px;
    }

    .section-heading.centered {
        margin-inline: auto;
        text-align: center;
    }

    .section-heading.centered .section-copy {
        margin-inline: auto;
    }

    .eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        margin-bottom: 18px;
        color: var(--purple-700);
        font-size: .78rem;
        font-weight: 800;
        letter-spacing: .15em;
        text-transform: uppercase;
    }

    .eyebrow::before {
        content: "";
        width: 28px;
        height: 2px;
        background: currentColor;
        border-radius: 999px;
    }

    .section-dark .eyebrow {
        color: var(--purple-300);
    }

    h1,
    h2,
    h3,
    h4 {
        font-family: "Manrope", "DM Sans", sans-serif;
        line-height: 1.07;
        letter-spacing: -.04em;
        text-wrap: balance;
    }

    h1 {
        font-size: clamp(2.7rem, 6.2vw, 5.3rem);
        font-weight: 800;
    }

    h2 {
        font-size: clamp(2rem, 4.4vw, 3.65rem);
        font-weight: 800;
    }

    h3 {
        font-size: clamp(1.25rem, 2.2vw, 1.65rem);
        font-weight: 800;
    }

    h4 {
        font-size: 1.05rem;
        font-weight: 800;
    }

    .section-copy {
        max-width: 680px;
        margin-top: 20px;
        color: var(--muted);
        font-size: clamp(1rem, 1.7vw, 1.18rem);
        line-height: 1.72;
    }

    .section-dark .section-copy {
        color: rgba(255, 255, 255, .7);
    }

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

    .desktop-only {
        display: block;
    }

    .mobile-only {
        display: none;
    }

    /* Top urgency bar */
    .urgency-bar {
        position: relative;
        z-index: 90;
        color: var(--white);
        background: linear-gradient(90deg, var(--purple-1000), var(--purple-800), var(--purple-1000));
        background-size: 200% 100%;
        animation: urgencyShift 9s linear infinite;
        border-bottom: 1px solid rgba(255, 255, 255, .08);
    }

    @keyframes urgencyShift {
        to {
            background-position: -200% 0;
        }
    }

    .urgency-inner {
        min-height: 54px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 22px;
        padding: 8px 0;
    }

    .urgency-message {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: .9rem;
        font-weight: 700;
    }

    .live-dot {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background: #ffcf69;
        box-shadow: 0 0 0 0 rgba(255, 207, 105, .45);
        animation: livePulse 1.7s infinite;
    }

    @keyframes livePulse {
        70% {
            box-shadow: 0 0 0 9px rgba(255, 207, 105, 0);
        }

        100% {
            box-shadow: 0 0 0 0 rgba(255, 207, 105, 0);
        }
    }

    .countdown {
        display: flex;
        align-items: center;
        gap: 6px;
        font-variant-numeric: tabular-nums;
    }

    .countdown-unit {
        min-width: 44px;
        padding: 5px 7px;
        color: var(--purple-1000);
        background: var(--white);
        border-radius: 9px;
        text-align: center;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .6), 0 5px 14px rgba(0, 0, 0, .15);
    }

    .countdown-unit strong {
        display: block;
        font-size: .9rem;
        line-height: 1;
    }

    .countdown-unit span {
        display: block;
        margin-top: 3px;
        color: var(--muted);
        font-size: .55rem;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .countdown-separator {
        opacity: .45;
        font-weight: 800;
    }

    /* Condição especial fixa — não há contador nem atualização automática */
    .fixed-offer-time {
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 8px 13px;
        color: var(--purple-1000);
        background: var(--white);
        border-radius: 10px;
        box-shadow: 0 5px 14px rgba(0, 0, 0, .15);
        font-size: .82rem;
        font-weight: 800;
        white-space: nowrap;
    }

    .fixed-offer-time strong {
        line-height: 1;
    }

    /* Header */
    .site-header {
        position: sticky;
        top: 0;
        z-index: 80;
        height: var(--header-h);
        background: rgba(255, 255, 255, .84);
        border-bottom: 1px solid rgba(221, 208, 228, .72);
        backdrop-filter: blur(18px) saturate(1.3);
        transition: box-shadow .25s ease, background-color .25s ease;
    }

    .site-header.scrolled {
        background: rgba(255, 255, 255, .94);
        box-shadow: 0 10px 30px rgba(42, 16, 56, .07);
    }

    .scroll-progress {
        position: absolute;
        left: 0;
        bottom: -1px;
        width: 0;
        height: 2px;
        background: var(--purple-700);
    }

    .header-inner {
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
    }

    .brand {
        display: inline-flex;
        align-items: center;
        gap: 11px;
        font-family: "Manrope", sans-serif;
        font-size: 1.24rem;
        font-weight: 800;
        letter-spacing: -.04em;
    }

    .brand-mark {
        position: relative;
        width: 38px;
        height: 38px;
        display: grid;
        place-items: center;
        color: var(--white);
        background: var(--purple-800);
        border-radius: 12px;
        box-shadow: 0 9px 20px rgba(84, 27, 116, .22);
        overflow: hidden;
    }

    .brand-mark::after {
        content: "";
        position: absolute;
        inset: -60% 30% 30% -60%;
        background: rgba(255, 255, 255, .28);
        transform: rotate(35deg);
    }

    .header-meta {
        display: flex;
        align-items: center;
        gap: 18px;
    }

    .official-badge {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        color: var(--green);
        font-size: .79rem;
        font-weight: 800;
    }

    /* Buttons inspired by shimmer/magnetic component patterns */
    .btn {
        --mouse-x: 50%;
        --mouse-y: 50%;
        position: relative;
        min-height: 58px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 15px 25px;
        color: var(--white);
        background: var(--purple-800);
        border: 0;
        border-radius: 15px;
        box-shadow: 0 14px 34px rgba(84, 27, 116, .25);
        font-weight: 800;
        line-height: 1.15;
        text-align: center;
        cursor: pointer;
        overflow: hidden;
        isolation: isolate;
        transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
    }

    .btn::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: radial-gradient(220px circle at var(--mouse-x) var(--mouse-y), rgba(255, 255, 255, .22), transparent 45%);
        opacity: 0;
        transition: opacity .25s ease;
    }

    .btn::after {
        content: "";
        position: absolute;
        top: -80%;
        left: -35%;
        width: 28%;
        height: 260%;
        background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .38), transparent);
        transform: rotate(18deg) translateX(-220%);
        animation: buttonShine 4.8s ease-in-out infinite;
    }

    @keyframes buttonShine {

        0%,
        68% {
            transform: rotate(18deg) translateX(-220%);
        }

        82%,
        100% {
            transform: rotate(18deg) translateX(650%);
        }
    }

    .btn:hover,
    .btn:focus-visible {
        transform: translateY(-2px);
        background: var(--purple-900);
        box-shadow: 0 18px 40px rgba(84, 27, 116, .32);
    }

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

    .btn:active {
        transform: translateY(0) scale(.985);
    }

    .btn svg {
        flex: 0 0 auto;
    }

    .btn-sm {
        min-height: 46px;
        padding: 11px 18px;
        border-radius: 12px;
        font-size: .88rem;
    }

    .btn-lg {
        min-height: 64px;
        padding: 17px 28px;
        font-size: 1.01rem;
    }

    .btn-block {
        width: 100%;
    }

    .btn-light {
        color: var(--purple-900);
        background: var(--white);
        box-shadow: 0 14px 34px rgba(0, 0, 0, .16);
    }

    .btn-light:hover,
    .btn-light:focus-visible {
        color: var(--white);
        background: var(--purple-700);
    }

    .btn-outline {
        color: var(--purple-800);
        background: var(--white);
        border: 1px solid var(--purple-200);
        box-shadow: none;
    }

    .btn-outline:hover,
    .btn-outline:focus-visible {
        color: var(--white);
        background: var(--purple-800);
    }

    :focus-visible {
        outline: 3px solid var(--purple-400);
        outline-offset: 4px;
    }

    /* Hero */
    .hero {
        position: relative;
        min-height: 780px;
        padding: 92px 0 110px;
        display: flex;
        justify-content: center;
        background:
            radial-gradient(circle at 8% 14%, rgb(92, 0, 138), transparent 27%),
            radial-gradient(circle at 84% 18%, rgba(109, 36, 147, .13), transparent 24%),
            linear-gradient(180deg, #fff 0%, #fcf9fe 100%);
        overflow: hidden;
    }

    .hero-grid {
        position: relative;
        z-index: 2;
        grid-template-columns: minmax(0, .92fr) minmax(500px, 1.08fr);
        align-items: center;
        gap: 68px;
    }

    .hero-content {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .hero-kicker {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        margin-bottom: 22px;
        padding: 8px 12px;
        color: var(--purple-800);
        background: rgba(243, 234, 250, .8);
        border: 1px solid var(--purple-200);
        border-radius: 999px;
        font-size: .75rem;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase;
        backdrop-filter: blur(10px);
    }

    .hero-kicker svg {
        color: var(--purple-700);
    }

    .hero h1 {
        max-width: 1090px;
        text-align: center;
    }

    .hero h1 .accent {
        color: var(--purple-700);
    }

    .blur-word {
        display: inline-block;
        opacity: 0;
        filter: blur(9px);
        transform: translateY(18px);
        animation: blurIn .72s cubic-bezier(.2, .7, .2, 1) forwards;
    }

    @keyframes blurIn {
        to {
            opacity: 1;
            filter: blur(0);
            transform: translateY(0);
        }
    }

    .hero-copy {
        max-width: 1020px;
        margin-top: 25px;
        color: var(--muted);
        font-size: clamp(1.05rem, 1.7vw, 1.23rem);
        line-height: 1.7;
        text-align: center;
    }

    .hero-actions {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 16px;
        margin-top: 32px;
        margin-inline: auto;
        flex-wrap: wrap;
    }

    .hero-proof {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 13px;
        margin-top: 28px;
        margin-inline: auto;
        color: var(--ink-soft);
        font-size: .86rem;
        font-weight: 700;
    }

    .avatars {
        display: flex;
        padding-left: 8px;
    }

    .avatars img {
        width: 36px;
        height: 36px;
        margin-left: -8px;
        object-fit: cover;
        border: 3px solid var(--white);
        border-radius: 50%;
        box-shadow: var(--shadow-xs);
    }

    .stars {
        color: #e29a24;
        letter-spacing: .05em;
    }

    .hero-visual {
        position: relative;
        margin-inline: auto;
    }

    .video-shell {
        position: relative;
        padding: 10px;
        background: rgba(255, 255, 255, .78);
        border: 1px solid rgba(217, 202, 225, .76);
        border-radius: 32px;
        box-shadow: var(--shadow-lg);
        backdrop-filter: blur(20px);
        transform: perspective(1200px) rotateY(-2.6deg) rotateX(1.2deg);
        transition: transform .6s cubic-bezier(.2, .7, .2, 1);
    }

    .video-shell:hover {
        transform: perspective(1200px) rotateY(0) rotateX(0) translateY(-3px);
    }

    .video-frame {
        position: relative;
        aspect-ratio: 16/10;
        overflow: hidden;
        background: var(--purple-950);
        border-radius: 24px;
        isolation: isolate;
    }

    .video-frame::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(19, 7, 28, .05), rgba(19, 7, 28, .65));
        z-index: 1;
    }

    .video-frame img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: .82;
        transition: transform 1.2s ease;
    }

    .video-shell:hover .video-frame img {
        transform: scale(1.035);
    }

    .video-topline {
        position: absolute;
        top: 18px;
        left: 18px;
        right: 18px;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .video-chip {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 8px 11px;
        color: var(--white);
        background: rgba(27, 11, 37, .58);
        border: 1px solid rgba(255, 255, 255, .15);
        border-radius: 999px;
        font-size: .72rem;
        font-weight: 800;
        backdrop-filter: blur(12px);
    }

    .play-button {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 4;
        width: 82px;
        height: 82px;
        display: grid;
        place-items: center;
        color: var(--purple-900);
        background: var(--white);
        border: 0;
        border-radius: 50%;
        box-shadow: 0 22px 54px rgba(0, 0, 0, .28);
        transform: translate(-50%, -50%);
        cursor: pointer;
        transition: transform .25s ease, box-shadow .25s ease;
    }

    .play-button::before,
    .play-button::after {
        content: "";
        position: absolute;
        inset: -12px;
        border: 1px solid rgba(255, 255, 255, .4);
        border-radius: 50%;
        animation: playPulse 2.2s ease-out infinite;
    }

    .play-button::after {
        animation-delay: 1.1s;
    }

    @keyframes playPulse {
        to {
            transform: scale(1.42);
            opacity: 0;
        }
    }

    .play-button:hover {
        transform: translate(-50%, -50%) scale(1.06);
        box-shadow: 0 28px 70px rgba(0, 0, 0, .32);
    }

    .video-caption {
        position: absolute;
        left: 24px;
        right: 24px;
        bottom: 22px;
        z-index: 3;
        color: var(--white);
    }

    .video-caption strong {
        display: block;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.1rem, 2vw, 1.5rem);
        line-height: 1.2;
    }

    .video-caption span {
        display: block;
        margin-top: 6px;
        color: rgba(255, 255, 255, .7);
        font-size: .82rem;
    }

    .floating-note {
        position: absolute;
        z-index: 5;
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 13px 15px;
        background: rgba(255, 255, 255, .94);
        border: 1px solid var(--line);
        border-radius: 16px;
        box-shadow: var(--shadow-md);
        font-size: .78rem;
        font-weight: 800;
        backdrop-filter: blur(14px);
        animation: noteFloat 4s ease-in-out infinite;
    }

    .floating-note svg {
        color: var(--purple-700);
    }

    .note-one {
        top: -24px;
        right: 30px;
    }

    .note-two {
        left: -34px;
        bottom: 34px;
        animation-delay: -2s;
    }

    @keyframes noteFloat {
        50% {
            transform: translateY(-7px);
        }
    }

    .trust-strip {
        position: relative;
        z-index: 4;
        margin-top: -38px;
    }

    .trust-strip-inner {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: 22px;
        box-shadow: var(--shadow-sm);
        overflow: hidden;
    }

    .trust-item {
        min-height: 92px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        padding: 20px;
        border-right: 1px solid var(--line);
        text-align: left;
    }

    .trust-item:last-child {
        border-right: 0;
    }

    .trust-item svg {
        color: var(--purple-700);
        flex: 0 0 auto;
    }

    .trust-item strong {
        display: block;
        font-family: "Manrope", sans-serif;
        font-size: .91rem;
        line-height: 1.2;
    }

    .trust-item span {
        display: block;
        margin-top: 3px;
        color: var(--muted);
        font-size: .73rem;
    }

    /* Reveal animations */
    [data-reveal] {
        opacity: 0;
        transform: translateY(28px);
        filter: blur(4px);
        transition: opacity .75s cubic-bezier(.2, .7, .2, 1), transform .75s cubic-bezier(.2, .7, .2, 1), filter .75s ease;
        transition-delay: var(--delay, 0ms);
    }

    [data-reveal="left"] {
        transform: translateX(-36px);
    }

    [data-reveal="right"] {
        transform: translateX(36px);
    }

    [data-reveal].is-visible {
        opacity: 1;
        transform: translate(0);
        filter: blur(0);
    }

    /* Problem section */
    .problem-grid {
        display: grid;
        grid-template-columns: .88fr 1.12fr;
        align-items: center;
        gap: 82px;
    }

    .problem-visual {
        position: relative;
        min-height: 590px;
    }

    .image-stack-main {
        position: absolute;
        inset: 0 38px 44px 0;
        overflow: hidden;
        border-radius: 32px;
        box-shadow: var(--shadow-md);
    }

    .image-stack-main img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .image-stack-main::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, transparent 45%, rgba(26, 10, 34, .52));
    }

    .image-stack-card {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 250px;
        padding: 22px;
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: 20px;
        box-shadow: var(--shadow-md);
    }

    .image-stack-card span {
        display: block;
        margin-bottom: 10px;
        color: var(--purple-700);
        font-size: .72rem;
        font-weight: 800;
        letter-spacing: .1em;
        text-transform: uppercase;
    }

    .image-stack-card p {
        color: var(--ink-soft);
        font-size: .94rem;
        font-weight: 700;
        line-height: 1.5;
    }

    .cycle-list {
        margin-top: 32px;
    }

    .cycle-step {
        position: relative;
        display: grid;
        grid-template-columns: 48px 1fr;
        gap: 17px;
        padding-bottom: 25px;
    }

    .cycle-step:not(:last-child)::after {
        content: "";
        position: absolute;
        top: 48px;
        left: 23px;
        bottom: 0;
        width: 1px;
        background: linear-gradient(var(--purple-300), var(--line));
    }

    .cycle-number {
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        color: var(--purple-800);
        background: var(--purple-100);
        border: 1px solid var(--purple-200);
        border-radius: 15px;
        font-family: "Manrope", sans-serif;
        font-weight: 800;
    }

    .cycle-step h3 {
        margin-top: 3px;
        font-size: 1.05rem;
        letter-spacing: -.02em;
    }

    .cycle-step p {
        margin-top: 6px;
        color: var(--muted);
        font-size: .93rem;
    }

    .reframe-box {
        margin-top: 28px;
        padding: 23px 24px;
        background: var(--purple-50);
        border-left: 4px solid var(--purple-700);
        border-radius: 0 16px 16px 0;
        color: var(--ink-soft);
        font-weight: 700;
    }

    /* Desire / bento */
    .desire-section {
        overflow: hidden;
    }

    .bento-grid {
        display: grid;
        grid-template-columns: 1.1fr .9fr .9fr;
        grid-template-rows: 270px 270px;
        gap: 18px;
    }

    .bento-card {
        position: relative;
        padding: 30px;
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: 24px;
        overflow: hidden;
    }

    .bento-card.large {
        grid-row: 1 / 3;
    }

    .bento-card.wide {
        grid-column: 2 / 4;
    }

    .bento-card.image-card {
        color: var(--white);
        border: 0;
    }

    .bento-card.image-card img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .bento-card.image-card::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(24, 8, 31, .05), rgba(24, 8, 31, .78));
    }

    .bento-content {
        position: relative;
        z-index: 2;
    }

    .bento-card.image-card .bento-content {
        position: absolute;
        left: 30px;
        right: 30px;
        bottom: 28px;
    }

    .bento-label {
        display: inline-flex;
        margin-bottom: 13px;
        padding: 7px 10px;
        color: var(--purple-800);
        background: var(--purple-100);
        border-radius: 999px;
        font-size: .69rem;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .image-card .bento-label {
        color: var(--white);
        background: rgba(255, 255, 255, .15);
        border: 1px solid rgba(255, 255, 255, .18);
        backdrop-filter: blur(10px);
    }

    .bento-card p {
        margin-top: 10px;
        color: var(--muted);
        font-size: .93rem;
    }

    .image-card p {
        color: rgba(255, 255, 255, .74);
    }

    .bento-quote {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        background: var(--purple-900);
        color: var(--white);
        border: 0;
    }

    .bento-quote p {
        color: rgba(255, 255, 255, .74);
    }

    .quote-mark {
        color: var(--purple-400);
        font-family: Georgia, serif;
        font-size: 4.5rem;
        line-height: .7;
    }

    /* Product reveal */
    .product-section {
        overflow: hidden;
        background:
            radial-gradient(circle at 85% 50%, rgba(164, 90, 204, .25), transparent 28%),
            var(--purple-1000);
    }

    .product-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 70px;
    }

    .product-stage {
        position: relative;
        min-height: 570px;
        display: grid;
        place-items: center;
    }

    .product-orbit {
        position: absolute;
        width: 480px;
        height: 480px;
        border: 1px solid rgba(255, 255, 255, .1);
        border-radius: 50%;
        animation: orbitRotate 28s linear infinite;
    }

    .product-orbit::before,
    .product-orbit::after {
        content: "";
        position: absolute;
        width: 13px;
        height: 13px;
        background: var(--purple-400);
        border-radius: 50%;
        box-shadow: 0 0 24px rgba(190, 133, 219, .8);
    }

    .product-orbit::before {
        top: 38px;
        right: 82px;
    }

    .product-orbit::after {
        left: 23px;
        bottom: 122px;
    }

    @keyframes orbitRotate {
        to {
            transform: rotate(1turn);
        }
    }

    .product-glow {
        position: absolute;
        width: 380px;
        height: 380px;
        background: rgba(143, 73, 179, .25);
        border-radius: 50%;
        filter: blur(55px);
    }

    .product-image {
        position: relative;
        z-index: 2;
        max-height: 470px;
        object-fit: contain;
        filter: drop-shadow(0 38px 50px rgba(0, 0, 0, .45));
        animation: productFloat 4.8s ease-in-out infinite;
    }

    @keyframes productFloat {
        50% {
            transform: translateY(-12px);
        }
    }

    .product-fact {
        position: absolute;
        z-index: 3;
        max-width: 200px;
        padding: 14px 16px;
        color: var(--white);
        background: rgba(255, 255, 255, .08);
        border: 1px solid rgba(255, 255, 255, .12);
        border-radius: 16px;
        font-size: .78rem;
        line-height: 1.45;
        backdrop-filter: blur(15px);
    }

    .product-fact strong {
        display: block;
        margin-bottom: 4px;
        color: var(--purple-300);
        font-size: .72rem;
        text-transform: uppercase;
        letter-spacing: .08em;
    }

    .product-fact.one {
        top: 90px;
        left: 8px;
    }

    .product-fact.two {
        right: 0;
        bottom: 105px;
    }

    .product-points {
        margin-top: 34px;
        display: grid;
        gap: 17px;
    }

    .product-point {
        display: grid;
        grid-template-columns: 42px 1fr;
        gap: 14px;
        align-items: start;
    }

    .product-point-icon {
        width: 42px;
        height: 42px;
        display: grid;
        place-items: center;
        color: var(--purple-300);
        background: rgba(255, 255, 255, .07);
        border: 1px solid rgba(255, 255, 255, .1);
        border-radius: 13px;
    }

    .product-point h3 {
        font-size: 1rem;
        letter-spacing: -.02em;
    }

    .product-point p {
        margin-top: 4px;
        color: rgba(255, 255, 255, .64);
        font-size: .91rem;
    }

    .product-disclaimer {
        margin-top: 28px;
        padding: 15px 17px;
        color: rgba(255, 255, 255, .6);
        background: rgba(255, 255, 255, .05);
        border: 1px solid rgba(255, 255, 255, .08);
        border-radius: 14px;
        font-size: .75rem;
    }

    /* Marquee */
    .marquee-wrap {
        overflow: hidden;
        background: var(--purple-800);
        border-top: 1px solid rgba(255, 255, 255, .08);
        border-bottom: 1px solid rgba(255, 255, 255, .08);
    }

    .marquee-track {
        width: max-content;
        display: flex;
        align-items: center;
        gap: 30px;
        padding: 16px 0;
        color: var(--white);
        animation: marqueeMove 24s linear infinite;
    }

    .marquee-track span {
        display: inline-flex;
        align-items: center;
        gap: 30px;
        font-family: "Manrope", sans-serif;
        font-size: .76rem;
        font-weight: 800;
        letter-spacing: .12em;
        text-transform: uppercase;
    }

    .marquee-track span::after {
        content: "✦";
        color: var(--purple-300);
    }

    @keyframes marqueeMove {
        to {
            transform: translateX(-50%);
        }
    }

    /* How it fits */
    .routine-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }

    .routine-card {
        position: relative;
        min-height: 300px;
        padding: 28px;
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: 22px;
        overflow: hidden;
    }

    .routine-card::before {
        content: "";
        position: absolute;
        width: 160px;
        height: 160px;
        top: -90px;
        right: -75px;
        background: var(--purple-100);
        border-radius: 50%;
        transition: transform .5s ease;
    }

    .routine-card:hover::before {
        transform: scale(1.18);
    }

    .routine-number {
        position: relative;
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        margin-bottom: 45px;
        color: var(--purple-800);
        background: var(--purple-100);
        border-radius: 15px;
        font-family: "Manrope", sans-serif;
        font-weight: 800;
    }

    .routine-card p {
        margin-top: 13px;
        color: var(--muted);
        font-size: .94rem;
    }

    .routine-note {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        margin-top: 30px;
        padding: 25px 28px;
        color: var(--white);
        background: var(--purple-900);
        border-radius: 20px;
    }

    .routine-note strong {
        max-width: 700px;
        font-family: "Manrope", sans-serif;
        font-size: 1.05rem;
        line-height: 1.45;
    }

    .routine-note span {
        color: var(--purple-300);
        white-space: nowrap;
        font-size: .82rem;
        font-weight: 800;
    }

    /* Offer */
    .offer-section {
        background:
            radial-gradient(circle at 50% -20%, rgba(164, 90, 204, .2), transparent 37%),
            linear-gradient(180deg, #fbf8fd 0%, #fff 100%);
        overflow: hidden;
    }

    .offer-deadline {
        max-width: 820px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        margin: 0 auto 34px;
        padding: 17px 20px;
        color: var(--ink-soft);
        background: var(--amber-soft);
        border: 1px solid #f1ddad;
        border-radius: 16px;
        font-size: .9rem;
    }

    .offer-deadline strong {
        color: var(--amber);
    }

    .offer-deadline .mini-timer {
        font-weight: 800;
        font-variant-numeric: tabular-nums;
        white-space: nowrap;
    }

    .pricing-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        align-items: stretch;
        gap: 16px;
    }

    .price-card {
        position: relative;
        display: flex;
        flex-direction: column;
        padding: 23px;
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: 22px;
        box-shadow: var(--shadow-xs);
        overflow: hidden;
    }

    .price-card.featured {
        color: var(--white);
        background: var(--purple-950);
        border-color: var(--purple-700);
        box-shadow: 0 28px 70px rgba(54, 18, 75, .25);
        transform: translateY(-12px);
    }

    .border-beam {
        position: absolute;
        inset: -1px;
        pointer-events: none;
        border-radius: inherit;
        overflow: hidden;
    }

    .border-beam::before {
        content: "";
        position: absolute;
        width: 100px;
        height: 320px;
        top: 50%;
        left: 50%;
        background: linear-gradient(90deg, transparent, #d7a9ef, transparent);
        transform-origin: 0 0;
        animation: borderBeam 5s linear infinite;
    }

    @keyframes borderBeam {
        to {
            transform: rotate(1turn) translateX(240px);
        }
    }

    .price-card.featured::after {
        content: "";
        position: absolute;
        inset: 1px;
        z-index: 0;
        background: var(--purple-950);
        border-radius: 20px;
    }

    .price-card.featured>*:not(.border-beam) {
        position: relative;
        z-index: 2;
    }

    .popular-tag {
        position: absolute;
        top: 16px;
        right: 16px;
        padding: 7px 9px;
        color: var(--purple-950);
        background: #f3d876;
        border-radius: 999px;
        font-size: .63rem;
        font-weight: 900;
        letter-spacing: .07em;
        text-transform: uppercase;
    }

    .price-card-top {
        min-height: 72px;
        padding-right: 48px;
    }

    .price-card.featured .price-card-top {
        padding-right: 74px;
    }

    .price-card .plan-name {
        color: var(--purple-700);
        font-size: .73rem;
        font-weight: 900;
        letter-spacing: .1em;
        text-transform: uppercase;
    }

    .price-card.featured .plan-name {
        color: var(--purple-300);
    }

    .price-card h3 {
        margin-top: 8px;
        font-size: 1.25rem;
    }

    .price-card .plan-copy {
        min-height: 44px;
        margin-top: 7px;
        color: var(--muted);
        font-size: .8rem;
        line-height: 1.45;
    }

    .price-card.featured .plan-copy {
        color: rgba(255, 255, 255, .62);
    }

    .kit-image-wrap {
        height: 185px;
        display: grid;
        place-items: center;
        margin: 12px 0 8px;
    }

    .kit-image {
        max-height: 172px;
        object-fit: contain;
        filter: drop-shadow(0 18px 24px rgba(45, 18, 59, .2));
        transition: transform .3s ease;
    }

    .price-card:hover .kit-image {
        transform: translateY(-3px);
    }

    .price-installments {
        display: flex;
        align-items: flex-start;
        gap: 4px;
        margin-top: 6px;
    }

    .price-installments .x {
        margin-top: 9px;
        color: var(--muted);
        font-size: .82rem;
        font-weight: 800;
    }

    .price-card.featured .price-installments .x {
        color: rgba(255, 255, 255, .6);
    }

    .price-installments strong {
        font-family: "Manrope", sans-serif;
        font-size: 2.15rem;
        line-height: 1;
        letter-spacing: -.06em;
    }

    .price-installments sup {
        margin-top: 1px;
        font-size: .9rem;
        font-weight: 800;
    }

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

    .pix-price strong {
        color: var(--ink);
    }

    .price-card.featured .pix-price {
        color: rgba(255, 255, 255, .58);
    }

    .price-card.featured .pix-price strong {
        color: var(--white);
    }

    .price-features {
        display: grid;
        gap: 10px;
        margin: 20px 0 22px;
        padding: 0;
        list-style: none;
    }

    .price-features li {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        color: var(--ink-soft);
        font-size: .8rem;
    }

    .price-features svg {
        margin-top: 2px;
        color: var(--green);
        flex: 0 0 auto;
    }

    .price-card.featured .price-features li {
        color: rgba(255, 255, 255, .74);
    }

    .price-card.featured .price-features svg {
        color: #7ce0aa;
    }

    .price-card .btn {
        margin-top: auto;
        min-height: 53px;
        padding-inline: 15px;
        font-size: .82rem;
    }

    .price-card.featured .btn {
        color: var(--purple-950);
        background: var(--white);
    }

    .price-card.featured .btn:hover {
        color: var(--white);
        background: var(--purple-700);
    }

    .payment-note {
        margin-top: 28px;
        color: var(--muted);
        text-align: center;
        font-size: .78rem;
    }

    /* Genuine urgency panel */
    .scarcity-panel {
        max-width: 870px;
        margin: 45px auto 0;
        padding: 27px;
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: 22px;
        box-shadow: var(--shadow-sm);
    }

    .scarcity-head {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 20px;
    }

    .scarcity-head h3 {
        font-size: 1.1rem;
    }

    .scarcity-head p {
        margin-top: 6px;
        color: var(--muted);
        font-size: .84rem;
    }

    .scarcity-status {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 7px 10px;
        color: var(--amber);
        background: var(--amber-soft);
        border-radius: 999px;
        font-size: .7rem;
        font-weight: 800;
        white-space: nowrap;
    }

    .availability-track {
        height: 9px;
        margin-top: 21px;
        background: var(--purple-100);
        border-radius: 999px;
        overflow: hidden;
    }

    .availability-fill {
        width: 68%;
        height: 100%;
        background: linear-gradient(90deg, var(--purple-700), var(--purple-400));
        border-radius: inherit;
        animation: fillGrow 1.4s cubic-bezier(.2, .7, .2, 1) both;
    }

    @keyframes fillGrow {
        from {
            width: 0;
        }
    }

    .scarcity-foot {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        margin-top: 12px;
        color: var(--muted);
        font-size: .72rem;
    }

    /* Guarantee */
    .guarantee-wrap {
        display: grid;
        grid-template-columns: 340px 1fr;
        align-items: center;
        gap: 66px;
        padding: 52px;
        color: var(--white);
        background: var(--purple-950);
        border-radius: 32px;
        overflow: hidden;
        position: relative;
    }

    .guarantee-wrap::before {
        content: "";
        position: absolute;
        width: 420px;
        height: 420px;
        left: -180px;
        top: -170px;
        background: rgba(164, 90, 204, .2);
        border-radius: 50%;
        filter: blur(5px);
    }

    .guarantee-seal {
        position: relative;
        width: 270px;
        height: 270px;
        display: grid;
        place-items: center;
        margin-inline: auto;
        color: var(--purple-950);
        background: var(--white);
        border-radius: 50%;
        box-shadow: 0 28px 70px rgba(0, 0, 0, .25);
    }

    .guarantee-seal::before,
    .guarantee-seal::after {
        content: "";
        position: absolute;
        border-radius: 50%;
    }

    .guarantee-seal::before {
        inset: 12px;
        border: 2px dashed var(--purple-300);
        animation: sealSpin 25s linear infinite;
    }

    .guarantee-seal::after {
        inset: 28px;
        border: 1px solid var(--purple-200);
    }

    @keyframes sealSpin {
        to {
            transform: rotate(1turn);
        }
    }

    .seal-content {
        position: relative;
        z-index: 2;
        text-align: center;
    }

    .seal-content strong {
        display: block;
        font-family: "Manrope", sans-serif;
        font-size: 4rem;
        line-height: .9;
        letter-spacing: -.08em;
    }

    .seal-content span {
        display: block;
        margin-top: 9px;
        color: var(--purple-700);
        font-weight: 900;
        letter-spacing: .12em;
        text-transform: uppercase;
    }

    .guarantee-copy .eyebrow {
        color: var(--purple-300);
    }

    .guarantee-copy p {
        max-width: 680px;
        margin-top: 18px;
        color: rgba(255, 255, 255, .7);
        font-size: 1.04rem;
    }

    .guarantee-copy ul {
        display: grid;
        gap: 10px;
        margin: 25px 0 30px;
        padding: 0;
        list-style: none;
    }

    .guarantee-copy li {
        display: flex;
        align-items: center;
        gap: 10px;
        color: rgba(255, 255, 255, .82);
        font-size: .9rem;
    }

    .guarantee-copy li svg {
        color: #79dca5;
    }

    /* FAQ */
    .faq-grid {
        display: grid;
        grid-template-columns: .75fr 1.25fr;
        gap: 68px;
        align-items: start;
    }

    .faq-sticky {
        position: sticky;
        top: calc(var(--header-h) + 32px);
    }

    .faq-list {
        border-top: 1px solid var(--line);
    }

    .faq-item {
        border-bottom: 1px solid var(--line);
    }

    .faq-question {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding: 24px 4px;
        color: var(--ink);
        background: transparent;
        border: 0;
        text-align: left;
        cursor: pointer;
        font-family: "Manrope", sans-serif;
        font-size: 1.02rem;
        font-weight: 800;
    }

    .faq-icon {
        width: 30px;
        height: 30px;
        display: grid;
        place-items: center;
        color: var(--purple-700);
        background: var(--purple-100);
        border-radius: 50%;
        flex: 0 0 auto;
        transition: transform .25s ease, background-color .25s ease;
    }

    .faq-item.open .faq-icon {
        color: var(--white);
        background: var(--purple-700);
        transform: rotate(45deg);
    }

    .faq-answer {
        height: 0;
        overflow: hidden;
        transition: height .34s cubic-bezier(.2, .7, .2, 1);
    }

    .faq-answer-inner {
        padding: 0 50px 24px 4px;
        color: var(--muted);
        font-size: .95rem;
        line-height: 1.7;
    }

    /* Final CTA */
    .final-cta {
        padding: 0 0 110px;
        background: var(--white);
    }

    .final-card {
        position: relative;
        padding: 72px 46px;
        color: var(--white);
        background: var(--purple-900);
        border-radius: 34px;
        text-align: center;
        overflow: hidden;
        isolation: isolate;
    }

    .final-card::before,
    .final-card::after {
        content: "";
        position: absolute;
        z-index: -1;
        border-radius: 50%;
        filter: blur(2px);
    }

    .final-card::before {
        width: 440px;
        height: 440px;
        top: -290px;
        left: -110px;
        background: rgba(190, 133, 219, .25);
    }

    .final-card::after {
        width: 390px;
        height: 390px;
        right: -170px;
        bottom: -260px;
        background: rgba(164, 90, 204, .25);
    }

    .final-card h2 {
        max-width: 850px;
        margin-inline: auto;
    }

    .final-card p {
        max-width: 620px;
        margin: 20px auto 30px;
        color: rgba(255, 255, 255, .7);
        font-size: 1.06rem;
    }

    .final-card .microcopy {
        margin-top: 14px;
        color: rgba(255, 255, 255, .55);
        font-size: .75rem;
    }

    /* Footer */
    .site-footer {
        padding: 46px 0 110px;
        background: var(--purple-1000);
        color: rgba(255, 255, 255, .66);
    }

    .footer-top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 30px;
        padding-bottom: 28px;
        border-bottom: 1px solid rgba(255, 255, 255, .08);
    }

    .site-footer .brand {
        color: var(--white);
    }

    .footer-links {
        display: flex;
        align-items: center;
        gap: 20px;
        flex-wrap: wrap;
        font-size: .77rem;
    }

    .footer-links a {
        transition: color .2s ease;
    }

    .footer-links a:hover {
        color: var(--white);
    }

    .footer-copy {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 40px;
        padding-top: 28px;
        font-size: .7rem;
        line-height: 1.65;
    }

    .copyright {
        margin-top: 25px;
        color: rgba(255, 255, 255, .4);
        font-size: .68rem;
    }

    /* Modal */
    .modal {
        position: fixed;
        inset: 0;
        z-index: 200;
        display: grid;
        place-items: center;
        padding: 20px;
        background: rgba(20, 8, 27, .68);
        backdrop-filter: blur(10px);
        opacity: 0;
        visibility: hidden;
        transition: opacity .25s ease, visibility .25s ease;
    }

    .modal.open {
        opacity: 1;
        visibility: visible;
    }

    .modal-dialog {
        position: relative;
        width: min(100%, 620px);
        display: grid;
        grid-template-columns: 220px 1fr;
        background: var(--white);
        border-radius: 26px;
        box-shadow: 0 40px 120px rgba(0, 0, 0, .32);
        overflow: hidden;
        transform: translateY(22px) scale(.98);
        transition: transform .3s cubic-bezier(.2, .7, .2, 1);
    }

    .modal.open .modal-dialog {
        transform: translateY(0) scale(1);
    }

    .modal-image {
        min-height: 360px;
    }

    .modal-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .modal-content {
        padding: 38px 34px;
    }

    .modal-content .eyebrow {
        margin-bottom: 12px;
    }

    .modal-content h2 {
        font-size: 1.9rem;
    }

    .modal-content p {
        margin-top: 14px;
        color: var(--muted);
        font-size: .9rem;
    }

    .modal-content .btn {
        margin-top: 24px;
        width: 100%;
    }

    .modal-close {
        position: absolute;
        top: 12px;
        right: 12px;
        z-index: 3;
        width: 38px;
        height: 38px;
        display: grid;
        place-items: center;
        color: var(--ink-soft);
        background: rgba(255, 255, 255, .9);
        border: 1px solid var(--line);
        border-radius: 50%;
        cursor: pointer;
    }

    /* Toast */
    .toast {
        position: fixed;
        right: 22px;
        bottom: 24px;
        z-index: 9500;
        max-width: 330px;
        display: flex;
        align-items: flex-start;
        gap: 12px;
        padding: 15px 17px;
        color: var(--ink-soft);
        background: rgba(255, 255, 255, .96);
        border: 1px solid var(--line);
        border-radius: 16px;
        box-shadow: var(--shadow-md);
        backdrop-filter: blur(14px);
        transform: translateY(140%);
        opacity: 0;
        transition: transform .45s cubic-bezier(.2, .7, .2, 1), opacity .45s ease;
    }

    .toast.show {
        transform: translateY(0);
        opacity: 1;
    }

    .toast-icon {
        width: 34px;
        height: 34px;
        display: grid;
        place-items: center;
        color: var(--green);
        background: var(--green-soft);
        border-radius: 50%;
        flex: 0 0 auto;
    }

    .toast strong {
        display: block;
        font-size: .82rem;
    }

    .toast p {
        margin-top: 3px;
        color: var(--muted);
        font-size: .72rem;
        line-height: 1.4;
    }

    .toast-close {
        margin-left: auto;
        padding: 0;
        color: var(--muted-light);
        background: none;
        border: 0;
        cursor: pointer;
    }

    /* Mobile sticky */
    .mobile-sticky {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 100;
        display: none;
        padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
        background: rgba(255, 255, 255, .93);
        border-top: 1px solid var(--line);
        backdrop-filter: blur(16px);
        transform: translateY(120%);
        transition: transform .35s ease;
    }

    .mobile-sticky.show {
        transform: translateY(0);
    }

    .mobile-sticky-inner {
        display: grid;
        grid-template-columns: 1fr auto;
        align-items: center;
        gap: 12px;
    }

    .mobile-price span {
        display: block;
        color: var(--muted);
        font-size: .65rem;
    }

    .mobile-price strong {
        display: block;
        font-family: "Manrope", sans-serif;
        font-size: .98rem;
        line-height: 1.2;
    }

    .mobile-sticky .btn {
        min-height: 48px;
        padding: 11px 16px;
        font-size: .78rem;
    }

    /* Reduced motion */
    @media (prefers-reduced-motion: reduce) {

        *,
        *::before,
        *::after {
            scroll-behavior: auto !important;
            animation-duration: .01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: .01ms !important;
        }

        [data-reveal] {
            opacity: 1;
            transform: none;
            filter: none;
        }
    }

    /* Tablet */
    @media (max-width: 1050px) {
        :root {
            --header-h: 70px;
        }

        .hero {
            min-height: auto;
            padding-top: 72px;
        }

        .hero-grid {
            grid-template-columns: 1fr;
            gap: 54px;
        }

        .hero-content {
            max-width: 820px;
            text-align: center;
            margin-inline: auto;
        }

        .hero h1,
        .hero-copy {
            margin-inline: auto;
        }

        .hero-actions,
        .hero-proof {
            justify-content: center;
        }

        .hero-visual {
            max-width: 760px;
            width: 100%;
            margin-inline: auto;
        }

        .video-shell {
            transform: none;
        }

        .video-shell:hover {
            transform: translateY(-3px);
        }

        .trust-strip {
            margin-top: -20px;
        }

        .problem-grid {
            grid-template-columns: 1fr;
            gap: 54px;
        }

        .problem-visual {
            max-width: 700px;
            width: 100%;
            margin-inline: auto;
        }

        .bento-grid {
            grid-template-columns: 1fr 1fr;
            grid-template-rows: 320px 260px 260px;
        }

        .bento-card.large {
            grid-row: 1 / 3;
        }

        .bento-card.wide {
            grid-column: 1 / 3;
        }

        .product-grid {
            grid-template-columns: 1fr;
            gap: 30px;
        }

        .product-copy {
            max-width: 760px;
            margin-inline: auto;
            text-align: center;
        }

        .product-copy .section-copy {
            margin-inline: auto;
        }

        .product-points {
            max-width: 680px;
            margin-inline: auto;
            margin-top: 34px;
            text-align: left;
        }

        .product-disclaimer {
            max-width: 720px;
            margin-inline: auto;
            margin-top: 28px;
        }

        .pricing-grid {
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
        }

        .price-card.featured {
            transform: none;
        }

        .guarantee-wrap {
            grid-template-columns: 260px 1fr;
            gap: 42px;
            padding: 42px;
        }

        .guarantee-seal {
            width: 230px;
            height: 230px;
        }

        .faq-grid {
            grid-template-columns: 1fr;
            gap: 25px;
        }

        .faq-sticky {
            position: static;
        }

        .faq-sticky .section-copy {
            max-width: 720px;
        }
    }

    /* Mobile */
    @media (max-width: 720px) {
        .container {
            width: min(calc(100% - 28px), var(--container));
        }

        .section {
            padding: 80px 0;
        }

        .section-sm {
            padding: 54px 0;
        }

        .desktop-only {
            display: none !important;
        }

        .mobile-only {
            display: block;
        }

        h1 {
            font-size: clamp(2.45rem, 12vw, 3.65rem);
        }

        h2 {
            font-size: clamp(1.85rem, 9.2vw, 2.65rem);
        }

        .section-heading {
            margin-bottom: 36px;
        }

        .section-copy {
            font-size: 1rem;
            line-height: 1.66;
        }

        .urgency-inner {
            justify-content: space-between;
            gap: 10px;
        }

        .urgency-message {
            max-width: 135px;
            font-size: .66rem;
            line-height: 1.25;
        }

        .countdown {
            gap: 3px;
        }

        .countdown-unit {
            min-width: 37px;
            padding: 5px 4px;
            border-radius: 7px;
        }

        .countdown-unit strong {
            font-size: .78rem;
        }

        .countdown-unit span {
            font-size: .47rem;
        }

        .countdown-separator {
            font-size: .7rem;
        }

        .site-header {
            height: 64px;
        }

        .brand {
            font-size: 1.04rem;
        }

        .brand-mark {
            width: 34px;
            height: 34px;
            border-radius: 10px;
        }

        .official-badge {
            display: none;
        }

        .header-meta .btn {
            display: none;
        }

        .hero {
            padding: 57px 0 82px;
        }

        .hero-grid {
            gap: 42px;
        }

        .hero-kicker {
            margin-bottom: 17px;
            font-size: .64rem;
        }

        .hero-copy {
            margin-top: 19px;
            font-size: 1rem;
        }

        .hero-actions {
            margin-top: 25px;
        }

        .hero-actions .btn {
            width: 100%;
        }

        .hero-proof {
            align-items: flex-start;
            margin-top: 23px;
            text-align: left;
            font-size: .75rem;
        }

        .avatars img {
            width: 32px;
            height: 32px;
        }

        .video-shell {
            padding: 6px;
            border-radius: 22px;
        }

        .video-frame {
            aspect-ratio: 4/5;
            border-radius: 17px;
        }

        .video-frame img {
            object-position: 58% center;
        }

        .video-topline {
            top: 12px;
            left: 12px;
            right: 12px;
        }

        .video-chip {
            padding: 7px 9px;
            font-size: .61rem;
        }

        .play-button {
            width: 67px;
            height: 67px;
        }

        .video-caption {
            left: 17px;
            right: 17px;
            bottom: 17px;
        }

        .video-caption span {
            font-size: .72rem;
        }

        .floating-note {
            padding: 10px 12px;
            font-size: .68rem;
            border-radius: 13px;
        }

        .note-one {
            top: -17px;
            right: 11px;
        }

        .note-two {
            left: -7px;
            bottom: 24px;
        }

        .trust-strip {
            margin-top: -26px;
        }

        .trust-strip-inner {
            grid-template-columns: 1fr 1fr;
            border-radius: 18px;
        }

        .trust-item {
            min-height: 82px;
            justify-content: flex-start;
            padding: 15px;
            border-bottom: 1px solid var(--line);
        }

        .trust-item:nth-child(2) {
            border-right: 0;
        }

        .trust-item:nth-child(3),
        .trust-item:nth-child(4) {
            border-bottom: 0;
        }

        .trust-item strong {
            font-size: .76rem;
        }

        .trust-item span {
            font-size: .63rem;
        }

        .problem-visual {
            min-height: 470px;
        }

        .image-stack-main {
            inset: 0 20px 42px 0;
            border-radius: 24px;
        }

        .image-stack-card {
            width: 215px;
            padding: 17px;
            border-radius: 16px;
        }

        .image-stack-card p {
            font-size: .82rem;
        }

        .cycle-list {
            margin-top: 28px;
        }

        .cycle-step {
            grid-template-columns: 42px 1fr;
            gap: 13px;
            padding-bottom: 22px;
        }

        .cycle-number {
            width: 42px;
            height: 42px;
            border-radius: 13px;
        }

        .cycle-step:not(:last-child)::after {
            top: 42px;
            left: 20px;
        }

        .cycle-step p {
            font-size: .87rem;
        }

        .reframe-box {
            padding: 18px;
            font-size: .9rem;
        }

        .bento-grid {
            display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            gap: 14px;
        }

        .bento-card,
        .bento-card.large,
        .bento-card.wide {
            grid-column: auto;
            grid-row: auto;
            min-height: 245px;
            padding: 24px;
            border-radius: 20px;
        }

        .bento-card.image-card {
            min-height: 360px;
        }

        .bento-card.image-card .bento-content {
            left: 24px;
            right: 24px;
            bottom: 23px;
        }

        .bento-quote {
            min-height: 285px;
        }

        .product-stage {
            min-height: 440px;
        }

        .product-orbit {
            width: 350px;
            height: 350px;
        }

        .product-image {
            max-height: 350px;
        }

        .product-fact {
            max-width: 155px;
            padding: 11px 12px;
            font-size: .66rem;
        }

        .product-fact.one {
            top: 50px;
            left: 0;
        }

        .product-fact.two {
            right: 0;
            bottom: 58px;
        }

        .product-point {
            grid-template-columns: 38px 1fr;
            gap: 12px;
        }

        .product-point-icon {
            width: 38px;
            height: 38px;
        }

        .product-point p {
            font-size: .86rem;
        }

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

        .routine-card {
            min-height: auto;
            padding: 24px;
        }

        .routine-number {
            margin-bottom: 30px;
        }

        .routine-note {
            align-items: flex-start;
            flex-direction: column;
            padding: 22px;
        }

        .offer-deadline {
            align-items: flex-start;
            flex-direction: column;
            padding: 15px 17px;
            font-size: .82rem;
        }

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

        .price-card {
            padding: 25px;
            border-radius: 22px;
        }

        .price-card.featured {
            order: -1;
        }

        .price-card-top {
            min-height: auto;
        }

        .kit-image-wrap {
            height: 210px;
        }

        .kit-image {
            max-height: 195px;
        }

        .price-installments strong {
            font-size: 2.5rem;
        }

        .scarcity-panel {
            padding: 21px;
        }

        .scarcity-head {
            flex-direction: column;
            gap: 12px;
        }

        .scarcity-foot {
            align-items: flex-start;
            flex-direction: column;
            gap: 4px;
        }

        .guarantee-wrap {
            grid-template-columns: 1fr;
            gap: 38px;
            padding: 35px 24px;
            border-radius: 25px;
            text-align: center;
        }

        .guarantee-seal {
            width: 210px;
            height: 210px;
        }

        .seal-content strong {
            font-size: 3.3rem;
        }

        .guarantee-copy p {
            font-size: .94rem;
        }

        .guarantee-copy ul {
            text-align: left;
        }

        .guarantee-copy .btn {
            width: 100%;
        }

        .faq-question {
            padding: 21px 2px;
            font-size: .94rem;
        }

        .faq-answer-inner {
            padding-right: 15px;
            font-size: .88rem;
        }

        .final-cta {
            padding-bottom: 78px;
        }

        .final-card {
            padding: 50px 22px;
            border-radius: 25px;
        }

        .final-card p {
            font-size: .94rem;
        }

        .final-card .btn {
            width: 100%;
        }

        .footer-top {
            align-items: flex-start;
            flex-direction: column;
        }

        .footer-copy {
            grid-template-columns: 1fr;
            gap: 20px;
        }

        .site-footer {
            padding-bottom: 125px;
        }

        .modal-dialog {
            grid-template-columns: 1fr;
            max-height: calc(100vh - 34px);
            overflow-y: auto;
        }

        .modal-image {
            display: none;
        }

        .modal-content {
            padding: 34px 24px 27px;
        }

        .modal-content h2 {
            font-size: 1.7rem;
        }

        .toast {
            right: 14px;
            left: 14px;
            bottom: 88px;
            max-width: none;
        }

        .mobile-sticky {
            display: block;
        }
    }

    /* HERO 2026 — hierarquia clara, VSL em destaque e menos distração */
    :root {
        --hero-bg: #180a24;
        --hero-bg-deep: #0d0613;
        --hero-purple: #8f46d7;
        --hero-purple-light: #d9b7f5;
        --hero-white: #ffffff;
        --hero-text-soft: rgba(255, 255, 255, 0.76);
        --hero-line: rgba(255, 255, 255, 0.14);
    }

    html {
        scroll-behavior: smooth;
    }

    body {
        margin: 0;
        background: #fbf9fd;
    }

    /* BARRA DE ESCASSEZ — premium, objetiva e integrada ao hero */
    .urgency-bar {
        position: relative;
        z-index: 50;
        overflow: hidden;
        isolation: isolate;
        color: #fff;
        background:
            radial-gradient(circle at 12% 50%, rgba(181, 111, 231, 0.24), transparent 30%),
            radial-gradient(circle at 88% 0%, rgba(143, 70, 215, 0.18), transparent 34%),
            linear-gradient(105deg, #120719 0%, #24102f 48%, #16091f 100%);
        border-bottom: 1px solid rgba(226, 195, 250, 0.14);
        box-shadow: 0 10px 30px rgba(7, 3, 10, 0.22);
    }

    .urgency-bar::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.13;
        background-image:
            linear-gradient(rgba(255, 255, 255, 0.09) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.09) 1px, transparent 1px);
        background-size: 34px 34px;
        -webkit-mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
        mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
    }

    .urgency-bar::after {
        content: "";
        position: absolute;
        top: -90%;
        left: -20%;
        width: 18%;
        height: 280%;
        pointer-events: none;
        background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.10), transparent);
        transform: rotate(18deg);
        animation: urgency-shine 8s ease-in-out infinite;
    }

    .urgency-inner {
        min-height: 72px;
        display: grid;
        grid-template-columns: auto minmax(240px, 1fr) auto;
        align-items: center;
        gap: clamp(14px, 2.2vw, 28px);
        padding-block: 10px;
    }

    .urgency-status {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        white-space: nowrap;
    }

    .urgency-badge {
        min-height: 30px;
        display: inline-flex;
        align-items: center;
        padding: 0 11px;
        border: 1px solid rgba(226, 195, 250, 0.22);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        color: #ead7fa;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
        font: 800 0.64rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.105em;
        text-transform: uppercase;
    }

    .urgency-bar .live-dot {
        position: relative;
        width: 8px;
        height: 8px;
        flex: 0 0 auto;
        border-radius: 999px;
        background: #b56fe8;
        box-shadow: 0 0 0 5px rgba(181, 111, 231, 0.15), 0 0 18px rgba(181, 111, 231, 0.55);
    }

    .urgency-bar .live-dot::after {
        content: "";
        position: absolute;
        inset: -4px;
        border: 1px solid rgba(181, 111, 231, 0.5);
        border-radius: inherit;
        animation: urgency-pulse 2s ease-out infinite;
    }

    .urgency-message {
        min-width: 0;
        display: grid;
        gap: 4px;
    }

    .urgency-message strong {
        color: #fff;
        font: 800 clamp(0.82rem, 1.25vw, 0.94rem)/1.18 "Manrope", sans-serif;
        letter-spacing: -0.012em;
    }

    .urgency-message>span {
        color: rgba(255, 255, 255, 0.62);
        font: 500 0.70rem/1.2 "DM Sans", sans-serif;
    }

    .urgency-message [data-deadline-label] {
        color: #dcb9f7;
        font-weight: 800;
    }

    .countdown {
        display: flex;
        align-items: center;
        gap: 5px;
        padding: 5px;
        border: 1px solid rgba(255, 255, 255, 0.11);
        border-radius: 13px;
        background: rgba(8, 3, 12, 0.36);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
        backdrop-filter: blur(10px);
    }

    .countdown-unit {
        min-width: 45px;
        min-height: 46px;
        display: grid;
        align-content: center;
        justify-items: center;
        padding: 4px 6px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 9px;
        background: rgba(255, 255, 255, 0.065);
    }

    .countdown-unit strong {
        color: #fff;
        font: 800 1rem/1 "Manrope", sans-serif;
        font-variant-numeric: tabular-nums;
        letter-spacing: -0.02em;
    }

    .countdown-unit span {
        margin-top: 4px;
        color: rgba(255, 255, 255, 0.48);
        font: 700 0.51rem/1 "DM Sans", sans-serif;
        text-transform: uppercase;
        letter-spacing: 0.09em;
    }

    .countdown-separator {
        color: rgba(226, 195, 250, 0.42);
        font: 800 0.82rem/1 "Manrope", sans-serif;
        transform: translateY(-5px);
    }

    @keyframes urgency-pulse {
        0% {
            opacity: 0.78;
            transform: scale(0.75);
        }

        70%,
        100% {
            opacity: 0;
            transform: scale(1.55);
        }
    }

    @keyframes urgency-shine {

        0%,
        72% {
            left: -22%;
            opacity: 0;
        }

        78% {
            opacity: 1;
        }

        92%,
        100% {
            left: 118%;
            opacity: 0;
        }
    }

    #inicio.hero {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        padding: 0 !important;
        background:
            radial-gradient(circle at 50% -12%, rgba(151, 75, 218, 0.38), transparent 36%),
            radial-gradient(circle at 8% 62%, rgba(115, 45, 176, 0.20), transparent 30%),
            radial-gradient(circle at 93% 78%, rgba(76, 29, 115, 0.25), transparent 28%),
            linear-gradient(180deg, var(--hero-bg) 0%, var(--hero-bg-deep) 100%) !important;
    }

    #inicio.hero::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.18;
        background-image:
            linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
        background-size: 56px 56px;
        -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9), transparent 72%);
        mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9), transparent 72%);
    }

    #inicio.hero::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -180px;
        z-index: -1;
        width: min(900px, 92vw);
        height: 360px;
        transform: translateX(-50%);
        border-radius: 50%;
        background: rgba(133, 59, 196, 0.16);
        filter: blur(80px);
        pointer-events: none;
    }

    #inicio .hero-grid {
        display: block !important;
        width: min(1180px, calc(100% - 40px));
        margin: 0 auto;
        padding: clamp(46px, 6vw, 82px) 0 clamp(54px, 7vw, 88px) !important;
    }

    #inicio .hero-content {
        width: 100%;
        max-width: 1060px;
        margin: 0 auto;
        text-align: center;
    }

    #inicio .hero-kicker {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin: 0 auto 18px;
        padding: 9px 14px;
        border: 1px solid rgba(217, 183, 245, 0.24);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.06);
        color: #ead7fa;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07);
        font: 700 0.73rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    #inicio .hero-kicker::before {
        content: "";
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #c999f0;
        box-shadow: 0 0 14px rgba(201, 153, 240, 0.85);
    }

    #inicio h1 {
        max-width: 940px;
        margin: 0 auto;
        color: var(--hero-white) !important;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2.25rem, 5.1vw, 4.65rem) !important;
        font-weight: 800;
        line-height: 1.01 !important;
        letter-spacing: -0.055em;
        text-wrap: balance;
    }

    #inicio h1 .accent {
        color: var(--hero-purple-light) !important;
        background: none !important;
        -webkit-text-fill-color: currentColor !important;
    }

    #inicio .hero-copy {
        max-width: 760px;
        margin: 22px auto 32px !important;
        color: var(--hero-text-soft) !important;
        font: 500 clamp(1.02rem, 1.8vw, 1.23rem)/1.55 "DM Sans", sans-serif !important;
        letter-spacing: -0.012em;
        text-wrap: balance;
    }

    #inicio .hero-visual {
        position: relative;
        width: 100%;
        max-width: 980px;
        margin: 0 auto;
    }

    #inicio .video-shell {
        position: relative;
        padding: 9px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 28px;
        background: rgba(255, 255, 255, 0.08);
        box-shadow:
            0 34px 90px rgba(0, 0, 0, 0.42),
            0 0 0 1px rgba(116, 53, 168, 0.16),
            inset 0 1px 0 rgba(255, 255, 255, 0.10);
        backdrop-filter: blur(10px);
    }

    #inicio .video-shell::before {
        content: "";
        position: absolute;
        inset: -1px;
        z-index: -1;
        border-radius: inherit;
        background: linear-gradient(135deg, rgba(226, 195, 250, 0.34), transparent 30%, transparent 68%, rgba(130, 60, 188, 0.30));
    }

    #inicio .video-frame {
        position: relative;
        overflow: hidden;
        aspect-ratio: 16 / 9;
        border-radius: 20px;
        background: #09050d;
        isolation: isolate;
    }

    #inicio .video-frame::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        background:
            linear-gradient(180deg, rgba(7, 3, 10, 0.28), transparent 35%),
            linear-gradient(0deg, rgba(7, 3, 10, 0.88), transparent 48%);
    }

    #inicio .video-frame>img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        object-position: center 40%;
        filter: saturate(0.82) contrast(1.04) brightness(0.72);
        transform: scale(1.01);
    }

    #inicio .video-topline {
        position: absolute;
        top: 18px;
        left: 18px;
        right: 18px;
        z-index: 3;
        display: flex;
        justify-content: space-between;
        gap: 10px;
    }

    #inicio .video-chip {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        min-height: 32px;
        padding: 0 11px;
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 999px;
        background: rgba(12, 6, 17, 0.68);
        color: rgba(255, 255, 255, 0.90);
        backdrop-filter: blur(12px);
        font: 600 0.73rem/1 "DM Sans", sans-serif;
    }

    #inicio .play-button {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 4;
        width: clamp(72px, 8vw, 92px);
        height: clamp(72px, 8vw, 92px);
        display: grid;
        place-items: center;
        padding: 0;
        transform: translate(-50%, -50%);
        border: 0;
        border-radius: 50%;
        background: #fff;
        color: #5e218d;
        cursor: pointer;
        box-shadow:
            0 16px 45px rgba(0, 0, 0, 0.34),
            0 0 0 11px rgba(255, 255, 255, 0.11);
        transition: transform 180ms ease, box-shadow 180ms ease;
    }

    #inicio .play-button::after {
        content: "";
        position: absolute;
        inset: -12px;
        border: 1px solid rgba(255, 255, 255, 0.25);
        border-radius: inherit;
    }

    #inicio .play-button:hover {
        transform: translate(-50%, -50%) scale(1.055);
        box-shadow:
            0 20px 55px rgba(0, 0, 0, 0.42),
            0 0 0 13px rgba(255, 255, 255, 0.13);
    }

    #inicio .play-button:focus-visible {
        outline: 3px solid #d9b7f5;
        outline-offset: 5px;
    }

    #inicio .video-caption {
        position: absolute;
        left: clamp(18px, 3vw, 34px);
        right: clamp(18px, 3vw, 34px);
        bottom: clamp(17px, 3vw, 30px);
        z-index: 3;
        display: grid;
        gap: 5px;
        max-width: 660px;
        text-align: left;
    }

    #inicio .video-caption strong {
        color: #fff;
        font: 700 clamp(1rem, 2vw, 1.35rem)/1.25 "Manrope", sans-serif;
        letter-spacing: -0.02em;
    }

    #inicio .video-caption span {
        color: rgba(255, 255, 255, 0.68);
        font: 500 clamp(0.78rem, 1.3vw, 0.93rem)/1.35 "DM Sans", sans-serif;
    }

    #inicio .floating-note {
        display: none !important;
    }

    #inicio .hero-actions {
        display: flex;
        justify-content: center;
        margin: 25px auto 0;
    }

    #inicio .hero-actions .btn {
        min-width: min(100%, 360px);
        min-height: 58px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 0 25px;
        border: 1px solid rgba(255, 255, 255, 0.20);
        border-radius: 14px;
        box-shadow: 0 15px 36px rgba(0, 0, 0, 0.26);
        font: 800 0.98rem/1 "DM Sans", sans-serif;
        text-decoration: none;
        transition: transform 180ms ease, box-shadow 180ms ease;
    }

    #inicio .hero-actions .btn:not(.site-button--hero) {
        background: #fff !important;
        color: #3e145d !important;
    }

    #inicio .hero-actions .btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34);
    }

    #inicio .hero-actions .btn:focus-visible {
        outline: 3px solid #d9b7f5;
        outline-offset: 4px;
    }

    #inicio .hero-proof {
        display: flex !important;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px 18px;
        margin: 18px auto 0 !important;
        color: rgba(255, 255, 255, 0.67) !important;
        font: 600 0.78rem/1.2 "DM Sans", sans-serif;
    }

    #inicio .hero-proof-item {
        display: inline-flex;
        align-items: center;
        gap: 7px;
    }

    #inicio .hero-proof-item svg {
        color: #cda4ed;
        flex: 0 0 auto;
    }

    #inicio .hero-proof-divider {
        width: 3px;
        height: 3px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.30);
    }

    /* HERO PRODUTO — primeira dobra focada no Mounjax e no próximo passo */
    #inicio.hero-product-v2 {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        padding: 0 !important;
        background:
            radial-gradient(circle at 72% 30%, rgba(151, 75, 218, 0.24), transparent 34%),
            radial-gradient(circle at 15% 85%, rgba(115, 45, 176, 0.18), transparent 30%),
            linear-gradient(135deg, #180a24 0%, #0d0613 100%) !important;
    }

    #inicio.hero-product-v2::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.10;
        background-image:
            linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
        background-size: 56px 56px;
        -webkit-mask-image: linear-gradient(to bottom, #000, transparent 80%);
        mask-image: linear-gradient(to bottom, #000, transparent 80%);
    }

    #inicio .hero-product-grid {
        width: min(1180px, calc(100% - 40px));
        min-height: min(720px, calc(100vh - 72px));
        display: grid;
        grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr);
        align-items: center;
        gap: clamp(30px, 6vw, 90px);
        margin: 0 auto;
        padding: clamp(54px, 7vw, 88px) 0 !important;
    }

    #inicio .hero-product-copy {
        max-width: 590px;
        text-align: left;
    }

    #inicio .hero-product-kicker {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 18px;
        padding: 8px 12px;
        border: 1px solid rgba(217, 183, 245, 0.24);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.06);
        color: #ead7fa;
        font: 800 0.68rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.10em;
        text-transform: uppercase;
    }

    #inicio .hero-product-kicker::before {
        content: "";
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #c999f0;
        box-shadow: 0 0 14px rgba(201, 153, 240, 0.85);
    }

    #inicio .hero-product-copy h1 {
        max-width: 620px;
        margin: 0;
        color: #fff !important;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2.45rem, 5vw, 4.55rem) !important;
        font-weight: 800;
        line-height: 1.02 !important;
        letter-spacing: -0.055em;
    }

    #inicio .hero-product-copy h1 .accent {
        color: #d9b7f5 !important;
        background: none !important;
        -webkit-text-fill-color: currentColor !important;
    }

    #inicio .hero-product-description {
        max-width: 550px;
        margin: 21px 0 0 !important;
        color: rgba(255, 255, 255, 0.72) !important;
        font: 500 1.08rem/1.55 "DM Sans", sans-serif !important;
    }

    #inicio .hero-product-benefits {
        display: grid;
        gap: 12px;
        margin: 25px 0 0;
        padding: 0;
        list-style: none;
    }

    #inicio .hero-product-benefits li {
        display: flex;
        align-items: center;
        gap: 10px;
        color: rgba(255, 255, 255, 0.91);
        font: 700 0.93rem/1.3 "DM Sans", sans-serif;
    }

    #inicio .hero-product-benefits li span {
        width: 21px;
        height: 21px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        border-radius: 50%;
        background: rgba(214, 168, 244, 0.15);
        color: #d9b7f5;
        font-size: 0.68rem;
        font-weight: 900;
    }

    #inicio .hero-product-cta-wrap {
        margin-top: 29px;
    }

    #inicio .hero-product-cta {
        width: min(100%, 390px);
        min-height: 60px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 11px;
        padding: 0 22px;
        border: 0;
        border-radius: 13px;
        background: linear-gradient(135deg, #8a3fc0 0%, #5e218d 100%);
        color: #fff !important;
        box-shadow: 0 18px 40px rgba(94, 33, 141, 0.30);
        font: 900 0.91rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.015em;
        text-decoration: none;
        transition: transform 180ms ease, box-shadow 180ms ease;
    }

    #inicio .hero-product-cta:hover {
        transform: translateY(-2px);
        box-shadow: 0 22px 48px rgba(94, 33, 141, 0.38);
    }

    #inicio .hero-product-microcopy {
        margin: 9px 0 0 !important;
        color: rgba(255, 255, 255, 0.46) !important;
        font: 500 0.70rem/1.3 "DM Sans", sans-serif !important;
    }

    #inicio .hero-product-trust {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        margin-top: 19px;
        color: rgba(255, 255, 255, 0.58);
        font: 700 0.74rem/1.3 "DM Sans", sans-serif;
    }

    #inicio .hero-product-visual {
        position: relative;
        min-height: 520px;
        display: grid;
        place-items: center;
    }

    #inicio .hero-product-badge {
        position: absolute;
        top: 18px;
        right: 7%;
        z-index: 3;
        padding: 9px 13px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.09);
        color: #fff;
        backdrop-filter: blur(12px);
        font: 900 0.67rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.08em;
    }

    #inicio .hero-product-glow {
        position: absolute;
        width: min(560px, 92%);
        height: 430px;
        border-radius: 50%;
        background: rgba(143, 70, 215, 0.22);
        filter: blur(70px);
    }

    #inicio .hero-product-image-wrap {
        position: relative;
        z-index: 2;
        width: min(100%, 520px);
        display: grid;
        place-items: center;
    }

    #inicio .hero-product-image-wrap img {
        width: min(100%, 510px);
        max-height: 455px;
        display: block;
        object-fit: contain;
        filter: drop-shadow(0 35px 32px rgba(0, 0, 0, 0.40));
    }

    #inicio .hero-product-kit {
        position: absolute;
        right: 2%;
        bottom: 32px;
        z-index: 4;
        display: grid;
        gap: 4px;
        max-width: 270px;
        padding: 14px 17px;
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 14px;
        background: rgba(14, 7, 20, 0.72);
        color: #fff;
        backdrop-filter: blur(14px);
        box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
    }

    #inicio .hero-product-kit strong {
        font: 800 0.94rem/1.2 "Manrope", sans-serif;
    }

    #inicio .hero-product-kit span {
        color: rgba(255, 255, 255, 0.62);
        font: 600 0.70rem/1.3 "DM Sans", sans-serif;
    }

    /* Kit da primeira seção — somente a imagem dos frascos flutua. */
    #inicio .hero-product-image-wrap img {
        animation: heroKitFloat 3.8s ease-in-out infinite;
        will-change: transform;
    }

    @keyframes heroKitFloat {

        0%,
        100% {
            transform: translate3d(0, 0, 0);
        }

        50% {
            transform: translate3d(0, -7px, 0);
        }
    }


    /* CTA PRINCIPAL DA PRIMEIRA DOBRA — pulso premium */
    #inicio .hero-product-cta--pulse {
        position: relative;
        isolation: isolate;
        animation: heroCtaPulse 2.2s ease-in-out infinite;
        will-change: transform, box-shadow;
    }

    #inicio .hero-product-cta--pulse::after {
        content: "";
        position: absolute;
        inset: -5px;
        z-index: -1;
        border-radius: inherit;
        border: 1px solid rgba(201, 153, 240, 0.30);
        opacity: 0;
        transform: scale(0.94);
        animation: heroCtaPulseRing 2.2s ease-out infinite;
        pointer-events: none;
    }

    #inicio .hero-product-cta--pulse:hover {
        animation-play-state: paused;
        transform: translateY(-2px);
    }

    #inicio .hero-product-cta--pulse:hover::after {
        animation-play-state: paused;
        opacity: 0;
    }

    @keyframes heroCtaPulse {

        0%,
        100% {
            transform: translateY(0) scale(1);
            box-shadow: 0 18px 40px rgba(94, 33, 141, 0.30);
        }

        50% {
            transform: translateY(-1px) scale(1.012);
            box-shadow:
                0 20px 44px rgba(94, 33, 141, 0.38),
                0 0 0 5px rgba(138, 63, 192, 0.07);
        }
    }

    @keyframes heroCtaPulseRing {
        0% {
            opacity: 0.48;
            transform: scale(0.94);
        }

        70%,
        100% {
            opacity: 0;
            transform: scale(1.08);
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #inicio .hero-product-cta--pulse,
        #inicio .hero-product-cta--pulse::after,
        #inicio .hero-product-kit {
            animation: none !important;
        }
    }

    @media (max-width: 768px) {
        .urgency-inner {
            min-height: auto;
            grid-template-columns: 1fr auto;
            gap: 8px 12px;
            padding-block: 10px;
        }

        .urgency-status {
            grid-column: 1;
            grid-row: 1;
        }

        .urgency-badge {
            min-height: 27px;
            padding-inline: 9px;
            font-size: 0.58rem;
        }

        .urgency-message {
            grid-column: 1;
            grid-row: 2;
            gap: 2px;
        }

        .urgency-message strong {
            font-size: 0.75rem;
        }

        .urgency-message>span {
            font-size: 0.61rem;
        }

        .countdown {
            grid-column: 2;
            grid-row: 1 / span 2;
            gap: 3px;
            padding: 4px;
        }

        .countdown-unit {
            min-width: 38px;
            min-height: 42px;
            padding-inline: 4px;
        }

        .countdown-unit strong {
            font-size: 0.88rem;
        }

        .countdown-unit span {
            font-size: 0.45rem;
        }

        .countdown-separator {
            font-size: 0.68rem;
        }

        #inicio.hero::before {
            background-size: 36px 36px;
            opacity: 0.12;
        }

        #inicio .hero-product-grid {
            width: min(100% - 28px, 1180px);
            min-height: auto;
            grid-template-columns: 1fr;
            gap: 12px;
            padding: 42px 0 54px !important;
        }

        #inicio .hero-product-copy {
            max-width: none;
            text-align: center;
        }

        #inicio .hero-product-kicker {
            margin-bottom: 14px;
            font-size: 0.61rem;
        }

        #inicio .hero-product-copy h1 {
            font-size: clamp(2.18rem, 10vw, 3.25rem) !important;
            line-height: 1.04 !important;
        }

        #inicio .hero-product-description {
            margin: 16px auto 0 !important;
            font-size: 0.96rem !important;
        }

        #inicio .hero-product-benefits {
            width: fit-content;
            max-width: 100%;
            margin: 21px auto 0;
            text-align: left;
        }

        #inicio .hero-product-benefits li {
            font-size: 0.82rem;
        }

        #inicio .hero-product-cta-wrap {
            margin-top: 23px;
        }

        #inicio .hero-product-cta {
            width: 100%;
            min-height: 56px;
            font-size: 0.84rem;
        }

        #inicio .hero-product-trust {
            justify-content: center;
            font-size: 0.67rem;
        }

        #inicio .hero-product-visual {
            min-height: 340px;
            margin-top: -3px;
        }

        #inicio .hero-product-badge {
            top: 0;
            right: 8%;
            padding: 8px 10px;
            font-size: 0.58rem;
        }

        #inicio .hero-product-image-wrap img {
            width: min(100%, 390px);
            max-height: 330px;
        }

        #inicio .hero-product-kit {
            right: 50%;
            bottom: 3px;
            transform: translateX(50%);
            width: max-content;
            max-width: calc(100% - 30px);
            padding: 11px 14px;
            text-align: center;
        }

        #inicio .hero-grid {
            width: min(100% - 28px, 1180px);
            padding: 38px 0 52px !important;
        }

        #inicio .hero-kicker {
            margin-bottom: 15px;
            padding: 8px 11px;
            font-size: 0.64rem;
            letter-spacing: 0.09em;
        }

        #inicio h1 {
            font-size: clamp(2.05rem, 10.5vw, 3.15rem) !important;
            line-height: 1.04 !important;
            letter-spacing: -0.047em;
        }

        #inicio .hero-copy {
            margin: 17px auto 25px !important;
            font-size: 1rem !important;
            line-height: 1.48 !important;
        }

        #inicio .video-shell {
            padding: 6px;
            border-radius: 19px;
        }

        #inicio .video-frame {
            border-radius: 14px;
        }

        #inicio .video-topline {
            top: 10px;
            left: 10px;
            right: 10px;
        }

        #inicio .video-chip {
            min-height: 27px;
            padding-inline: 9px;
            font-size: 0.63rem;
        }

        #inicio .video-chip:last-child {
            display: none;
        }

        #inicio .play-button {
            width: 68px;
            height: 68px;
        }

        #inicio .play-button svg {
            width: 24px;
            height: 24px;
        }

        #inicio .video-caption {
            left: 14px;
            right: 14px;
            bottom: 13px;
            gap: 2px;
        }

        #inicio .video-caption strong {
            font-size: 0.91rem;
        }

        #inicio .video-caption span {
            display: none;
        }

        #inicio .hero-actions {
            margin-top: 18px;
        }

        #inicio .hero-actions .btn {
            width: 100%;
            min-height: 56px;
            padding-inline: 18px;
            border-radius: 12px;
            font-size: 0.93rem;
        }

        #inicio .hero-proof {
            gap: 9px 12px;
            margin-top: 15px !important;
            font-size: 0.69rem;
        }

        #inicio .hero-proof-divider {
            display: none;
        }
    }

    @media (max-width: 520px) {
        .urgency-inner {
            grid-template-columns: 1fr;
            justify-items: center;
            gap: 7px;
            padding-block: 9px 10px;
            text-align: center;
        }

        .urgency-status,
        .urgency-message,
        .countdown {
            grid-column: 1;
            grid-row: auto;
        }

        .urgency-message>span {
            display: none;
        }

        .countdown-unit {
            min-width: 42px;
        }
    }

    @media (max-width: 390px) {
        #inicio .hero-grid {
            width: min(100% - 22px, 1180px);
        }

        #inicio h1 {
            font-size: 2rem !important;
        }

        #inicio .hero-proof {
            display: grid !important;
            justify-items: center;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        html {
            scroll-behavior: auto;
        }

        #inicio .play-button,
        #inicio .hero-actions .btn {
            transition: none !important;
        }

        .urgency-bar::after,
        .urgency-bar .live-dot::after {
            animation: none !important;
        }
    }

    /* OFERTA 2026 — decisão simples, comparação transparente e foco mobile */
    #oferta.offer-section {
        position: relative;
        overflow: hidden;
        padding: clamp(72px, 8vw, 112px) 0 !important;
        background:
            radial-gradient(circle at 50% 0%, rgba(126, 55, 184, 0.12), transparent 34%),
            linear-gradient(180deg, #fbf9fd 0%, #fbf9fd 100%);
    }

    #oferta.offer-section::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        opacity: 0.45;
        background-image: radial-gradient(rgba(79, 30, 113, 0.10) 0.7px, transparent 0.7px);
        background-size: 24px 24px;
        -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 38%);
        mask-image: linear-gradient(to bottom, #000 0%, transparent 38%);
    }

    #oferta>.container {
        position: relative;
        z-index: 1;
        width: min(1180px, calc(100% - 40px));
        margin-inline: auto;
    }

    #oferta .offer-heading {
        max-width: 780px;
        margin: 0 auto;
        text-align: center;
    }

    #oferta .offer-heading .eyebrow {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 30px;
        margin-bottom: 14px;
        padding: 0 12px;
        border: 1px solid rgba(94, 33, 141, 0.14);
        border-radius: 999px;
        background: rgba(94, 33, 141, 0.06);
        color: #6a2697;
        font: 800 0.69rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

    #oferta .offer-heading h2 {
        margin: 0;
        color: #211329;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2rem, 4.2vw, 3.55rem);
        font-weight: 800;
        line-height: 1.06;
        letter-spacing: -0.045em;
        text-wrap: balance;
    }

    #oferta .offer-heading p {
        max-width: 670px;
        margin: 18px auto 0;
        color: #665a6d;
        font: 500 clamp(0.98rem, 1.7vw, 1.12rem)/1.58 "DM Sans", sans-serif;
        text-wrap: balance;
    }

    #oferta .offer-trust-row {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px 20px;
        margin: 24px auto 0;
        color: #4f4355;
        font: 700 0.78rem/1.2 "DM Sans", sans-serif;
    }

    #oferta .offer-trust-row span {
        display: inline-flex;
        align-items: center;
        gap: 7px;
    }

    #oferta .offer-trust-row svg {
        color: #7c35aa;
        flex: 0 0 auto;
    }

    #oferta .offer-deadline-v2 {
        max-width: 940px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        margin: 30px auto 22px;
        padding: 14px 16px 14px 18px;
        border: 1px solid rgba(90, 35, 128, 0.14);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.82);
        box-shadow: 0 14px 38px rgba(53, 21, 72, 0.07);
        backdrop-filter: blur(10px);
    }

    #oferta .offer-deadline-copy {
        display: flex;
        align-items: center;
        gap: 11px;
        color: #54465b;
        font: 500 0.84rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .offer-deadline-copy strong {
        display: block;
        margin-bottom: 2px;
        color: #2b1734;
        font-weight: 800;
    }

    #oferta .offer-deadline-v2 .mini-timer {
        flex: 0 0 auto;
        min-width: 176px;
        padding: 10px 13px;
        border-radius: 11px;
        background: #25102f;
        color: #fff;
        text-align: center;
        font: 800 0.83rem/1 "Manrope", sans-serif;
        font-variant-numeric: tabular-nums;
        letter-spacing: 0.04em;
    }

    #oferta .featured-offer {
        position: relative;
        display: grid;
        grid-template-columns: minmax(300px, 0.9fr) minmax(420px, 1.1fr);
        min-height: 540px;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 28px;
        background:
            radial-gradient(circle at 20% 20%, rgba(181, 111, 231, 0.26), transparent 35%),
            linear-gradient(135deg, #25102f 0%, #13091a 100%);
        box-shadow: 0 34px 90px rgba(39, 14, 54, 0.22);
        isolation: isolate;
    }

    #oferta .featured-offer::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.16;
        background-image:
            linear-gradient(rgba(255, 255, 255, 0.10) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.10) 1px, transparent 1px);
        background-size: 44px 44px;
        -webkit-mask-image: linear-gradient(90deg, #000, transparent 70%);
        mask-image: linear-gradient(90deg, #000, transparent 70%);
    }

    #oferta .featured-badge {
        position: absolute;
        top: 18px;
        left: 18px;
        z-index: 4;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        min-height: 34px;
        padding: 0 13px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.10);
        color: #fff;
        backdrop-filter: blur(12px);
        font: 800 0.70rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    #oferta .featured-badge::before {
        content: "";
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #d6a8f4;
        box-shadow: 0 0 14px rgba(214, 168, 244, 0.9);
    }

    #oferta .featured-media {
        position: relative;
        display: grid;
        place-items: center;
        min-height: 100%;
        padding: 72px 34px 38px;
    }

    #oferta .featured-media::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 55px;
        width: 70%;
        height: 70px;
        transform: translateX(-50%);
        border-radius: 50%;
        background: rgba(162, 91, 212, 0.28);
        filter: blur(32px);
        z-index: -1;
    }

    #oferta .featured-media img {
        width: min(100%, 390px);
        max-height: 360px;
        display: block;
        object-fit: contain;
        filter: drop-shadow(0 28px 30px rgba(0, 0, 0, 0.34));
        transform: translateY(4px);
    }

    #oferta .featured-content {
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: clamp(34px, 5vw, 62px);
        background: rgba(255, 255, 255, 0.97);
    }

    #oferta .offer-overline {
        margin-bottom: 10px;
        color: #7c35aa;
        font: 800 0.72rem/1.2 "DM Sans", sans-serif;
        letter-spacing: 0.10em;
        text-transform: uppercase;
    }

    #oferta .featured-content h3 {
        margin: 0;
        color: #221329;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2rem, 3.6vw, 3rem);
        line-height: 1.05;
        letter-spacing: -0.04em;
    }

    #oferta .featured-description {
        max-width: 560px;
        margin: 13px 0 0;
        color: #665a6d;
        font: 500 0.98rem/1.55 "DM Sans", sans-serif;
    }

    #oferta .bundle-pill {
        width: fit-content;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin: 18px 0 0;
        padding: 8px 11px;
        border-radius: 9px;
        background: #f2e8f8;
        color: #5e218d;
        font: 800 0.76rem/1 "DM Sans", sans-serif;
    }

    #oferta .price-anchor {
        margin: 22px 0 3px;
        color: #7a6e80;
        font: 600 0.82rem/1.3 "DM Sans", sans-serif;
    }

    #oferta .price-anchor s {
        text-decoration-thickness: 1.5px;
    }

    #oferta .featured-price {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        margin: 0;
        color: #211329;
    }

    #oferta .featured-price .installment {
        padding-top: 8px;
        color: #6d6073;
        font: 800 0.80rem/1 "DM Sans", sans-serif;
    }

    #oferta .featured-price strong {
        font: 800 clamp(3.1rem, 6vw, 4.55rem)/0.88 "Manrope", sans-serif;
        letter-spacing: -0.065em;
    }

    #oferta .featured-price sup {
        margin-top: 4px;
        color: #211329;
        font: 800 1.3rem/1 "Manrope", sans-serif;
    }

    #oferta .price-details {
        display: flex;
        flex-wrap: wrap;
        gap: 6px 14px;
        margin-top: 11px;
        color: #675a6d;
        font: 600 0.78rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .price-details strong {
        color: #392342;
    }

    #oferta .pix-highlight {
        margin-top: 16px;
        padding: 13px 14px;
        border: 1px solid rgba(99, 39, 139, 0.12);
        border-radius: 12px;
        background: #fbf8fd;
        color: #5e5264;
        font: 600 0.86rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .pix-highlight strong {
        color: #5e218d;
        font-size: 1.05rem;
    }

    #oferta .featured-benefits,
    #oferta .alternative-benefits {
        display: grid;
        gap: 9px;
        margin: 18px 0 0;
        padding: 0;
        list-style: none;
    }

    #oferta .featured-benefits li,
    #oferta .alternative-benefits li {
        display: flex;
        align-items: flex-start;
        gap: 9px;
        color: #4e4253;
        font: 600 0.84rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .featured-benefits li::before,
    #oferta .alternative-benefits li::before {
        content: "✓";
        width: 19px;
        height: 19px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        border-radius: 50%;
        background: #eee1f5;
        color: #64258f;
        font-size: 0.68rem;
        font-weight: 900;
    }

    #oferta .offer-cta {
        width: 100%;
        min-height: 58px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        margin-top: 22px;
        padding: 0 22px;
        border: 0;
        border-radius: 13px;
        background: linear-gradient(135deg, #7e35ad 0%, #5e218d 100%);
        color: #fff !important;
        box-shadow: 0 16px 34px rgba(94, 33, 141, 0.22);
        font: 800 0.96rem/1 "DM Sans", sans-serif;
        text-decoration: none;
        transition: transform 180ms ease, box-shadow 180ms ease;
    }

    #oferta .offer-cta:hover {
        transform: translateY(-2px);
        box-shadow: 0 20px 40px rgba(94, 33, 141, 0.30);
    }

    #oferta .offer-cta:focus-visible {
        outline: 3px solid rgba(126, 53, 173, 0.28);
        outline-offset: 4px;
    }

    #oferta .offer-microcopy {
        margin: 10px 0 0;
        color: #817586;
        text-align: center;
        font: 500 0.70rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .alternatives-heading {
        max-width: 680px;
        margin: clamp(46px, 6vw, 72px) auto 22px;
        text-align: center;
    }

    #oferta .alternatives-heading h3 {
        margin: 0;
        color: #26162e;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.55rem, 2.7vw, 2.2rem);
        line-height: 1.12;
        letter-spacing: -0.035em;
    }

    #oferta .alternatives-heading p {
        margin: 9px auto 0;
        color: #746879;
        font: 500 0.93rem/1.5 "DM Sans", sans-serif;
    }

    #oferta .alternative-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
    }

    #oferta .alternative-card {
        position: relative;
        display: flex;
        flex-direction: column;
        min-width: 0;
        overflow: hidden;
        padding: 22px;
        border: 1px solid rgba(69, 34, 84, 0.11);
        border-radius: 20px;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 16px 44px rgba(48, 21, 61, 0.07);
        transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    }

    #oferta .alternative-card:hover {
        transform: translateY(-4px);
        border-color: rgba(109, 45, 151, 0.22);
        box-shadow: 0 22px 52px rgba(48, 21, 61, 0.12);
    }

    #oferta .alternative-card.value-card {
        border-color: rgba(102, 40, 143, 0.22);
        box-shadow: 0 18px 48px rgba(88, 31, 125, 0.10);
    }

    #oferta .alternative-tag {
        width: fit-content;
        min-height: 27px;
        display: inline-flex;
        align-items: center;
        padding: 0 9px;
        border-radius: 999px;
        background: #f3eaf8;
        color: #662792;
        font: 800 0.64rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    #oferta .alternative-card h4 {
        margin: 13px 0 0;
        color: #281731;
        font-family: "Manrope", sans-serif;
        font-size: 1.38rem;
        line-height: 1.12;
        letter-spacing: -0.03em;
    }

    #oferta .alternative-duration {
        margin: 5px 0 0;
        color: #786b7d;
        font: 600 0.78rem/1.3 "DM Sans", sans-serif;
    }

    #oferta .alternative-image {
        height: 190px;
        display: grid;
        place-items: center;
        margin: 15px 0 2px;
        border-radius: 15px;
        background:
            radial-gradient(circle at 50% 45%, rgba(139, 69, 186, 0.13), transparent 52%),
            #faf7fc;
    }

    #oferta .alternative-image img {
        width: min(100%, 210px);
        height: 168px;
        display: block;
        object-fit: contain;
        filter: drop-shadow(0 15px 16px rgba(56, 23, 70, 0.16));
    }

    #oferta .alternative-anchor {
        margin: 15px 0 2px;
        color: #817486;
        font: 600 0.75rem/1.3 "DM Sans", sans-serif;
    }

    #oferta .alternative-price {
        display: flex;
        align-items: baseline;
        gap: 5px;
        color: #281731;
    }

    #oferta .alternative-price span {
        color: #756878;
        font: 800 0.72rem/1 "DM Sans", sans-serif;
    }

    #oferta .alternative-price strong {
        font: 800 2.55rem/0.95 "Manrope", sans-serif;
        letter-spacing: -0.055em;
    }

    #oferta .alternative-price sup {
        font: 800 1rem/1 "Manrope", sans-serif;
    }

    #oferta .alternative-pix {
        margin: 9px 0 0;
        color: #675b6c;
        font: 600 0.78rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .alternative-pix strong {
        color: #5e218d;
    }

    #oferta .alternative-unit {
        margin: 5px 0 0;
        color: #514457;
        font: 800 0.75rem/1.3 "DM Sans", sans-serif;
    }

    #oferta .alternative-benefits {
        margin-bottom: 18px;
    }

    #oferta .alternative-benefits li {
        font-size: 0.77rem;
    }

    #oferta .alternative-card .offer-cta {
        min-height: 50px;
        margin-top: auto;
        border: 1px solid rgba(94, 33, 141, 0.18);
        background: #fff;
        color: #5e218d !important;
        box-shadow: none;
        font-size: 0.84rem;
    }

    #oferta .alternative-card.value-card .offer-cta {
        border-color: transparent;
        background: linear-gradient(135deg, #7e35ad 0%, #5e218d 100%);
        color: #fff !important;
        box-shadow: 0 13px 28px rgba(94, 33, 141, 0.17);
    }

    #oferta .offer-security {
        display: grid;
        grid-template-columns: auto 1fr auto;
        align-items: center;
        gap: 14px 18px;
        margin-top: 24px;
        padding: 18px 20px;
        border: 1px solid rgba(70, 34, 84, 0.10);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.78);
        color: #5f5364;
    }

    #oferta .offer-security-icon {
        width: 42px;
        height: 42px;
        display: grid;
        place-items: center;
        border-radius: 12px;
        background: #efe4f5;
        color: #652890;
    }

    #oferta .offer-security strong {
        display: block;
        margin-bottom: 3px;
        color: #2d1b35;
        font: 800 0.87rem/1.2 "DM Sans", sans-serif;
    }

    #oferta .offer-security p {
        margin: 0;
        font: 500 0.76rem/1.4 "DM Sans", sans-serif;
    }

    #oferta .payment-methods {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 7px;
    }

    #oferta .payment-methods span {
        display: inline-flex;
        align-items: center;
        min-height: 31px;
        padding: 0 10px;
        border: 1px solid rgba(70, 34, 84, 0.10);
        border-radius: 8px;
        background: #fff;
        color: #49394f;
        font: 800 0.68rem/1 "DM Sans", sans-serif;
    }

    #oferta .offer-terms {
        max-width: 900px;
        margin: 14px auto 0;
        color: #8a7e8e;
        text-align: center;
        font: 500 0.68rem/1.45 "DM Sans", sans-serif;
    }

    @media (max-width: 980px) {
        #oferta .featured-offer {
            grid-template-columns: 0.82fr 1.18fr;
        }

        #oferta .featured-media {
            padding-inline: 22px;
        }

        #oferta .featured-content {
            padding: 34px;
        }

        #oferta .alternative-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        #oferta .alternative-card:last-child {
            grid-column: 1 / -1;
            max-width: calc(50% - 9px);
            width: 100%;
            justify-self: center;
        }
    }

    @media (max-width: 760px) {
        #oferta.offer-section {
            padding: 58px 0 70px !important;
        }

        #oferta>.container {
            width: min(100% - 26px, 1180px);
        }

        #oferta .offer-heading h2 {
            font-size: clamp(2rem, 9.5vw, 2.75rem);
        }

        #oferta .offer-heading p {
            font-size: 0.96rem;
        }

        #oferta .offer-trust-row {
            gap: 9px 14px;
            font-size: 0.70rem;
        }

        #oferta .offer-deadline-v2 {
            align-items: stretch;
            flex-direction: column;
            margin-top: 24px;
        }

        #oferta .offer-deadline-v2 .mini-timer {
            width: 100%;
        }

        #oferta .featured-offer {
            grid-template-columns: 1fr;
            border-radius: 22px;
        }

        #oferta .featured-badge {
            top: 14px;
            left: 14px;
        }

        #oferta .featured-media {
            min-height: 330px;
            padding: 62px 24px 20px;
        }

        #oferta .featured-media img {
            max-height: 270px;
        }

        #oferta .featured-content {
            padding: 28px 22px 25px;
        }

        #oferta .featured-content h3 {
            font-size: 2.05rem;
        }

        #oferta .featured-price strong {
            font-size: 3.45rem;
        }

        #oferta .alternative-grid {
            grid-template-columns: 1fr;
        }

        #oferta .alternative-card:last-child {
            grid-column: auto;
            max-width: none;
        }

        #oferta .alternative-card {
            display: grid;
            grid-template-columns: 118px 1fr;
            column-gap: 16px;
            padding: 17px;
        }

        #oferta .alternative-card>.alternative-tag,
        #oferta .alternative-card>h4,
        #oferta .alternative-card>.alternative-duration,
        #oferta .alternative-card>.alternative-anchor,
        #oferta .alternative-card>.alternative-price,
        #oferta .alternative-card>.alternative-pix,
        #oferta .alternative-card>.alternative-unit,
        #oferta .alternative-card>.alternative-benefits,
        #oferta .alternative-card>.offer-cta {
            grid-column: 2;
        }

        #oferta .alternative-card>.alternative-image {
            grid-column: 1;
            grid-row: 1 / span 9;
            height: 100%;
            min-height: 205px;
            margin: 0;
        }

        #oferta .alternative-image img {
            width: 108px;
            height: 185px;
        }

        #oferta .alternative-card h4 {
            margin-top: 9px;
            font-size: 1.18rem;
        }

        #oferta .alternative-price strong {
            font-size: 2.2rem;
        }

        #oferta .alternative-benefits {
            gap: 6px;
            margin-top: 12px;
        }

        #oferta .alternative-card .offer-cta {
            min-height: 46px;
            margin-top: 13px;
            padding-inline: 12px;
        }

        #oferta .offer-security {
            grid-template-columns: auto 1fr;
        }

        #oferta .payment-methods {
            grid-column: 1 / -1;
            justify-content: flex-start;
        }
    }

    @media (max-width: 430px) {
        #oferta>.container {
            width: min(100% - 20px, 1180px);
        }

        #oferta .offer-trust-row {
            display: grid;
            justify-items: center;
        }

        #oferta .featured-media {
            min-height: 295px;
        }

        #oferta .featured-media img {
            max-height: 240px;
        }

        #oferta .featured-content {
            padding-inline: 18px;
        }

        #oferta .featured-price strong {
            font-size: 3.12rem;
        }

        #oferta .alternative-card {
            grid-template-columns: 96px 1fr;
            column-gap: 12px;
            padding: 14px;
        }

        #oferta .alternative-card>.alternative-image {
            min-height: 190px;
        }

        #oferta .alternative-image img {
            width: 88px;
            height: 170px;
        }

        #oferta .alternative-benefits li {
            font-size: 0.72rem;
        }
    }


    /* ESCASSEZ ESTRATÉGICA — prazo explícito no ponto de decisão */
    #oferta .offer-deadline-v2 {
        border-color: rgba(110, 42, 155, 0.22);
        background:
            radial-gradient(circle at 90% 10%, rgba(150, 78, 199, 0.10), transparent 35%),
            rgba(255, 255, 255, 0.94);
        box-shadow: 0 16px 44px rgba(64, 25, 86, 0.10);
    }

    #oferta .offer-deadline-copy {
        align-items: flex-start;
    }

    #oferta .offer-deadline-copy .live-dot {
        margin-top: 7px;
        background: #8d3dbd;
        box-shadow: 0 0 0 5px rgba(141, 61, 189, 0.11), 0 0 18px rgba(141, 61, 189, 0.42);
    }

    #oferta .offer-period-line {
        display: block;
        margin-top: 4px;
        color: #5e218d;
        font-weight: 800;
    }

    #oferta .offer-deadline-note {
        display: block;
        margin-top: 4px;
        color: #746879;
        font-size: 0.76rem;
    }

    #oferta .offer-timer-block {
        flex: 0 0 auto;
        display: grid;
        gap: 6px;
        justify-items: stretch;
        min-width: 190px;
    }

    #oferta .offer-timer-block>span {
        color: #796c7f;
        text-align: center;
        font: 800 0.61rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.09em;
        text-transform: uppercase;
    }

    #oferta .offer-deadline-v2 .mini-timer {
        display: block;
        min-width: 190px;
        padding: 12px 14px;
        border-radius: 11px;
        background: linear-gradient(135deg, #32143f 0%, #1c0c24 100%);
        color: #fff;
        text-align: center;
        font: 800 0.88rem/1 "Manrope", sans-serif;
        font-variant-numeric: tabular-nums;
        letter-spacing: 0.045em;
    }

    #oferta .featured-scarcity-note {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-top: 17px;
        padding: 11px 12px;
        border: 1px solid rgba(104, 39, 148, 0.13);
        border-radius: 10px;
        background: #f8f1fb;
        color: #66536f;
        font: 600 0.76rem/1.35 "DM Sans", sans-serif;
    }

    #oferta .featured-scarcity-note svg {
        flex: 0 0 auto;
        color: #6d2a99;
    }

    #oferta .featured-scarcity-note strong {
        color: #5e218d;
        font-weight: 800;
    }

    #oferta .offer-deadline-v2.is-expired {
        border-color: rgba(93, 79, 101, 0.15);
        background: #f7f5f8;
        box-shadow: none;
    }

    #oferta .offer-deadline-v2.is-expired .live-dot {
        background: #9a929e;
        box-shadow: none;
    }

    #oferta .offer-deadline-v2.is-expired .offer-period-line,
    #oferta .offer-deadline-v2.is-expired .featured-scarcity-note strong {
        color: #6f6574;
    }

    @media (max-width: 760px) {
        #oferta .offer-deadline-v2 {
            gap: 15px;
            padding: 16px;
        }

        #oferta .offer-timer-block,
        #oferta .offer-deadline-v2 .mini-timer {
            width: 100%;
            min-width: 0;
        }

        #oferta .offer-deadline-copy {
            font-size: 0.80rem;
        }

        #oferta .offer-deadline-note {
            font-size: 0.72rem;
        }
    }

    /* AJUSTES SOLICITADOS — vídeo real, âncoras corretas e logo oficial */
    html {
        scroll-padding-top: 36px;
    }

    #problema,
    #transformacao,
    #produto,
    #como-usar,
    #oferta,
    #garantia,
    #faq {
        scroll-margin-top: 36px;
    }

    #inicio .video-frame.is-embedded::after {
        display: none;
    }

    #inicio .video-frame iframe {
        width: 100%;
        height: 100%;
        display: block;
        border: 0;
        background: #000;
    }

    #problema .image-stack-main img {
        object-position: center 54%;
    }

    #transformacao .bento-card.large.image-card img {
        object-position: center 42%;
    }

    #transformacao .bento-card.image-card:not(.large) img {
        object-position: center 36%;
    }

    .site-footer .footer-brand-logo {
        display: inline-flex;
        align-items: center;
        width: min(300px, 68vw);
        padding: 0;
        text-decoration: none;
    }

    .site-footer .footer-brand-logo img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: contain;
    }

    @media (max-width: 768px) {
        html {
            scroll-padding-top: 24px;
        }

        #problema,
        #transformacao,
        #produto,
        #como-usar,
        #oferta,
        #garantia,
        #faq {
            scroll-margin-top: 24px;
        }

        .site-footer .footer-brand-logo {
            width: min(260px, 78vw);
        }
    }

    /* FOOTER PROFISSIONAL — confiança, transparência e navegação clara */
    .vitalis-footer {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        padding: 72px 0 24px;
        color: rgba(255, 255, 255, 0.74);
        background:
            radial-gradient(circle at 10% 0%, rgba(155, 84, 210, 0.18), transparent 32%),
            radial-gradient(circle at 90% 15%, rgba(106, 42, 151, 0.16), transparent 30%),
            linear-gradient(180deg, #16091f 0%, #0d0612 100%);
        border-top: 1px solid rgba(226, 195, 250, 0.12);
    }

    .vitalis-footer::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.10;
        background-image:
            linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
        background-size: 42px 42px;
        -webkit-mask-image: linear-gradient(to bottom, #000, transparent 72%);
        mask-image: linear-gradient(to bottom, #000, transparent 72%);
    }

    .vitalis-footer .vf-container {
        width: min(1180px, calc(100% - 40px));
        margin-inline: auto;
    }

    .vitalis-footer .vf-main {
        display: grid;
        grid-template-columns: minmax(260px, 1.15fr) minmax(190px, 0.72fr) minmax(300px, 1.13fr);
        gap: 28px;
        align-items: stretch;
    }

    .vitalis-footer .vf-panel {
        min-width: 0;
        padding: 24px;
        border: 1px solid rgba(255, 255, 255, 0.10);
        border-radius: 20px;
        background: rgba(255, 255, 255, 0.045);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
        backdrop-filter: blur(10px);
    }

    .vitalis-footer .vf-brand {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .vitalis-footer .vf-logo {
        width: min(250px, 76%);
        display: inline-flex;
        align-items: center;
        text-decoration: none;
    }

    .vitalis-footer .vf-logo img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: contain;
    }

    .vitalis-footer .vf-brand-copy {
        max-width: 390px;
        margin: 18px 0 0;
        color: rgba(255, 255, 255, 0.64);
        font: 500 0.86rem/1.62 "DM Sans", sans-serif;
    }

    .vitalis-footer .vf-official-badge {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 34px;
        margin-top: auto;
        padding: 0 12px;
        border: 1px solid rgba(216, 170, 247, 0.20);
        border-radius: 999px;
        background: rgba(216, 170, 247, 0.08);
        color: #e6c9fb;
        font: 800 0.67rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.07em;
        text-transform: uppercase;
    }

    .vitalis-footer .vf-official-badge svg {
        flex: 0 0 auto;
    }

    .vitalis-footer .vf-title {
        display: flex;
        align-items: center;
        gap: 9px;
        margin: 0 0 17px;
        color: #fff;
        font: 800 0.84rem/1.2 "Manrope", sans-serif;
        letter-spacing: -0.01em;
    }

    .vitalis-footer .vf-title-icon {
        width: 31px;
        height: 31px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        border-radius: 9px;
        background: rgba(216, 170, 247, 0.10);
        color: #d8aaf7;
    }

    .vitalis-footer .vf-links {
        display: grid;
        gap: 7px;
    }

    .vitalis-footer .vf-links a {
        min-height: 39px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 0 11px;
        border: 1px solid transparent;
        border-radius: 10px;
        color: rgba(255, 255, 255, 0.68);
        font: 600 0.78rem/1.25 "DM Sans", sans-serif;
        text-decoration: none;
        transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
    }

    .vitalis-footer .vf-links a:hover {
        color: #fff;
        border-color: rgba(216, 170, 247, 0.14);
        background: rgba(255, 255, 255, 0.055);
        transform: translateX(2px);
    }

    .vitalis-footer .vf-links a svg {
        flex: 0 0 auto;
        color: #c794ec;
        opacity: 0.78;
    }

    .vitalis-footer .vf-warning {
        position: relative;
        overflow: hidden;
        background:
            radial-gradient(circle at 100% 0%, rgba(168, 91, 221, 0.13), transparent 35%),
            rgba(255, 255, 255, 0.045);
    }

    .vitalis-footer .vf-warning p {
        margin: 0;
        color: rgba(255, 255, 255, 0.67);
        font: 500 0.82rem/1.62 "DM Sans", sans-serif;
    }

    .vitalis-footer .vf-warning strong {
        color: #fff;
        font-weight: 800;
    }

    .vitalis-footer .vf-warning-note {
        display: flex;
        align-items: flex-start;
        gap: 9px;
        margin-top: 16px;
        padding: 12px;
        border: 1px solid rgba(216, 170, 247, 0.13);
        border-radius: 11px;
        background: rgba(216, 170, 247, 0.065);
        color: #dbc0ef;
        font: 700 0.72rem/1.45 "DM Sans", sans-serif;
    }

    .vitalis-footer .vf-warning-note svg {
        flex: 0 0 auto;
        margin-top: 1px;
    }

    .vitalis-footer .vf-commerce {
        display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: 20px;
        margin-top: 20px;
    }

    .vitalis-footer .vf-payment-methods {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .vitalis-footer .vf-payment-chip {
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 13px;
        border: 1px solid rgba(255, 255, 255, 0.10);
        border-radius: 9px;
        background: rgba(255, 255, 255, 0.065);
        color: rgba(255, 255, 255, 0.82);
        font: 800 0.69rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.025em;
    }

    .vitalis-footer .vf-payment-chip--pix {
        color: #dcbdf4;
        border-color: rgba(216, 170, 247, 0.18);
        background: rgba(216, 170, 247, 0.09);
    }

    .vitalis-footer .vf-security-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 9px;
    }

    .vitalis-footer .vf-security-item {
        min-width: 0;
        min-height: 72px;
        display: grid;
        align-content: center;
        justify-items: center;
        gap: 7px;
        padding: 10px 8px;
        border: 1px solid rgba(255, 255, 255, 0.09);
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.045);
        color: rgba(255, 255, 255, 0.68);
        text-align: center;
        font: 700 0.61rem/1.25 "DM Sans", sans-serif;
    }

    .vitalis-footer .vf-security-item svg {
        color: #d5a8f4;
    }

    .vitalis-footer .vf-legal {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 18px;
        margin-top: 20px;
        padding: 20px 0;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    .vitalis-footer .vf-legal p {
        margin: 0;
        color: rgba(255, 255, 255, 0.47);
        font: 500 0.69rem/1.55 "DM Sans", sans-serif;
    }

    .vitalis-footer .vf-legal strong {
        color: rgba(255, 255, 255, 0.73);
        font-weight: 800;
    }

    .vitalis-footer .vf-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        padding-top: 20px;
        color: rgba(255, 255, 255, 0.42);
        font: 600 0.67rem/1.35 "DM Sans", sans-serif;
    }

    .vitalis-footer .vf-bottom span:last-child {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        color: rgba(255, 255, 255, 0.56);
    }

    .vitalis-footer a:focus-visible {
        outline: 3px solid rgba(216, 170, 247, 0.62);
        outline-offset: 3px;
    }

    @media (max-width: 920px) {
        .vitalis-footer .vf-main {
            grid-template-columns: 1fr 1fr;
        }

        .vitalis-footer .vf-warning {
            grid-column: 1 / -1;
        }

        .vitalis-footer .vf-commerce {
            grid-template-columns: 1fr;
        }
    }

    @media (max-width: 640px) {
        .vitalis-footer {
            padding: 54px 0 20px;
        }

        .vitalis-footer .vf-container {
            width: min(100% - 24px, 1180px);
        }

        .vitalis-footer .vf-main {
            grid-template-columns: 1fr;
            gap: 13px;
        }

        .vitalis-footer .vf-warning {
            grid-column: auto;
        }

        .vitalis-footer .vf-panel {
            padding: 19px;
            border-radius: 16px;
        }

        .vitalis-footer .vf-logo {
            width: min(230px, 72%);
        }

        .vitalis-footer .vf-brand-copy {
            margin-top: 14px;
            font-size: 0.80rem;
        }

        .vitalis-footer .vf-official-badge {
            margin-top: 18px;
        }

        .vitalis-footer .vf-commerce {
            gap: 13px;
            margin-top: 13px;
        }

        .vitalis-footer .vf-payment-methods {
            gap: 7px;
        }

        .vitalis-footer .vf-payment-chip {
            min-height: 36px;
            padding-inline: 11px;
            font-size: 0.64rem;
        }

        .vitalis-footer .vf-security-grid {
            grid-template-columns: 1fr 1fr;
        }

        .vitalis-footer .vf-security-item:last-child {
            grid-column: 1 / -1;
        }

        .vitalis-footer .vf-legal {
            grid-template-columns: 1fr;
            gap: 12px;
            margin-top: 15px;
            padding: 17px 2px;
        }

        .vitalis-footer .vf-bottom {
            align-items: flex-start;
            flex-direction: column;
            gap: 9px;
            padding-top: 17px;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        .vitalis-footer .vf-links a {
            transition: none;
        }
    }

    /* PROVAS SOCIAIS — seção de confiança imediatamente antes da oferta */
    #provas-sociais.social-proof-section {
        position: relative;
        overflow: hidden;
        isolation: isolate;
        padding: clamp(76px, 8vw, 116px) 0 !important;
        background:
            radial-gradient(circle at 8% 8%, rgba(143, 70, 215, 0.12), transparent 28%),
            radial-gradient(circle at 92% 88%, rgba(77, 27, 116, 0.09), transparent 30%),
            linear-gradient(180deg, #fbf9fd 0%, #fbf9fd 100%);
    }

    #provas-sociais.social-proof-section::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.34;
        background-image: radial-gradient(rgba(77, 27, 116, 0.13) 0.7px, transparent 0.7px);
        background-size: 25px 25px;
        -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 34%, transparent 70%, #000 100%);
        mask-image: linear-gradient(to bottom, #000 0%, transparent 34%, transparent 70%, #000 100%);
    }

    #provas-sociais>.container {
        position: relative;
        z-index: 1;
        width: min(1180px, calc(100% - 40px));
        margin-inline: auto;
    }

    #provas-sociais .social-proof-heading {
        max-width: 840px;
        margin: 0 auto;
        text-align: center;
    }

    #provas-sociais .social-proof-heading h2 {
        max-width: 800px;
        margin: 0 auto;
        color: #24102f;
        font: 800 clamp(2rem, 4vw, 3.55rem)/1.08 "Manrope", sans-serif;
        letter-spacing: -0.045em;
        text-wrap: balance;
    }

    #provas-sociais .social-proof-heading .section-copy {
        max-width: 700px;
        margin: 19px auto 0;
        color: #6e6375;
        font: 500 clamp(0.98rem, 1.7vw, 1.1rem)/1.62 "DM Sans", sans-serif;
        text-wrap: balance;
    }

    #provas-sociais .proof-context-row {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        gap: 9px 18px;
        margin: 22px auto 0;
        color: #695a72;
        font: 700 0.73rem/1.3 "DM Sans", sans-serif;
    }

    #provas-sociais .proof-context-row span {
        display: inline-flex;
        align-items: center;
        gap: 7px;
    }

    #provas-sociais .proof-context-row svg {
        color: #7b35ad;
        flex: 0 0 auto;
    }

    #provas-sociais .proof-context-divider {
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background: rgba(77, 27, 116, 0.24);
    }


    #provas-sociais .video-story {
        position: relative;
        isolation: isolate;
        margin: clamp(34px, 5vw, 54px) auto 0;
        max-width: 1040px;
        padding: clamp(30px, 4vw, 48px) clamp(24px, 4vw, 52px);
        border-radius: 26px;
        background: linear-gradient(125deg, #3a1553 0%, #4d1a75 24%, #200a30 55%, #140620 100%);
        background-size: 220% 220%;
        animation: video-story-bg-shift 12s ease-in-out infinite;
        box-shadow: 0 30px 70px -22px rgba(30, 8, 50, 0.55);
        overflow: hidden;
    }

    #provas-sociais .video-story::before {
        content: "";
        position: absolute;
        inset: -40% -20%;
        background: radial-gradient(circle at 80% 20%, rgba(193, 59, 255, 0.4) 0%, transparent 55%);
        z-index: 0;
        pointer-events: none;
        animation: video-story-orb-drift 9s ease-in-out infinite alternate;
    }

    #provas-sociais .video-story::after {
        content: "";
        position: absolute;
        inset: -30% -20%;
        background: radial-gradient(circle at 15% 85%, rgba(255, 92, 213, 0.28) 0%, transparent 50%);
        z-index: 0;
        pointer-events: none;
        animation: video-story-orb-drift 11s ease-in-out infinite alternate-reverse;
    }

    @keyframes video-story-bg-shift {

        0%,
        100% {
            background-position: 0% 0%;
        }

        50% {
            background-position: 100% 60%;
        }
    }

    @keyframes video-story-orb-drift {
        0% {
            transform: translate(0, 0) scale(1);
        }

        100% {
            transform: translate(-4%, 5%) scale(1.15);
        }
    }

    #provas-sociais .video-story-inner {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: minmax(240px, 320px) 1fr;
        align-items: center;
        gap: clamp(28px, 4.5vw, 52px);
    }

    #provas-sociais .video-story-tag {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 6px 13px;
        border-radius: 999px;
        background: rgba(255, 92, 213, 0.16);
        border: 1px solid rgba(255, 140, 226, 0.45);
        color: #ffc2ee;
        font: 800 0.68rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    #provas-sociais .video-story-tag::before {
        content: "";
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #ff5cd5;
        box-shadow: 0 0 8px 1px rgba(255, 92, 213, 0.8);
    }

    #provas-sociais .video-story-headline {
        margin: 16px 0 0;
        color: #fff;
        font: 800 clamp(1.5rem, 2.6vw, 2rem)/1.28 "Manrope", sans-serif;
        letter-spacing: -0.01em;
        text-wrap: pretty;
    }

    #provas-sociais .video-story-headline em {
        font-style: normal;
        color: #f0b8ec;
    }

    #provas-sociais .video-story-sub {
        margin: 14px 0 0;
        max-width: 460px;
        color: rgba(255, 255, 255, 0.68);
        font: 500 0.98rem/1.55 "DM Sans", sans-serif;
    }

    #provas-sociais .video-story-quote {
        margin: 22px 0 0;
        padding-left: 16px;
        border-left: 2px solid rgba(196, 140, 235, 0.5);
        color: #f0e4fb;
        font: 600 1.02rem/1.5 "Manrope", sans-serif;
    }

    #provas-sociais .video-story-attrib {
        display: block;
        margin-top: 8px;
        color: rgba(255, 255, 255, 0.5);
        font: 500 0.78rem/1.4 "DM Sans", sans-serif;
    }

    #provas-sociais .video-story-cta {
        margin-top: 24px;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: #ffd9f7;
        font: 700 0.88rem/1 "DM Sans", sans-serif;
        text-decoration: none;
        border-bottom: 1px solid rgba(255, 217, 247, 0.45);
        padding-bottom: 3px;
        transition: opacity 0.2s ease, border-color 0.2s ease;
    }

    #provas-sociais .video-story-cta:hover {
        opacity: 0.85;
        border-color: rgba(255, 217, 247, 0.85);
    }

    #provas-sociais .video-story-media {
        position: relative;
        aspect-ratio: 9/13.5;
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1) inset, 0 20px 50px -14px rgba(0, 0, 0, 0.6);
        background: #0f0518;
    }

    #provas-sociais .video-story-media::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 55%, rgba(10, 3, 16, 0.65) 100%);
        pointer-events: none;
        z-index: 1;
    }

    #provas-sociais .video-story-el {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
        display: block;
        background: #000;
    }

    /*
     * FULLSCREEN — o vídeo é vertical (9:16 aprox.) e a mídia da seção usa
     * object-fit: cover para preencher o card. No fullscreen isso fazia o
     * navegador manter o "cover" e cortar as extremidades do vídeo.
     * Em fullscreen, o objetivo é mostrar o vídeo inteiro, com barras laterais
     * quando a proporção da tela não combinar com a proporção do vídeo.
     */
    #provas-sociais .video-story-el:fullscreen {
        width: 100vw !important;
        height: 100vh !important;
        max-width: 100vw !important;
        max-height: 100vh !important;
        object-fit: contain !important;
        object-position: center center !important;
        background: #000 !important;
    }

    #provas-sociais .video-story-el:-webkit-full-screen {
        width: 100vw !important;
        height: 100vh !important;
        max-width: 100vw !important;
        max-height: 100vh !important;
        object-fit: contain !important;
        object-position: center center !important;
        background: #000 !important;
    }

    #provas-sociais .video-story-play {
        position: absolute;
        inset: 0;
        margin: auto;
        width: 68px;
        height: 68px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: none;
        border-radius: 50%;
        background: linear-gradient(145deg, #ff5cd5 0%, #8b3fd9 55%, #6d2999 100%);
        color: #fff;
        cursor: pointer;
        z-index: 2;
        box-shadow: 0 0 0 0 rgba(255, 92, 213, 0.55);
        animation: video-story-pulse 2.4s ease-out infinite;
        transition: transform 0.25s ease, opacity 0.25s ease;
    }

    #provas-sociais .video-story-play:hover {
        transform: scale(1.07);
    }

    #provas-sociais .video-story-play.is-hidden {
        opacity: 0;
        pointer-events: none;
        animation: none;
    }

    #provas-sociais .video-story-duration {
        position: absolute;
        bottom: 14px;
        right: 14px;
        z-index: 2;
        padding: 4px 9px;
        border-radius: 6px;
        background: rgba(10, 3, 16, 0.55);
        backdrop-filter: blur(4px);
        color: #fff;
        font: 700 0.7rem/1 "DM Sans", sans-serif;
    }

    @keyframes video-story-pulse {
        0% {
            box-shadow: 0 0 0 0 rgba(255, 92, 213, 0.55);
        }

        70% {
            box-shadow: 0 0 0 24px rgba(255, 92, 213, 0);
        }

        100% {
            box-shadow: 0 0 0 0 rgba(255, 92, 213, 0);
        }
    }

    @media (max-width: 760px) {
        #provas-sociais .video-story-inner {
            grid-template-columns: 1fr;
        }

        #provas-sociais .video-story-media {
            max-width: 340px;
            margin: 0 auto;
            aspect-ratio: 9/14;
        }

        #provas-sociais .video-story-headline {
            text-align: center;
        }

        #provas-sociais .video-story-sub,
        #provas-sociais .video-story-quote {
            margin-inline: auto;
            text-align: center;
            border-left: none;
            padding-left: 0;
        }

        #provas-sociais .video-story-tag {
            margin-inline: auto;
        }

        #provas-sociais .video-story-cta {
            margin-inline: auto;
        }
    }

    #provas-sociais .proof-slider {
        position: relative;
        margin-top: clamp(34px, 5vw, 52px);
    }

    #provas-sociais .proof-track {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 20px;
        overflow-y: hidden;
        overscroll-behavior-y: none;
    }

    #provas-sociais .social-proof-card {
        min-width: 0;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        border: 1px solid rgba(77, 27, 116, 0.10);
        border-radius: 24px;
        background: rgba(255, 255, 255, 0.92);
        box-shadow:
            0 20px 54px rgba(54, 21, 77, 0.09),
            inset 0 1px 0 rgba(255, 255, 255, 0.9);
        transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
    }

    #provas-sociais .social-proof-card:hover {
        transform: translateY(-5px);
        border-color: rgba(111, 45, 159, 0.20);
        box-shadow:
            0 28px 70px rgba(54, 21, 77, 0.14),
            inset 0 1px 0 rgba(255, 255, 255, 0.95);
    }

    #provas-sociais .proof-media {
        position: relative;
        overflow: hidden;
        aspect-ratio: 1 / 1;
        background: #ede7f0;
    }

    #provas-sociais .proof-media::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background:
            linear-gradient(180deg, rgba(19, 8, 27, 0.02) 55%, rgba(19, 8, 27, 0.46) 100%),
            linear-gradient(90deg, rgba(255, 255, 255, 0.04), transparent 35%, transparent 65%, rgba(255, 255, 255, 0.04));
    }

    #provas-sociais .proof-media img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        transform: scale(1.005);
    }

    #provas-sociais .proof-photo-label {
        position: absolute;
        left: 14px;
        bottom: 14px;
        z-index: 2;
        min-height: 31px;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 0 11px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 999px;
        background: rgba(18, 7, 26, 0.66);
        color: #fff;
        backdrop-filter: blur(12px);
        font: 800 0.66rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.035em;
    }

    #provas-sociais .proof-photo-label::before {
        content: "";
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #d7a7f7;
        box-shadow: 0 0 12px rgba(215, 167, 247, 0.82);
    }

    #provas-sociais .proof-card-content {
        flex: 1;
        display: flex;
        flex-direction: column;
        padding: 23px 22px 21px;
    }

    #provas-sociais .proof-quote-mark {
        width: 35px;
        height: 35px;
        display: grid;
        place-items: center;
        margin-bottom: 14px;
        border-radius: 11px;
        background: #f2e7f8;
        color: #6e269d;
        font: 800 1.55rem/1 "Manrope", sans-serif;
    }

    #provas-sociais .social-proof-card h3 {
        margin: 0;
        color: #281233;
        font: 800 1.12rem/1.3 "Manrope", sans-serif;
        letter-spacing: -0.025em;
    }

    #provas-sociais .proof-story {
        margin: 12px 0 18px;
        color: #665b6c;
        font: 500 0.91rem/1.62 "DM Sans", sans-serif;
    }

    #provas-sociais .proof-person {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 13px;
        margin-top: auto;
        padding-top: 16px;
        border-top: 1px solid rgba(77, 27, 116, 0.09);
    }

    #provas-sociais .proof-person strong,
    #provas-sociais .proof-person span {
        display: block;
    }

    #provas-sociais .proof-person strong {
        color: #32153f;
        font: 800 0.83rem/1.25 "DM Sans", sans-serif;
    }

    #provas-sociais .proof-person span {
        margin-top: 3px;
        color: #8a7f90;
        font: 600 0.69rem/1.25 "DM Sans", sans-serif;
    }

    #provas-sociais .proof-verified {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        gap: 5px;
        padding: 7px 9px;
        border-radius: 999px;
        background: #f5eef9;
        color: #6b2b96;
        font: 800 0.61rem/1 "DM Sans", sans-serif;
        white-space: nowrap;
    }

    #provas-sociais .proof-slider-controls {
        display: none;
    }

    #provas-sociais .proof-bottom {
        max-width: 860px;
        display: grid;
        justify-items: center;
        gap: 16px;
        margin: 31px auto 0;
        text-align: center;
    }

    #provas-sociais .proof-placeholder-note {
        max-width: 760px;
        margin: 0;
        padding: 12px 15px;
        border: 1px solid rgba(112, 48, 157, 0.14);
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.68);
        color: #776b7e;
        font: 600 0.72rem/1.5 "DM Sans", sans-serif;
    }

    #provas-sociais .proof-cta {
        min-width: min(100%, 330px);
        min-height: 56px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 0 23px;
        border: 1px solid #4d1b74;
        border-radius: 13px;
        background: linear-gradient(135deg, #5d2387, #7a31aa);
        color: #fff;
        box-shadow: 0 14px 32px rgba(77, 27, 116, 0.24);
        font: 800 0.93rem/1 "DM Sans", sans-serif;
        text-decoration: none;
        transition: transform 180ms ease, box-shadow 180ms ease;
    }

    #provas-sociais .proof-cta:hover {
        transform: translateY(-2px);
        box-shadow: 0 18px 38px rgba(77, 27, 116, 0.31);
    }

    #provas-sociais .proof-cta:focus-visible,
    #provas-sociais .proof-control:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.35);
        outline-offset: 3px;
    }

    .cta-pulse {
        animation: ctaPulse 3.5s ease-in-out infinite;
    }

    .cta-pulse:hover,
    .cta-pulse:focus-visible {
        animation-play-state: paused;
    }

    @keyframes ctaPulse {

        0%,
        42%,
        100% {
            transform: scale(1);
            box-shadow: 0 0 0 0 rgba(124, 58, 237, 0.45);
        }

        7%,
        21%,
        35% {
            transform: scale(1.05);
            box-shadow: 0 0 0 14px rgba(124, 58, 237, 0);
        }

        14%,
        28% {
            transform: scale(1);
            box-shadow: 0 0 0 0 rgba(124, 58, 237, 0.3);
        }
    }

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

    #provas-sociais .proof-cta-note {
        margin: -6px 0 0;
        color: #897d90;
        font: 700 0.69rem/1.4 "DM Sans", sans-serif;
    }

    @media (max-width: 860px) {
        #provas-sociais>.container {
            width: min(100% - 28px, 1180px);
        }

        #provas-sociais .proof-slider-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            margin-bottom: 14px;
        }

        #provas-sociais .proof-swipe-hint {
            color: #746879;
            font: 700 0.69rem/1.3 "DM Sans", sans-serif;
        }

        #provas-sociais .proof-slider-controls {
            display: flex;
            gap: 7px;
        }

        #provas-sociais .proof-control {
            width: 39px;
            height: 39px;
            display: grid;
            place-items: center;
            padding: 0;
            border: 1px solid rgba(77, 27, 116, 0.13);
            border-radius: 11px;
            background: rgba(255, 255, 255, 0.88);
            color: #522073;
            cursor: pointer;
            box-shadow: 0 8px 22px rgba(54, 21, 77, 0.08);
        }

        #provas-sociais .proof-track {
            display: flex;
            gap: 14px;
            overflow-x: auto;
            padding: 3px 2px 18px;
            scroll-snap-type: x mandatory;
            scroll-padding-inline: 2px;
            overscroll-behavior-inline: contain;
            scrollbar-width: none;
            -webkit-overflow-scrolling: touch;
        }

        #provas-sociais .proof-track::-webkit-scrollbar {
            display: none;
        }

        #provas-sociais .social-proof-card {
            flex: 0 0 min(84vw, 385px);
            scroll-snap-align: start;
        }

        #provas-sociais .social-proof-card:hover {
            transform: none;
        }
    }

    @media (min-width: 861px) {
        #provas-sociais .proof-slider-header {
            display: none;
        }
    }

    @media (max-width: 520px) {
        #provas-sociais.social-proof-section {
            padding: 66px 0 72px !important;
        }

        #provas-sociais>.container {
            width: min(100% - 22px, 1180px);
        }

        #provas-sociais .social-proof-heading h2 {
            font-size: clamp(1.9rem, 9.5vw, 2.55rem);
            line-height: 1.1;
        }

        #provas-sociais .social-proof-heading .section-copy {
            margin-top: 15px;
            font-size: 0.94rem;
            line-height: 1.54;
        }

        #provas-sociais .proof-context-row {
            gap: 8px 11px;
            margin-top: 18px;
            font-size: 0.66rem;
        }

        #provas-sociais .proof-context-divider {
            display: none;
        }

        #provas-sociais .proof-slider {
            margin-top: 29px;
        }

        #provas-sociais .social-proof-card {
            flex-basis: min(87vw, 350px);
            border-radius: 20px;
        }

        #provas-sociais .proof-card-content {
            padding: 20px 18px 18px;
        }

        #provas-sociais .proof-story {
            font-size: 0.87rem;
            line-height: 1.58;
        }

        #provas-sociais .proof-person {
            align-items: flex-start;
        }

        #provas-sociais .proof-verified {
            padding: 6px 8px;
            font-size: 0.57rem;
        }

        #provas-sociais .proof-bottom {
            margin-top: 24px;
        }

        #provas-sociais .proof-placeholder-note {
            padding: 11px 12px;
            font-size: 0.67rem;
        }

        #provas-sociais .proof-cta {
            width: 100%;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #provas-sociais .social-proof-card,
        #provas-sociais .proof-cta {
            transition: none !important;
        }
    }


    /* SEÇÃO 2 — diagnóstico editorial, hierarquia premium e leitura rápida */
    #problema.problem-v2 {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        padding: clamp(78px, 9vw, 126px) 0 !important;
        background:
            radial-gradient(circle at 10% 15%, rgba(126, 53, 173, 0.08), transparent 28%),
            radial-gradient(circle at 92% 82%, rgba(126, 53, 173, 0.06), transparent 30%),
            linear-gradient(180deg, #fbf9fd 0%, #fbf9fd 100%);
    }

    #problema.problem-v2::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.42;
        background-image: radial-gradient(rgba(66, 27, 88, 0.12) 0.7px, transparent 0.7px);
        background-size: 26px 26px;
        -webkit-mask-image: linear-gradient(90deg, #000 0%, transparent 32%, transparent 68%, #000 100%);
        mask-image: linear-gradient(90deg, #000 0%, transparent 32%, transparent 68%, #000 100%);
    }

    #problema .problem-v2-grid {
        display: grid;
        grid-template-columns: minmax(0, 0.9fr) minmax(440px, 1.1fr);
        align-items: center;
        gap: clamp(46px, 7vw, 88px);
    }

    #problema .problem-v2-content {
        max-width: 590px;
    }

    #problema .problem-v2-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        min-height: 31px;
        margin-bottom: 17px;
        padding: 0 12px;
        border: 1px solid rgba(94, 33, 141, 0.13);
        border-radius: 999px;
        background: rgba(94, 33, 141, 0.055);
        color: #682795;
        font: 800 0.68rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.105em;
        text-transform: uppercase;
    }

    #problema .problem-v2-eyebrow::before {
        content: "";
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #8d3dbd;
        box-shadow: 0 0 0 5px rgba(141, 61, 189, 0.10);
    }

    #problema .problem-v2-content h2 {
        max-width: 570px;
        margin: 0;
        color: #211329;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2.15rem, 4.25vw, 3.65rem);
        font-weight: 800;
        line-height: 1.055;
        letter-spacing: -0.048em;
        text-wrap: balance;
    }

    #problema .problem-v2-lead {
        max-width: 555px;
        margin: 22px 0 0;
        color: #665a6d;
        font: 500 clamp(1rem, 1.45vw, 1.10rem)/1.65 "DM Sans", sans-serif;
    }

    #problema .problem-v2-lead strong {
        color: #392342;
        font-weight: 800;
    }

    #problema .problem-v2-reframe {
        position: relative;
        display: grid;
        grid-template-columns: 46px 1fr;
        align-items: center;
        gap: 15px;
        margin-top: 30px;
        padding: 20px 21px;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.10);
        border-radius: 18px;
        background:
            radial-gradient(circle at 100% 0%, rgba(190, 123, 235, 0.22), transparent 40%),
            linear-gradient(135deg, #2d1339 0%, #170b1e 100%);
        box-shadow: 0 20px 45px rgba(35, 13, 47, 0.17);
        color: #fff;
    }

    #problema .problem-v2-reframe-icon {
        width: 46px;
        height: 46px;
        display: grid;
        place-items: center;
        border: 1px solid rgba(255, 255, 255, 0.13);
        border-radius: 13px;
        background: rgba(255, 255, 255, 0.09);
        color: #ddbaf6;
    }

    #problema .problem-v2-reframe span {
        display: block;
        margin-bottom: 4px;
        color: #d6aaf3;
        font: 800 0.63rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.10em;
        text-transform: uppercase;
    }

    #problema .problem-v2-reframe strong {
        display: block;
        color: #fff;
        font: 700 0.94rem/1.42 "DM Sans", sans-serif;
        letter-spacing: -0.01em;
    }

    #problema .problem-v2-panel {
        position: relative;
        padding: clamp(24px, 3.4vw, 36px);
        border: 1px solid rgba(76, 32, 96, 0.10);
        border-radius: 28px;
        background: rgba(249, 246, 251, 0.92);
        box-shadow:
            0 30px 75px rgba(49, 20, 61, 0.11),
            inset 0 1px 0 rgba(255, 255, 255, 0.85);
        backdrop-filter: blur(10px);
    }

    #problema .problem-v2-panel::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        border-radius: inherit;
        background: linear-gradient(135deg, rgba(129, 55, 174, 0.07), transparent 30%, transparent 72%, rgba(129, 55, 174, 0.05));
    }

    #problema .problem-v2-panel-head {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 18px;
        margin-bottom: 18px;
        padding-bottom: 18px;
        border-bottom: 1px solid rgba(72, 32, 91, 0.09);
    }

    #problema .problem-v2-panel-head strong {
        display: block;
        color: #2a1832;
        font: 800 clamp(1.08rem, 1.7vw, 1.3rem)/1.2 "Manrope", sans-serif;
        letter-spacing: -0.025em;
    }

    #problema .problem-v2-panel-head span {
        display: block;
        margin-top: 4px;
        color: #786c7d;
        font: 500 0.78rem/1.35 "DM Sans", sans-serif;
    }

    #problema .problem-v2-panel-tag {
        flex: 0 0 auto;
        min-height: 28px;
        display: inline-flex;
        align-items: center;
        padding: 0 10px;
        border-radius: 999px;
        background: #eee2f5;
        color: #682795;
        font: 800 0.61rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    #problema .problem-v2-flow {
        position: relative;
        z-index: 1;
        display: grid;
        gap: 11px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    #problema .problem-v2-step {
        display: grid;
        grid-template-columns: 50px 1fr;
        align-items: center;
        gap: 15px;
        min-width: 0;
        padding: 16px 17px 20px;
        border: 1px solid rgba(74, 35, 91, 0.085);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.88);
        box-shadow: 0 8px 24px rgba(45, 18, 57, 0.045);
        position: relative;
        cursor: pointer;
        transition: transform 260ms ease, border-color 260ms ease, box-shadow 260ms ease, background 260ms ease;
    }

    #problema .problem-v2-step:hover:not(.is-active) {
        border-color: rgba(110, 42, 155, 0.20);
        background: rgba(255, 255, 255, 0.97);
    }

    #problema .problem-v2-step:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.35);
        outline-offset: 3px;
    }

    #problema .problem-v2-step-progress {
        position: absolute;
        left: 15px;
        right: 15px;
        bottom: 7px;
        height: 3px;
        border-radius: 999px;
        background: rgba(104, 39, 148, 0.10);
        overflow: hidden;
    }

    #problema .problem-v2-step:not(.is-active) .problem-v2-step-progress {
        display: none;
    }

    #problema .problem-v2-step-progress-fill {
        display: block;
        height: 100%;
        width: 0%;
        border-radius: inherit;
        background: linear-gradient(90deg, #8f46c0, #5e218d);
        transition: width 10000ms linear;
    }

    #problema .problem-v2-content {
        transition: opacity 220ms ease;
    }

    #problema .problem-v2-content.is-fading {
        opacity: 0;
    }

    #problema .problem-v2-step.is-active {
        border-color: rgba(110, 42, 155, 0.34);
        background: linear-gradient(135deg, #f8eefc 0%, #ffffff 100%);
        box-shadow: 0 16px 36px rgba(64, 25, 86, 0.13);
        transform: translateX(4px);
    }

    #problema .problem-v2-number {
        width: 50px;
        height: 50px;
        display: grid;
        place-items: center;
        border-radius: 14px;
        background: linear-gradient(145deg, #f0e3f7 0%, #e7d5f1 100%);
        color: #682795;
        font: 800 0.78rem/1 "Manrope", sans-serif;
        letter-spacing: 0.04em;
        transition: background 260ms ease, color 260ms ease;
    }

    #problema .problem-v2-step.is-active .problem-v2-number {
        background: linear-gradient(145deg, #7e35ad 0%, #5e218d 100%);
        color: #fff;
    }

    #problema .problem-v2-step h3 {
        margin: 0;
        color: #2c1a33;
        font: 800 0.98rem/1.25 "Manrope", sans-serif;
        letter-spacing: -0.018em;
    }

    #problema .problem-v2-step p {
        margin: 5px 0 0;
        color: #716575;
        font: 500 0.79rem/1.48 "DM Sans", sans-serif;
    }

    #problema .problem-v2-conclusion span {
        display: inline-block;
        transition: opacity 220ms ease;
    }

    #problema .problem-v2-conclusion span.is-fading {
        opacity: 0;
    }

    #problema .problem-v2-conclusion {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: flex-start;
        gap: 10px;
        margin-top: 16px;
        padding: 15px 16px;
        border: 1px solid rgba(102, 39, 146, 0.11);
        border-radius: 14px;
        background: #f1e7f7;
        color: #53345f;
        font: 700 0.81rem/1.45 "DM Sans", sans-serif;
    }

    #problema .problem-v2-conclusion svg {
        flex: 0 0 auto;
        margin-top: 1px;
        color: #6b2998;
    }

    @media (max-width: 980px) {
        #problema .problem-v2-grid {
            grid-template-columns: 1fr;
            gap: 38px;
        }

        #problema .problem-v2-content {
            max-width: 720px;
        }

        #problema .problem-v2-content h2,
        #problema .problem-v2-lead {
            max-width: 700px;
        }
    }

    @media (max-width: 640px) {
        #problema.problem-v2 {
            padding: 64px 0 70px !important;
        }

        #problema .problem-v2-grid {
            gap: 30px;
        }

        #problema .problem-v2-content h2 {
            font-size: clamp(2rem, 10vw, 2.75rem);
            line-height: 1.07;
        }

        #problema .problem-v2-lead {
            margin-top: 17px;
            font-size: 0.96rem;
            line-height: 1.58;
        }

        #problema .problem-v2-reframe {
            grid-template-columns: 40px 1fr;
            gap: 12px;
            margin-top: 23px;
            padding: 17px;
            border-radius: 15px;
        }

        #problema .problem-v2-reframe-icon {
            width: 40px;
            height: 40px;
            border-radius: 11px;
        }

        #problema .problem-v2-reframe strong {
            font-size: 0.86rem;
        }

        #problema .problem-v2-panel {
            padding: 17px;
            border-radius: 20px;
        }

        #problema .problem-v2-panel-head {
            align-items: flex-start;
            flex-direction: column;
            gap: 10px;
            margin-bottom: 14px;
            padding-bottom: 14px;
        }

        #problema .problem-v2-step {
            grid-template-columns: 42px 1fr;
            gap: 12px;
            padding: 14px;
            border-radius: 14px;
        }

        #problema .problem-v2-number {
            width: 42px;
            height: 42px;
            border-radius: 12px;
            font-size: 0.70rem;
        }

        #problema .problem-v2-step h3 {
            font-size: 0.91rem;
        }

        #problema .problem-v2-step p {
            font-size: 0.75rem;
            line-height: 1.43;
        }

        #problema .problem-v2-conclusion span {
            display: inline-block;
            transition: opacity 220ms ease;
        }

        #problema .problem-v2-conclusion span.is-fading {
            opacity: 0;
        }

        #problema .problem-v2-conclusion {
            font-size: 0.76rem;
        }
    }



    /* TRANSFORMAÇÃO 2026 — desejo concreto, leitura editorial e ponte para o produto */
    #transformacao.desire-section-v3 {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        padding: clamp(78px, 9vw, 124px) 0 !important;
        background:
            radial-gradient(circle at 7% 12%, rgba(132, 59, 184, 0.12), transparent 28%),
            radial-gradient(circle at 94% 84%, rgba(191, 145, 224, 0.14), transparent 28%),
            linear-gradient(180deg, #fbf9fd 0%, #fbf9fd 100%);
    }

    #transformacao.desire-section-v3::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        opacity: 0.38;
        background-image: radial-gradient(rgba(76, 29, 108, 0.12) 0.7px, transparent 0.7px);
        background-size: 25px 25px;
        -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 42%);
        mask-image: linear-gradient(to bottom, #000 0%, transparent 42%);
    }

    #transformacao .transformation-v3-shell {
        position: relative;
        z-index: 1;
        width: min(1180px, calc(100% - 40px));
        margin-inline: auto;
    }

    #transformacao .transformation-v3-heading {
        max-width: 900px;
        margin: 0 auto clamp(34px, 5vw, 58px);
        text-align: center;
    }

    #transformacao .transformation-v3-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 32px;
        margin-bottom: 16px;
        padding: 0 13px;
        border: 1px solid rgba(94, 33, 141, 0.14);
        border-radius: 999px;
        background: rgba(94, 33, 141, 0.06);
        color: #6a2697;
        font: 800 0.69rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

    #transformacao .transformation-v3-eyebrow::before {
        content: "";
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: #8f46c0;
        box-shadow: 0 0 0 5px rgba(143, 70, 192, 0.09);
    }

    #transformacao .transformation-v3-heading h2 {
        max-width: 860px;
        margin: 0 auto;
        color: #211329;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2.25rem, 4.8vw, 4rem);
        font-weight: 800;
        line-height: 1.03;
        letter-spacing: -0.052em;
        text-wrap: balance;
    }

    #transformacao .transformation-v3-heading h2 span {
        color: #702ca0;
    }

    #transformacao .transformation-v3-heading p {
        max-width: 720px;
        margin: 20px auto 0;
        color: #6a5e70;
        font: 500 clamp(1rem, 1.6vw, 1.12rem)/1.62 "DM Sans", sans-serif;
        text-wrap: balance;
    }

    #transformacao .transformation-v3-stage {
        display: grid;
        grid-template-columns: minmax(300px, 0.87fr) minmax(420px, 1.13fr);
        overflow: hidden;
        border: 1px solid rgba(67, 31, 83, 0.12);
        border-radius: 30px;
        background: #fff;
        box-shadow: 0 34px 90px rgba(48, 20, 62, 0.13);
    }

    #transformacao .transformation-v3-visual {
        position: relative;
        min-height: 640px;
        overflow: hidden;
        margin: 0;
        background: #2a1234;
        transition: opacity 260ms ease;
    }

    #transformacao .transformation-v3-visual.is-fading {
        opacity: 0.35;
    }

    #transformacao .transformation-v3-visual::after {
        content: "";
        position: absolute;
        inset: 0;
        background:
            linear-gradient(180deg, rgba(19, 8, 25, 0.08) 20%, rgba(19, 8, 25, 0.30) 60%, rgba(19, 8, 25, 0.94) 100%),
            linear-gradient(90deg, rgba(80, 31, 113, 0.18), transparent 55%);
        pointer-events: none;
    }

    #transformacao .transformation-v3-visual img {
        width: 100%;
        height: 100%;
        min-height: 640px;
        display: block;
        object-fit: cover;
        object-position: center 44%;
        filter: saturate(0.88) contrast(1.02);
        transform: scale(1.015);
    }

    #transformacao .transformation-v3-visual-copy {
        position: absolute;
        left: clamp(24px, 4vw, 42px);
        right: clamp(24px, 4vw, 42px);
        bottom: clamp(26px, 4vw, 42px);
        z-index: 2;
        color: #fff;
    }

    #transformacao .transformation-v3-visual-label {
        display: inline-flex;
        align-items: center;
        min-height: 29px;
        margin-bottom: 13px;
        padding: 0 10px;
        border: 1px solid rgba(255, 255, 255, 0.20);
        border-radius: 999px;
        background: rgba(15, 7, 20, 0.42);
        color: rgba(255, 255, 255, 0.84);
        backdrop-filter: blur(10px);
        font: 800 0.65rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.09em;
        text-transform: uppercase;
    }

    #transformacao .transformation-v3-visual-copy h3 {
        max-width: 470px;
        margin: 0;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.75rem, 3.2vw, 2.75rem);
        font-weight: 800;
        line-height: 1.08;
        letter-spacing: -0.04em;
        text-wrap: balance;
    }

    #transformacao .transformation-v3-visual-copy p {
        max-width: 430px;
        margin: 13px 0 0;
        color: rgba(255, 255, 255, 0.72);
        font: 500 0.93rem/1.55 "DM Sans", sans-serif;
    }

    #transformacao .transformation-v3-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: clamp(34px, 5vw, 64px);
    }

    #transformacao .transformation-v3-overline {
        margin-bottom: 12px;
        color: #772fa6;
        font: 800 0.70rem/1.2 "DM Sans", sans-serif;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

    #transformacao .transformation-v3-content>h3 {
        max-width: 590px;
        margin: 0;
        color: #26162e;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.9rem, 3.5vw, 3rem);
        font-weight: 800;
        line-height: 1.07;
        letter-spacing: -0.045em;
        text-wrap: balance;
    }

    #transformacao .transformation-v3-intro {
        max-width: 600px;
        margin: 15px 0 0;
        color: #6b6070;
        font: 500 1rem/1.58 "DM Sans", sans-serif;
    }

    #transformacao .transformation-v3-moments {
        display: grid;
        gap: 10px;
        margin-top: 27px;
    }

    #transformacao .transformation-v3-moment {
        position: relative;
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: start;
        gap: 14px;
        padding: 17px 18px 21px;
        border: 1px solid rgba(68, 33, 82, 0.10);
        border-radius: 16px;
        background: #fcfafc;
        cursor: pointer;
        transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
    }

    #transformacao .transformation-v3-moment:hover {
        transform: translateY(-2px);
        border-color: rgba(110, 44, 153, 0.20);
        box-shadow: 0 14px 32px rgba(59, 24, 72, 0.08);
    }

    #transformacao .transformation-v3-moment:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.32);
        outline-offset: 3px;
    }

    #transformacao .transformation-v3-moment.is-active {
        border-color: rgba(110, 42, 155, 0.32);
        background: linear-gradient(135deg, #f8eefc 0%, #ffffff 100%);
        box-shadow: 0 16px 36px rgba(64, 25, 86, 0.12);
    }

    #transformacao .transformation-v3-moment.is-active .transformation-v3-icon {
        background: linear-gradient(145deg, #7e35ad 0%, #5e218d 100%);
        color: #fff;
    }

    #transformacao .transformation-v3-moment-progress {
        position: absolute;
        left: 17px;
        right: 17px;
        bottom: 6px;
        height: 3px;
        border-radius: 999px;
        background: rgba(104, 39, 148, 0.10);
        overflow: hidden;
    }

    #transformacao .transformation-v3-moment:not(.is-active) .transformation-v3-moment-progress {
        display: none;
    }

    #transformacao .transformation-v3-moment-progress-fill {
        display: block;
        height: 100%;
        width: 0%;
        border-radius: inherit;
        background: linear-gradient(90deg, #8f46c0, #5e218d);
        transition: width 10000ms linear;
    }

    #transformacao .transformation-v3-icon {
        width: 42px;
        height: 42px;
        display: grid;
        place-items: center;
        border-radius: 12px;
        background: #efe3f5;
        color: #65278f;
        flex: 0 0 auto;
        transition: background 220ms ease, color 220ms ease;
    }

    #transformacao .transformation-v3-moment h4 {
        margin: 1px 0 0;
        color: #2c1b34;
        font: 800 0.98rem/1.25 "Manrope", sans-serif;
        letter-spacing: -0.018em;
    }

    #transformacao .transformation-v3-moment p {
        margin: 5px 0 0;
        color: #736878;
        font: 500 0.84rem/1.46 "DM Sans", sans-serif;
    }

    #transformacao .transformation-v3-transition {
        display: grid;
        grid-template-columns: 1fr auto;
        align-items: center;
        gap: 20px;
        margin-top: 25px;
        padding-top: 24px;
        border-top: 1px solid rgba(71, 35, 87, 0.10);
    }

    #transformacao .transformation-v3-transition strong {
        display: block;
        color: #2b1933;
        font: 800 0.90rem/1.3 "DM Sans", sans-serif;
    }

    #transformacao .transformation-v3-transition>div>span {
        display: block;
        margin-top: 4px;
        color: #776b7c;
        font: 500 0.78rem/1.4 "DM Sans", sans-serif;
    }

    #transformacao .transformation-v3-link {
        min-height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        padding: 0 17px;
        border: 1px solid rgba(102, 39, 145, 0.16);
        border-radius: 12px;
        background: #f4eaf9;
        color: #5e218d;
        font: 800 0.80rem/1 "DM Sans", sans-serif;
        text-decoration: none;
        white-space: nowrap;
        transition: transform 180ms ease, background 180ms ease;
    }

    #transformacao .transformation-v3-link:hover {
        transform: translateY(-2px);
        background: #ecdcf4;
    }

    #transformacao .transformation-v3-link:focus-visible {
        outline: 3px solid rgba(111, 43, 157, 0.24);
        outline-offset: 4px;
    }

    @media (max-width: 920px) {
        #transformacao .transformation-v3-stage {
            grid-template-columns: 1fr;
        }

        #transformacao .transformation-v3-visual,
        #transformacao .transformation-v3-visual img {
            min-height: 510px;
        }

        #transformacao .transformation-v3-content {
            padding: 42px;
        }
    }

    @media (max-width: 620px) {
        #transformacao.desire-section-v3 {
            padding: 64px 0 72px !important;
        }

        #transformacao .transformation-v3-shell {
            width: min(100% - 24px, 1180px);
        }

        #transformacao .transformation-v3-heading {
            margin-bottom: 30px;
            text-align: left;
        }

        #transformacao .transformation-v3-heading h2 {
            font-size: clamp(2.05rem, 10.2vw, 2.85rem);
            line-height: 1.04;
        }

        #transformacao .transformation-v3-heading p {
            margin-top: 15px;
            font-size: 0.96rem;
            line-height: 1.52;
        }

        #transformacao .transformation-v3-stage {
            border-radius: 22px;
        }

        #transformacao .transformation-v3-visual,
        #transformacao .transformation-v3-visual img {
            min-height: 430px;
        }

        #transformacao .transformation-v3-visual-copy {
            left: 22px;
            right: 22px;
            bottom: 24px;
        }

        #transformacao .transformation-v3-visual-copy h3 {
            font-size: 1.85rem;
        }

        #transformacao .transformation-v3-content {
            padding: 30px 20px 24px;
        }

        #transformacao .transformation-v3-content>h3 {
            font-size: 2rem;
        }

        #transformacao .transformation-v3-intro {
            font-size: 0.93rem;
        }

        #transformacao .transformation-v3-moments {
            margin-top: 22px;
        }

        #transformacao .transformation-v3-moment {
            gap: 12px;
            padding: 15px;
        }

        #transformacao .transformation-v3-icon {
            width: 38px;
            height: 38px;
            border-radius: 10px;
        }

        #transformacao .transformation-v3-transition {
            grid-template-columns: 1fr;
            gap: 15px;
        }

        #transformacao .transformation-v3-link {
            width: 100%;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #transformacao .transformation-v3-moment,
        #transformacao .transformation-v3-link {
            transition: none !important;
        }
    }

    /* SEÇÃO 5 — ROTINA E CONTINUIDADE */
    #como-usar.routine-v2 {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        padding: clamp(78px, 9vw, 124px) 0 !important;
        background:
            radial-gradient(circle at 8% 8%, rgba(128, 55, 178, 0.11), transparent 30%),
            radial-gradient(circle at 92% 88%, rgba(97, 35, 139, 0.08), transparent 29%),
            linear-gradient(180deg, #fbf9fd 0%, #fbf9fd 100%);
    }

    #como-usar.routine-v2::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -2;
        pointer-events: none;
        opacity: 0.52;
        background-image: radial-gradient(rgba(83, 34, 113, 0.13) 0.7px, transparent 0.7px);
        background-size: 25px 25px;
        -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 38%, transparent 70%, #000 100%);
        mask-image: linear-gradient(to bottom, #000 0%, transparent 38%, transparent 70%, #000 100%);
    }

    #como-usar.routine-v2::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 42%;
        z-index: -1;
        width: min(900px, 84vw);
        height: 280px;
        transform: translate(-50%, -50%);
        border-radius: 50%;
        background: rgba(123, 48, 173, 0.055);
        filter: blur(70px);
        pointer-events: none;
    }

    #como-usar .routine-v2-heading {
        max-width: 890px;
        margin: 0 auto clamp(38px, 5vw, 58px);
        text-align: center;
    }

    #como-usar .routine-v2-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 32px;
        margin-bottom: 16px;
        padding: 0 13px;
        border: 1px solid rgba(94, 33, 141, 0.14);
        border-radius: 999px;
        background: rgba(94, 33, 141, 0.055);
        color: #662792;
        font: 800 0.69rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.105em;
        text-transform: uppercase;
    }

    #como-usar .routine-v2-eyebrow-dot {
        width: 7px;
        height: 7px;
        flex: 0 0 auto;
        border-radius: 50%;
        background: #8b3cba;
        box-shadow: 0 0 0 5px rgba(139, 60, 186, 0.09);
    }

    #como-usar .routine-v2-heading h2 {
        max-width: 860px;
        margin: 0 auto;
        color: #211329;
        font-family: "Manrope", sans-serif;
        font-size: clamp(2.1rem, 4.7vw, 4rem);
        font-weight: 800;
        line-height: 1.035;
        letter-spacing: -0.052em;
        text-wrap: balance;
    }

    #como-usar .routine-v2-heading h2 span {
        display: block;
        color: #6d2999;
    }

    #como-usar .routine-v2-heading>p {
        max-width: 700px;
        margin: 20px auto 0;
        color: #685c6e;
        font: 500 clamp(0.98rem, 1.6vw, 1.1rem)/1.62 "DM Sans", sans-serif;
        text-wrap: balance;
    }

    #como-usar .routine-v2-layout {
        display: grid;
        grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr);
        gap: clamp(20px, 3vw, 32px);
        align-items: stretch;
    }

    #como-usar .routine-v2-steps {
        position: relative;
        display: grid;
        gap: 14px;
        padding: clamp(18px, 2.5vw, 28px);
        border: 1px solid rgba(69, 31, 88, 0.10);
        border-radius: 26px;
        background: rgba(255, 255, 255, 0.82);
        box-shadow:
            0 24px 70px rgba(51, 20, 67, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.92);
        backdrop-filter: blur(14px);
    }

    #como-usar .routine-v2-steps::before {
        content: "";
        position: absolute;
        top: 72px;
        bottom: 72px;
        left: clamp(48px, 5vw, 59px);
        width: 1px;
        background: linear-gradient(to bottom, rgba(112, 43, 154, 0.08), rgba(112, 43, 154, 0.26), rgba(112, 43, 154, 0.08));
        pointer-events: none;
    }

    #como-usar .routine-v2-step {
        position: relative;
        display: grid;
        grid-template-columns: 48px 48px minmax(0, 1fr);
        align-items: start;
        gap: 15px;
        min-height: 146px;
        padding: 21px;
        overflow: hidden;
        border: 1px solid rgba(74, 32, 94, 0.09);
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 9px 28px rgba(52, 21, 68, 0.045);
        transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
    }

    #como-usar .routine-v2-step::after {
        content: "";
        position: absolute;
        right: -44px;
        bottom: -54px;
        width: 130px;
        height: 130px;
        border-radius: 50%;
        background: rgba(112, 43, 154, 0.045);
        pointer-events: none;
    }

    #como-usar .routine-v2-step:hover {
        transform: translateY(-3px);
        border-color: rgba(110, 42, 155, 0.18);
        box-shadow: 0 15px 38px rgba(52, 21, 68, 0.08);
    }

    #como-usar .routine-v2-step-marker {
        position: relative;
        z-index: 2;
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        border: 1px solid rgba(99, 37, 139, 0.13);
        border-radius: 14px;
        background: #f5edf9;
        color: #6a2796;
        box-shadow: 0 7px 18px rgba(92, 31, 130, 0.08);
    }

    #como-usar .routine-v2-step-marker span {
        font: 800 0.73rem/1 "Manrope", sans-serif;
        letter-spacing: 0.04em;
    }

    #como-usar .routine-v2-step-icon {
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        border-radius: 14px;
        background: #25102f;
        color: #ead5f7;
        box-shadow: 0 10px 24px rgba(35, 15, 45, 0.16);
    }

    #como-usar .routine-v2-step-copy {
        position: relative;
        z-index: 1;
        min-width: 0;
        padding-top: 1px;
    }

    #como-usar .routine-v2-step-label {
        display: block;
        margin-bottom: 7px;
        color: #7b398f;
        font: 800 0.64rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.095em;
        text-transform: uppercase;
    }

    #como-usar .routine-v2-step h3 {
        margin: 0;
        color: #2a1832;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.12rem, 1.7vw, 1.34rem);
        line-height: 1.18;
        letter-spacing: -0.026em;
    }

    #como-usar .routine-v2-step p {
        max-width: 560px;
        margin: 8px 0 0;
        color: #6b6070;
        font: 500 0.89rem/1.52 "DM Sans", sans-serif;
    }

    /* Stepper interativo de rotina — inspirado no Stepper (React Bits), adaptado para CSS/JS puro */
    #como-usar .routine-stepper {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: clamp(22px, 3vw, 32px);
        padding: clamp(26px, 3vw, 36px);
        border: 1px solid rgba(42, 24, 50, 0.08);
        border-radius: 20px;
        background: #ffffff;
        box-shadow: 0 18px 44px rgba(30, 12, 46, 0.06);
    }

    #como-usar .routine-stepper-nav {
        display: flex;
        align-items: flex-start;
        gap: 0;
    }

    #como-usar .routine-stepper-node {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        flex: 0 0 auto;
        width: 100px;
        background: none;
        border: none;
        padding: 4px;
        cursor: pointer;
        font-family: "DM Sans", sans-serif;
    }

    #como-usar .routine-stepper-node-circle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 1.5px solid rgba(42, 24, 50, 0.16);
        color: #a698ab;
        background: #fff;
        font: 700 0.75rem/1 "Manrope", sans-serif;
        transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
    }

    #como-usar .routine-stepper-node-circle svg {
        width: 14px;
        height: 14px;
    }

    #como-usar .routine-stepper-node-label {
        font: 600 0.72rem/1.25 "DM Sans", sans-serif;
        color: #a698ab;
        text-align: center;
        transition: color 0.25s ease;
    }

    #como-usar .routine-stepper-node.is-active .routine-stepper-node-circle {
        background: #6d2999;
        border-color: #6d2999;
        color: #fff;
    }

    #como-usar .routine-stepper-node.is-active .routine-stepper-node-label {
        color: #2a1832;
        font-weight: 700;
    }

    #como-usar .routine-stepper-node.is-complete .routine-stepper-node-circle {
        background: #fff;
        border-color: #6d2999;
        color: #6d2999;
    }

    #como-usar .routine-stepper-connector {
        position: relative;
        flex: 1 1 auto;
        align-self: flex-start;
        margin-top: 22px;
        height: 1.5px;
        background: rgba(42, 24, 50, 0.1);
        border-radius: 2px;
        overflow: hidden;
    }

    #como-usar .routine-stepper-connector::after {
        content: "";
        position: absolute;
        inset: 0;
        width: 0%;
        background: #6d2999;
        transition: width 0.4s ease;
    }

    #como-usar .routine-stepper-connector.is-complete::after {
        width: 100%;
    }

    #como-usar .routine-stepper-panels {
        position: relative;
        min-height: 130px;
    }

    #como-usar .routine-stepper-panel {
        display: none;
        align-items: flex-start;
        gap: 18px;
        animation: routineStepFade 0.35s ease;
    }

    #como-usar .routine-stepper-panel.is-active {
        display: flex;
    }

    @keyframes routineStepFade {
        from {
            opacity: 0;
            transform: translateX(10px);
        }

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

    #como-usar .routine-stepper-panel-icon {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 46px;
        height: 46px;
        border-radius: 12px;
        color: #6d2999;
        background: #f4f1f7;
        border: 1px solid rgba(42, 24, 50, 0.06);
    }

    #como-usar .routine-stepper-panel-label {
        display: block;
        margin-bottom: 6px;
        color: #6d2999;
        font: 700 0.7rem/1 "Manrope", sans-serif;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    #como-usar .routine-stepper-panel h3 {
        margin: 0;
        color: #2a1832;
        font: 800 1.2rem/1.3 "Manrope", sans-serif;
    }

    #como-usar .routine-stepper-panel p {
        max-width: 480px;
        margin: 8px 0 0;
        color: #6b6070;
        font: 500 0.89rem/1.52 "DM Sans", sans-serif;
    }

    #como-usar .routine-stepper-footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-top: 20px;
        border-top: 1px solid rgba(42, 24, 50, 0.08);
    }

    #como-usar .routine-stepper-back,
    #como-usar .routine-stepper-next {
        font-family: "DM Sans", sans-serif;
        font-weight: 700;
        font-size: 0.9rem;
        border-radius: 12px;
        cursor: pointer;
        transition: opacity 0.2s ease, transform 0.2s ease, background 0.2s ease;
    }

    #como-usar .routine-stepper-back {
        background: none;
        border: none;
        padding: 10px 4px;
        color: #93889a;
    }

    #como-usar .routine-stepper-back:disabled {
        opacity: 0.4;
        cursor: default;
    }

    #como-usar .routine-stepper-back:not(:disabled):hover {
        color: #6d2999;
    }

    #como-usar .routine-stepper-next {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #fff;
        background: linear-gradient(135deg, #8b3fd9, #6d2999);
        box-shadow: 0 10px 22px rgba(109, 41, 153, 0.28);
    }

    #como-usar .routine-stepper-next:hover {
        transform: translateY(-2px);
        box-shadow: 0 14px 28px rgba(46, 16, 101, 0.34);
    }

    #como-usar .routine-stepper-next svg {
        width: 15px;
        height: 15px;
        transition: transform 0.2s ease;
    }

    #como-usar .routine-stepper-next:hover svg {
        transform: translateX(2px);
    }

    @media (max-width: 640px) {
        #como-usar .routine-stepper-node-label {
            display: none;
        }

        #como-usar .routine-stepper-node {
            width: auto;
        }

        #como-usar .routine-stepper-panel {
            flex-direction: column;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        #como-usar .routine-stepper-panel {
            animation: none;
        }
    }

    #como-usar .routine-v2-decision {
        position: relative;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: clamp(30px, 4vw, 48px);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 26px;
        color: #fff;
        background:
            radial-gradient(circle at 92% 8%, rgba(186, 113, 231, 0.24), transparent 34%),
            radial-gradient(circle at 10% 92%, rgba(117, 45, 170, 0.22), transparent 33%),
            linear-gradient(145deg, #281133 0%, #120817 100%);
        box-shadow: 0 30px 80px rgba(33, 12, 44, 0.23);
        isolation: isolate;
    }

    #como-usar .routine-v2-decision::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        opacity: 0.13;
        pointer-events: none;
        background-image:
            linear-gradient(rgba(255, 255, 255, 0.11) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.11) 1px, transparent 1px);
        background-size: 42px 42px;
        -webkit-mask-image: linear-gradient(145deg, #000, transparent 72%);
        mask-image: linear-gradient(145deg, #000, transparent 72%);
    }

    #como-usar .routine-v2-decision::after {
        content: "";
        position: absolute;
        right: -70px;
        bottom: -90px;
        z-index: -1;
        width: 240px;
        height: 240px;
        border-radius: 50%;
        border: 1px solid rgba(223, 190, 247, 0.10);
        box-shadow:
            0 0 0 30px rgba(223, 190, 247, 0.035),
            0 0 0 62px rgba(223, 190, 247, 0.025);
    }

    #como-usar .routine-v2-decision-label {
        width: fit-content;
        display: inline-flex;
        align-items: center;
        min-height: 29px;
        margin-bottom: 17px;
        padding: 0 11px;
        border: 1px solid rgba(226, 195, 250, 0.18);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.075);
        color: #dfc0f4;
        font: 800 0.65rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }

    #como-usar .routine-v2-decision h3 {
        max-width: 470px;
        margin: 0;
        color: #fff;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.8rem, 3vw, 2.65rem);
        line-height: 1.07;
        letter-spacing: -0.045em;
        text-wrap: balance;
    }

    #como-usar .routine-v2-decision>p {
        max-width: 500px;
        margin: 16px 0 0;
        color: rgba(255, 255, 255, 0.68);
        font: 500 0.95rem/1.58 "DM Sans", sans-serif;
    }

    #como-usar .routine-v2-benefits {
        display: grid;
        gap: 10px;
        margin: 24px 0 0;
        padding: 0;
        list-style: none;
    }

    #como-usar .routine-v2-benefits li {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        color: rgba(255, 255, 255, 0.84);
        font: 600 0.86rem/1.42 "DM Sans", sans-serif;
    }

    #como-usar .routine-v2-benefits li>span {
        width: 21px;
        height: 21px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        margin-top: -1px;
        border: 1px solid rgba(225, 191, 248, 0.16);
        border-radius: 50%;
        background: rgba(218, 176, 246, 0.11);
        color: #ddbaf5;
        font-size: 0.67rem;
        font-weight: 900;
    }

    #como-usar .routine-v2-cta {
        min-height: 57px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        margin-top: 27px;
        padding: 0 20px;
        border: 1px solid rgba(255, 255, 255, 0.20);
        border-radius: 13px;
        background: #fff;
        color: #4d196f !important;
        box-shadow: 0 15px 36px rgba(0, 0, 0, 0.24);
        font: 800 0.92rem/1 "DM Sans", sans-serif;
        text-align: center;
        text-decoration: none;
        transition: transform 180ms ease, box-shadow 180ms ease;
    }

    #como-usar .routine-v2-cta:hover {
        transform: translateY(-2px);
        box-shadow: 0 19px 42px rgba(0, 0, 0, 0.31);
    }

    #como-usar .routine-v2-cta:focus-visible {
        outline: 3px solid #d9b7f5;
        outline-offset: 4px;
    }

    #como-usar .routine-v2-trust {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 9px 15px;
        margin-top: 15px;
        color: rgba(255, 255, 255, 0.55);
        font: 700 0.65rem/1.25 "DM Sans", sans-serif;
    }

    #como-usar .routine-v2-trust span {
        display: inline-flex;
        align-items: center;
        gap: 6px;
    }

    #como-usar .routine-v2-trust svg {
        color: #cda7e8;
        flex: 0 0 auto;
    }

    #como-usar .routine-v2-closing {
        max-width: 940px;
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 20px;
        margin: clamp(34px, 5vw, 52px) auto 0;
        text-align: center;
    }

    #como-usar .routine-v2-closing-line {
        height: 1px;
        background: linear-gradient(90deg, transparent, rgba(86, 37, 109, 0.18));
    }

    #como-usar .routine-v2-closing-line:last-child {
        background: linear-gradient(90deg, rgba(86, 37, 109, 0.18), transparent);
    }

    #como-usar .routine-v2-closing p {
        margin: 0;
        color: #6b5e70;
        font: 600 0.84rem/1.45 "DM Sans", sans-serif;
    }

    #como-usar .routine-v2-closing strong {
        color: #37213f;
        font-weight: 800;
    }

    @media (max-width: 980px) {
        #como-usar .routine-v2-layout {
            grid-template-columns: 1fr;
        }

        #como-usar .routine-v2-decision {
            min-height: 500px;
        }

        #como-usar .routine-v2-decision h3,
        #como-usar .routine-v2-decision>p {
            max-width: 640px;
        }
    }

    @media (max-width: 680px) {
        #como-usar.routine-v2 {
            padding: 64px 0 72px !important;
        }

        #como-usar .container {
            width: min(100% - 24px, var(--container, 1180px));
        }

        #como-usar .routine-v2-heading {
            margin-bottom: 30px;
        }

        #como-usar .routine-v2-heading h2 {
            font-size: clamp(2rem, 10.3vw, 2.85rem);
            line-height: 1.045;
            letter-spacing: -0.046em;
        }

        #como-usar .routine-v2-heading>p {
            margin-top: 16px;
            font-size: 0.94rem;
            line-height: 1.52;
        }

        #como-usar .routine-v2-steps {
            gap: 11px;
            padding: 12px;
            border-radius: 21px;
        }

        #como-usar .routine-v2-steps::before {
            display: none;
        }

        #como-usar .routine-v2-step {
            grid-template-columns: 42px minmax(0, 1fr);
            gap: 12px;
            min-height: 0;
            padding: 17px;
            border-radius: 15px;
        }

        #como-usar .routine-v2-step-marker {
            width: 42px;
            height: 42px;
            border-radius: 12px;
        }

        #como-usar .routine-v2-step-icon {
            position: absolute;
            top: 16px;
            right: 16px;
            width: 36px;
            height: 36px;
            border-radius: 11px;
            opacity: 0.92;
        }

        #como-usar .routine-v2-step-icon svg {
            width: 18px;
            height: 18px;
        }

        #como-usar .routine-v2-step-copy {
            padding-right: 38px;
        }

        #como-usar .routine-v2-step h3 {
            font-size: 1.08rem;
        }

        #como-usar .routine-v2-step p {
            font-size: 0.82rem;
            line-height: 1.48;
        }

        #como-usar .routine-v2-decision {
            min-height: 0;
            padding: 28px 20px 23px;
            border-radius: 21px;
        }

        #como-usar .routine-v2-decision h3 {
            font-size: clamp(1.75rem, 8vw, 2.25rem);
        }

        #como-usar .routine-v2-decision>p {
            font-size: 0.9rem;
        }

        #como-usar .routine-v2-cta {
            width: 100%;
            min-height: 56px;
            padding-inline: 15px;
            font-size: 0.88rem;
        }

        #como-usar .routine-v2-trust {
            display: grid;
            justify-items: center;
            gap: 8px;
        }

        #como-usar .routine-v2-closing {
            grid-template-columns: 1fr;
            gap: 12px;
            margin-top: 30px;
        }

        #como-usar .routine-v2-closing-line {
            width: 76%;
            margin: auto;
        }

        #como-usar .routine-v2-closing-line:last-child {
            display: none;
        }
    }

    @media (max-width: 390px) {
        #como-usar .routine-v2-eyebrow {
            font-size: 0.59rem;
            letter-spacing: 0.075em;
        }

        #como-usar .routine-v2-step {
            padding: 15px;
        }

        #como-usar .routine-v2-step-copy {
            padding-right: 27px;
        }

        #como-usar .routine-v2-step-icon {
            right: 12px;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #como-usar .routine-v2-step,
        #como-usar .routine-v2-cta {
            transition: none !important;
        }
    }


    /* SISTEMA COMPLETO DE BOTÕES PREMIUM
       GlareHover do React Bits adaptado para HTML, CSS e JavaScript. */

    .site-button {
        --button-bg-start: #8b45ba;
        --button-bg-mid: #682690;
        --button-bg-end: #47135f;
        --button-color: #ffffff;
        --button-border: rgba(255, 255, 255, 0.24);
        --button-shadow: rgba(75, 22, 105, 0.28);
        --button-ring: rgba(185, 123, 226, 0.42);
        --button-icon-bg: rgba(255, 255, 255, 0.13);
        --button-icon-border: rgba(255, 255, 255, 0.16);
        --gh-angle: -30deg;
        --gh-duration: 800ms;
        --gh-size: 300%;
        --gh-rgba: rgba(255, 255, 255, 0.30);

        position: relative !important;
        isolation: isolate;
        overflow: hidden !important;
        box-sizing: border-box;
        min-height: 56px;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 15px;
        padding: 7px 9px 7px 22px !important;
        border: 1px solid var(--button-border) !important;
        border-radius: 16px !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.13), transparent 43%),
            linear-gradient(135deg, var(--button-bg-start) 0%, var(--button-bg-mid) 52%, var(--button-bg-end) 100%) !important;
        color: var(--button-color) !important;
        box-shadow:
            0 16px 32px var(--button-shadow),
            0 5px 12px rgba(38, 10, 52, 0.14),
            inset 0 1px 0 rgba(255, 255, 255, 0.28),
            inset 0 -2px 0 rgba(28, 5, 39, 0.20) !important;
        font-family: "DM Sans", sans-serif !important;
        font-weight: 800 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.015em;
        text-decoration: none !important;
        text-align: left;
        text-shadow: 0 1px 1px rgba(27, 6, 37, 0.18);
        cursor: pointer;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
        translate: 0 0;
        scale: 1;
        will-change: translate, scale, box-shadow;
        transition:
            translate 180ms ease,
            scale 180ms ease,
            box-shadow 220ms ease,
            border-color 220ms ease,
            filter 220ms ease !important;
    }

    .site-button::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
        border-radius: inherit;
        background: linear-gradient(var(--gh-angle),
                transparent 56%,
                var(--gh-rgba) 68%,
                rgba(255, 255, 255, 0.05) 75%,
                transparent 100%);
        background-size: var(--gh-size) var(--gh-size);
        background-repeat: no-repeat;
        background-position: -100% -100%;
        transition: background-position var(--gh-duration) cubic-bezier(.2, .75, .25, 1);
    }

    .site-button::after {
        content: "";
        position: absolute;
        inset: 1px;
        z-index: 0;
        pointer-events: none;
        border-radius: calc(16px - 1px);
        border: 1px solid rgba(255, 255, 255, 0.08);
        background:
            radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 0%), rgba(255, 255, 255, 0.12), transparent 34%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.06), transparent 35%);
    }

    .site-button__copy,
    .site-button__icon {
        position: relative;
        z-index: 2;
    }

    .site-button__copy {
        min-width: 0;
        display: grid;
        gap: 3px;
        flex: 1 1 auto;
        justify-items: start;
    }

    .site-button__label {
        color: inherit;
        font: inherit;
        line-height: 1.18;
        text-wrap: balance;
    }

    .site-button__meta {
        color: color-mix(in srgb, currentColor 72%, transparent);
        font: 600 0.66rem/1.2 "DM Sans", sans-serif;
        letter-spacing: 0;
        text-shadow: none;
    }

    .site-button__icon {
        width: 42px;
        height: 42px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        border: 1px solid var(--button-icon-border);
        border-radius: 12px;
        background: var(--button-icon-bg);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.10),
            0 5px 12px rgba(24, 5, 33, 0.11);
        transition: transform 220ms ease, background-color 220ms ease, border-color 220ms ease;
    }

    .site-button__icon svg {
        display: block;
        transition: transform 220ms ease;
    }

    .site-button--large {
        min-height: 64px;
        padding-left: 25px !important;
        border-radius: 18px !important;
        font-size: 0.97rem !important;
    }

    .site-button--large::after {
        border-radius: calc(18px - 1px);
    }

    .site-button--large .site-button__icon {
        width: 46px;
        height: 46px;
        border-radius: 13px;
    }

    .site-button--compact {
        min-height: 48px;
        gap: 10px;
        padding: 5px 6px 5px 16px !important;
        border-radius: 13px !important;
        font-size: 0.82rem !important;
    }

    .site-button--compact::after {
        border-radius: calc(13px - 1px);
    }

    .site-button--compact .site-button__icon {
        width: 36px;
        height: 36px;
        border-radius: 10px;
    }

    @media (hover: hover) and (pointer: fine) {
        .site-button:hover {
            translate: 0 -3px;
            scale: 1.012;
            filter: saturate(1.055) brightness(1.035);
            border-color: color-mix(in srgb, var(--button-border) 72%, white) !important;
            box-shadow:
                0 22px 44px color-mix(in srgb, var(--button-shadow) 88%, transparent),
                0 8px 18px rgba(38, 10, 52, 0.16),
                inset 0 1px 0 rgba(255, 255, 255, 0.31),
                inset 0 -2px 0 rgba(28, 5, 39, 0.16) !important;
        }

        .site-button:hover::before {
            background-position: 100% 100%;
        }

        .site-button:hover .site-button__icon {
            transform: translateX(2px);
            background: color-mix(in srgb, var(--button-icon-bg) 78%, white);
        }

        .site-button:hover .site-button__icon svg {
            transform: translateX(2px);
        }

        .site-button--hero:hover .site-button__icon svg {
            transform: translateY(2px);
        }
    }

    .site-button:active,
    .site-button.is-pressed {
        translate: 0 1px !important;
        scale: 0.988;
        filter: brightness(0.97);
        box-shadow:
            0 8px 17px color-mix(in srgb, var(--button-shadow) 80%, transparent),
            inset 0 3px 7px rgba(25, 5, 36, 0.19) !important;
    }

    .site-button:focus-visible {
        outline: 3px solid var(--button-ring) !important;
        outline-offset: 4px !important;
        box-shadow:
            0 18px 38px var(--button-shadow),
            0 0 0 6px color-mix(in srgb, var(--button-ring) 22%, transparent),
            inset 0 1px 0 rgba(255, 255, 255, 0.26) !important;
    }

    .site-button.is-glare-active::before,
    .site-button:focus-visible::before {
        background-position: 100% 100%;
    }

    .site-button[aria-disabled="false"],
    .site-button.disabled {
        opacity: 0.55;
        pointer-events: none;
        filter: grayscale(0.18);
        box-shadow: none !important;
    }

    .button-ripple {
        position: absolute;
        z-index: 1;
        width: 14px;
        height: 14px;
        pointer-events: none;
        border-radius: 50%;
        background: currentColor;
        opacity: 0.18;
        transform: translate(-50%, -50%) scale(0);
        animation: site-button-ripple 620ms ease-out forwards;
    }

    @keyframes site-button-ripple {
        to {
            opacity: 0;
            transform: translate(-50%, -50%) scale(22);
        }
    }

    /* CTA do topo */
    .site-button--hero {
        --button-bg-start: #c974f2;
        --button-bg-mid: #8b3fd9;
        --button-bg-end: #4a1972;
        --button-color: #ffffff;
        --button-border: rgba(255, 255, 255, 0.55);
        --button-shadow: rgba(155, 65, 224, 0.5);
        --button-ring: rgba(255, 214, 140, 0.9);
        --button-icon-bg: #ffffff;
        --button-icon-border: rgba(255, 255, 255, 0.6);
        --gh-rgba: rgba(255, 255, 255, 0.22);
        position: relative;
        overflow: hidden;
        min-width: min(100%, 480px) !important;
        min-height: 76px !important;
        padding-left: 14px !important;
        padding-right: 34px !important;
        font-size: 1.1rem !important;
        letter-spacing: 0.01em;
        color: #ffffff !important;
        border: 1px solid rgba(255, 255, 255, 0.5) !important;
        box-shadow:
            0 20px 44px rgba(90, 25, 140, 0.42),
            0 6px 16px rgba(38, 10, 52, 0.22),
            inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
        text-shadow: none;
    }

    .site-button--hero::after {
        content: "";
        position: absolute;
        top: 0;
        left: -60%;
        width: 40%;
        height: 100%;
        background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.55), transparent);
        transform: skewX(-20deg);
        animation: ctaShine 3.5s ease-in-out infinite;
        pointer-events: none;
        z-index: 3;
    }

    @keyframes ctaShine {

        0%,
        30% {
            left: -60%;
        }

        55%,
        100% {
            left: 140%;
        }
    }

    .site-button--hero .site-button__icon {
        order: -1;
        width: 54px;
        height: 54px;
        border-radius: 50%;
        color: #7c2ec2;
        box-shadow: 0 8px 18px rgba(77, 23, 108, 0.28), inset 0 0 0 1px rgba(124, 46, 194, 0.12);
    }

    .site-button--hero .site-button__icon svg {
        transform: translateX(1px);
    }

    .site-button--hero:hover .site-button__icon svg {
        transform: translateX(1px) scale(1.08);
    }

    .site-button--hero.cta-pulse {
        animation: ctaPulseHero 3.5s ease-in-out infinite;
    }

    .site-button--hero.cta-pulse:hover,
    .site-button--hero.cta-pulse:focus-visible {
        animation-play-state: paused;
    }

    @keyframes ctaPulseHero {

        0%,
        42%,
        100% {
            transform: scale(1);
            box-shadow: 0 0 0 0 rgba(217, 183, 245, 0.55), 0 12px 30px rgba(90, 25, 140, 0.4);
        }

        7%,
        21%,
        35% {
            transform: scale(1.06);
            box-shadow: 0 0 0 16px rgba(217, 183, 245, 0), 0 14px 34px rgba(90, 25, 140, 0.48);
        }

        14%,
        28% {
            transform: scale(1);
            box-shadow: 0 0 0 0 rgba(217, 183, 245, 0.3), 0 12px 30px rgba(90, 25, 140, 0.4);
        }
    }

    @media (prefers-reduced-motion: reduce) {
        .site-button--hero.cta-pulse {
            animation: none;
        }

        .site-button--hero::after {
            animation: none;
            display: none;
        }
    }

    /* CTA editorial discreto */
    .site-button--secondary {
        --button-bg-start: #ffffff;
        --button-bg-mid: #fbf8fd;
        --button-bg-end: #f5eef9;
        --button-color: #5b207f;
        --button-border: rgba(94, 33, 141, 0.20);
        --button-shadow: rgba(67, 25, 84, 0.10);
        --button-ring: rgba(126, 55, 184, 0.38);
        --button-icon-bg: rgba(94, 33, 141, 0.09);
        --button-icon-border: rgba(94, 33, 141, 0.10);
        --gh-rgba: rgba(105, 39, 148, 0.14);
        color: #5b207f !important;
        text-shadow: none;
        box-shadow:
            0 11px 25px rgba(61, 20, 80, 0.10),
            inset 0 1px 0 #fff,
            inset 0 -2px 0 rgba(94, 33, 141, 0.05) !important;
    }

    /* CTA branco em painéis escuros */
    .site-button--light,
    .site-button--modal {
        --button-bg-start: #ffffff;
        --button-bg-mid: #fbf7fd;
        --button-bg-end: #f0e5f7;
        --button-color: #4c176d;
        --button-border: rgba(222, 193, 241, 0.76);
        --button-shadow: rgba(8, 2, 12, 0.28);
        --button-ring: rgba(220, 183, 246, 0.62);
        --button-icon-bg: #5f2188;
        --button-icon-border: rgba(74, 20, 104, 0.13);
        --gh-rgba: rgba(104, 34, 148, 0.16);
        color: #4c176d !important;
        text-shadow: none;
    }

    .site-button--light .site-button__icon,
    .site-button--modal .site-button__icon {
        color: #fff;
        box-shadow: 0 8px 17px rgba(71, 19, 99, 0.22);
    }

    /* CTA principal roxo */
    .site-button--primary {
        --button-bg-start: #9149bf;
        --button-bg-mid: #6c2994;
        --button-bg-end: #4b1467;
        --button-shadow: rgba(76, 21, 105, 0.27);
    }

    /* Botão de compra principal */
    .site-button--checkout-featured {
        --button-bg-start: #8f45bd;
        --button-bg-mid: #64228e;
        --button-bg-end: #3e0e58;
        --button-border: rgba(255, 255, 255, 0.28);
        --button-shadow: rgba(72, 18, 100, 0.34);
        --button-icon-bg: rgba(255, 255, 255, 0.15);
        min-height: 66px;
        box-shadow:
            0 19px 40px rgba(78, 22, 108, 0.30),
            0 7px 16px rgba(44, 10, 62, 0.18),
            inset 0 1px 0 rgba(255, 255, 255, 0.29),
            inset 0 -3px 0 rgba(28, 5, 39, 0.18) !important;
    }

    .site-button--checkout-featured .site-button__meta::before {
        content: "";
        width: 6px;
        height: 6px;
        display: inline-block;
        margin-right: 6px;
        border-radius: 50%;
        background: #c999f0;
        box-shadow: 0 0 0 4px rgba(201, 153, 240, 0.15);
        vertical-align: 1px;
    }

    /* Botão de maior valor percebido */
    .site-button--checkout-value {
        --button-bg-start: #8741b4;
        --button-bg-mid: #63238b;
        --button-bg-end: #49125f;
        --button-shadow: rgba(75, 21, 102, 0.25);
    }

    /* Opção leve da oferta */
    .site-button--checkout-soft {
        --button-bg-start: #ffffff;
        --button-bg-mid: #fbf8fd;
        --button-bg-end: #f5edf9;
        --button-color: #5e218d;
        --button-border: rgba(94, 33, 141, 0.22);
        --button-shadow: rgba(62, 21, 82, 0.10);
        --button-ring: rgba(126, 55, 184, 0.35);
        --button-icon-bg: rgba(94, 33, 141, 0.09);
        --button-icon-border: rgba(94, 33, 141, 0.12);
        --gh-rgba: rgba(105, 39, 148, 0.15);
        color: #5e218d !important;
        text-shadow: none;
        box-shadow:
            0 10px 22px rgba(63, 22, 82, 0.10),
            inset 0 1px 0 #fff,
            inset 0 -2px 0 rgba(94, 33, 141, 0.06) !important;
    }

    /* Kit longo com tratamento mais sóbrio */
    .site-button--checkout-dark {
        --button-bg-start: #3d174f;
        --button-bg-mid: #2a0f38;
        --button-bg-end: #1b0824;
        --button-shadow: rgba(31, 9, 42, 0.28);
        --button-icon-bg: rgba(220, 184, 244, 0.12);
        --button-icon-border: rgba(220, 184, 244, 0.15);
    }

    /* CTA final */
    .site-button--final {
        --button-bg-start: #ffffff;
        --button-bg-mid: #fbf7fd;
        --button-bg-end: #efe2f7;
        --button-color: #4b166c;
        --button-border: rgba(229, 206, 244, 0.78);
        --button-shadow: rgba(6, 1, 9, 0.31);
        --button-ring: rgba(220, 183, 246, 0.66);
        --button-icon-bg: #5d2087;
        --button-icon-border: rgba(74, 20, 104, 0.15);
        --gh-rgba: rgba(103, 34, 147, 0.17);
        color: #4b166c !important;
        text-shadow: none;
    }

    .site-button--final .site-button__icon {
        color: #fff;
        box-shadow: 0 8px 18px rgba(75, 20, 105, 0.22);
    }

    /* CTA flutuante */
    .site-button--floating {
        --button-bg-start: #8b43b8;
        --button-bg-mid: #64238d;
        --button-bg-end: #43115c;
        --button-shadow: rgba(58, 14, 82, 0.30);
        white-space: nowrap;
    }

    /* Controles de ícone */
    .icon-button {
        position: relative;
        display: grid !important;
        place-items: center;
        padding: 0 !important;
        border: 1px solid rgba(87, 32, 119, 0.14) !important;
        background:
            linear-gradient(180deg, #ffffff, #f7f0fa) !important;
        color: #5d2185 !important;
        box-shadow:
            0 8px 18px rgba(48, 17, 63, 0.09),
            inset 0 1px 0 #fff,
            inset 0 -2px 0 rgba(91, 30, 129, 0.05);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
        transition:
            transform 160ms ease,
            color 160ms ease,
            background 160ms ease,
            border-color 160ms ease,
            box-shadow 160ms ease !important;
    }

    .icon-button--carousel {
        width: 44px !important;
        height: 44px !important;
        border-radius: 13px !important;
    }

    .icon-button--close,
    .icon-button--toast {
        width: 40px !important;
        height: 40px !important;
        border-radius: 12px !important;
    }

    .icon-button--toast {
        width: 34px !important;
        height: 34px !important;
        border-radius: 10px !important;
        color: #5d2185 !important;
        font-size: 1.15rem;
        line-height: 1;
    }

    @media (hover: hover) and (pointer: fine) {
        .icon-button:hover {
            transform: translateY(-2px);
            border-color: rgba(97, 35, 137, 0.28) !important;
            background: linear-gradient(180deg, #ffffff, #efe2f6) !important;
            box-shadow:
                0 12px 24px rgba(48, 17, 63, 0.14),
                inset 0 1px 0 #fff;
        }

        .icon-button--carousel:hover svg {
            transform: translateX(1px);
        }
    }

    .icon-button:active {
        transform: translateY(1px) scale(0.96);
        box-shadow: inset 0 2px 5px rgba(65, 20, 89, 0.10);
    }

    .icon-button:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.35);
        outline-offset: 3px;
    }

    /* FAQ como controle clicável real */
    .faq-button {
        position: relative;
        width: 100%;
        min-height: 68px;
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        padding: 18px 18px 18px 21px !important;
        border: 1px solid transparent !important;
        border-radius: 16px !important;
        background: transparent !important;
        color: #35203e !important;
        font: 800 0.94rem/1.35 "DM Sans", sans-serif !important;
        text-align: left;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
        transition:
            color 180ms ease,
            background-color 180ms ease,
            border-color 180ms ease,
            box-shadow 180ms ease !important;
    }

    .faq-button>span:first-child {
        flex: 1;
    }

    .faq-button .faq-icon {
        width: 36px;
        height: 36px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        border: 1px solid rgba(94, 33, 141, 0.13);
        border-radius: 11px;
        background: #f5edf9;
        color: #64258f;
        font: 500 1.25rem/1 "DM Sans", sans-serif;
        box-shadow: inset 0 1px 0 #fff;
        transition: transform 220ms ease, background-color 180ms ease, color 180ms ease;
    }

    .faq-item.open .faq-button {
        border-color: rgba(94, 33, 141, 0.12) !important;
        background: linear-gradient(180deg, #fdfbfe, #f8f2fb) !important;
        color: #522071 !important;
        box-shadow: inset 0 1px 0 #fff;
    }

    .faq-item.open .faq-button .faq-icon {
        transform: rotate(45deg);
        background: #61228a;
        color: #fff;
        border-color: #61228a;
        box-shadow: 0 7px 16px rgba(76, 24, 106, 0.18);
    }

    @media (hover: hover) and (pointer: fine) {
        .faq-button:hover {
            border-color: rgba(94, 33, 141, 0.10) !important;
            background: #fbf8fd !important;
            color: #5c2281 !important;
        }

        .faq-button:hover .faq-icon {
            transform: translateY(-1px);
            border-color: rgba(94, 33, 141, 0.22);
        }

        .faq-item.open .faq-button:hover .faq-icon {
            transform: rotate(45deg) translateY(-1px);
        }
    }

    .faq-button:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.30);
        outline-offset: 2px;
    }

    /* Link de rastreio com aparência de ação útil */
    .footer-action-link {
        width: fit-content;
        min-height: 38px;
        display: inline-flex !important;
        align-items: center;
        gap: 8px;
        padding: 0 12px;
        border: 1px solid rgba(229, 205, 244, 0.13);
        border-radius: 10px;
        background: rgba(255, 255, 255, 0.055);
        color: rgba(255, 255, 255, 0.84) !important;
        text-decoration: none;
        transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
    }

    @media (hover: hover) and (pointer: fine) {
        .footer-action-link:hover {
            transform: translateY(-1px);
            border-color: rgba(229, 205, 244, 0.24);
            background: rgba(255, 255, 255, 0.09);
        }
    }

    @media (max-width: 680px) {
        .site-button {
            width: 100%;
            max-width: 100%;
            min-height: 56px;
            gap: 12px;
            padding: 7px 7px 7px 17px !important;
            border-radius: 14px !important;
            font-size: 0.88rem !important;
            white-space: normal !important;
        }

        .site-button::after {
            border-radius: calc(14px - 1px);
        }

        #inicio .site-button--hero {
            width: min(100%, 430px) !important;
            max-width: 430px !important;
        }

        #garantia .site-button,
        .final-cta .site-button,
        .modal-content .site-button {
            width: min(100%, 540px);
        }

        .site-button--compact {
            width: auto !important;
            max-width: calc(100vw - 24px) !important;
            min-height: 48px;
            padding-left: 14px !important;
        }

        .site-button--large {
            min-height: 61px;
            padding-left: 18px !important;
            border-radius: 15px !important;
        }

        .site-button--large::after {
            border-radius: calc(15px - 1px);
        }

        .site-button__icon {
            width: 40px;
            height: 40px;
            border-radius: 11px;
        }

        .site-button--large .site-button__icon {
            width: 43px;
            height: 43px;
            border-radius: 12px;
        }

        .site-button__meta {
            font-size: 0.61rem;
        }

        #oferta .alternative-card .site-button {
            min-height: 50px;
            padding-left: 13px !important;
            font-size: 0.78rem !important;
        }

        #oferta .alternative-card .site-button__icon {
            width: 36px;
            height: 36px;
            border-radius: 10px;
        }

        .faq-button {
            min-height: 64px;
            padding: 15px 14px 15px 17px !important;
            border-radius: 14px !important;
            font-size: 0.88rem !important;
        }

        .faq-button .faq-icon {
            width: 34px;
            height: 34px;
            border-radius: 10px;
        }
    }

    @media (max-width: 380px) {
        .site-button {
            padding-left: 14px !important;
            gap: 9px;
            font-size: 0.82rem !important;
        }

        .site-button__icon {
            width: 37px;
            height: 37px;
        }

        .site-button__meta {
            display: none;
        }

        #oferta .alternative-card .site-button__icon {
            width: 34px;
            height: 34px;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        .site-button,
        .site-button::before,
        .site-button__icon,
        .site-button__icon svg,
        .icon-button,
        .faq-button,
        .faq-button .faq-icon,
        .footer-action-link {
            transition: none !important;
        }

        .site-button::before,
        .button-ripple {
            display: none !important;
        }
    }

    /* AJUSTE FINAL DE HARMONIA DOS BOTÕES
       Mantém o CTA principal da oferta intacto. */

    /* Seção 3: botão integrado à paleta clara e seta com estrutura estável */
    #transformacao .transformation-v3-link.site-button--secondary {
        --button-bg-start: #f7f0fb;
        --button-bg-mid: #f1e5f7;
        --button-bg-end: #eadcf3;
        --button-color: #4f1a70;
        --button-border: rgba(100, 36, 142, 0.22);
        --button-shadow: rgba(66, 23, 87, 0.13);
        --button-ring: rgba(126, 55, 184, 0.34);
        --button-icon-bg: #65258f;
        --button-icon-border: rgba(83, 25, 119, 0.16);
        --gh-rgba: rgba(103, 36, 148, 0.15);
        min-width: 255px;
        color: #4f1a70 !important;
        text-shadow: none;
    }

    #transformacao .transformation-v3-link .site-button__copy,
    #transformacao .transformation-v3-link .site-button__label,
    #transformacao .transformation-v3-link .site-button__icon {
        margin-top: 0 !important;
    }

    #transformacao .transformation-v3-link .site-button__copy {
        display: grid !important;
        color: inherit !important;
    }

    #transformacao .transformation-v3-link .site-button__label {
        display: block !important;
        color: inherit !important;
        font: inherit !important;
    }

    #transformacao .transformation-v3-link .site-button__icon {
        width: 40px;
        height: 40px;
        display: grid !important;
        place-items: center;
        flex: 0 0 40px;
        border-radius: 11px;
        color: #ffffff !important;
        background: #65258f !important;
        box-shadow:
            0 7px 15px rgba(79, 22, 111, 0.20),
            inset 0 1px 0 rgba(255, 255, 255, 0.17);
    }

    #transformacao .transformation-v3-link .site-button__icon svg {
        width: 17px;
        height: 17px;
        overflow: visible;
    }

    /* Oferta: todas as opções secundárias usam a mesma linguagem visual */
    #oferta .alternative-card .offer-cta.site-button--checkout-soft {
        --button-bg-start: #ffffff;
        --button-bg-mid: #faf6fc;
        --button-bg-end: #f1e7f6;
        --button-color: #57207b;
        --button-border: rgba(94, 33, 141, 0.22);
        --button-shadow: rgba(61, 20, 82, 0.11);
        --button-ring: rgba(126, 55, 184, 0.34);
        --button-icon-bg: #65258f;
        --button-icon-border: rgba(82, 25, 116, 0.15);
        --gh-rgba: rgba(103, 36, 148, 0.14);
        color: #57207b !important;
        text-shadow: none;
        box-shadow:
            0 11px 24px rgba(59, 20, 78, 0.10),
            inset 0 1px 0 #ffffff,
            inset 0 -2px 0 rgba(94, 33, 141, 0.055) !important;
    }

    #oferta .alternative-card .offer-cta.site-button--checkout-soft .site-button__icon {
        color: #ffffff !important;
        background: #65258f !important;
        border-color: rgba(82, 25, 116, 0.15);
        box-shadow:
            0 7px 15px rgba(76, 21, 106, 0.18),
            inset 0 1px 0 rgba(255, 255, 255, 0.16);
    }

    #oferta .alternative-card.value-card .offer-cta.site-button--checkout-soft {
        border-color: rgba(94, 33, 141, 0.26) !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.13), transparent 43%),
            linear-gradient(135deg, #ffffff 0%, #faf6fc 52%, #f1e7f6 100%) !important;
        color: #57207b !important;
    }

    @media (max-width: 620px) {
        #transformacao .transformation-v3-link.site-button--secondary {
            width: 100%;
            min-width: 0;
        }

        #transformacao .transformation-v3-link .site-button__icon {
            width: 38px;
            height: 38px;
            flex-basis: 38px;
        }
    }

    /* VISUALIZADOR DAS PROVAS SOCIAIS */
    #provas-sociais .proof-media[data-proof-image-open] {
        cursor: zoom-in;
        outline: none;
        isolation: isolate;
    }

    #provas-sociais .proof-media[data-proof-image-open] img {
        transition: none;
        transform: none;
    }

    /* Zoom somente com mouse. No mobile, rolar a página não movimenta a prova social. */
    @media (hover: hover) and (pointer: fine) {
        #provas-sociais .proof-media[data-proof-image-open] img {
            transition: transform 320ms cubic-bezier(.2, .75, .25, 1), filter 320ms ease;
        }

        #provas-sociais .proof-media[data-proof-image-open]:hover img {
            transform: scale(1.045);
            filter: saturate(1.04) contrast(1.02);
        }
    }

    @media (max-width: 860px) {
        #provas-sociais .proof-track {
            overflow-x: auto;
            overflow-y: hidden;
            overscroll-behavior-y: none;
            -webkit-overflow-scrolling: touch;
        }

        #provas-sociais .proof-media,
        #provas-sociais .proof-media img {
            transform: none !important;
        }
    }

    #provas-sociais .proof-media[data-proof-image-open]:focus-visible {
        box-shadow:
            0 0 0 3px #ffffff,
            0 0 0 7px rgba(109, 40, 153, 0.45);
    }

    #provas-sociais .proof-media-zoom {
        position: absolute;
        top: 14px;
        right: 14px;
        z-index: 4;
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 0 13px;
        border: 1px solid rgba(255, 255, 255, 0.28);
        border-radius: 999px;
        background: rgba(25, 10, 35, 0.72);
        color: #ffffff;
        box-shadow: 0 10px 26px rgba(12, 5, 18, 0.22);
        backdrop-filter: blur(12px);
        font: 800 0.70rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.01em;
        transform: translateY(-3px);
        opacity: 0.94;
        transition: transform 220ms ease, background 220ms ease, opacity 220ms ease;
        pointer-events: none;
    }

    #provas-sociais .proof-media[data-proof-image-open]:hover .proof-media-zoom,
    #provas-sociais .proof-media[data-proof-image-open]:focus-visible .proof-media-zoom {
        transform: translateY(0);
        background: rgba(89, 30, 130, 0.88);
        opacity: 1;
    }

    body.proof-lightbox-open {
        overflow: hidden;
        overscroll-behavior: none;
    }

    .proof-lightbox {
        position: fixed;
        inset: 0;
        z-index: 12000;
        display: grid;
        place-items: center;
        padding: clamp(8px, 2vw, 24px);
        opacity: 0;
        visibility: hidden;
        transition: opacity 220ms ease, visibility 220ms ease;
    }

    .proof-lightbox.open {
        opacity: 1;
        visibility: visible;
    }

    .proof-lightbox-backdrop {
        position: absolute;
        inset: 0;
        background:
            radial-gradient(circle at 50% 40%, rgba(103, 41, 145, 0.24), transparent 42%),
            rgba(10, 5, 14, 0.91);
        backdrop-filter: none;
    }

    .proof-lightbox.open .proof-lightbox-backdrop {
        backdrop-filter: blur(18px);
    }

    .proof-lightbox-dialog {
        position: relative;
        z-index: 1;
        width: min(1180px, 100%);
        height: min(900px, calc(100dvh - 32px));
        min-height: 0;
        display: grid;
        grid-template-rows: auto minmax(0, 1fr) auto;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 26px;
        background:
            radial-gradient(circle at 50% 0%, rgba(133, 58, 185, 0.18), transparent 35%),
            #120919;
        box-shadow:
            0 35px 100px rgba(0, 0, 0, 0.56),
            inset 0 1px 0 rgba(255, 255, 255, 0.08);
        transform: translateY(12px) scale(0.985);
        transition: transform 240ms cubic-bezier(.2, .75, .25, 1);
    }

    .proof-lightbox.open .proof-lightbox-dialog {
        transform: translateY(0) scale(1);
    }

    .proof-lightbox-topbar,
    .proof-lightbox-bottombar {
        position: relative;
        z-index: 4;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        padding: 15px 18px;
        border-color: rgba(255, 255, 255, 0.10);
        background: rgba(18, 9, 25, 0.90);
        backdrop-filter: blur(14px);
    }

    .proof-lightbox-topbar {
        border-bottom: 1px solid rgba(255, 255, 255, 0.10);
    }

    .proof-lightbox-bottombar {
        border-top: 1px solid rgba(255, 255, 255, 0.10);
    }

    .proof-lightbox-heading {
        min-width: 0;
        display: grid;
        gap: 3px;
    }

    .proof-lightbox-heading span {
        color: #cfa8ed;
        font: 800 0.62rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

    .proof-lightbox-heading strong {
        overflow: hidden;
        color: #ffffff;
        font: 800 clamp(0.93rem, 1.5vw, 1.05rem)/1.2 "Manrope", sans-serif;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .proof-lightbox-close,
    .proof-lightbox-nav,
    .proof-lightbox-tool {
        appearance: none;
        border: 1px solid rgba(255, 255, 255, 0.15);
        background: rgba(255, 255, 255, 0.08);
        color: #ffffff;
        cursor: pointer;
        transition: transform 180ms ease, background 180ms ease, border-color 180ms ease;
    }

    .proof-lightbox-close {
        width: 44px;
        height: 44px;
        flex: 0 0 auto;
        display: grid;
        place-items: center;
        padding: 0;
        border-radius: 13px;
    }

    .proof-lightbox-close:hover,
    .proof-lightbox-nav:hover,
    .proof-lightbox-tool:hover {
        background: rgba(157, 86, 205, 0.26);
        border-color: rgba(221, 187, 246, 0.34);
    }

    .proof-lightbox-close:active,
    .proof-lightbox-nav:active,
    .proof-lightbox-tool:active {
        transform: scale(0.94);
    }

    .proof-lightbox-close:focus-visible,
    .proof-lightbox-nav:focus-visible,
    .proof-lightbox-tool:focus-visible {
        outline: 3px solid rgba(216, 177, 245, 0.66);
        outline-offset: 3px;
    }

    .proof-lightbox-stage {
        position: relative;
        min-width: 0;
        min-height: 0;
        display: grid;
        place-items: center;
        overflow: auto;
        padding: clamp(18px, 3vw, 34px) clamp(58px, 7vw, 86px);
        scrollbar-width: thin;
        scrollbar-color: rgba(213, 171, 243, 0.42) transparent;
        overscroll-behavior: contain;
    }

    .proof-lightbox-stage::-webkit-scrollbar {
        width: 8px;
        height: 8px;
    }

    .proof-lightbox-stage::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(213, 171, 243, 0.38);
    }

    .proof-lightbox-image {
        width: min(88vw, 1080px);
        max-width: 100%;
        max-height: 72vh;
        display: block;
        object-fit: contain;
        border-radius: 18px;
        box-shadow: 0 28px 72px rgba(0, 0, 0, 0.48);
        cursor: zoom-in;
        user-select: none;
        -webkit-user-drag: none;
        transition: opacity 160ms ease, transform 220ms ease;
    }

    .proof-lightbox-image.is-loading {
        opacity: 0.35;
        transform: scale(0.985);
    }

    .proof-lightbox-image.is-zoomed {
        max-width: none;
        max-height: none;
        cursor: zoom-out;
    }

    .proof-lightbox-nav {
        position: absolute;
        top: 50%;
        z-index: 5;
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        padding: 0;
        border-radius: 50%;
        transform: translateY(-50%);
        background: rgba(21, 9, 29, 0.82);
        box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28);
        backdrop-filter: blur(12px);
    }

    .proof-lightbox-nav:hover {
        transform: translateY(-50%) scale(1.05);
    }

    .proof-lightbox-nav:active {
        transform: translateY(-50%) scale(0.94);
    }

    .proof-lightbox-nav--prev {
        left: 18px;
    }

    .proof-lightbox-nav--next {
        right: 18px;
    }

    .proof-lightbox-caption {
        min-width: 0;
        margin: 0;
        color: rgba(255, 255, 255, 0.72);
        font: 600 0.78rem/1.4 "DM Sans", sans-serif;
    }

    .proof-lightbox-tools {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        gap: 7px;
    }

    .proof-lightbox-tool {
        min-width: 42px;
        height: 40px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        padding: 0 11px;
        border-radius: 11px;
        font: 800 0.72rem/1 "DM Sans", sans-serif;
    }

    .proof-lightbox-zoom-level {
        min-width: 54px;
        color: #ead7fa;
        text-align: center;
        font: 800 0.72rem/1 "DM Sans", sans-serif;
        font-variant-numeric: tabular-nums;
    }

    @media (max-width: 640px) {
        #provas-sociais .proof-media-zoom {
            top: 10px;
            right: 10px;
            min-width: 38px;
            padding: 0 10px;
        }

        #provas-sociais .proof-media-zoom>span {
            display: none;
        }

        .proof-lightbox {
            padding: 6px;
        }

        .proof-lightbox-dialog {
            height: calc(100dvh - 12px);
            border-radius: 19px;
        }

        .proof-lightbox-topbar,
        .proof-lightbox-bottombar {
            padding: 12px;
        }

        .proof-lightbox-heading strong {
            max-width: 68vw;
        }

        .proof-lightbox-stage {
            padding: 14px 48px;
        }

        .proof-lightbox-image {
            width: 88vw;
            max-height: 69vh;
            border-radius: 13px;
        }

        .proof-lightbox-nav {
            width: 42px;
            height: 42px;
        }

        .proof-lightbox-nav--prev {
            left: 8px;
        }

        .proof-lightbox-nav--next {
            right: 8px;
        }

        .proof-lightbox-bottombar {
            align-items: stretch;
            flex-direction: column;
            gap: 10px;
        }

        .proof-lightbox-caption {
            text-align: center;
        }

        .proof-lightbox-tools {
            justify-content: center;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #provas-sociais .proof-media[data-proof-image-open] img,
        #provas-sociais .proof-media-zoom,
        .proof-lightbox,
        .proof-lightbox-dialog,
        .proof-lightbox-image,
        .proof-lightbox-close,
        .proof-lightbox-nav,
        .proof-lightbox-tool {
            transition: none !important;
        }
    }

    /* COPY ENXUTA PARA MOBILE */
    @media (max-width: 520px) {

        .site-button__meta,
        #provas-sociais .proof-context-row,
        #oferta .offer-deadline-note,
        #oferta .featured-scarcity-note,
        #oferta .offer-microcopy,
        .final-cta .microcopy,
        .trust-strip .trust-item span {
            display: none !important;
        }

        #problema .problem-v2-panel-head>div>span,
        #como-usar .routine-v2-decision>p {
            display: none !important;
        }

        #problema .problem-v2-step p,
        #transformacao .transformation-v3-moment p,
        #produto .product-point p,
        #como-usar .routine-v2-step p,
        #provas-sociais .proof-story,
        #faq .faq-answer-inner {
            line-height: 1.45 !important;
        }
    }

    /* CORREÇÃO DOS POPUPS E ELEMENTOS FLUTUANTES NO MOBILE */
    @media (max-width: 760px) {

        html,
        body {
            max-width: 100%;
            overflow-x: clip;
        }

        body.modal-open,
        body.proof-lightbox-open {
            width: 100%;
            overflow: hidden !important;
            overscroll-behavior: none;
        }

        /* Modal de saída */
        #exitModal.modal {
            position: fixed !important;
            top: 0 !important;
            right: 0 !important;
            bottom: auto !important;
            left: 0 !important;
            width: 100vw !important;
            width: 100dvw !important;
            max-width: 100dvw !important;
            height: var(--mobile-viewport-height, 100dvh) !important;
            min-height: 0 !important;
            align-items: center !important;
            justify-content: center !important;
            padding:
                max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
            box-sizing: border-box !important;
            overflow-x: hidden !important;
            overflow-y: auto !important;
            overscroll-behavior: contain;
        }

        #exitModal.modal.open {
            display: flex !important;
        }

        #exitModal .modal-dialog {
            position: relative !important;
            top: auto !important;
            right: auto !important;
            bottom: auto !important;
            left: auto !important;
            width: min(100%, 430px) !important;
            max-width: 100% !important;
            max-height: 100% !important;
            min-width: 0 !important;
            margin: auto !important;
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) !important;
            grid-template-rows: minmax(120px, 158px) auto !important;
            overflow-x: hidden !important;
            overflow-y: auto !important;
            border-radius: 20px !important;
            box-sizing: border-box !important;
            transform: none !important;
            overscroll-behavior: contain;
        }

        #exitModal .modal-image {
            width: 100% !important;
            height: 158px !important;
            min-width: 0 !important;
            min-height: 0 !important;
            overflow: hidden !important;
        }

        #exitModal .modal-image img {
            width: 100% !important;
            height: 100% !important;
            display: block !important;
            object-fit: cover !important;
            object-position: center 42% !important;
        }

        #exitModal .modal-content {
            width: 100% !important;
            min-width: 0 !important;
            padding: 21px 18px 18px !important;
            box-sizing: border-box !important;
            overflow-wrap: anywhere;
        }

        #exitModal .modal-content h2 {
            max-width: 100% !important;
            font-size: clamp(1.55rem, 7.8vw, 2rem) !important;
            line-height: 1.08 !important;
        }

        #exitModal .modal-content p {
            max-width: 100% !important;
            line-height: 1.48 !important;
        }

        #exitModal .modal-content .site-button {
            width: 100% !important;
            max-width: 100% !important;
            min-width: 0 !important;
            box-sizing: border-box !important;
        }

        #exitModal .modal-close {
            position: absolute !important;
            top: 10px !important;
            right: 10px !important;
            left: auto !important;
            z-index: 8 !important;
            margin: 0 !important;
        }

        /* Aviso inferior */
        #activityToast.toast {
            position: fixed !important;
            top: auto !important;
            right: max(12px, env(safe-area-inset-right)) !important;
            bottom: max(12px, env(safe-area-inset-bottom)) !important;
            left: max(12px, env(safe-area-inset-left)) !important;
            width: auto !important;
            max-width: 460px !important;
            min-width: 0 !important;
            margin: 0 auto !important;
            display: grid !important;
            grid-template-columns: auto minmax(0, 1fr) auto !important;
            align-items: center !important;
            gap: 11px !important;
            padding: 12px !important;
            box-sizing: border-box !important;
            overflow: hidden !important;
            transform: translate3d(0, calc(100% + 40px), 0) !important;
            opacity: 0 !important;
            visibility: hidden !important;
            pointer-events: none !important;
            transition:
                transform 260ms cubic-bezier(.2, .75, .25, 1),
                opacity 200ms ease,
                visibility 200ms ease !important;
        }

        #activityToast.toast.show {
            transform: translate3d(0, 0, 0) !important;
            opacity: 1 !important;
            visibility: visible !important;
            pointer-events: auto !important;
        }

        #activityToast.toast>div {
            min-width: 0 !important;
        }

        #activityToast.toast strong,
        #activityToast.toast p {
            max-width: 100% !important;
            overflow-wrap: anywhere;
        }

        #activityToast.toast p {
            margin-right: 0 !important;
        }

        #activityToast .toast-icon,
        #activityToast .toast-close {
            flex: 0 0 auto !important;
        }

        /* Visualizador das provas sociais */
        #proofLightbox.proof-lightbox {
            top: 0 !important;
            right: 0 !important;
            bottom: auto !important;
            left: 0 !important;
            width: 100vw !important;
            width: 100dvw !important;
            max-width: 100dvw !important;
            height: var(--mobile-viewport-height, 100dvh) !important;
            min-height: 0 !important;
            padding:
                max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left)) !important;
            box-sizing: border-box !important;
            overflow: hidden !important;
        }

        #proofLightbox .proof-lightbox-dialog {
            width: 100% !important;
            max-width: 100% !important;
            height: 100% !important;
            max-height: 100% !important;
            min-width: 0 !important;
            min-height: 0 !important;
            margin: auto !important;
            border-radius: 18px !important;
            box-sizing: border-box !important;
            overflow: hidden !important;
        }

        #proofLightbox .proof-lightbox-topbar,
        #proofLightbox .proof-lightbox-bottombar,
        #proofLightbox .proof-lightbox-stage {
            width: 100% !important;
            max-width: 100% !important;
            min-width: 0 !important;
            box-sizing: border-box !important;
        }

        #proofLightbox .proof-lightbox-topbar {
            gap: 10px !important;
            padding: 10px !important;
        }

        #proofLightbox .proof-lightbox-heading {
            min-width: 0 !important;
            max-width: calc(100% - 52px) !important;
        }

        #proofLightbox .proof-lightbox-heading strong {
            max-width: 100% !important;
        }

        #proofLightbox .proof-lightbox-stage {
            padding: 12px 45px !important;
            overflow: auto !important;
            overscroll-behavior: contain;
        }

        #proofLightbox .proof-lightbox-image {
            max-width: 100% !important;
            max-height: 100% !important;
        }

        #proofLightbox .proof-lightbox-image.is-zoomed {
            max-width: none !important;
            max-height: none !important;
        }

        #proofLightbox .proof-lightbox-bottombar {
            align-items: center !important;
            gap: 9px !important;
            padding: 10px !important;
        }

        #proofLightbox .proof-lightbox-caption {
            width: 100% !important;
            max-width: 100% !important;
            text-align: center !important;
            overflow-wrap: anywhere;
        }

        #proofLightbox .proof-lightbox-tools {
            width: 100% !important;
            max-width: 100% !important;
            display: flex !important;
            justify-content: center !important;
            flex-wrap: wrap !important;
            gap: 6px !important;
        }

        #proofLightbox .proof-lightbox-tool {
            min-width: 40px !important;
            max-width: 100% !important;
            padding-inline: 10px !important;
        }

        #proofLightbox .proof-lightbox-nav--prev {
            left: 7px !important;
        }

        #proofLightbox .proof-lightbox-nav--next {
            right: 7px !important;
        }

        /* Barra flutuante de compra */
        #mobileSticky.mobile-sticky {
            right: 0 !important;
            left: 0 !important;
            width: 100% !important;
            max-width: 100vw !important;
            padding-right: max(10px, env(safe-area-inset-right)) !important;
            padding-bottom: max(8px, env(safe-area-inset-bottom)) !important;
            padding-left: max(10px, env(safe-area-inset-left)) !important;
            box-sizing: border-box !important;
        }

        #mobileSticky .mobile-sticky-inner {
            width: min(100%, 560px) !important;
            max-width: 100% !important;
            min-width: 0 !important;
            margin-inline: auto !important;
            box-sizing: border-box !important;
        }
    }

    @media (max-width: 370px) {
        #activityToast.toast {
            grid-template-columns: minmax(0, 1fr) auto !important;
            gap: 8px !important;
            padding: 10px !important;
        }

        #activityToast .toast-icon {
            display: none !important;
        }

        #proofLightbox .proof-lightbox-stage {
            padding-inline: 40px !important;
        }

        #proofLightbox .proof-lightbox-tool {
            height: 38px !important;
            padding-inline: 8px !important;
            font-size: 0.68rem !important;
        }
    }

    @media (max-width: 760px) and (max-height: 620px) {
        #exitModal .modal-dialog {
            grid-template-rows: auto !important;
        }

        #exitModal .modal-image {
            display: none !important;
        }

        #exitModal .modal-content {
            padding-top: 24px !important;
        }
    }


    /* EXIT MODAL 2026 — layout corrigido, responsivo e focado em recuperar abandono */
    #exitModal.modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 10000 !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 100dvh !important;
        display: grid !important;
        place-items: center !important;
        padding: clamp(14px, 3vw, 32px) !important;
        box-sizing: border-box !important;
        overflow: auto !important;
        background:
            radial-gradient(circle at 50% 12%, rgba(143, 70, 215, 0.24), transparent 34%),
            rgba(10, 4, 14, 0.84) !important;
        backdrop-filter: blur(12px) saturate(0.9);
        -webkit-backdrop-filter: blur(12px) saturate(0.9);
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transition: opacity 220ms ease, visibility 220ms ease !important;
        overscroll-behavior: contain;
    }

    #exitModal.modal.open {
        display: grid !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    #exitModal .modal-dialog {
        position: relative !important;
        inset: auto !important;
        width: min(100%, 760px) !important;
        max-width: 760px !important;
        max-height: min(760px, calc(100dvh - 32px)) !important;
        min-width: 0 !important;
        margin: auto !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: clamp(210px, 30vh, 270px) minmax(0, auto) !important;
        overflow: hidden !important;
        border: 1px solid rgba(255, 255, 255, 0.18) !important;
        border-radius: 28px !important;
        background: #ffffff !important;
        box-shadow: 0 38px 110px rgba(0, 0, 0, 0.48) !important;
        transform: translateY(20px) scale(0.975) !important;
        transition: transform 260ms cubic-bezier(.2, .78, .24, 1) !important;
        isolation: isolate;
    }

    #exitModal.modal.open .modal-dialog {
        transform: translateY(0) scale(1) !important;
    }

    #exitModal .modal-image {
        position: relative !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
        background: #1b0a26 !important;
    }

    #exitModal .modal-image::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        background:
            linear-gradient(180deg, rgba(16, 6, 23, 0.04) 20%, rgba(16, 6, 23, 0.88) 100%),
            linear-gradient(90deg, rgba(29, 10, 42, 0.22), transparent 58%);
    }

    #exitModal .modal-image img {
        width: 100% !important;
        height: 100% !important;
        display: block !important;
        object-fit: cover !important;
        object-position: center 42% !important;
        filter: saturate(0.86) contrast(1.04) brightness(0.88) !important;
        transform: scale(1.015);
    }

    #exitModal .modal-image-copy {
        position: absolute;
        left: clamp(20px, 4vw, 34px);
        right: 82px;
        bottom: 22px;
        z-index: 2;
        display: grid;
        gap: 5px;
        color: #ffffff;
        text-align: left;
    }

    #exitModal .modal-image-copy span {
        color: #e1c2f6;
        font: 800 0.66rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

    #exitModal .modal-image-copy strong {
        max-width: 580px;
        font: 800 clamp(1.05rem, 2.4vw, 1.45rem)/1.22 "Manrope", sans-serif;
        letter-spacing: -0.025em;
        text-wrap: balance;
    }

    #exitModal .modal-content {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        padding: clamp(28px, 4.5vw, 42px) clamp(22px, 5vw, 48px) clamp(24px, 4vw, 36px) !important;
        box-sizing: border-box !important;
        overflow-y: auto !important;
        background:
            radial-gradient(circle at 100% 0%, rgba(143, 70, 215, 0.08), transparent 28%),
            #ffffff !important;
        color: #24152c !important;
        text-align: left !important;
        overscroll-behavior: contain;
    }

    #exitModal .modal-content .eyebrow {
        width: fit-content;
        min-height: 29px;
        display: inline-flex;
        align-items: center;
        margin: 0 0 12px !important;
        padding: 0 11px;
        border: 1px solid rgba(94, 33, 141, 0.13);
        border-radius: 999px;
        background: #f3eafb;
        color: #662792 !important;
        font: 800 0.66rem/1 "DM Sans", sans-serif !important;
        letter-spacing: 0.095em;
        text-transform: uppercase;
    }

    #exitModal .modal-content h2 {
        max-width: 640px !important;
        margin: 0 !important;
        color: #211329 !important;
        font: 800 clamp(1.85rem, 4vw, 2.7rem)/1.06 "Manrope", sans-serif !important;
        letter-spacing: -0.047em !important;
        text-wrap: balance;
    }

    #exitModal .modal-content>p {
        max-width: 620px !important;
        margin: 14px 0 0 !important;
        color: #675b6d !important;
        font: 500 clamp(0.94rem, 1.6vw, 1.04rem)/1.52 "DM Sans", sans-serif !important;
        text-wrap: pretty;
    }

    #exitModal .modal-trust {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin: 19px 0 0;
    }

    #exitModal .modal-trust span {
        min-height: 31px;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 0 10px;
        border: 1px solid rgba(74, 38, 88, 0.10);
        border-radius: 9px;
        background: #faf7fc;
        color: #4d4052;
        font: 700 0.72rem/1 "DM Sans", sans-serif;
        white-space: nowrap;
    }

    #exitModal .modal-trust span::before {
        content: "✓";
        width: 18px;
        height: 18px;
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        border-radius: 50%;
        background: #ede0f5;
        color: #64258f;
        font-size: 0.63rem;
        font-weight: 900;
    }

    #exitModal .modal-content .site-button--modal {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 58px !important;
        margin: 22px 0 0 !important;
        padding: 0 21px !important;
        border: 0 !important;
        border-radius: 13px !important;
        box-sizing: border-box !important;
        background: linear-gradient(135deg, #7e35ad 0%, #5e218d 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 16px 34px rgba(94, 33, 141, 0.24) !important;
        font: 800 0.94rem/1 "DM Sans", sans-serif !important;
        text-decoration: none !important;
    }

    #exitModal .modal-content .site-button--modal:hover {
        transform: translateY(-2px);
        box-shadow: 0 20px 42px rgba(94, 33, 141, 0.31) !important;
    }

    #exitModal .modal-secondary {
        align-self: center;
        margin: 12px auto 0;
        padding: 7px 10px;
        border: 0;
        background: transparent;
        color: #827687;
        cursor: pointer;
        font: 700 0.72rem/1.2 "DM Sans", sans-serif;
        text-decoration: underline;
        text-decoration-color: rgba(130, 118, 135, 0.36);
        text-underline-offset: 3px;
    }

    #exitModal .modal-secondary:hover {
        color: #4b3c51;
    }

    #exitModal .modal-close {
        position: absolute !important;
        top: 14px !important;
        right: 14px !important;
        left: auto !important;
        z-index: 8 !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        display: grid !important;
        place-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(255, 255, 255, 0.22) !important;
        border-radius: 50% !important;
        background: rgba(16, 6, 23, 0.72) !important;
        color: #ffffff !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22) !important;
        backdrop-filter: blur(10px);
        cursor: pointer;
        transition: transform 160ms ease, background 160ms ease !important;
    }

    #exitModal .modal-close:hover {
        transform: scale(1.06);
        background: rgba(16, 6, 23, 0.90) !important;
    }

    #exitModal .modal-close:focus-visible,
    #exitModal .modal-secondary:focus-visible,
    #exitModal .site-button--modal:focus-visible {
        outline: 3px solid rgba(167, 96, 218, 0.42) !important;
        outline-offset: 3px !important;
    }

    @media (max-width: 760px) {
        #exitModal.modal {
            min-height: var(--mobile-viewport-height, 100dvh) !important;
            padding:
                max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
        }

        #exitModal .modal-dialog {
            width: min(100%, 460px) !important;
            max-width: 460px !important;
            max-height: calc(var(--mobile-viewport-height, 100dvh) - 20px) !important;
            grid-template-rows: clamp(145px, 24vh, 185px) minmax(0, auto) !important;
            border-radius: 21px !important;
        }

        #exitModal .modal-image img {
            object-position: center 39% !important;
        }

        #exitModal .modal-image-copy {
            left: 16px;
            right: 64px;
            bottom: 14px;
        }

        #exitModal .modal-image-copy strong {
            font-size: 0.92rem;
            line-height: 1.2;
        }

        #exitModal .modal-content {
            padding: 22px 18px 17px !important;
        }

        #exitModal .modal-content .eyebrow {
            margin-bottom: 10px !important;
            font-size: 0.60rem !important;
        }

        #exitModal .modal-content h2 {
            font-size: clamp(1.55rem, 7.5vw, 2rem) !important;
            line-height: 1.075 !important;
        }

        #exitModal .modal-content>p {
            margin-top: 11px !important;
            font-size: 0.90rem !important;
            line-height: 1.46 !important;
        }

        #exitModal .modal-trust {
            gap: 6px;
            margin-top: 15px;
        }

        #exitModal .modal-trust span {
            min-height: 29px;
            padding-inline: 8px;
            font-size: 0.65rem;
        }

        #exitModal .modal-content .site-button--modal {
            min-height: 54px !important;
            margin-top: 17px !important;
            padding-inline: 15px !important;
            font-size: 0.86rem !important;
        }

        #exitModal .modal-secondary {
            margin-top: 8px;
            font-size: 0.67rem;
        }

        #exitModal .modal-close {
            top: 9px !important;
            right: 9px !important;
            width: 38px !important;
            height: 38px !important;
            min-width: 38px !important;
        }
    }

    @media (max-width: 390px) {
        #exitModal .modal-image-copy span {
            display: none;
        }

        #exitModal .modal-image-copy strong {
            font-size: 0.84rem;
        }

        #exitModal .modal-trust span {
            white-space: normal;
        }
    }

    @media (max-width: 760px) and (max-height: 650px) {
        #exitModal .modal-dialog {
            grid-template-rows: minmax(0, auto) !important;
        }

        #exitModal .modal-image {
            display: none !important;
        }

        #exitModal .modal-content {
            padding-top: 28px !important;
        }

        #exitModal .modal-close {
            border-color: rgba(94, 33, 141, 0.14) !important;
            background: #f3eafb !important;
            color: #5e218d !important;
            box-shadow: none !important;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        #exitModal.modal,
        #exitModal .modal-dialog,
        #exitModal .modal-close,
        #exitModal .site-button--modal {
            transition: none !important;
        }
    }

    /* Polimento das provas sociais: rating + avatar (elementos ilustrativos, não afirmações de compra verificada) */
    #provas-sociais .proof-rating {
        display: inline-flex;
        gap: 2px;
        margin-bottom: 10px;
        color: #7c35aa;
    }

    #provas-sociais .proof-avatar {
        display: grid;
        width: 38px;
        height: 38px;
        place-items: center;
        flex: 0 0 auto;
        border-radius: 50%;
        background: linear-gradient(145deg, #7e35ad 0%, #5e218d 100%);
        color: #fff;
        font: 800 0.72rem/1 "Manrope", sans-serif;
        letter-spacing: 0.02em;
    }

    /* Comparador rápido de kits — seção Oferta */
    #oferta .quick-compare {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 12px;
        max-width: 940px;
        margin: 26px auto 0;
    }

    #oferta .quick-compare-btn {
        position: relative;
        display: grid;
        gap: 4px;
        min-height: 72px;
        padding: 12px 10px 14px;
        border: 1.5px solid rgba(74, 35, 91, 0.16);
        border-radius: 14px;
        background: #fff;
        color: #33203e;
        text-align: center;
        cursor: pointer;
        box-shadow: 0 2px 6px rgba(64, 25, 86, 0.06);
        transition: border-color 160ms ease, background 160ms ease, transform 120ms ease, box-shadow 160ms ease, color 160ms ease;
    }

    #oferta .quick-compare-btn strong {
        font: 800 0.86rem/1.15 "Manrope", sans-serif;
    }

    #oferta .quick-compare-btn span {
        color: #7b398f;
        font: 700 0.68rem/1.2 "DM Sans", sans-serif;
    }

    #oferta .quick-compare-btn::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -7px;
        width: 12px;
        height: 12px;
        background: #fff;
        border-right: 1.5px solid rgba(74, 35, 91, 0.16);
        border-bottom: 1.5px solid rgba(74, 35, 91, 0.16);
        transform: translateX(-50%) rotate(45deg);
        border-radius: 0 0 3px 0;
        opacity: 0;
        transition: opacity 160ms ease;
    }

    #oferta .quick-compare-btn:hover {
        border-color: rgba(126, 53, 173, 0.45);
        background: #fbf6fd;
        transform: translateY(-3px);
        box-shadow: 0 14px 28px rgba(64, 25, 86, 0.14);
    }

    #oferta .quick-compare-btn:active {
        transform: translateY(-1px) scale(0.98);
    }

    #oferta .quick-compare-btn:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.32);
        outline-offset: 2px;
    }

    #oferta .quick-compare-btn[aria-pressed="true"] {
        border-color: transparent;
        background: linear-gradient(135deg, #7e35ad 0%, #5e218d 100%);
        color: #fff;
        box-shadow: 0 14px 30px rgba(94, 33, 141, 0.32);
        transform: translateY(-2px);
    }

    #oferta .quick-compare-btn[aria-pressed="true"] span {
        color: #f0ddf7;
    }

    #oferta .quick-compare-btn[aria-pressed="true"]::after {
        opacity: 1;
        background: #5e218d;
        border-color: transparent;
    }

    #oferta .per-day-badge {
        display: inline-block;
        margin-top: 8px;
        color: #5e218d;
        font: 800 0.78rem/1.2 "DM Sans", sans-serif;
    }

    #oferta .featured-offer.is-target-highlight,
    #oferta .alternative-card.is-target-highlight {
        animation: offer-pulse 1.1s ease 2;
    }

    @keyframes offer-pulse {

        0%,
        100% {
            box-shadow: 0 0 0 0 rgba(126, 55, 184, 0);
        }

        50% {
            box-shadow: 0 0 0 8px rgba(126, 55, 184, 0.18);
        }
    }

    @media (max-width: 640px) {
        #oferta .quick-compare {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    @media (prefers-reduced-motion: reduce) {
        #oferta .quick-compare-btn {
            transition: none !important;
        }

        #oferta .featured-offer.is-target-highlight,
        #oferta .alternative-card.is-target-highlight {
            animation: none !important;
        }
    }

    /* DIAGNÓSTICO 2026 — quiz curto que personaliza a mensagem antes da transformação */
    #diagnostico.quiz-v1 {
        position: relative;
        overflow: hidden;
        isolation: isolate;
        padding: clamp(64px, 7vw, 100px) 0 !important;
        background:
            radial-gradient(circle at 15% 15%, rgba(255, 255, 255, 0.16), transparent 40%),
            radial-gradient(circle at 88% 90%, rgba(0, 0, 0, 0.18), transparent 45%),
            linear-gradient(135deg, #8b45b8 0%, #6a289a 55%, #3a1660 100%);
    }

    #diagnostico.quiz-v1::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background:
            radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.10), transparent 55%);
    }

    #diagnostico .quiz-v1-shell {
        width: min(760px, calc(100% - 40px));
        margin-inline: auto;
    }

    #diagnostico .quiz-v1-heading {
        margin-bottom: clamp(26px, 4vw, 40px);
        text-align: center;
    }

    #diagnostico .quiz-v1-eyebrow {
        display: inline-flex;
        align-items: center;
        min-height: 31px;
        margin-bottom: 14px;
        padding: 0 13px;
        border: 1px solid rgba(255, 255, 255, 0.32);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.14);
        color: #fff;
        font: 800 0.69rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

    #diagnostico .quiz-v1-heading h2 {
        margin: 0;
        color: #fff;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.7rem, 3.6vw, 2.5rem);
        font-weight: 800;
        line-height: 1.14;
        letter-spacing: -0.03em;
        text-wrap: balance;
    }

    #diagnostico .quiz-v1-heading p {
        margin: 12px 0 0;
        color: rgba(255, 255, 255, 0.82);
        font: 500 0.98rem/1.55 "DM Sans", sans-serif;
    }

    #diagnostico .quiz-v1-card {
        position: relative;
        padding: clamp(26px, 4vw, 40px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        border-radius: 26px;
        background: #fff;
        box-shadow: 0 34px 80px rgba(29, 10, 46, 0.32);
    }

    #diagnostico .quiz-v1-step,
    #diagnostico .quiz-v1-result {
        text-align: center;
    }

    #diagnostico .quiz-v1-step-label,
    #diagnostico .quiz-v1-result-label {
        display: block;
        margin-bottom: 10px;
        color: #7b398f;
        font: 800 0.68rem/1 "DM Sans", sans-serif;
        letter-spacing: 0.09em;
        text-transform: uppercase;
    }

    #diagnostico .quiz-v1-step h3,
    #diagnostico .quiz-v1-result h3 {
        max-width: 560px;
        margin: 0 auto 22px;
        color: #26162e;
        font-family: "Manrope", sans-serif;
        font-size: clamp(1.2rem, 2.3vw, 1.5rem);
        font-weight: 800;
        line-height: 1.3;
        letter-spacing: -0.02em;
        text-wrap: balance;
    }

    #diagnostico .quiz-v1-options {
        display: grid;
        gap: 10px;
        text-align: left;
    }

    #diagnostico .quiz-v1-option {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        min-height: 58px;
        padding: 0 20px;
        border: 1px solid rgba(74, 35, 91, 0.14);
        border-radius: 14px;
        background: #fdfbfe;
        color: #33203e;
        font: 700 0.93rem/1.35 "DM Sans", sans-serif;
        text-align: left;
        cursor: pointer;
        transition: border-color 180ms ease, background 180ms ease, transform 180ms ease;
    }

    #diagnostico .quiz-v1-option::after {
        content: "→";
        flex: 0 0 auto;
        color: #8f46c0;
        font-weight: 800;
    }

    #diagnostico .quiz-v1-option:hover {
        border-color: rgba(110, 42, 155, 0.32);
        background: #f8f0fb;
        transform: translateX(3px);
    }

    #diagnostico .quiz-v1-option:focus-visible {
        outline: 3px solid rgba(126, 55, 184, 0.32);
        outline-offset: 2px;
    }

    #diagnostico .quiz-v1-result-icon {
        display: inline-grid;
        width: 52px;
        height: 52px;
        margin-bottom: 16px;
        place-items: center;
        border-radius: 50%;
        background: #efe3f5;
        color: #65278f;
    }

    #diagnostico .quiz-v1-result p {
        max-width: 520px;
        margin: 0 auto 26px;
        color: #665a6d;
        font: 500 0.98rem/1.6 "DM Sans", sans-serif;
    }

    #diagnostico .quiz-v1-result .site-button {
        margin-inline: auto;
    }

    @media (max-width: 640px) {
        #diagnostico .quiz-v1-card {
            padding: 22px 18px;
            border-radius: 20px;
        }

        #diagnostico .quiz-v1-option {
            min-height: 54px;
            padding: 0 15px;
            font-size: 0.88rem;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        #diagnostico .quiz-v1-option {
            transition: none !important;
        }
    }

    body.vsl-gate .trust-strip,
    body.vsl-gate main#conteudo>section:not(#inicio),
    body.vsl-gate .vitalis-footer,
    body.vsl-gate #mobileSticky {
        display: none !important;
    }

    body.vsl-gate #inicio .hero-actions {
        opacity: 0;
        pointer-events: none;
    }

    #inicio .hero-actions {
        transition: opacity 700ms ease;
    }


    /* EXIT MODAL — correção final para telas pequenas e alturas reduzidas */
    @media (max-width: 900px) {
        #exitModal.modal {
            padding: max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
            align-items: center !important;
            overflow-y: auto !important;
        }

        #exitModal .modal-dialog {
            width: 100% !important;
            max-width: 520px !important;
            max-height: calc(100dvh - 20px) !important;
            grid-template-rows: minmax(145px, 31dvh) minmax(0, 1fr) !important;
            border-radius: 22px !important;
        }

        #exitModal .modal-image {
            min-height: 145px !important;
        }

        #exitModal .modal-content {
            min-height: 0 !important;
            overflow-y: auto !important;
            padding: 22px 18px 18px !important;
        }

        #exitModal .modal-content h2 {
            font-size: clamp(1.48rem, 7.4vw, 2.05rem) !important;
            line-height: 1.08 !important;
        }

        #exitModal .modal-content>p {
            font-size: .91rem !important;
            line-height: 1.45 !important;
        }

        #exitModal .modal-trust {
            margin-top: 14px !important;
            gap: 6px !important;
        }

        #exitModal .modal-trust span {
            min-height: 28px !important;
            padding: 0 8px !important;
            font-size: .67rem !important;
        }

        #exitModal .modal-content .site-button--modal {
            min-height: 54px !important;
            margin-top: 16px !important;
        }

        #exitModal .modal-secondary {
            margin-top: 8px !important;
            padding-bottom: 4px !important;
        }

        #exitModal .modal-close {
            top: 9px !important;
            right: 9px !important;
            width: 38px !important;
            height: 38px !important;
        }
    }

    @media (max-width: 480px) {
        #exitModal.modal {
            padding: 8px !important;
        }

        #exitModal .modal-dialog {
            max-height: calc(100dvh - 16px) !important;
            grid-template-rows: 132px minmax(0, 1fr) !important;
            border-radius: 19px !important;
        }

        #exitModal .modal-image {
            min-height: 132px !important;
        }

        #exitModal .modal-image-copy {
            left: 16px !important;
            right: 58px !important;
            bottom: 13px !important;
        }

        #exitModal .modal-image-copy strong {
            font-size: .92rem !important;
        }

        #exitModal .modal-content {
            padding: 18px 15px 14px !important;
        }

        #exitModal .modal-content .eyebrow {
            min-height: 25px !important;
            margin-bottom: 9px !important;
            padding-inline: 9px !important;
            font-size: .59rem !important;
        }

        #exitModal .modal-content h2 {
            font-size: clamp(1.34rem, 7.1vw, 1.72rem) !important;
        }

        #exitModal .modal-content>p {
            margin-top: 10px !important;
            font-size: .84rem !important;
        }

        #exitModal .modal-trust {
            display: grid !important;
            grid-template-columns: 1fr 1fr !important;
            margin-top: 11px !important;
        }

        #exitModal .modal-trust span {
            min-width: 0 !important;
            white-space: normal !important;
            justify-content: flex-start !important;
            font-size: .61rem !important;
        }

        #exitModal .modal-content .site-button--modal {
            min-height: 50px !important;
            margin-top: 12px !important;
            font-size: .84rem !important;
        }

        #exitModal .modal-secondary {
            font-size: .66rem !important;
        }
    }

    @media (max-width: 900px) and (max-height: 620px) {
        #exitModal .modal-dialog {
            grid-template-rows: 0 minmax(0, 1fr) !important;
        }

        #exitModal .modal-image {
            display: none !important;
        }

        #exitModal .modal-content {
            padding-top: 26px !important;
        }
    }



    /* =========================================================
   MOBILE PROFESSIONAL SYSTEM v3
   Objetivo: eliminar overflow, melhorar ritmo vertical,
   touch targets, modais, sticky CTA e leitura em 320–768px.
   ========================================================= */
    :root {
        --mobile-gutter: 18px;
        --mobile-radius: 16px;
        --mobile-safe-bottom: env(safe-area-inset-bottom, 0px);
    }

    html {
        overflow-x: clip;
        -webkit-text-size-adjust: 100%;
    }

    body {
        overflow-x: clip;
        min-width: 0;
        -webkit-tap-highlight-color: transparent;
    }

    img,
    video,
    iframe,
    svg {
        max-width: 100%;
    }

    button,
    a,
    input,
    select,
    textarea {
        touch-action: manipulation;
    }

    /* Evita que elementos absolutos criem rolagem lateral */
    section,
    header,
    footer,
    main,
    article,
    aside,
    div {
        min-width: 0;
    }

    /* -------------------------
   768px — mobile principal
   ------------------------- */
    @media (max-width: 768px) {
        :root {
            --mobile-gutter: 18px;
        }

        body {
            padding-bottom: 0 !important;
        }

        .container,
        .section-container,
        .vf-container {
            width: calc(100% - (var(--mobile-gutter) * 2)) !important;
            max-width: none !important;
        }

        /* Ritmo geral: menos espaço vazio, mas sem deixar as seções coladas */
        main>section:not(#inicio):not(#oferta) {
            padding-top: 54px !important;
            padding-bottom: 58px !important;
        }

        /* Tipografia global */
        h1,
        h2,
        h3,
        h4,
        p {
            overflow-wrap: anywhere;
        }

        h2 {
            line-height: 1.10 !important;
            letter-spacing: -0.035em !important;
        }

        p {
            line-height: 1.55;
        }

        /* -------- HERO -------- */
        #inicio.hero-product-v2 .hero-product-grid {
            width: calc(100% - 28px) !important;
            min-height: auto !important;
            grid-template-columns: 1fr !important;
            gap: 8px !important;
            padding: 34px 0 48px !important;
        }

        #inicio.hero-product-v2 .hero-product-copy {
            text-align: center;
        }

        #inicio.hero-product-v2 .hero-product-kicker {
            margin-bottom: 13px;
        }

        #inicio.hero-product-v2 .hero-product-copy h1 {
            font-size: clamp(2.05rem, 10.2vw, 3rem) !important;
            line-height: 1.045 !important;
        }

        #inicio.hero-product-v2 .hero-product-description {
            max-width: 440px;
            margin: 15px auto 0 !important;
            font-size: .94rem !important;
        }

        #inicio.hero-product-v2 .hero-product-benefits {
            width: fit-content;
            max-width: 100%;
            margin: 20px auto 0;
            gap: 10px;
            text-align: left;
        }

        #inicio.hero-product-v2 .hero-product-benefits li {
            font-size: .82rem;
            line-height: 1.35;
        }

        #inicio.hero-product-v2 .hero-product-cta-wrap {
            margin-top: 22px;
        }

        #inicio.hero-product-v2 .hero-product-cta {
            width: 100%;
            min-height: 56px;
            border-radius: 12px;
            padding: 0 16px;
            font-size: .82rem;
        }

        #inicio.hero-product-v2 .hero-product-trust {
            justify-content: center;
            gap: 6px;
            margin-top: 15px;
            font-size: .65rem;
        }

        #inicio.hero-product-v2 .hero-product-visual {
            min-height: 310px;
            margin-top: 0;
        }

        #inicio.hero-product-v2 .hero-product-image-wrap img {
            width: min(100%, 350px);
            max-height: 295px;
        }

        #inicio.hero-product-v2 .hero-product-badge {
            top: 2px;
            right: 4%;
            padding: 8px 10px;
            font-size: .57rem;
        }

        #inicio.hero-product-v2 .hero-product-kit {
            right: 50%;
            bottom: 0;
            transform: translateX(50%);
            width: max-content;
            max-width: calc(100% - 20px);
            padding: 10px 13px;
            text-align: center;
        }

        /* -------- VSL / vídeo -------- */
        #inicio .video-shell {
            padding: 5px !important;
            border-radius: 17px !important;
        }

        #inicio .video-frame {
            border-radius: 12px !important;
        }

        #inicio .video-caption strong {
            font-size: .84rem !important;
        }

        #inicio .video-caption {
            left: 12px;
            right: 12px;
            bottom: 11px;
        }

        /* -------- SEÇÕES COMUNS -------- */
        .section-header,
        .section-heading,
        .section-title,
        .section-intro {
            max-width: 100% !important;
        }

        /* Cards: uma coluna limpa, sem mini cards esmagados */
        .cards-grid,
        .card-grid,
        .bento-grid,
        .features-grid,
        .benefits-grid,
        .testimonials-grid,
        .proof-grid,
        .steps-grid,
        .routine-grid,
        .faq-grid {
            grid-template-columns: 1fr !important;
        }

        /* Elementos que costumam estourar a largura */
        .table-wrap,
        .comparison-table-wrap,
        .overflow-table {
            max-width: 100%;
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }

        /* -------- OFERTA -------- */
        #oferta.offer-section {
            padding: 54px 0 calc(70px + var(--mobile-safe-bottom)) !important;
        }

        #oferta .offer-heading h2 {
            font-size: clamp(1.95rem, 9vw, 2.65rem) !important;
        }

        #oferta .offer-heading p {
            font-size: .91rem !important;
            margin-top: 14px;
        }

        #oferta .offer-trust-row {
            display: grid !important;
            justify-items: center;
            gap: 8px;
            margin-top: 18px;
            font-size: .67rem;
        }

        #oferta .offer-deadline-v2 {
            margin: 20px 0 17px;
            padding: 14px;
            border-radius: 14px;
        }

        #oferta .offer-deadline-copy {
            font-size: .77rem;
        }

        #oferta .offer-deadline-note {
            font-size: .69rem;
        }

        #oferta .offer-timer-block {
            min-width: 0;
        }

        #oferta .offer-deadline-v2 .mini-timer {
            min-width: 0;
            width: 100%;
        }

        #oferta .featured-offer {
            display: flex !important;
            flex-direction: column;
            border-radius: 19px;
            min-height: 0;
        }

        #oferta .featured-media {
            min-height: 285px !important;
            padding: 58px 18px 13px !important;
        }

        #oferta .featured-media img {
            max-height: 235px !important;
        }

        #oferta .featured-badge {
            top: 12px;
            left: 12px;
        }

        #oferta .featured-content {
            padding: 24px 18px 20px !important;
        }

        #oferta .featured-content h3 {
            font-size: 1.85rem !important;
        }

        #oferta .featured-description {
            font-size: .88rem;
        }

        #oferta .bundle-pill {
            margin-top: 14px;
            font-size: .69rem;
        }

        #oferta .price-anchor {
            margin-top: 18px;
        }

        #oferta .featured-price strong {
            font-size: 3.05rem !important;
        }

        #oferta .price-details {
            font-size: .72rem;
        }

        #oferta .pix-highlight {
            margin-top: 13px;
            padding: 11px 12px;
            font-size: .77rem;
        }

        #oferta .featured-benefits {
            gap: 7px;
            margin-top: 15px;
        }

        #oferta .featured-benefits li {
            font-size: .77rem;
        }

        #oferta .offer-cta {
            min-height: 54px;
            margin-top: 18px;
            border-radius: 11px;
            font-size: .87rem;
        }

        #oferta .featured-scarcity-note {
            margin-top: 13px;
            font-size: .70rem;
        }

        /* Kits alternativos: cards verticais, mais fáceis de comparar */
        #oferta .alternative-grid {
            grid-template-columns: 1fr !important;
            gap: 12px;
        }

        #oferta .alternative-card,
        #oferta .alternative-card:last-child {
            display: grid;
            grid-template-columns: 92px minmax(0, 1fr);
            column-gap: 13px;
            max-width: none !important;
            padding: 14px;
        }

        #oferta .alternative-card>.alternative-image {
            grid-column: 1;
            grid-row: 1 / span 9;
            min-height: 190px;
            height: 100%;
            margin: 0;
        }

        #oferta .alternative-image img {
            width: 86px;
            height: 168px;
        }

        #oferta .alternative-card>*:not(.alternative-image) {
            grid-column: 2;
        }

        #oferta .alternative-card h4 {
            margin-top: 8px;
            font-size: 1.08rem;
        }

        #oferta .alternative-duration {
            font-size: .69rem;
        }

        #oferta .alternative-price strong {
            font-size: 2.05rem;
        }

        #oferta .alternative-benefits {
            margin-top: 10px;
            gap: 5px;
        }

        #oferta .alternative-benefits li {
            font-size: .68rem;
        }

        #oferta .alternative-card .offer-cta {
            min-height: 45px;
            margin-top: 10px;
            font-size: .76rem;
        }

        #oferta .offer-security {
            grid-template-columns: 38px minmax(0, 1fr) !important;
            gap: 10px 12px;
            margin-top: 18px;
            padding: 14px;
            border-radius: 13px;
        }

        #oferta .offer-security-icon {
            width: 38px;
            height: 38px;
            border-radius: 10px;
        }

        #oferta .offer-security strong {
            font-size: .79rem;
        }

        #oferta .offer-security p {
            font-size: .68rem;
        }

        #oferta .payment-methods {
            grid-column: 1 / -1;
            justify-content: flex-start;
            gap: 5px;
        }

        #oferta .payment-methods span {
            min-height: 28px;
            padding: 0 8px;
            font-size: .61rem;
        }

        #oferta .offer-terms {
            font-size: .61rem;
        }

        /* -------- FAQ: toque confortável e respostas legíveis -------- */
        .faq-question,
        .faq-button {
            min-height: 56px !important;
            padding: 14px 14px !important;
            gap: 10px !important;
        }

        .faq-question span:first-child {
            font-size: .86rem !important;
            line-height: 1.35 !important;
        }

        .faq-icon {
            width: 28px !important;
            height: 28px !important;
            flex: 0 0 28px;
        }

        .faq-answer-inner {
            padding: 0 14px 16px !important;
            font-size: .82rem !important;
            line-height: 1.55 !important;
        }

        /* -------- FOOTER -------- */
        .vitalis-footer {
            padding: 50px 0 calc(24px + var(--mobile-safe-bottom)) !important;
        }

        .vitalis-footer .vf-main {
            grid-template-columns: 1fr !important;
            gap: 12px !important;
        }

        .vitalis-footer .vf-panel {
            padding: 18px;
            border-radius: 15px;
        }

        .vitalis-footer .vf-logo {
            width: min(220px, 76vw);
        }

        .vitalis-footer .vf-brand-copy {
            margin-top: 13px;
            font-size: .76rem;
        }

        .vitalis-footer .vf-links a {
            min-height: 45px;
            font-size: .75rem;
        }

        .vitalis-footer .vf-title {
            margin-bottom: 10px;
        }

        /* -------- STICKY CTA MOBILE -------- */
        .mobile-sticky {
            position: fixed !important;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 9000;
            padding: 8px var(--mobile-gutter) calc(8px + var(--mobile-safe-bottom));
            border-top: 1px solid rgba(255, 255, 255, .10);
            background: rgba(18, 7, 25, .94) !important;
            backdrop-filter: blur(18px);
            -webkit-backdrop-filter: blur(18px);
            box-shadow: 0 -12px 30px rgba(0, 0, 0, .18);
        }

        .mobile-sticky-inner {
            width: 100%;
            max-width: 620px;
            margin: 0 auto;
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) minmax(135px, .62fr);
            align-items: center;
            gap: 10px;
        }

        .mobile-price {
            min-width: 0;
        }

        .mobile-price span {
            display: block;
            color: rgba(255, 255, 255, .55);
            font-size: .59rem;
            line-height: 1.2;
        }

        .mobile-price strong {
            display: block;
            margin-top: 2px;
            color: #fff;
            font-size: .80rem;
            line-height: 1.2;
        }

        .mobile-sticky .site-button {
            width: 100%;
            min-height: 48px !important;
            border-radius: 11px;
            padding: 0 11px !important;
            font-size: .76rem !important;
        }

        .mobile-sticky .site-button__icon {
            display: none;
        }

        /* -------- MODAL EXIT -------- */
        .modal {
            padding: 12px !important;
            align-items: center !important;
            overflow-y: auto;
            overscroll-behavior: contain;
        }

        .modal-dialog {
            width: min(100%, 430px) !important;
            max-height: calc(var(--mobile-viewport-height, 100dvh) - 24px) !important;
            margin: auto !important;
            display: flex !important;
            flex-direction: column !important;
            overflow: auto !important;
            border-radius: 20px !important;
            -webkit-overflow-scrolling: touch;
        }

        .modal-close {
            width: 44px !important;
            height: 44px !important;
            top: 9px !important;
            right: 9px !important;
            z-index: 8;
        }

        .modal-image {
            min-height: 190px !important;
            max-height: 34vh;
        }

        .modal-image img {
            height: 100% !important;
            object-position: center 36% !important;
        }

        .modal-image-copy {
            padding: 15px !important;
        }

        .modal-image-copy span {
            font-size: .65rem !important;
        }

        .modal-image-copy strong {
            font-size: .92rem !important;
            line-height: 1.2 !important;
        }

        .modal-content {
            padding: 22px 18px 18px !important;
        }

        .modal-content h2 {
            font-size: 1.45rem !important;
            line-height: 1.10 !important;
        }

        .modal-content>p {
            font-size: .80rem !important;
            line-height: 1.5 !important;
        }

        .modal-trust {
            display: grid !important;
            gap: 7px !important;
            margin-top: 14px !important;
        }

        .modal-trust span {
            font-size: .70rem !important;
        }

        .site-button--modal {
            min-height: 53px !important;
            width: 100%;
        }

        .modal-secondary {
            min-height: 46px !important;
            margin-top: 6px !important;
            font-size: .73rem !important;
        }

        /* -------- LIGHTBOX / MODAL DE PROVA SOCIAL -------- */
        .proof-lightbox {
            padding: 8px !important;
            align-items: center !important;
        }

        .proof-lightbox-dialog {
            width: 100% !important;
            height: min(100%, calc(var(--mobile-viewport-height, 100dvh) - 16px)) !important;
            max-height: none !important;
            border-radius: 17px !important;
            overflow: hidden !important;
        }

        .proof-lightbox-topbar {
            min-height: 58px !important;
            padding: 8px 52px 8px 13px !important;
        }

        .proof-lightbox-close,
        .proof-lightbox-nav,
        .proof-lightbox-tool {
            min-width: 44px !important;
            min-height: 44px !important;
        }

        .proof-lightbox-nav {
            top: 50% !important;
        }

        .proof-lightbox-nav--prev {
            left: 7px !important;
        }

        .proof-lightbox-nav--next {
            right: 7px !important;
        }

        .proof-lightbox-stage {
            min-height: 0 !important;
            padding: 8px !important;
        }

        .proof-lightbox-image {
            max-height: 100% !important;
        }

        .proof-lightbox-bottombar {
            padding: 8px 10px calc(8px + var(--mobile-safe-bottom)) !important;
            gap: 8px !important;
        }

        .proof-lightbox-tools {
            gap: 5px !important;
        }

        .proof-lightbox-tool {
            padding: 0 9px !important;
            font-size: .68rem !important;
        }

        /* Toast sem cobrir CTA */
        .toast {
            left: var(--mobile-gutter) !important;
            right: var(--mobile-gutter) !important;
            bottom: calc(78px + var(--mobile-safe-bottom)) !important;
            width: auto !important;
            max-width: none !important;
            padding: 11px 12px !important;
            border-radius: 13px !important;
        }

        .toast strong {
            font-size: .75rem !important;
        }

        .toast p {
            font-size: .66rem !important;
        }

        .toast-close {
            min-width: 40px !important;
            min-height: 40px !important;
        }

        /* Desliga efeitos desktop que não fazem sentido no toque */
        .magnetic {
            transform: none !important;
        }

        .premium-glare-button::after {
            animation: none !important;
        }
    }

    /* 480px — aparelhos estreitos */
    @media (max-width: 480px) {
        :root {
            --mobile-gutter: 14px;
        }

        body {
            padding-bottom: 0 !important;
        }

        main>section:not(#inicio):not(#oferta) {
            padding-top: 48px !important;
            padding-bottom: 52px !important;
        }

        #inicio.hero-product-v2 .hero-product-grid {
            width: calc(100% - 22px) !important;
            padding-top: 29px !important;
            padding-bottom: 40px !important;
        }

        #inicio.hero-product-v2 .hero-product-copy h1 {
            font-size: clamp(1.92rem, 10.5vw, 2.55rem) !important;
        }

        #inicio.hero-product-v2 .hero-product-description {
            font-size: .88rem !important;
        }

        #inicio.hero-product-v2 .hero-product-benefits li {
            font-size: .76rem;
        }

        #inicio.hero-product-v2 .hero-product-visual {
            min-height: 280px;
        }

        #inicio.hero-product-v2 .hero-product-image-wrap img {
            max-height: 260px;
        }

        #inicio.hero-product-v2 .hero-product-kit {
            bottom: -1px;
            font-size: .68rem;
        }

        #inicio.hero-product-v2 .hero-product-kit strong {
            font-size: .80rem;
        }

        #inicio.hero-product-v2 .hero-product-kit span {
            font-size: .61rem;
        }

        #oferta>.container {
            width: calc(100% - 20px) !important;
        }

        #oferta .featured-media {
            min-height: 270px !important;
        }

        #oferta .featured-content {
            padding-inline: 15px !important;
        }

        #oferta .featured-price strong {
            font-size: 2.85rem !important;
        }

        #oferta .alternative-card {
            grid-template-columns: 82px minmax(0, 1fr);
            column-gap: 10px;
            padding: 12px;
        }

        #oferta .alternative-card>.alternative-image {
            min-height: 178px;
        }

        #oferta .alternative-image img {
            width: 76px;
            height: 158px;
        }

        #oferta .alternative-benefits li {
            font-size: .64rem;
        }

        #oferta .alternative-card .offer-cta {
            font-size: .71rem;
        }

        .mobile-sticky-inner {
            grid-template-columns: minmax(0, 1fr) 132px;
            gap: 7px;
        }

        .mobile-price strong {
            font-size: .73rem;
        }

        .mobile-sticky .site-button {
            font-size: .71rem !important;
        }

        .modal {
            padding: 8px !important;
        }

        .modal-dialog {
            max-height: calc(var(--mobile-viewport-height, 100dvh) - 16px) !important;
            border-radius: 17px !important;
        }

        .modal-image {
            min-height: 165px !important;
        }

        .modal-content {
            padding: 19px 15px 15px !important;
        }

        .modal-content h2 {
            font-size: 1.30rem !important;
        }
    }

    /* 360px — preserva legibilidade em aparelhos pequenos */
    @media (max-width: 360px) {
        :root {
            --mobile-gutter: 11px;
        }

        #inicio.hero-product-v2 .hero-product-copy h1 {
            font-size: 1.82rem !important;
        }

        #inicio.hero-product-v2 .hero-product-benefits li {
            font-size: .72rem;
        }

        #inicio.hero-product-v2 .hero-product-cta {
            font-size: .74rem;
        }

        #oferta .featured-price strong {
            font-size: 2.58rem !important;
        }

        .mobile-sticky-inner {
            grid-template-columns: 1fr 116px;
        }

        .mobile-price span {
            font-size: .53rem;
        }

        .mobile-price strong {
            font-size: .67rem;
        }

        .mobile-sticky .site-button {
            font-size: .65rem !important;
        }
    }

    @media (prefers-reduced-motion: reduce) {

        *,
        *::before,
        *::after {
            scroll-behavior: auto !important;
            animation-duration: .001ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: .001ms !important;
        }
    }

    /* PROVA SOCIAL ESTÁTICA — sem carrossel, sem rolagem horizontal */
    #provas-sociais .proof-slider-header,
    #provas-sociais .proof-swipe-hint,
    #provas-sociais .proof-slider-controls {
        display: none !important;
    }

    #provas-sociais .proof-track {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 20px !important;
        width: 100% !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        padding: 0 !important;
        margin: 0 !important;
        scroll-snap-type: none !important;
        scroll-behavior: auto !important;
        -webkit-overflow-scrolling: auto !important;
        overscroll-behavior: auto !important;
        touch-action: auto !important;
    }

    #provas-sociais .social-proof-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: none !important;
        scroll-snap-align: none !important;
    }

    #provas-sociais .proof-media {
        touch-action: manipulation !important;
    }

    @media (max-width: 860px) {
        #provas-sociais .proof-track {
            grid-template-columns: 1fr !important;
            gap: 18px !important;
            overflow: visible !important;
            overflow-x: visible !important;
        }

        #provas-sociais .social-proof-card {
            width: 100% !important;
        }
    }

    /* Modal de saída removido definitivamente */
    #exitModal {
        display: none !important;
    }

    /* PATCH MOBILE — quiz sem espaço artificial + título da 4ª seção enxuto */
    #diagnostico.quiz-v1 {
        height: auto !important;
        min-height: 0 !important;
    }

    #diagnostico .quiz-v1-card {
        margin-bottom: 0 !important;
    }

    #diagnostico .quiz-v1-heading {
        margin-bottom: 22px;
    }

    @media (max-width: 768px) {
        #diagnostico.quiz-v1 {
            padding-top: 42px !important;
            padding-bottom: 38px !important;
        }

        #diagnostico .quiz-v1-heading {
            margin-bottom: 16px !important;
        }

        #diagnostico .quiz-v1-card {
            margin-bottom: 0 !important;
        }

        /* A 4ª seção começa mais perto do quiz, sem criar um 'buraco' visual. */
        #transformacao.desire-section-v3 {
            padding-top: 48px !important;
        }

        #transformacao .transformation-v3-heading {
            margin-bottom: 24px !important;
        }

        #transformacao .transformation-v3-heading h2 {
            max-width: 350px;
            margin-inline: auto;
            font-size: clamp(1.85rem, 8.2vw, 2.35rem) !important;
            line-height: 1.08 !important;
            letter-spacing: -0.045em !important;
            text-wrap: balance;
        }

        #transformacao .transformation-v3-heading p {
            max-width: 330px;
            margin: 12px auto 0 !important;
            font-size: 0.88rem !important;
            line-height: 1.48 !important;
        }
    }

    @media (max-width: 380px) {
        #diagnostico.quiz-v1 {
            padding-bottom: 30px !important;
        }

        #transformacao.desire-section-v3 {
            padding-top: 40px !important;
        }

        #transformacao .transformation-v3-heading h2 {
            max-width: 310px;
            font-size: 1.78rem !important;
        }
    }

    /* CORREÇÃO DEFINITIVA — área inferior do Chrome/Android
       A faixa branca acompanhava a viewport porque o canvas herdava o fundo claro do body.
       No mobile, o html pinta a área do sistema e o body fica transparente. */
    @media (max-width: 768px) {
        html {
            background: #16091f !important;
            min-height: 100%;
        }

        body {
            background: transparent !important;
            min-height: 100%;
        }

        #mobileSticky {
            bottom: 0 !important;
            z-index: 9000 !important;
        }
    }


    /* Ajuste do indicador fixo da condição especial */
    @media (max-width: 768px) {
        .fixed-offer-time {
            min-height: 34px;
            padding: 7px 10px;
            font-size: .74rem;
        }
    }

    @media (max-width: 520px) {
        .fixed-offer-time {
            min-height: 32px;
            padding: 7px 11px;
            font-size: .72rem;
        }
    }

/* CORREÇÃO — fundos claros das seções Garantia e FAQ em dispositivos móveis */
#garantia,
#faq {
    background: var(--white) !important;
}

@media (max-width: 768px) {
    #garantia,
    #faq {
        background: #ffffff !important;
        color: var(--ink);
    }
}
