:root { --navy:#141416; --navy-deep:#000000; --teal:#FF6A00; --teal-bright:#FF8124; --amber:#FFB020; --offwhite:#F7F6F3; --mist:#71727A; }
        * { margin:0; padding:0; box-sizing:border-box; }
        body { font-family:'Poppins',sans-serif; color:var(--navy); line-height:1.7; background:#fff; overflow-x:hidden; }
        h1,h2 { font-family:'Fraunces',Georgia,serif; font-weight:600; line-height:1.08; letter-spacing:-0.015em; }
        h3 { line-height:1.15; letter-spacing:-0.02em; }
        a { color:inherit; text-decoration:none; }
        img { max-width:100%; }
        .container { max-width:1080px; margin:0 auto; padding:0 24px; }
        .section { padding:96px 0; }
        .eyebrow { color:var(--teal); font-weight:700; text-transform:uppercase; letter-spacing:0.14em; font-size:0.8rem; }
        .btn { display:inline-block; background:var(--amber); color:var(--navy); font-weight:700; padding:16px 34px; border-radius:50px; transition:transform .2s,box-shadow .2s; box-shadow:0 10px 30px rgba(255,176,32,.35); }
        .btn:hover { transform:translateY(-3px); box-shadow:0 16px 40px rgba(255,176,32,.5); }
        .btn-ghost { display:inline-block; color:#fff; font-weight:600; padding:16px 24px; opacity:.85; }
        .btn-ghost:hover { opacity:1; }

        /* ---------- NAV ---------- */
        .nav { position:fixed; top:0; left:0; right:0; z-index:90; background:rgba(0,0,0,.88); backdrop-filter:blur(14px); border-bottom:1px solid rgba(255,255,255,.08); }
        .nav-inner { display:flex; align-items:center; justify-content:space-between; padding:14px 24px; max-width:1180px; margin:0 auto; }
        .nav img { height:34px; filter:brightness(0) invert(1); }
        .nav-links { display:flex; gap:28px; align-items:center; color:#fff; font-size:.92rem; font-weight:500; }
        .nav-links a:not(.btn) { position:relative; padding-bottom:3px; }
        .nav-links a:not(.btn)::after { content:''; position:absolute; left:0; bottom:0; width:100%; height:2px; background:var(--amber); transform:scaleX(0); transform-origin:right; transition:transform .28s ease; }
        .nav-links a:not(.btn):hover::after { transform:scaleX(1); transform-origin:left; }
        .nav .btn { padding:10px 22px; font-size:.9rem; }
        @media (max-width:820px){ .nav-links a:not(.btn){ display:none; } }

        /* ---------- HERO ---------- */
        .hero { position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; }
        .hero-bg { position:absolute; inset:-6%; background:url('img/fazenda/background-2x.webp') center 18%/cover no-repeat; will-change:transform; }
        .hero::after { content:''; position:absolute; inset:0; background:linear-gradient(100deg, rgba(6,6,8,.92) 0%, rgba(6,6,8,.78) 42%, rgba(6,6,8,.28) 100%); }
        .hero-content { position:relative; z-index:2; color:#fff; max-width:1080px; margin:0 auto; padding:140px 24px 90px; width:100%; }
        .hero .eyebrow { color:#fff; opacity:.7; font-weight:500; font-size:.74rem; letter-spacing:.22em; }
        .hero h1 { font-size:clamp(2.7rem,6vw,4.8rem); font-weight:800; max-width:15ch; }
        .hero h1 .strike { color:var(--teal-bright); display:block; font-family:'Poppins',sans-serif; font-weight:800; letter-spacing:-0.03em; line-height:1.04; }
        .hero h1 .answer { display:block; margin-top:.4em; font-weight:600; font-size:.52em; color:#fff; opacity:.95; font-style:italic; }
        .hero-sub { margin:26px 0 8px; max-width:52ch; font-size:1.12rem; opacity:.92; }
        .hero-sub strong { color:var(--amber); }
        .hero-proof { font-size:.85rem; opacity:.72; margin:18px 0 34px; letter-spacing:.02em; }
        .hero-proof b { color:var(--amber); font-weight:700; }
        .hero-ctas { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }

        /* ---------- PROBLEMA ---------- */
        .problema h2 { font-size:clamp(1.7rem,3.4vw,2.5rem); max-width:24ch; margin:14px 0 54px; }
        .vinhetas { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; }
        @media (max-width:820px){ .vinhetas{ grid-template-columns:1fr; } }
        .vinheta { border-left:3px solid var(--teal); padding-left:22px; transition:border-color .3s, transform .3s; }
        .vinheta:hover { border-color:var(--amber); transform:translateX(4px); }
        .vinheta h3 { font-size:1.15rem; margin-bottom:10px; }
        .vinheta p { color:var(--mist); font-size:.98rem; }
        .ponte { margin-top:56px; font-size:1.18rem; max-width:62ch; font-weight:500; }
        .ponte em { color:var(--teal); font-style:normal; font-weight:700; }

        /* ---------- MÉTODO ---------- */
        .metodo { background:linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%); color:#fff; }
        .metodo h2 { font-size:clamp(1.7rem,3.4vw,2.4rem); max-width:26ch; margin:14px 0 30px; }
        .metodo .eyebrow { color:var(--amber); }
        .metodo-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center; }
        @media (max-width:900px){ .metodo-grid{ grid-template-columns:1fr; } }
        .metodo-copy p { opacity:.88; margin-bottom:20px; }
        .metodo-copy strong { color:var(--amber); }
        .octa { width:100%; max-width:420px; margin:0 auto; display:block; overflow:visible; }
        .octa text { font-family:'Poppins',sans-serif; font-size:11.5px; font-weight:600; fill:#fff; opacity:.25; transition:opacity .5s, fill .5s; }
        .octa circle.node { fill:var(--navy); stroke:rgba(255,255,255,.25); stroke-width:1.5; transition:stroke .5s, fill .5s; }
        .octa .lit text { opacity:1; fill:var(--amber); }
        .octa .lit circle.node { stroke:var(--amber); fill:rgba(255,176,32,.18); }
        .octa polygon { fill:none; stroke:rgba(255,255,255,.2); stroke-width:1.5; }
        .prova-metodo { margin-top:64px; background:rgba(255,106,0,.08); border:1px solid rgba(255,106,0,.3); border-radius:18px; padding:34px 38px; }
        .prova-metodo p { opacity:.92; }
        .prova-metodo b { color:var(--amber); }

        /* ---------- DEMONSTRAÇÃO (cena pinned) ---------- */
        .demo-wrap { position:relative; }
        .demo-stage { position:relative; height:100svh; overflow:hidden; background:var(--navy-deep); }
        .stage-cam { position:absolute; inset:-8%; will-change:transform; }
        .stage-bg { position:absolute; inset:0; background:url('img/fazenda/background-2x.webp') center 62%/cover no-repeat; }
        .sprite { position:absolute; width:22%; opacity:0; transform:scale(.55) translateY(6%); will-change:transform,opacity; filter:drop-shadow(0 14px 18px rgba(0,0,0,.25)); }
        #sp-casa1,#sp-casa4 { width:24%; left:38%; top:34%; }
        #sp-pasto { width:27%; left:10%; top:48%; }
        #sp-plantacao { width:24%; left:60%; top:52%; }
        #sp-galinheiro { width:17%; left:16%; top:30%; }
        #sp-poco { width:10%; left:57%; top:38%; }
        #sp-trator { width:14%; left:36%; top:64%; }
        #sp-caminhonete { width:14%; left:63%; top:70%; }
        .dusk { position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,140,60,.35) 0%, rgba(120,50,120,.45) 100%); mix-blend-mode:multiply; opacity:0; }
        .stage-vignette { position:absolute; inset:0; box-shadow:inset 0 0 180px rgba(6,6,8,.75); pointer-events:none; }

        /* Progresso dos 4 atos */
        .acts { position:absolute; z-index:8; right:22px; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; gap:14px; }
        .acts span { width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.35); transition:background .3s, transform .3s, box-shadow .3s; }
        .acts span.on { background:var(--amber); transform:scale(1.45); box-shadow:0 0 12px rgba(255,176,32,.8); }

        /* Botão de som */
        .snd { position:absolute; z-index:8; right:18px; bottom:22px; width:46px; height:46px; border-radius:50%; border:1px solid rgba(255,255,255,.3); background:rgba(6,6,8,.65); backdrop-filter:blur(8px); color:#fff; font-size:1.15rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:border-color .3s, transform .2s; }
        .snd:hover { border-color:var(--amber); transform:scale(1.08); }
        @media (max-width:820px){ .acts { right:12px; } .snd { right:12px; bottom:14px; } }
        .demo-head { position:absolute; top:0; left:0; right:0; z-index:5; text-align:center; padding-top:86px; color:#fff; text-shadow:0 2px 18px rgba(6,6,8,.8); }
        .demo-head h2 { font-size:clamp(1.8rem,3.6vw,2.7rem); }
        .toast { position:absolute; z-index:6; right:4%; top:20%; background:rgba(255,255,255,.96); color:var(--navy); border-radius:14px; padding:14px 20px; font-size:.95rem; font-weight:500; box-shadow:0 18px 50px rgba(6,6,8,.4); max-width:320px; opacity:0; transform:translateX(24px); border-left:4px solid var(--amber); }
        .toast b { color:var(--teal); }
        .demo-caption { position:absolute; z-index:6; left:4%; bottom:7%; max-width:380px; color:#fff; text-shadow:0 2px 14px rgba(6,6,8,.9); opacity:0; transform:translateY(16px); }
        .demo-caption p { font-size:1.05rem; font-weight:500; }

        /* HUD de comissão (persistente, canto sup. esq.) */
        .hud { position:absolute; z-index:7; left:4%; top:20%; background:rgba(6,6,8,.82); backdrop-filter:blur(8px); border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:14px 20px; color:#fff; box-shadow:0 14px 40px rgba(6,6,8,.5); opacity:0; transform:translateY(-12px); }
        .hud .hud-label { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; opacity:.7; }
        .hud .hud-val { font-size:1.9rem; font-weight:800; color:var(--amber); line-height:1.1; }
        .hud .hud-val small { font-size:.9rem; font-weight:600; opacity:.85; }
        .hud .hud-sub { font-size:.78rem; opacity:.7; margin-top:2px; }

        /* Card de feed social */
        .feed-card { position:absolute; z-index:6; right:4%; bottom:9%; width:330px; background:rgba(255,255,255,.97); border-radius:18px; padding:16px 18px; box-shadow:0 22px 60px rgba(6,6,8,.5); opacity:0; transform:translateY(20px) scale(.96); }
        .feed-top { display:flex; align-items:center; gap:10px; }
        .feed-top img { width:40px; height:40px; border-radius:50%; object-fit:cover; }
        .feed-top .fn { font-weight:700; font-size:.92rem; color:var(--navy); line-height:1.2; }
        .feed-top .ft { font-size:.75rem; color:var(--mist); }
        .feed-body { font-size:.9rem; color:var(--navy); margin:10px 0; line-height:1.4; }
        .feed-react { display:flex; gap:16px; font-size:.82rem; color:var(--mist); border-top:1px solid #eef1f6; padding-top:9px; }
        .feed-react b { color:var(--teal); }

        /* Ranking da competição */
        .rank-card { position:absolute; z-index:6; right:4%; top:20%; width:320px; background:rgba(6,6,8,.9); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:16px 18px; color:#fff; box-shadow:0 22px 60px rgba(6,6,8,.55); opacity:0; transform:translateY(20px); }
        .rank-title { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; opacity:.75; margin-bottom:12px; display:flex; align-items:center; gap:7px; }
        .rank-row { display:flex; align-items:center; gap:11px; padding:7px 0; }
        .rank-row + .rank-row { border-top:1px solid rgba(255,255,255,.08); }
        .rank-pos { width:20px; font-weight:800; font-size:.95rem; text-align:center; color:var(--amber); }
        .rank-row img { width:38px; height:38px; border-radius:50%; object-fit:cover; border:2px solid rgba(255,255,255,.25); }
        .rank-row.lead img { border-color:var(--amber); }
        .rank-name { flex:1; font-weight:600; font-size:.9rem; }
        .rank-name small { display:block; font-weight:400; font-size:.74rem; opacity:.65; }
        .rank-val { font-weight:700; font-size:.9rem; color:var(--teal-bright); }

        @media (max-width:820px){
            .hud { left:4%; right:4%; top:14%; padding:10px 15px; display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
            .hud .hud-label { order:1; width:100%; }
            .hud .hud-val { font-size:1.5rem; order:2; }
            .hud .hud-sub { order:3; margin-top:0; }
            .feed-card { right:4%; left:4%; width:auto; bottom:16%; }
            .rank-card { right:4%; left:4%; width:auto; top:26%; padding:12px 15px; }
            .rank-row img { width:32px; height:32px; }
            .rank-row { padding:5px 0; }
        }
        @media (max-width:820px){
            #sp-casa1,#sp-casa4 { width:44%; left:28%; top:32%; }
            #sp-pasto { width:48%; left:2%; top:48%; }
            #sp-plantacao { width:44%; left:52%; top:54%; }
            #sp-galinheiro { width:32%; left:8%; top:22%; }
            #sp-poco { width:18%; left:66%; top:36%; }
            #sp-trator { width:26%; left:20%; top:68%; }
            #sp-caminhonete { width:26%; left:56%; top:72%; }
            .toast { right:4%; left:4%; max-width:none; top:16%; }
            .demo-caption { bottom:5%; max-width:none; right:4%; }
            .demo-head { padding-top:76px; }
        }
        .mundos { background:var(--offwhite); }
        .mundos blockquote { font-size:clamp(1.15rem,2.2vw,1.5rem); font-weight:500; max-width:56ch; margin:0 auto; text-align:center; }
        .mundos blockquote strong { color:var(--teal); }
        .mundos .assinatura { display:block; text-align:center; margin-top:18px; color:var(--mist); font-size:.95rem; }

        /* ---------- POR DENTRO DO APP ---------- */
        .appreal { background:var(--navy-deep); color:#fff; overflow:hidden; }
        .appreal h2 { font-size:clamp(1.7rem,3.4vw,2.4rem); max-width:26ch; margin:14px 0 12px; }
        .appreal .sub { opacity:.8; max-width:60ch; margin-bottom:44px; }
        .shots { display:flex; gap:28px; overflow-x:auto; padding:10px 24px 26px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; max-width:1180px; margin:0 auto; scrollbar-width:none; }
        .shots::-webkit-scrollbar { display:none; }
        .shot { flex:0 0 240px; scroll-snap-align:center; }
        .phone { border-radius:30px; border:7px solid #1E1E22; outline:1px solid rgba(255,255,255,.14); overflow:hidden; background:#000; box-shadow:0 24px 60px rgba(0,0,0,.6); transition:transform .35s; }
        .shot:hover .phone { transform:translateY(-8px) scale(1.02); }
        .phone img { width:100%; display:block; }
        .shot figcaption { text-align:center; font-size:.85rem; opacity:.75; margin-top:14px; line-height:1.4; padding:0 4px; }
        .shots-hint { text-align:center; font-size:.78rem; opacity:.45; margin-top:4px; letter-spacing:.06em; }
        @media (max-width:820px){ .shot { flex-basis:210px; } .shots { gap:18px; } }

        /* ---------- WIZ ---------- */
        .wiz h2 { font-size:clamp(1.7rem,3.4vw,2.4rem); max-width:26ch; margin:14px 0 40px; }
        .stats { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-bottom:48px; }
        @media (max-width:820px){ .stats{ grid-template-columns:1fr; } }
        .stat b { font-size:clamp(2.4rem,4.4vw,3.4rem); font-weight:800; color:var(--teal); display:block; line-height:1; }
        .stat span { color:var(--mist); font-size:.95rem; }
        .wiz-body { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
        @media (max-width:900px){ .wiz-body{ grid-template-columns:1fr; } }
        .video-frame { position:relative; border-radius:18px; overflow:hidden; aspect-ratio:16/9; box-shadow:0 24px 70px rgba(0,0,0,.25); background:var(--navy); }
        .video-frame iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
        .video-cap { font-size:.85rem; color:var(--mist); margin-top:12px; }

        /* ---------- PLATAFORMA ---------- */
        .plataforma { background:linear-gradient(180deg, var(--navy-deep) 0%, var(--navy) 100%); color:#fff; }
        .plataforma h2 { font-size:clamp(1.7rem,3.6vw,2.5rem); max-width:24ch; margin:14px 0 30px; }
        .plataforma p { opacity:.88; max-width:66ch; margin-bottom:18px; }
        .plataforma b { color:var(--amber); }
        .logos { display:flex; flex-wrap:wrap; gap:28px 48px; align-items:center; margin-top:48px; }
        .logos img { height:30px; width:auto; filter:brightness(0) invert(1); opacity:.6; transition:opacity .3s; }
        .logos img:hover { opacity:1; }
        .logos img.lg { height:40px; }
        .logos img.sm { height:24px; }
        @media (max-width:820px){ .logos { gap:20px 32px; } .logos img { height:24px; } .logos img.lg { height:32px; } .logos img.sm { height:19px; } }

        /* ---------- COMO FUNCIONA ---------- */
        .passos { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; margin-top:52px; }
        @media (max-width:820px){ .passos{ grid-template-columns:1fr; } }
        .passo .num { width:44px; height:44px; border-radius:50%; background:var(--teal); color:#fff; font-weight:700; display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
        .passo h3 { margin-bottom:8px; font-size:1.1rem; }
        .passo p { color:var(--mist); font-size:.96rem; }
        .passo em { font-style:normal; color:var(--teal); font-weight:600; font-size:.88rem; display:block; margin-top:8px; }

        /* ---------- PLANOS ---------- */
        .planos { background:var(--offwhite); }
        .planos h2 { font-size:clamp(1.7rem,3.4vw,2.4rem); margin:14px 0 18px; }
        .ancora { font-size:1.15rem; max-width:60ch; font-weight:500; margin-bottom:48px; }
        .planos-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
        @media (max-width:1000px){ .planos-grid{ grid-template-columns:repeat(2,1fr); } }
        @media (max-width:640px){ .planos-grid{ grid-template-columns:1fr; } }
        .plano { background:#fff; border-radius:18px; padding:30px 26px; box-shadow:0 10px 34px rgba(0,0,0,.08); transition:transform .3s, box-shadow .3s; }
        .plano:hover { transform:translateY(-6px); box-shadow:0 22px 50px rgba(0,0,0,.14); }
        .plano h3 { font-size:1.05rem; margin-bottom:10px; }
        .plano p { color:var(--mist); font-size:.92rem; }
        .plano.destaque { background:var(--navy); color:#fff; position:relative; }
        .plano.destaque h3 { color:var(--amber); }
        .plano.destaque p { color:rgba(255,255,255,.8); }
        .plano.destaque .tag { position:absolute; top:-12px; right:18px; background:var(--amber); color:var(--navy); font-size:.72rem; font-weight:700; padding:4px 12px; border-radius:20px; }
        .planos .micro { margin-top:36px; color:var(--mist); font-size:.95rem; max-width:60ch; }
        .planos .btn { margin-top:28px; }

        /* ---------- FAQ ---------- */
        .faq h2 { font-size:clamp(1.7rem,3.4vw,2.3rem); margin:14px 0 40px; }
        .faq details { border-bottom:1px solid #E3E9F2; padding:20px 0; }
        .faq summary { font-weight:600; cursor:pointer; font-size:1.05rem; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; }
        .faq summary::-webkit-details-marker { display:none; }
        .faq summary::after { content:'+'; color:var(--teal); font-size:1.5rem; font-weight:400; flex-shrink:0; }
        .faq details[open] summary::after { content:'–'; }
        .faq details p { color:var(--mist); margin-top:12px; max-width:72ch; }

        /* ---------- CTA FINAL ---------- */
        .final { position:relative; min-height:88svh; display:flex; align-items:center; justify-content:center; text-align:center; overflow:hidden; color:#fff; }
        .final-bg { position:absolute; inset:0; background:url('img/fazenda/background-2x.webp') center 62%/cover no-repeat; }
        .final-sprites { position:absolute; inset:0; }
        .final-sprites img { position:absolute; filter:drop-shadow(0 14px 18px rgba(0,0,0,.3)); }
        .final::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,140,60,.3) 0%, rgba(60,25,80,.72) 100%); }
        .final-content { position:relative; z-index:3; padding:0 24px; }
        .final h2 { font-size:clamp(2rem,4.6vw,3.3rem); font-weight:800; text-shadow:0 3px 24px rgba(6,6,8,.85); }
        .final p { margin:18px auto 34px; max-width:46ch; font-size:1.12rem; text-shadow:0 2px 16px rgba(6,6,8,.9); }

        footer { background:var(--navy-deep); color:rgba(255,255,255,.6); padding:56px 0 40px; font-size:.85rem; border-top:1px solid rgba(255,255,255,.08); }
        .footer-top { display:flex; justify-content:space-between; gap:32px; flex-wrap:wrap; align-items:flex-start; margin-bottom:36px; }
        .footer-top nav { display:flex; gap:24px; flex-wrap:wrap; }
        .footer-top a:hover { color:#fff; }
        footer b { color:#fff; }
        .iso { display:inline-flex; align-items:center; gap:9px; border:1px solid rgba(255,255,255,.2); border-radius:10px; padding:8px 14px; font-size:.78rem; color:rgba(255,255,255,.75); }
        .iso .dot { width:8px; height:8px; border-radius:50%; background:var(--amber); }
        .footer-legal { border-top:1px solid rgba(255,255,255,.08); padding-top:24px; font-size:.76rem; line-height:1.7; color:rgba(255,255,255,.42); max-width:900px; }

        .reveal { opacity:0; transform:translateY(34px); }
        .no-anim .reveal, .no-js .reveal { opacity:1; transform:none; }
        @media (prefers-reduced-motion: reduce) {
            .reveal { opacity:1 !important; transform:none !important; }
            .sprite { opacity:1 !important; transform:none !important; }
            .demo-caption { opacity:1 !important; transform:none !important; position:static; margin:6px 0; max-width:none; }
            .toast { display:none; }
            .hud, .feed-card, .rank-card { opacity:1 !important; transform:none !important; }
            .octa text { opacity:1 !important; }
        }

/* Vídeo de integração (Como funciona) — prova mecânica CRM → mundo */
.integ-video { max-width:640px; margin:56px auto 0; }
.integ-video .video-cap { text-align:center; }
