/* ============================================================ FOX ON — estilo global paleta estrita: #FFFFFF / #060604 / #F5F5F5 ============================================================ */ :root { /* paleta FOX ON */ --orange: #FF6B00; --orange2: #FF9500; --gold: #FFB700; --gold-light: #FFB347; --glow: rgba(255,107,0,0.4); --dark: #060604; --dark2: #0C0C0A; --card: #131311; --card2: #1A1A18; --gray: #999999; --on-accent: #2B1200; --bg: #060604; --bg-alt: #0C0C0A; --fg: #FFFFFF; --fg-inv: #060604; --border: rgba(255,255,255,0.08); --border-strong: rgba(255,255,255,0.16); --muted: #999999; --radius: 12px; --radius-lg: 20px; --max-width: 1140px; --container-pad: 24px; --shadow: 0 1px 2px rgba(0,0,0,0.4); --font-sans: 'Montserrat', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; } * { box-sizing: border-box; } html { scroll-behavior: smooth; font-size: 15px; } @media (min-width: 1280px) { html { font-size: 15.5px; } } @media (min-width: 1600px) { html { font-size: 16px; } } @media (max-width: 480px) { html { font-size: 14px; } } body { margin: 0; font-family: var(--font-sans); font-size: 1rem; line-height: 1.6; color: var(--fg); background: var(--bg); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: relative; zoom: 0.85; } @media (max-width: 980px) { body { zoom: 1; } } /* Luz no topo da página — atrás do topbar, esvai pra transparente */ body::before { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 90%; max-width: 1400px; height: 500px; background: radial-gradient( ellipse 70% 100% at 50% 0%, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.05) 30%, transparent 70% ); pointer-events: none; z-index: 1; } img { max-width: 100%; display: block; } a { color: inherit; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.15s ease; } a:hover { border-bottom-color: var(--fg); } h1, h2, h3, h4 { font-weight: 800; line-height: 1.15; letter-spacing: -0.02em; margin: 0 0 16px; } h1 { font-size: clamp(1.85rem, 3.5vw, 2.75rem); } h2 { font-size: clamp(1.5rem, 2.4vw, 2.1rem); } h3 { font-size: clamp(1.1rem, 1.6vw, 1.3rem); } h4 { font-size: 1.05rem; } p { margin: 0 0 16px; } .container { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--container-pad); } /* ============================================================ HEADER + NAV (dark pill nav) ============================================================ */ .site-header { position: sticky; top: 0; z-index: 50; background: transparent; } .nav { display: flex; justify-content: center; padding: 14px 0; } .nav__bar { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 18px; width: 100%; max-width: 980px; margin: 0 auto; } .nav__pill { position: relative; display: inline-flex; align-items: center; padding: 6px 8px; background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; border: 1px solid transparent; border-radius: 999px; box-shadow: none; transition: background 0.3s ease, border-color 0.3s ease, backdrop-filter 0.3s ease, box-shadow 0.3s ease; } body.is-scrolled .nav__pill { background: rgba(19, 19, 17, 0.85); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border-color: rgba(255, 255, 255, 0.07); box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35); } .nav__pill::before { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: radial-gradient( 260px circle at var(--mx, 50%) var(--my, 50%), rgba(255, 255, 255, 0.10), transparent 60% ); opacity: 0; transition: opacity 0.25s ease; z-index: 0; } .nav__pill:hover::before { opacity: 1; } .nav__pill > * { position: relative; z-index: 1; } .nav__brand { display: flex; align-items: center; border-bottom: none; flex-shrink: 0; } .nav__brand img { height: 30px; width: auto; } .nav__menu { display: flex; align-items: center; list-style: none; margin: 0; padding: 0; gap: 2px; } .nav__menu a { display: inline-block; font-size: 0.9rem; font-weight: 500; color: #999999; padding: 9px 16px; border-radius: 999px; border-bottom: none; transition: color 0.15s ease, background 0.15s ease; } .nav__menu a:hover { color: #fff; border-bottom: none; } .nav__menu a.is-active { color: #fff; background: rgba(255, 255, 255, 0.08); } /* Item destacado do nav (Indique e Ganhe) — pill laranja da marca */ .nav__menu a.nav__highlight-link, .nav__highlight-link { display: inline-flex !important; align-items: center; gap: 6px; color: var(--orange) !important; border: 1.5px solid rgba(255, 107, 0, 0.7) !important; background: rgba(255, 107, 0, 0.10) !important; font-weight: 700 !important; letter-spacing: 0.01em; padding: 8px 14px !important; border-radius: 999px !important; box-shadow: 0 0 18px rgba(255, 107, 0, 0.18) !important; transition: color 0.18s ease, background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease !important; } .nav__menu a.nav__highlight-link:hover, .nav__highlight-link:hover { color: #FF9500 !important; background: rgba(255, 107, 0, 0.20) !important; border-color: rgba(255, 107, 0, 1) !important; box-shadow: 0 0 24px rgba(255, 107, 0, 0.45) !important; transform: translateY(-1px); } .nav__actions { display: flex; align-items: center; gap: 6px; flex-shrink: 0; } .nav__bar .btn--pill { padding: 10px 18px; font-size: 0.88rem; position: relative; overflow: hidden; isolation: isolate; display: inline-flex; align-items: center; gap: 8px; transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.18s ease, border-color 0.18s ease, box-shadow 0.22s ease, opacity 0.15s ease; } .nav__bar .btn--pill:hover { transform: translateY(-1px); opacity: 1; } .nav__bar .btn--pill:active { transform: translateY(0); transition-duration: 0.05s; } /* Outline (Entrar) — pill com borda e ícone */ .nav__bar .btn--pill-outline { border: 1px solid rgba(255, 255, 255, 0.18); background: rgba(19, 19, 17, 0.6); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); color: #fff; } .nav__bar .btn--pill-outline svg { color: #FF6B00; } .nav__bar .btn--pill-outline:hover { border-color: rgba(255, 255, 255, 0.4); background: rgba(255, 255, 255, 0.05); } /* Green (Criar conta) — solid verde da marca */ .nav__bar .btn--pill-green { background: linear-gradient(180deg, #FF9500 0%, #FF6B00 100%); color: #2B1200; border: 0; font-weight: 700; box-shadow: none; } .nav__bar .btn--pill-green:hover { background: linear-gradient(180deg, #FFB347 0%, #FF9500 100%); box-shadow: none; } /* ============================================================ LANGUAGE SWITCHER ============================================================ */ .lang-switch { position: relative; flex-shrink: 0; } .lang-switch__btn { background: transparent; border: 0; padding: 6px 2px; display: inline-flex; align-items: center; gap: 6px; cursor: pointer; color: #fff; font: inherit; transition: opacity 0.15s ease; } .lang-switch__btn:hover { opacity: 0.75; } .lang-code { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; color: #fff; font-variant-numeric: tabular-nums; } .lang-switch__menu .lang-code { color: #8a8a8a; margin-right: 6px; font-size: 0.7rem; } .lang-switch__menu [data-lang].is-active .lang-code { color: #fff; } .lang-switch__chevron { display: inline-block; width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); margin-bottom: 2px; transition: transform 0.2s ease; } .lang-switch.is-open .lang-switch__chevron { transform: rotate(-135deg); margin-bottom: -2px; } .lang-flag { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 999px; overflow: hidden; flex-shrink: 0; background: #1A1A18; } .lang-flag img { width: 100%; height: 100%; object-fit: cover; display: block; } .lang-switch__menu { position: absolute; top: calc(100% + 10px); right: 0; min-width: 180px; background: rgba(19, 19, 17, 0.96); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; padding: 6px; list-style: none; margin: 0; display: none; z-index: 100; } .lang-switch.is-open .lang-switch__menu { display: block; } .lang-switch__menu li { list-style: none; } .lang-switch__menu button { width: 100%; background: transparent; border: 0; display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; font: inherit; font-size: 0.92rem; cursor: pointer; color: #999999; text-align: left; transition: background 0.15s ease, color 0.15s ease; } .lang-switch__menu button:hover { background: rgba(255, 255, 255, 0.06); color: #fff; } .lang-switch__menu button.is-active { color: #fff; background: rgba(255, 255, 255, 0.06); font-weight: 600; } .btn--pill { display: inline-flex; align-items: center; gap: 8px; padding: 12px 22px; border-radius: 999px; font-weight: 600; font-size: 0.92rem; border: 1px solid transparent; border-bottom: 1px solid transparent; transition: opacity 0.15s ease, background 0.15s ease, color 0.15s ease; cursor: pointer; } .btn--pill:hover { opacity: 0.9; border-bottom: 1px solid transparent; } .btn--pill-outline { background: transparent; color: #fff; border-color: #2a2a2a; } .btn--pill-outline:hover { background: #1A1A18; color: #fff; } .btn--pill-solid { background: linear-gradient(180deg, #FF9500 0%, #FF6B00 100%); color: #2B1200; border-color: #FF6B00; font-weight: 700; box-shadow: none; } .btn--pill-solid:hover { background: linear-gradient(180deg, #FFB347 0%, #FF9500 100%); border-color: #FF9500; box-shadow: none; } .nav__toggle { display: none; background: none; border: 0; width: 40px; height: 40px; cursor: pointer; padding: 0; justify-self: end; } .nav__toggle span { display: block; width: 22px; height: 2px; background: #fff; margin: 5px auto; transition: transform 0.2s ease, opacity 0.2s ease; } @media (max-width: 980px) { .nav { padding: 12px 12px; } .nav__bar { width: 100%; justify-content: space-between; align-items: center; gap: 12px; /* padding-right menor que o esquerdo porque o burger de 44px já traz folga interna própria — evita o botão colado na borda da pill */ padding: 6px 6px 6px 18px; max-width: 560px; margin: 0 auto; background: rgba(19, 19, 17, 0.85); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35); } .lang-switch { display: none; } .nav__pill { position: static; background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border: none !important; box-shadow: none !important; padding: 0; } .nav__pill::before { display: none; } .nav__menu { position: absolute; top: calc(100% + 10px); right: 12px; left: auto; width: 260px; flex-direction: column; align-items: stretch; background: rgba(19, 19, 17, 0.96); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 22px; padding: 22px 18px 18px; gap: 4px; transform: translateY(-12px); opacity: 0; visibility: hidden; pointer-events: none; transition: transform 0.22s ease, opacity 0.22s ease, visibility 0.22s ease; z-index: 60; box-shadow: 0 18px 50px rgba(0, 0, 0, 0.55); list-style: none; } .nav__menu.is-open { transform: translateY(0); opacity: 1; visibility: visible; pointer-events: auto; } .nav__menu li { list-style: none; } .nav__menu a { display: block; text-align: center; padding: 14px 16px; color: #fff; font-size: 1rem; font-weight: 500; border-radius: 12px; border-bottom: 0; transition: background 0.15s ease, color 0.15s ease; } .nav__menu a:hover { background: rgba(255,255,255,0.06); } /* Item destacado no dropdown: o inline-flex do pill não ocupa a largura, então vira flex centralizado como os demais itens */ .nav__menu-highlight { margin-top: 6px; } .nav__menu-highlight .nav__highlight-link { display: flex !important; justify-content: center; width: 100%; padding: 12px 18px !important; } /* "Entrar" como pill outline na base do dropdown */ .nav__menu-entrar { margin-top: 12px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,0.08); } .nav__menu-entrar a { border: 1px solid rgba(255,255,255,0.22); border-radius: 999px; padding: 12px 22px; font-weight: 600; } .nav__menu-entrar a:hover { background: rgba(255,255,255,0.05); border-color: rgba(255,255,255,0.4); } /* Burger vira X quando aberto. 44x44 é o mínimo de alvo de toque (WCAG 2.5.5 / HIG) — antes eram 40px. */ .nav__toggle { display: flex; flex-direction: column; justify-content: center; flex-shrink: 0; position: relative; width: 44px; height: 44px; } .nav__toggle span { display: block; width: 22px; height: 2px; background: #fff; margin: 0 auto; transition: transform 0.25s ease, opacity 0.18s ease; } .nav__toggle span + span { margin-top: 5px; } .nav__toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); } .nav__toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; } .nav__toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } /* Actions: mantém só o "Criar conta" no mobile, encostado no burger. Sem margin-right:auto — duas margens auto anulam o space-between do .nav__bar e o espaçamento virava acidente em vez de regra. */ .nav__actions { display: flex; align-items: center; gap: 8px; margin-left: auto; flex: 0 0 auto; } .nav__actions .btn--pill-outline, .nav__actions .lang-switch { display: none; } .nav__bar .btn--pill-green { padding: 11px 26px; font-size: 0.92rem; font-weight: 700; white-space: nowrap; letter-spacing: 0.005em; } .nav__brand img { height: 26px; } } /* ============================================================ BUTTONS ============================================================ */ .btn { display: inline-block; padding: 14px 28px; border-radius: var(--radius); font-weight: 600; font-size: 1rem; text-align: center; cursor: pointer; border: 1px solid var(--fg); transition: opacity 0.15s ease, transform 0.1s ease; border-bottom: 1px solid var(--fg); } .btn:hover { opacity: 0.88; } .btn:active { transform: translateY(1px); } .btn--primary { background: #fff; color: #060604; border-color: #fff; } .btn--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,0.18); border-bottom-color: rgba(255,255,255,0.18); } .btn--ghost:hover { background: rgba(255,255,255,0.06); opacity: 1; } .btn--inv { background: linear-gradient(180deg, #FF9500 0%, #FF6B00 100%); color: #2B1200; border-color: #FF6B00; font-weight: 700; box-shadow: none; } .btn--inv:hover { background: linear-gradient(180deg, #FFB347 0%, #FF9500 100%); border-color: #FF9500; box-shadow: none; opacity: 1; } .btn-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; } /* ============================================================ HERO (dark-first) ============================================================ */ .hero { background: #060604; color: #fff; padding: 72px 0 72px; position: relative; overflow: hidden; isolation: isolate; } .hero > .container { position: relative; z-index: 2; } @media (max-width: 768px) { .hero { padding: 56px 0; } } .hero::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(circle, rgba(255,255,255,0.06) 1px, transparent 1px); background-size: 28px 28px; pointer-events: none; -webkit-mask-image: radial-gradient(ellipse at center, #060604 30%, transparent 75%); mask-image: radial-gradient(ellipse at center, #060604 30%, transparent 75%); } .hero > .container { position: relative; z-index: 1; } .hero__inner { max-width: 920px; } .hero__eyebrow { display: inline-block; font-size: 0.78rem; letter-spacing: 0.16em; text-transform: uppercase; padding: 6px 14px; border: 1px solid #2a2a2a; background: rgba(255,255,255,0.02); border-radius: 999px; margin-bottom: 28px; font-weight: 600; color: #fff; } .hero h1 { margin-bottom: 20px; font-size: clamp(1.85rem, 3.6vw, 3rem); font-weight: 600; line-height: 1.1; letter-spacing: -0.02em; } .hero__lead { font-size: clamp(0.95rem, 1.1vw, 1.05rem); font-weight: 400; color: #999999; max-width: 560px; margin-bottom: 28px; line-height: 1.55; } .hero__lead strong { color: #fff; font-weight: 600; } .hero__tag { display: inline-block; font-size: 0.85rem; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; margin-top: 28px; color: #8a8a8a; } .hero--center { text-align: center; } .hero--center .hero__inner { margin: 0 auto; } .hero--center .hero__lead { margin-left: auto; margin-right: auto; } .hero--center .btn-row { justify-content: center; } /* Split hero (home) — título grande à esquerda, copy + CTA à direita */ .hero--split { padding: 120px 0 140px; } .hero--split .hero__grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 72px; align-items: end; } .hero--split h1 { font-size: clamp(2.75rem, 7vw, 6rem); margin-bottom: 0; } .hero--split .hero__right { padding-bottom: 8px; } .hero--split .hero__lead { font-size: 1.25rem; margin-bottom: 28px; } @media (max-width: 980px) { .hero--split { padding: 80px 0 96px; } .hero--split .hero__grid { grid-template-columns: 1fr; gap: 36px; align-items: start; } } /* Centered hero (home v2) — título centralizado + imagem da plataforma */ .hero--centered { padding: 96px 0 160px; text-align: center; } .hero--centered .hero__inner { max-width: none; margin: 0 auto; } .hero--centered h1 { font-size: clamp(1.4rem, 5.8vw, 5rem); line-height: 1.05; letter-spacing: -0.03em; margin-bottom: 22px; max-width: none; margin-left: auto; margin-right: auto; white-space: nowrap; } @media (max-width: 400px) { .hero--centered h1 { font-size: clamp(1.1rem, 6.5vw, 1.6rem); } } .hero--centered h1 em, .hero h1 em { font-style: normal; font-weight: inherit; color: #FF6B00; -webkit-text-stroke: 0; text-stroke: 0; display: inline; } /* Handwriting reveal — headline inteira sendo "escrita" da esquerda pra direita */ .hero__title-write { clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); animation: handwrite 2.6s cubic-bezier(0.55, 0.05, 0.25, 1) 0.4s forwards !important; } @keyframes handwrite { 0% { clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); } 100% { clip-path: polygon(0 0, 102% 0, 104% 100%, 0 100%); } } @media (prefers-reduced-motion: reduce) { .hero__title-write { clip-path: none !important; animation: none !important; } } .hero--centered .hero__lead { font-size: 1.2rem; color: #999999; max-width: 680px; margin: 0 auto 36px; } .hero--centered .hero__cta { position: relative; z-index: 3; display: flex; flex-wrap: wrap; gap: 20px; justify-content: center; align-items: center; margin-bottom: 80px; } .hero__link { position: relative; display: inline-flex; align-items: center; gap: 10px; color: #e5e5e5; font-weight: 600; font-size: 0.95rem; letter-spacing: -0.005em; padding: 13px 28px; border-radius: 999px; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.12); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); line-height: 1; transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s ease; } .hero__link-chart { color: #fff; flex-shrink: 0; filter: drop-shadow(0 0 6px rgba(255,255,255,0.35)); transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1); } .hero__link:hover { color: #fff; background: rgba(255,107,0,0.06); border-color: rgba(255,107,0,0.35); border-bottom: 1px solid rgba(255,107,0,0.35); transform: translateY(-2px); box-shadow: 0 10px 28px rgba(0,0,0,0.35), 0 0 24px rgba(255,107,0,0.12); } .hero__link:hover .hero__link-chart { transform: translateY(-2px); } .hero__link:active { transform: translateY(0); } .hero__link .chevron { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 999px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); position: relative; transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), background 0.2s ease, border-color 0.2s ease; } .hero__link .chevron::after { content: ""; position: absolute; width: 5px; height: 5px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(-45deg); top: 50%; left: 50%; margin-left: -3.5px; margin-top: -3px; } .hero__link:hover .chevron { background: rgba(255,107,0,0.18); border-color: rgba(255,107,0,0.45); transform: translateX(3px); } /* Showcase — imagem da plataforma destacada */ .hero__showcase { position: relative; max-width: 1200px; margin: 0 auto; padding: 0 var(--container-pad); } .hero__showcase::before { content: ""; position: absolute; inset: -75% -15% 40% -15%; background: radial-gradient(ellipse at center 60%, rgba(255,107,0,0.30) 0%, rgba(255,107,0,0.18) 18%, rgba(255,107,0,0.10) 32%, rgba(255,107,0,0.05) 50%, transparent 78%); filter: blur(95px); pointer-events: none; z-index: -1; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #060604 30%, #060604 80%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #060604 30%, #060604 80%, transparent 100%); animation: heroShowcaseGlow 4.5s ease-in-out infinite; } @keyframes heroShowcaseGlow { 0%, 100% { opacity: 0.9; transform: scale(1); } 50% { opacity: 1; transform: scale(1.08); } } @media (prefers-reduced-motion: reduce) { .hero__showcase::before { animation: none; opacity: 0.8; } } .hero__showcase-frame { position: relative; z-index: 1; border-radius: 24px; border: 1px solid rgba(255,255,255,0.1); background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0)); padding: 10px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,0,0,0.5); } .hero__showcase-frame img { width: 100%; height: auto; display: block; border-radius: 16px; } /* Mobile mockup — celular em primeiro plano sobre o gráfico */ .hero__phone { position: absolute; left: 22%; top: 38%; width: clamp(230px, 22vw, 320px); z-index: 6; pointer-events: none; -webkit-mask-image: linear-gradient(180deg, #060604 0%, #060604 70%, transparent 100%); mask-image: linear-gradient(180deg, #060604 0%, #060604 70%, transparent 100%); } .hero__phone img { display: block; width: 100%; height: auto; filter: drop-shadow(0 40px 60px rgba(0,0,0,0.85)) drop-shadow(0 0 30px rgba(0,0,0,0.5)); } .hero__phone-label { position: absolute; top: -16px; left: 50%; transform: translateX(-50%); font-size: 0.62rem; letter-spacing: 0.22em; font-weight: 700; text-transform: uppercase; color: #FF6B00; background: rgba(255,107,0,0.08); border: 1px solid rgba(255,107,0,0.3); padding: 4px 10px; border-radius: 999px; z-index: 1; } @media (max-width: 980px) { .hero__phone { display: none; } } .hero__showcase::after { content: ""; position: absolute; inset: auto 0 -1px 0; height: 65%; background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.35) 30%, rgba(0,0,0,0.75) 60%, #060604 88%); pointer-events: none; z-index: 2; } /* Floating crypto cards — preço em tempo real */ .crypto-card { position: absolute; z-index: 3; width: 230px; background: rgba(19, 19, 17, 0.92); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; padding: 18px; box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5); animation: cardFloat 6s ease-in-out infinite; will-change: transform; } .crypto-card--btc { top: 55%; right: -120px; animation-delay: 0s; } .crypto-card--eth { top: 30px; left: -120px; animation-delay: -2s; } .crypto-card--sol { bottom: -130px; left: 50%; margin-left: -115px; animation: cardFloatCenter 6s ease-in-out infinite; animation-delay: -4s; } @keyframes cardFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } } @keyframes cardFloatCenter { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } } .crypto-card__head { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; } .crypto-card__icon { width: 32px; height: 32px; border-radius: 999px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } .crypto-card__icon img { width: 100%; height: 100%; } .crypto-card__name { font-weight: 700; font-size: 1rem; letter-spacing: -0.01em; } .crypto-card__label { display: block; font-size: 0.72rem; color: #8a8a8a; margin-bottom: 6px; font-weight: 500; } .crypto-card__payout { display: flex; align-items: center; gap: 6px; font-size: 1.6rem; font-weight: 800; letter-spacing: -0.02em; margin-bottom: 16px; color: #22c55e; } .crypto-card__payout .arrow-up { display: inline-block; width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-bottom: 8px solid currentColor; } .crypto-card__row { display: flex; justify-content: space-between; gap: 12px; } .crypto-card__metric { min-width: 0; } .crypto-card__price { font-size: 0.98rem; font-weight: 600; color: #fff; display: block; font-variant-numeric: tabular-nums; transition: opacity 0.3s ease; } .crypto-card__change { font-size: 0.95rem; font-weight: 600; display: block; font-variant-numeric: tabular-nums; color: #8a8a8a; } .crypto-card__change.is-up { color: #22c55e; } .crypto-card__change.is-down { color: #ef4444; } /* pulse on update */ .crypto-card__price.is-updated { animation: priceFlash 0.6s ease; } @keyframes priceFlash { 0% { opacity: 0.3; } 100% { opacity: 1; } } @media (max-width: 880px) { .hero--centered { padding: 72px 0 0; } .hero--centered .hero__cta { margin-bottom: 56px; } .hero__showcase-frame { padding: 6px; border-radius: 18px; } .hero__showcase-frame img { border-radius: 12px; } .crypto-card { display: none; } } /* Mobile: phone screenshot já tem moldura embutida — limpa o wrapper */ @media (max-width: 768px) { /* Hero ocupa o viewport inteiro disponível (descontando ticker + topbar) e distribui o conteúdo via flex pra nada ficar cortado abaixo do fold. */ .hero--centered { padding: 16px 0 0; min-height: calc(100dvh - 100px); min-height: calc(100svh - 100px); display: flex; flex-direction: column; justify-content: flex-start; } .hero--centered > .container { flex: 0 0 auto; } .hero--centered h1 { margin-bottom: 10px; } .hero--centered .hero__lead { font-size: 0.95rem; line-height: 1.4; margin: 0 auto 18px; max-width: 420px; } .hero--centered .hero__cta { gap: 10px; margin-bottom: 16px; } .hero__showcase { padding-top: 0 !important; margin-top: 0; flex: 1 1 auto; min-height: 0; display: flex; align-items: flex-end; justify-content: center; } .hero__showcase-frame { padding: 0; border: none; background: transparent; box-shadow: none; border-radius: 0; max-width: 320px; width: auto; height: 100%; margin: 0 auto; overflow: visible; display: flex; align-items: flex-end; justify-content: center; } .hero__showcase-frame img { border-radius: 0; width: auto; max-width: 100%; max-height: 100%; object-fit: contain; object-position: bottom center; filter: drop-shadow(0 20px 50px rgba(0,0,0,0.55)) drop-shadow(0 0 60px rgba(255,107,0,0.08)); } /* contém o glow laranja dentro da área do phone — não vaza pro topbar */ .hero__showcase::before { inset: -10% -10% 30% -10%; background: radial-gradient(ellipse at center 65%, rgba(255,107,0,0.18) 0%, rgba(255,107,0,0.10) 25%, rgba(255,107,0,0.04) 50%, transparent 75%); filter: blur(60px); -webkit-mask-image: linear-gradient(180deg, transparent 0%, #060604 25%, #060604 80%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #060604 25%, #060604 80%, transparent 100%); } /* recorte agressivo do espaço entre hero e próxima seção */ .hero { padding-bottom: 0 !important; } .hero--centered { padding-bottom: 0 !important; } .choose { padding: 24px 0 56px !important; } .choose__layout { gap: 24px !important; } } /* CTA com seta (pill) */ .btn--arrow { position: relative; display: inline-flex; align-items: center; gap: 12px; border-radius: 999px; padding: 13px 28px; font-size: 0.95rem; font-weight: 600; letter-spacing: -0.005em; line-height: 1; overflow: hidden; isolation: isolate; background: linear-gradient(180deg, #ffffff 0%, #f1f1f1 100%); border: 1px solid rgba(255,255,255,0.85); box-shadow: 0 10px 28px rgba(0,0,0,0.45), 0 0 0 1px rgba(255,255,255,0.06), inset 0 1px 0 rgba(255,255,255,0.9), inset 0 -8px 12px rgba(0,0,0,0.04); transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.22s ease, opacity 0.15s ease; } .btn--arrow::before { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,0.45) 50%, transparent 70%); transform: translateX(-130%); transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1); pointer-events: none; z-index: 0; } .btn--arrow > * { position: relative; z-index: 1; } .btn--arrow:hover { transform: translateY(-2px); box-shadow: 0 16px 40px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,107,0,0.18), 0 0 28px rgba(255,107,0,0.12), inset 0 1px 0 rgba(255,255,255,0.95); opacity: 1; } .btn--arrow:hover::before { transform: translateX(130%); } .btn--arrow:active { transform: translateY(0); transition-duration: 0.05s; } .btn--arrow .arrow { --arrow-bg: #060604; --arrow-fg: #fff; width: 28px; height: 28px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: var(--arrow-bg); flex-shrink: 0; transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), background 0.2s ease; } .btn--arrow:hover .arrow { transform: translateX(3px) scale(1.05); background: linear-gradient(135deg, #0C0C0A, #1A1A18); } .btn--arrow .arrow::after { content: ""; width: 7px; height: 7px; border-top: 2px solid var(--arrow-fg); border-right: 2px solid var(--arrow-fg); transform: rotate(45deg) translate(-1px, 1px); display: block; } /* arrow color per button variant */ .btn--inv.btn--arrow .arrow { --arrow-bg: #060604; --arrow-fg: #fff; } .btn--primary.btn--arrow .arrow { --arrow-bg: #fff; --arrow-fg: #060604; } .btn--ghost-dark.btn--arrow .arrow { --arrow-bg: #fff; --arrow-fg: #060604; } .btn--ghost.btn--arrow .arrow { --arrow-bg: #060604; --arrow-fg: #fff; } .btn--ghost-dark { background: transparent; color: #fff; border: 1px solid #2a2a2a; border-bottom: 1px solid #2a2a2a; } .btn--ghost-dark:hover { background: #1A1A18; opacity: 1; border-bottom-color: #2a2a2a; } /* ============================================================ SECTIONS ============================================================ */ .section { padding: 64px 0; background: #060604; } @media (max-width: 768px) { .section { padding: 48px 0; } } .section--alt { background: #0C0C0A; } .section--dark { background: #060604; color: #fff; } .section__head { max-width: 720px; margin-bottom: 48px; } .section__head--center { text-align: center; margin-left: auto; margin-right: auto; } .section__eyebrow { font-size: 0.8rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; margin-bottom: 12px; display: block; color: #8a8a8a; } .section__lead { font-size: clamp(0.95rem, 1.1vw, 1.05rem); color: var(--muted); line-height: 1.55; } /* ============================================================ GRID + CARDS ============================================================ */ .grid { display: grid; gap: 24px; } .grid--3 { grid-template-columns: repeat(3, 1fr); } .grid--2 { grid-template-columns: repeat(2, 1fr); } @media (max-width: 880px) { .grid--3, .grid--2 { grid-template-columns: 1fr; } } .card { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius-lg); padding: 32px; } .card--dark { background: #0C0C0A; color: #fff; border-color: rgba(255,255,255,0.1); } .card--alt { background: rgba(255,255,255,0.04); border-color: rgba(255,255,255,0.08); } .card__num { display: inline-block; font-size: 0.85rem; font-weight: 700; letter-spacing: 0.12em; margin-bottom: 16px; opacity: 0.6; } .card h3 { margin-bottom: 12px; } .card p { color: #999999; margin: 0; } .card--dark p { color: #999999; } /* ============================================================ FEATURE LIST ============================================================ */ .feature-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 20px; } .feature-list li { padding-left: 32px; position: relative; } .feature-list li::before { content: ""; position: absolute; left: 0; top: 10px; width: 16px; height: 2px; background: #fff; } .feature-list strong { display: block; margin-bottom: 4px; } /* ============================================================ FAQ ACCORDION ============================================================ */ .faq { max-width: 820px; margin: 0 auto; } .faq__item { border-top: 1px solid rgba(255,255,255,0.08); } .faq__item:last-child { border-bottom: 1px solid rgba(255,255,255,0.08); } .faq__q { width: 100%; text-align: left; background: none; border: 0; padding: 24px 0; font: inherit; font-weight: 600; font-size: 1.05rem; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; color: var(--fg); } .faq__q::after { content: "+"; font-size: 1.5rem; font-weight: 400; transition: transform 0.2s ease; line-height: 1; } .faq__item.is-open .faq__q::after { content: "−"; } .faq__a { max-height: 0; overflow: hidden; transition: max-height 0.25s ease, padding 0.25s ease; color: var(--muted); } .faq__item.is-open .faq__a { max-height: 600px; padding: 0 0 24px; } /* ============================================================ FORM ============================================================ */ .form { max-width: 520px; margin: 0 auto; display: grid; gap: 16px; } .form__field { display: grid; gap: 8px; } .form__label { font-size: 0.9rem; font-weight: 600; } .form__input, .form__select { font: inherit; padding: 14px 16px; border: 1px solid rgba(255,255,255,0.12); border-radius: var(--radius); background: rgba(255,255,255,0.03); color: #fff; transition: border-color 0.15s ease, background 0.15s ease; } .form__input::placeholder { color: #6b6b6b; } .form__input:focus, .form__select:focus { outline: none; border-color: #fff; background: rgba(255,255,255,0.05); } .form__checkbox { display: flex; align-items: flex-start; gap: 10px; font-size: 0.9rem; color: var(--muted); line-height: 1.5; } .form__checkbox input { margin-top: 3px; accent-color: #fff; } .form__msg { padding: 14px 16px; border-radius: var(--radius); background: rgba(255,255,255,0.05); color: #fff; font-size: 0.95rem; display: none; } .form__msg.is-visible { display: block; } .form__msg--success { background: #fff; color: #060604; } /* ============================================================ TICKER — marquee horizontal de ativos com preço ao vivo ============================================================ */ .ticker { position: relative; overflow: hidden; padding: 16px 0; border-top: 1px solid rgba(255, 255, 255, 0.08); border-bottom: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.015); } /* gradient fade nas bordas pra suavizar entrada/saída dos itens */ .ticker::before, .ticker::after { content: ""; position: absolute; top: 0; bottom: 0; width: 120px; z-index: 2; pointer-events: none; } .ticker::before { left: 0; background: linear-gradient(90deg, #060604 0%, transparent 100%); } .ticker::after { right: 0; background: linear-gradient(270deg, #060604 0%, transparent 100%); } .ticker__track { display: flex; width: max-content; animation: tickerScroll 70s linear infinite; } .ticker__track--reverse { animation: tickerScrollReverse 70s linear infinite; } @keyframes tickerScroll { from { transform: translateX(0); } to { transform: translateX(-50%); } } @keyframes tickerScrollReverse { from { transform: translateX(-50%); } to { transform: translateX(0); } } .ticker__item { position: relative; display: inline-flex; align-items: center; gap: 10px; padding: 0 26px; flex-shrink: 0; white-space: nowrap; border-right: 1px solid rgba(255, 255, 255, 0.04); border-bottom: 0; color: inherit; text-decoration: none; cursor: pointer; transition: filter 0.2s ease; } .ticker__item::before { content: ""; position: absolute; inset: 10% 8%; background: radial-gradient(ellipse at center, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.06) 40%, transparent 75%); filter: blur(14px); opacity: 0; transition: opacity 0.22s ease; pointer-events: none; z-index: -1; } .ticker__item:hover { border-bottom: 0; filter: brightness(1.15); } .ticker__item:hover::before { opacity: 1; } .ticker__icon { width: 26px; height: 26px; border-radius: 999px; overflow: hidden; background: rgba(255, 255, 255, 0.04); flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; } .ticker__icon img { width: 100%; height: 100%; object-fit: cover; display: block; } /* Pares de forex não têm logo: badge com o símbolo da moeda base, diferenciando visualmente do bloco de cripto. */ .ticker__icon--fx { background: rgba(255,107,0,0.12); border: 1px solid rgba(255,107,0,0.28); color: var(--orange); font-weight: 700; font-size: 0.82rem; line-height: 1; } .ticker__name { font-weight: 700; font-size: 0.85rem; letter-spacing: 0.02em; color: #fff; } .ticker__price { font-weight: 600; font-size: 0.88rem; color: #e5e5e5; font-variant-numeric: tabular-nums; } .ticker__change { font-weight: 700; font-size: 0.85rem; font-variant-numeric: tabular-nums; letter-spacing: 0.01em; } .ticker__change.is-up { color: #22c55e; } .ticker__change.is-down { color: #ef4444; } /* flash visual quando o valor é atualizado */ .ticker__price.flash, .ticker__change.flash { animation: tickerFlash 0.7s ease; } @keyframes tickerFlash { 0% { opacity: 0.35; filter: brightness(1.6); } 100% { opacity: 1; filter: brightness(1); } } @media (prefers-reduced-motion: reduce) { .ticker__track { animation: none; } } @media (max-width: 600px) { .ticker__item { padding: 0 18px; gap: 8px; } .ticker__name { font-size: 0.78rem; } .ticker__price, .ticker__change { font-size: 0.8rem; } } /* ============================================================ STATS / CTA ============================================================ */ .stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; border-top: 1px solid rgba(255,255,255,0.08); border-bottom: 1px solid rgba(255,255,255,0.08); padding: 40px 0; } .stats__item { text-align: center; } .stats__num { font-size: 2.5rem; font-weight: 800; letter-spacing: -0.03em; display: block; line-height: 1; margin-bottom: 8px; } .stats__label { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--muted); } @media (max-width: 700px) { .stats { grid-template-columns: 1fr; gap: 32px; } } .cta-band { background: #060604; color: #fff; padding: 80px 0; text-align: center; border-top: 1px solid rgba(255,255,255,0.06); } .cta-band h2 { max-width: 720px; margin: 0 auto 16px; } .cta-band p { color: #999999; max-width: 560px; margin: 0 auto 32px; } /* ============================================================ FOOTER ============================================================ */ .site-footer { background: #060604; color: #fff; padding: 80px 0 32px; border-top: 1px solid rgba(255,255,255,0.06); } .footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 60px; margin-bottom: 56px; align-items: start; } @media (max-width: 880px) { .footer__grid { grid-template-columns: 1fr 1fr; gap: 40px; } } @media (max-width: 520px) { .footer__grid { grid-template-columns: 1fr; gap: 32px; } } .footer__brand img { height: 28px; margin-bottom: 20px; display: block; } .footer__brand p { color: #8a8a8a; font-size: 0.92rem; line-height: 1.55; max-width: 340px; margin: 0 0 24px; } .footer__socials { display: flex; gap: 10px; } .footer__social { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,0.10); border-radius: 10px; color: #999999; transition: border-color 0.2s, color 0.2s, transform 0.2s; } .footer__social:hover { border-color: rgba(255,107,0,0.4); color: #FF6B00; transform: translateY(-1px); } .footer__col h4 { font-size: 0.92rem; font-weight: 600; letter-spacing: -0.005em; text-transform: none; color: #fff; margin: 0 0 20px; } .footer__col ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; } .footer__col a { color: #8a8a8a; font-size: 0.92rem; text-decoration: none; transition: color 0.2s; } .footer__col a:hover { color: #fff; } .footer__disclaimer { border-top: 1px solid #1F1F1B; padding-top: 32px; font-size: 0.8rem; color: #8a8a8a; line-height: 1.7; } .footer__bottom { display: flex; justify-content: space-between; align-items: center; font-size: 0.85rem; color: #8a8a8a; margin-top: 32px; flex-wrap: wrap; gap: 16px; } /* Minimal brokerage footer */ .site-footer--minimal { padding: 56px 0 32px; } .site-footer--minimal .footer__top { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 32px; } .site-footer--minimal .footer__logo { height: 28px; width: auto; display: block; } .site-footer--minimal .footer__disclaimer { border-top: 1px solid #1F1F1B; border-bottom: 1px solid #1F1F1B; padding: 24px 0; font-size: 0.82rem; color: #8a8a8a; line-height: 1.7; margin-bottom: 24px; } .site-footer--minimal .footer__disclaimer strong { color: #d0d0d0; font-weight: 600; } .site-footer--minimal .footer__meta { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px 24px; font-size: 0.85rem; color: #8a8a8a; } .site-footer--minimal .footer__meta a { color: #999999; border-bottom: 1px solid transparent; transition: color 0.15s ease, border-color 0.15s ease; } .site-footer--minimal .footer__meta a:hover { color: #fff; border-bottom-color: rgba(255,255,255,0.3); } .site-footer--minimal .footer__meta-links { display: flex; flex-wrap: wrap; gap: 8px 22px; } @media (max-width: 600px) { .site-footer--minimal .footer__top { flex-direction: column; align-items: flex-start; gap: 16px; } .site-footer--minimal .footer__meta { flex-direction: column; align-items: flex-start; } } /* ============================================================ SIMULADOR DE BANCA — premium dark + green accent ============================================================ */ .calc { position: relative; padding: 96px 0; overflow: hidden; background: #060604; border-top: 1px solid rgba(255,255,255,0.06); } .calc__bg { display: none; } /* Grid TradingView */ .calc__grid-bg { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,107,0, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,107,0, 0.04) 1px, transparent 1px); background-size: 64px 64px; mask-image: radial-gradient(ellipse at center, #060604 0%, transparent 75%); -webkit-mask-image: radial-gradient(ellipse at center, #060604 0%, transparent 75%); } .calc__bg-logo { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60vw; max-width: 700px; opacity: 0.022; filter: blur(1px); } .calc__bg-chart { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; opacity: 0.10; filter: blur(1.5px); } .calc__bg-candles rect { fill: rgba(34, 197, 94, 0.55); } .calc__bg-candles line { stroke: rgba(34, 197, 94, 0.45); stroke-width: 1; } /* Glow verde sutil atrás do painel */ .calc__glow { position: absolute; top: 30%; right: -10%; width: 60vw; max-width: 720px; height: 60vw; max-height: 720px; background: radial-gradient(circle, rgba(255,107,0, 0.18) 0%, rgba(255,107,0, 0.05) 35%, transparent 70%); filter: blur(80px); pointer-events: none; } @media (max-width: 980px) { .calc__glow { right: -30%; top: 50%; } } .calc .container { position: relative; z-index: 1; } .calc__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; } @media (max-width: 980px) { .calc { padding: 72px 0; } .calc__grid { grid-template-columns: 1fr; gap: 48px; } } /* Lado esquerdo */ .calc__intro h2 { font-size: clamp(1.75rem, 3.2vw, 2.5rem); margin-bottom: 16px; letter-spacing: -0.025em; } .calc__intro .section__lead { margin-bottom: 28px; } .calc__desc { color: #8a8a8a; font-size: 0.95rem; margin-bottom: 32px; max-width: 460px; } .calc__stats { display: grid; grid-template-columns: repeat(3, auto); gap: 32px; margin-bottom: 36px; border-top: 1px solid rgba(255,255,255,0.08); border-bottom: 1px solid rgba(255,255,255,0.08); padding: 24px 0; } .calc__stat { display: flex; flex-direction: column; gap: 4px; } .calc__stat-value { font-size: 1.75rem; font-weight: 800; letter-spacing: -0.02em; line-height: 1; } .calc__stat small { font-size: 0.72rem; color: #8a8a8a; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 600; } @media (max-width: 600px) { .calc__stats { grid-template-columns: 1fr 1fr; gap: 24px; } } /* Mini indicadores (lado esquerdo, antes das stats) */ .calc__indicators { display: grid; gap: 14px; margin-bottom: 32px; max-width: 460px; } .calc__indicator { display: flex; align-items: center; gap: 14px; padding: 14px 18px; background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-radius: 12px; transition: border-color 0.2s, background 0.2s; } .calc__indicator:hover { border-color: rgba(255,107,0, 0.25); background: rgba(255,107,0, 0.03); } .calc__indicator-dot { width: 8px; height: 8px; border-radius: 50%; background: #FF6B00; box-shadow: 0 0 12px rgba(255,107,0, 0.6); flex-shrink: 0; animation: indicatorPulse 2.4s ease-in-out infinite; } .calc__indicator:nth-child(2) .calc__indicator-dot { animation-delay: 0.4s; } .calc__indicator:nth-child(3) .calc__indicator-dot { animation-delay: 0.8s; } @keyframes indicatorPulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.55; transform: scale(0.9); } } .calc__indicator > div { display: flex; flex-direction: column; gap: 2px; } .calc__indicator-label { font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: #6b6b6b; font-weight: 600; } .calc__indicator-value { font-size: 0.92rem; color: #fff; font-weight: 500; } /* Lado direito — glass panel */ .calc__panel { position: relative; background: rgba(255,255,255,0.025); backdrop-filter: blur(14px) saturate(150%); -webkit-backdrop-filter: blur(14px) saturate(150%); border: 1px solid rgba(255,107,0, 0.14); border-radius: 24px; padding: 32px; box-shadow: 0 30px 80px rgba(0,0,0,0.4), 0 0 60px rgba(255,107,0, 0.08), inset 0 1px 0 rgba(255,255,255,0.05); } @media (max-width: 600px) { .calc__panel { padding: 24px; border-radius: 20px; } } .calc__form { display: grid; gap: 22px; } .calc__form .form__label { color: #999999; } /* Slider de valor */ .calc__amount-row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 12px; } .calc__amount-display { font-weight: 800; font-size: 1.5rem; letter-spacing: -0.02em; color: #fff; font-variant-numeric: tabular-nums; } .calc__amount-display--sm { font-size: 1.25rem; } .calc__range { -webkit-appearance: none; appearance: none; width: 100%; height: 6px; border-radius: 999px; outline: none; cursor: pointer; background: linear-gradient( to right, #fff 0%, #fff var(--fill, 2%), rgba(255,255,255,0.08) var(--fill, 2%), rgba(255,255,255,0.08) 100% ); margin: 6px 0 10px; } .calc__range::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 22px; height: 22px; border-radius: 50%; background: #fff; border: 3px solid #060604; box-shadow: 0 0 0 1px rgba(255,255,255,0.5), 0 4px 12px rgba(0,0,0,0.5); cursor: grab; transition: transform 0.12s ease; } .calc__range:active::-webkit-slider-thumb { transform: scale(1.15); cursor: grabbing; } .calc__range::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: #fff; border: 3px solid #060604; box-shadow: 0 0 0 1px rgba(255,255,255,0.5), 0 4px 12px rgba(0,0,0,0.5); cursor: grab; } .calc__range:focus-visible::-webkit-slider-thumb { box-shadow: 0 0 0 4px rgba(255,255,255,0.2), 0 4px 12px rgba(0,0,0,0.5); } .calc__range-marks { display: flex; justify-content: space-between; font-size: 0.72rem; color: #6b6b6b; letter-spacing: 0.04em; font-weight: 500; } /* Cenário pré-configurado — chip discreto */ .calc__scenario { display: flex; align-items: center; gap: 10px; padding: 12px 16px; background: rgba(255,107,0, 0.04); border: 1px solid rgba(255,107,0, 0.18); border-radius: 12px; font-size: 0.78rem; color: #999999; letter-spacing: 0.01em; font-weight: 500; } .calc__scenario-dot { width: 6px; height: 6px; border-radius: 50%; background: #FF6B00; box-shadow: 0 0 10px rgba(255,107,0, 0.7); flex-shrink: 0; animation: indicatorPulse 2.4s ease-in-out infinite; } /* Row — 2 colunas lado a lado */ .calc__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } @media (max-width: 480px) { .calc__row { grid-template-columns: 1fr; } } /* Number stepper — input com − / + */ .calc__number { display: grid; grid-template-columns: 40px 1fr 40px; align-items: stretch; background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; overflow: hidden; transition: border-color 0.18s, background 0.18s; } .calc__number:focus-within { border-color: rgba(255,107,0, 0.4); background: rgba(255,107,0, 0.03); } .calc__number-btn { background: transparent; border: 0; color: #999999; font: inherit; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background 0.12s, color 0.12s; user-select: none; } .calc__number-btn:hover { background: rgba(255,107,0, 0.08); color: #fff; } .calc__number-btn:active { transform: scale(0.95); } .calc__number-input { background: transparent; border: 0; color: #fff; font: inherit; font-size: 1.05rem; font-weight: 700; text-align: center; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; -moz-appearance: textfield; outline: none; min-width: 0; } .calc__number-input::-webkit-outer-spin-button, .calc__number-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } .calc__submit { margin-top: 8px; width: 100%; justify-content: center; } .calc__msg { font-size: 0.88rem; color: #999999; text-align: center; min-height: 18px; } .calc__msg.is-error { color: #ef4444; } /* Resultado */ .calc__result { margin-top: 28px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,0.08); display: grid; gap: 24px; } .calc__result[hidden] { display: none; } /* Variante: resultado em cima do form */ .calc__result--top { margin-top: 0; margin-bottom: 28px; padding-top: 0; padding-bottom: 28px; border-top: 0; border-bottom: 1px solid rgba(255,255,255,0.08); animation: resultIn 0.5s cubic-bezier(0.16, 1, 0.3, 1) both; } @keyframes resultIn { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: translateY(0); } } /* Variante mini — ticker enxuto */ .calc__result--mini { gap: 16px; } .calc__mini-row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 16px; } .calc__mini-cell { display: flex; flex-direction: column; gap: 4px; } .calc__mini-cell--to { text-align: right; } .calc__mini-label { font-size: 0.7rem; letter-spacing: 0.12em; text-transform: uppercase; color: #6b6b6b; font-weight: 600; } .calc__mini-value { font-size: 1.15rem; font-weight: 700; letter-spacing: -0.01em; color: #d4d4d4; font-variant-numeric: tabular-nums; } .calc__mini-value--final { font-size: 1.85rem; color: #22c55e; letter-spacing: -0.025em; text-shadow: 0 0 16px rgba(34, 197, 94, 0.35); } .calc__mini-arrow { color: #22c55e; font-size: 1.4rem; opacity: 0.55; font-weight: 300; } .calc__mini-stats { display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 0.88rem; font-weight: 600; font-variant-numeric: tabular-nums; letter-spacing: -0.005em; } .calc__mini-stat { color: #22c55e; } .calc__mini-stat--muted { color: #8a8a8a; font-weight: 500; } .calc__mini-sep { color: #3a3a3a; } .calc__sparkline--mini { height: 50px; opacity: 0.85; } .calc__mini-daily { text-align: center; font-size: 0.92rem; color: #c8c8c8; margin: 0; line-height: 1.55; font-weight: 500; } .calc__mini-daily strong { color: #fff; font-weight: 700; font-variant-numeric: tabular-nums; } .calc__mini-daily-sub { display: block; margin-top: 4px; font-size: 0.78rem; color: #7a7a7a; font-weight: 500; } .calc__mini-daily-sub [data-result="dailyPct"] { color: #22c55e; font-weight: 600; font-variant-numeric: tabular-nums; } .calc__disclaimer--mini { font-size: 0.7rem; color: #5a5a5a; letter-spacing: 0.01em; } @media (max-width: 480px) { .calc__mini-value { font-size: 1rem; } .calc__mini-value--final { font-size: 1.5rem; } .calc__mini-row { gap: 10px; } } .calc__result-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } .calc__metric { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px; background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-radius: 12px; } .calc__metric-label { font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; color: #8a8a8a; font-weight: 600; } .calc__metric-value { font-weight: 700; font-size: 1.05rem; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; } .calc__metric--big { font-size: 1.5rem; letter-spacing: -0.03em; } .calc__metric--profit { color: #22c55e; } .calc__metric--loss { color: #ef4444; } .calc__multiplier { text-align: center; font-size: 1.1rem; color: #d4d4d4; padding: 22px; border: 1px solid rgba(255,107,0, 0.3); background: linear-gradient(180deg, rgba(255,107,0, 0.07), rgba(255,107,0, 0.02)); border-radius: 14px; font-weight: 500; box-shadow: 0 0 30px rgba(255,107,0, 0.08), inset 0 1px 0 rgba(255,107,0, 0.1); } .calc__mult-value { color: #22c55e; font-weight: 800; font-size: 1.4em; font-variant-numeric: tabular-nums; text-shadow: 0 0 16px rgba(34, 197, 94, 0.4); } .calc__multiplier--loss { border-color: rgba(239, 68, 68, 0.25); background: rgba(239, 68, 68, 0.05); } .calc__multiplier--loss .calc__mult-value { color: #ef4444; } .calc__sparkline { width: 100%; height: 80px; display: block; } .calc__disclaimer { font-size: 0.78rem; color: #6b6b6b; text-align: center; margin: 0; line-height: 1.5; } /* Skeleton loading */ .calc__skeleton { display: grid; gap: 16px; } .calc__skeleton-bar { height: 18px; border-radius: 8px; background: linear-gradient(90deg, rgba(255,255,255,0.04), rgba(255,255,255,0.08), rgba(255,255,255,0.04)); background-size: 200% 100%; animation: skeletonShimmer 1.4s linear infinite; } .calc__skeleton-bar:nth-child(2) { width: 80%; } .calc__skeleton-bar:nth-child(3) { width: 60%; } @keyframes skeletonShimmer { from { background-position: 200% 0; } to { background-position: -200% 0; } } /* Pilares — row minimalista entre o grid e o CTA */ .calc__pillars { list-style: none; margin: 56px 0 0; padding: 24px 0 0; border-top: 1px solid rgba(255,255,255,0.06); display: flex; justify-content: center; flex-wrap: wrap; gap: 8px 40px; } .calc__pillars li { display: inline-flex; align-items: center; gap: 10px; font-size: 0.82rem; letter-spacing: 0.01em; color: #d4d4d4; } .calc__pillar-dot { width: 5px; height: 5px; border-radius: 50%; background: #FF6B00; box-shadow: 0 0 8px rgba(255,107,0, 0.6); animation: indicatorPulse 2.4s ease-in-out infinite; } .calc__pillars li:nth-child(2) .calc__pillar-dot { animation-delay: 0.4s; } .calc__pillars li:nth-child(3) .calc__pillar-dot { animation-delay: 0.8s; } .calc__pillar-label { font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase; color: #6b6b6b; font-weight: 600; } .calc__pillar-sep { color: #3a3a3a; } .calc__pillar-value { color: #d4d4d4; font-weight: 500; } @media (max-width: 600px) { .calc__pillars { gap: 12px; flex-direction: column; align-items: center; } } /* Frase + CTA inferior */ .calc__cta-bottom { margin-top: 80px; text-align: center; display: grid; gap: 24px; justify-items: center; } .calc__quote { font-size: clamp(1.35rem, 2.4vw, 1.85rem); font-weight: 700; letter-spacing: -0.025em; max-width: 720px; margin: 0; color: #fff; } .calc__quote em { font-style: normal; background: linear-gradient(180deg, #fff 0%, #FF6B00 130%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; position: relative; } .calc__quote em::after { content: '|'; display: inline-block; margin-left: 5px; font-weight: 500; color: #FF6B00; -webkit-text-fill-color: #FF6B00; animation: cursorBlink 1.1s steps(2, end) infinite; vertical-align: -0.05em; } @keyframes cursorBlink { 50% { opacity: 0; } } @media (prefers-reduced-motion: reduce) { .calc__quote em::after { animation: none; opacity: 0.6; } } /* ============================================================ ENTRANCE ANIMATIONS — fade up no load + scroll ============================================================ */ /* Hero: anima automaticamente no load, com stagger */ .hero .hero__inner > *, .hero__grid > *, .hero .hero__showcase { animation: fadeUp 0.9s cubic-bezier(0.16, 1, 0.3, 1) both; } .hero .hero__inner > *:nth-child(1), .hero__grid > *:nth-child(1) { animation-delay: 0.08s; } .hero .hero__inner > *:nth-child(2), .hero__grid > *:nth-child(2) { animation-delay: 0.22s; } .hero .hero__inner > *:nth-child(3), .hero__grid > *:nth-child(3) { animation-delay: 0.36s; } .hero .hero__inner > *:nth-child(4) { animation-delay: 0.50s; } .hero .hero__showcase { animation-delay: 0.55s; } @keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } } /* Seções abaixo da fold: aplicado via JS quando elemento entra na viewport */ .fade-up { opacity: 0; transform: translateY(24px); transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1); } .fade-up.in-view { opacity: 1; transform: translateY(0); } @media (prefers-reduced-motion: reduce) { .hero .hero__inner > *, .hero__grid > *, .hero .hero__showcase { animation: none; } .fade-up { opacity: 1; transform: none; transition: none; } } /* ============================================================ UTILS ============================================================ */ .text-muted { color: var(--muted); } .text-center { text-align: center; } .mt-32 { margin-top: 32px; } .mt-48 { margin-top: 48px; } .mb-0 { margin-bottom: 0; } /* ============================================================ VIP — Programa premium (image-based) ============================================================ */ .vip { position: relative; padding: 72px 0 64px; background: #060604; overflow: hidden; } @media (max-width: 768px) { .vip { padding: 56px 0 48px; } } .vip__head { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 18px; margin: 0 auto 56px; max-width: 680px; } @media (max-width: 980px) { .vip { padding: 72px 0; } .vip__head { margin-bottom: 40px; } } .vip__grid { display: grid; /* 3 cards em linha unica — era 2x2 quando havia 4 */ grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: stretch; } @media (max-width: 1080px) { /* 2 em cima + o ultimo ocupando a linha inteira, sem buraco na grade */ .vip__grid { grid-template-columns: 1fr 1fr; } .vip__grid > *:last-child { grid-column: 1 / -1; } } @media (max-width: 980px) { .vip__grid { grid-template-columns: 1fr; gap: 18px; } .vip__grid > *:last-child { grid-column: auto; } } .vip__grid > * { height: 100%; } /* LEFT (legacy) */ .vip__left { display: flex; flex-direction: column; gap: 18px; padding: 8px 4px 0; } .vip__eyebrow { display: inline-flex; align-items: center; gap: 10px; font-size: 0.72rem; letter-spacing: 0.22em; font-weight: 700; color: #999999; text-transform: uppercase; } .vip__eyebrow-dot { width: 6px; height: 6px; border-radius: 50%; background: #FF6B00; box-shadow: 0 0 10px rgba(255,107,0,0.7); animation: indicatorPulse 2.4s ease-in-out infinite; } .vip__title { font-size: clamp(1.9rem, 3vw, 2.6rem); letter-spacing: -0.025em; line-height: 1.02; margin: 4px 0 0; font-weight: 800; color: #fff; } .vip__title em { font-style: normal; color: #FF6B00; } .vip__sub { font-size: 1rem; color: #a8a8a8; margin: 4px 0 0; max-width: 380px; line-height: 1.5; } .vip__benefits { display: flex; flex-direction: column; gap: 16px; margin-top: 24px; } .vip__benefits .benefit-card { width: 100%; } @media (min-width: 1100px) { .vip__benefits { gap: 18px; } } .vip__hero-img { margin-top: 12px; position: relative; width: 100%; } .vip__hero-img img { display: block; width: 100%; height: auto; border-radius: 16px; filter: drop-shadow(0 30px 60px rgba(0,0,0,0.6)); } /* RIGHT — legacy 2 cards empilhados */ .vip__right { display: flex; flex-direction: column; gap: 20px; } .vip__right .vip-card { flex: 1 1 0; display: flex; align-items: stretch; } .vip__right .vip-card__content { width: 100%; } .vip__grid .vip-card { display: flex; align-items: stretch; } .vip__grid .vip-card__content { width: 100%; } /* Textos dos cards centralizados no grid */ .vip__grid .vip-card, .vip__grid .benefit-card { text-align: center; } .vip__grid .vip-card__content, .vip__grid .benefit-card__content { align-items: center; } .vip__grid .vip-card p, .vip__grid .benefit-card p { margin-left: auto; margin-right: auto; } .vip-card--chart .vip-card__content { justify-content: flex-start; } .vip-card__chart { margin-top: 14px; border-radius: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,0.06); background: #0C0C0A; box-shadow: 0 18px 40px -20px rgba(0,0,0,0.6); aspect-ratio: 16 / 9; } .vip-card__chart img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; } .vip-card { position: relative; background: #0C0C0A; border: 1px solid rgba(255,255,255,0.08); border-radius: 18px; overflow: hidden; transition: border-color 0.25s, transform 0.25s; } .vip-card:hover { border-color: rgba(255,107,0,0.22); transform: translateY(-2px); } .vip-card__content { position: relative; z-index: 2; padding: 28px 30px 26px; display: flex; flex-direction: column; gap: 14px; } .vip-card__eyebrow { font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: #FF6B00; font-weight: 700; } .vip-card h3 { font-size: 1.35rem; font-weight: 700; letter-spacing: -0.02em; color: #fff; margin: 0; line-height: 1.2; } .vip-card p { font-size: 0.94rem; color: #a8a8a8; line-height: 1.55; margin: 0; max-width: 560px; } /* Card 1 — Programa VIP — animated green border */ @property --vip-angle { syntax: ''; initial-value: 0deg; inherits: false; } .vip-card--vip { position: relative; isolation: isolate; } .vip-card--vip::before { content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; background: conic-gradient(from var(--vip-angle), rgba(255,107,0,0) 0deg, rgba(255,107,0,0) 180deg, rgba(255,107,0,0.35) 230deg, #FF6B00 290deg, #FFB347 315deg, #FF6B00 340deg, rgba(255,107,0,0.35) 360deg); -webkit-mask: linear-gradient(#060604 0 0) content-box, linear-gradient(#060604 0 0); -webkit-mask-composite: xor; mask-composite: exclude; animation: vip-border-spin 3.5s linear infinite; pointer-events: none; z-index: 3; } @keyframes vip-border-spin { to { --vip-angle: 360deg; } } @supports not (background: conic-gradient(from 0deg, red, blue)) { .vip-card--vip::before { display: none; } } .vip-card--vip:hover { box-shadow: none; transform: translateY(-2px); } .vip-card--vip::before { display: none !important; } .vip-card--vip .vip-card__bg { position: absolute; top: 0; right: 0; bottom: 0; width: 42%; z-index: 1; pointer-events: none; display: flex; align-items: center; justify-content: flex-end; padding: 12px 0; mask-image: linear-gradient(90deg, transparent 0%, #060604 40%, #060604 100%); -webkit-mask-image: linear-gradient(90deg, transparent 0%, #060604 40%, #060604 100%); } .vip-card--vip .vip-card__bg img { width: 100%; height: 100%; max-height: 92%; object-fit: contain; object-position: right center; display: block; filter: drop-shadow(0 8px 24px rgba(255,107,0,0.12)); } .vip-card--vip .vip-card__content { max-width: 100%; } @media (max-width: 620px) { .vip-card--vip .vip-card__bg { width: 100%; opacity: 0.18; } .vip-card--vip .vip-card__content { max-width: 100%; } } .vip-card__list { list-style: none; margin: 6px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; } @media (max-width: 480px) { .vip-card__list { grid-template-columns: 1fr; } } .vip-card__list li { display: flex; align-items: center; gap: 10px; font-size: 0.9rem; color: #d4d4d4; } .vip-card__check { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; border: 1px solid rgba(255,107,0,0.4); color: #FF6B00; font-size: 0.7rem; font-weight: 700; flex-shrink: 0; } .vip-card__cta { margin-top: 6px; } /* Logo TradingView dentro do card */ .vip-card__brand { display: block; margin-top: 14px; height: 28px; width: auto; max-width: 220px; opacity: 0.95; filter: drop-shadow(0 0 10px rgba(255,107,0,0.12)); } /* Card 2 — Gráficos com chart image embaixo */ .vip-card--chart .vip-card__media { position: relative; margin: 0; width: 100%; line-height: 0; } .vip-card--chart .vip-card__media img { width: 100%; height: auto; display: block; } .vip-card--chart .vip-card__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 12, 10, 0.6) 0%, transparent 25%, transparent 100%); pointer-events: none; } /* Green CTA */ .btn--green { display: inline-flex; align-items: center; gap: 10px; background: linear-gradient(180deg, #FF9500, #FF6B00); color: #2B1200; border: 0; padding: 13px 22px; border-radius: 12px; font-weight: 700; font-size: 0.93rem; letter-spacing: -0.005em; text-decoration: none; align-self: flex-start; cursor: pointer; box-shadow: none; transition: transform 0.15s, box-shadow 0.2s; } .btn--green:hover { transform: translateY(-1px); box-shadow: none; } .btn--green svg { transition: transform 0.15s; } .btn--green:hover svg { transform: translateX(3px); } /* Bottom features bar — 4 colunas com icon + título + descrição */ .vip__features-bar { list-style: none; margin: 56px 0 0; padding: 28px 0 0; border-top: 1px solid rgba(255,255,255,0.06); display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; } @media (max-width: 760px) { .vip__features-bar { grid-template-columns: 1fr 1fr; gap: 24px; } } @media (max-width: 480px) { .vip__features-bar { grid-template-columns: 1fr; } } .vip__features-bar li { display: flex; align-items: flex-start; gap: 12px; } .vip__feature-icon { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; flex-shrink: 0; border-radius: 9px; background: rgba(255,107,0,0.05); border: 1px solid rgba(255,107,0,0.18); } .vip__feature-title { display: block; font-size: 0.7rem; letter-spacing: 0.18em; font-weight: 700; color: #fff; line-height: 1.25; margin-bottom: 8px; } .vip__feature-desc { display: block; font-size: 0.78rem; color: #7a7a7a; line-height: 1.5; } @media (prefers-reduced-motion: reduce) { .vip__eyebrow-dot { animation: none; } } /* ============================================================ BENEFITS — Grid 2x2 com card icon + content ============================================================ */ .benefits { position: relative; padding: 64px 0; background: #0C0C0A; border-top: 1px solid rgba(255,255,255,0.04); overflow: hidden; } @media (max-width: 768px) { .benefits { padding: 48px 0; } } .benefits__head { text-align: center; max-width: 640px; margin: 0 auto 40px; } .benefits__head h2 { font-size: clamp(1.9rem, 3.2vw, 2.6rem); letter-spacing: -0.025em; line-height: 1.1; margin: 0 0 14px; font-weight: 700; } .benefits__head h2 em { font-style: normal; color: #FF6B00; } .benefits__lead { font-size: clamp(0.95rem, 1.1vw, 1.05rem); color: #a8a8a8; margin: 0; line-height: 1.55; } .benefits__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } @media (max-width: 880px) { .benefits__grid { grid-template-columns: 1fr; } } .benefit-card { display: grid; grid-template-columns: 1fr; gap: 14px; align-items: stretch; padding: 28px 30px 26px; background: radial-gradient(ellipse at top right, rgba(255,107,0,0.04), transparent 60%), linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0)); border: 1px solid rgba(255,255,255,0.07); border-radius: 18px; transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s, filter 0.35s, opacity 0.35s; } /* Foco hover — embaça os outros cards da seção VIP */ .vip__grid .vip-card, .vip__grid .benefit-card { transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s, filter 0.35s, opacity 0.35s; } .vip__grid:has(.vip-card:hover, .benefit-card:hover) .vip-card:not(:hover), .vip__grid:has(.vip-card:hover, .benefit-card:hover) .benefit-card:not(:hover) { filter: blur(3px); opacity: 0.45; transform: scale(0.985); } .benefit-card:hover { border-color: rgba(255,107,0,0.22); transform: translateY(-2px); box-shadow: 0 16px 40px rgba(0,0,0,0.4), 0 0 28px rgba(255,107,0,0.06); } @media (max-width: 520px) { .benefit-card { text-align: center; } } .benefit-card__visual { position: relative; aspect-ratio: 1 / 1; width: 100%; border-radius: 14px; background: radial-gradient(circle at 30% 30%, rgba(255,107,0,0.08), transparent 60%), linear-gradient(135deg, #131311 0%, #0C0C0A 100%); border: 1px solid rgba(255,107,0,0.12); display: flex; align-items: center; justify-content: center; overflow: hidden; } .benefit-card__glow { position: absolute; inset: 20%; background: radial-gradient(ellipse at center, rgba(255,107,0,0.3), transparent 70%); filter: blur(28px); pointer-events: none; animation: indicatorPulse 3s ease-in-out infinite; } .benefit-card__icon { position: relative; z-index: 1; width: 70%; height: 70%; filter: drop-shadow(0 4px 12px rgba(255,107,0,0.25)); } .benefit-card__icon--img { width: 100%; height: 100%; object-fit: cover; display: block; filter: none; border-radius: 14px; } .benefit-card__icon--zoom { transform: scale(1.22); transform-origin: center; } .benefit-card__visual:has(.benefit-card__icon--img) { background: transparent; border: none; overflow: hidden; } .benefit-card__visual:has(.benefit-card__icon--img) .benefit-card__glow { display: none; } /* Mobile: zoom mais agressivo + remove qualquer borda residual do container, garante que os cantos da moldura interna da arte fiquem fora do viewport. */ @media (max-width: 900px), (hover: none) and (pointer: coarse) { .benefit-card__icon--img { transform: scale(1.35); transform-origin: center; border-radius: 0 !important; } .benefit-card__icon--zoom { transform: scale(1.45); } .benefit-card__visual:has(.benefit-card__icon--img) { border: none !important; background: transparent !important; box-shadow: none !important; border-radius: 0 !important; } } .benefit-card__content { display: flex; flex-direction: column; gap: 8px; } .benefit-card__eyebrow { font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: #FF6B00; font-weight: 700; } .benefit-card h3 { font-size: 1.35rem; font-weight: 700; letter-spacing: -0.02em; color: #fff; margin: 0; line-height: 1.2; } .benefit-card p { font-size: 0.94rem; color: #a8a8a8; line-height: 1.55; margin: 0; } .benefit-card__link { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 0.82rem; font-weight: 600; color: #FF6B00; text-decoration: none; border-bottom: 0; align-self: flex-start; transition: gap 0.2s ease, color 0.18s ease; } .benefit-card__link:hover { gap: 10px; color: #FFB347; border-bottom: 0; } .benefit-card__link svg { transition: transform 0.2s ease; } .benefit-card__link:hover svg { transform: translateX(2px); } @media (max-width: 520px) { .benefit-card__link { align-self: center; } } @media (prefers-reduced-motion: reduce) { .benefit-card__glow { animation: none; } } /* ============================================================ HOWTO — 3 passos simples ============================================================ */ .howto { position: relative; padding: 80px 0; background: #0C0C0A; border-top: 1px solid rgba(255,255,255,0.04); overflow: hidden; } @media (max-width: 768px) { .howto { padding: 56px 0; } } .howto__head { text-align: center; max-width: 760px; margin: 0 auto 64px; } .howto__eyebrow { display: inline-block; font-size: 0.72rem; letter-spacing: 0.32em; text-transform: uppercase; color: #FF6B00; font-weight: 700; margin-bottom: 18px; } .howto__head h2 { font-size: clamp(1.9rem, 3.4vw, 2.8rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.1; margin: 0 0 18px; color: #fff; } .howto__head h2 strong { font-weight: 700; } .howto__head h2 em { font-style: normal; color: #FF6B00; } .howto__lead { font-size: clamp(0.92rem, 1.05vw, 1rem); color: #a8a8a8; margin: 0; line-height: 1.6; } .howto__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-bottom: 48px; } @media (max-width: 880px) { .howto__grid { grid-template-columns: 1fr; gap: 36px; } } .howto-card { position: relative; padding: 40px 24px 0; background: radial-gradient(ellipse at top, rgba(255,107,0,0.05), transparent 60%), linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0)); border: 1px solid rgba(255,107,0,0.18); border-radius: 18px; display: flex; flex-direction: column; box-shadow: 0 0 32px rgba(255,107,0,0.04); transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s; } .howto-card:hover { border-color: rgba(255,107,0,0.35); transform: translateY(-3px); box-shadow: 0 16px 40px rgba(0,0,0,0.4), 0 0 36px rgba(255,107,0,0.1); } .howto-card__num { position: absolute; top: 18px; left: 24px; color: #FF6B00; font-weight: 800; font-size: 1.05rem; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; } .howto-card__body { flex: 1; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px; padding: 8px 4px 24px; } .howto-card__icon { width: 72px; height: 72px; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; filter: drop-shadow(0 0 14px rgba(255,107,0,0.35)); } .howto-card__icon svg { width: 100%; height: 100%; } .howto-card h3 { font-size: 1.2rem; font-weight: 700; letter-spacing: -0.015em; color: #fff; margin: 0; } .howto-card p { font-size: 0.88rem; color: #a8a8a8; line-height: 1.55; margin: 0; max-width: 280px; } .howto-card__feature { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 16px 12px; border-top: 1px solid rgba(255,107,0,0.12); font-size: 0.82rem; color: #d4d4d4; font-weight: 500; } .howto-card__feature svg { flex-shrink: 0; filter: drop-shadow(0 0 6px rgba(255,107,0,0.4)); } .howto__cta { display: flex; align-items: center; justify-content: center; gap: 12px; max-width: 720px; margin: 0 auto; padding: 18px 28px; background: linear-gradient(180deg, rgba(255,107,0,0.06), rgba(255,107,0,0.02)); border: 1px solid rgba(255,107,0,0.35); border-radius: 999px; color: #d4d4d4; font-size: 0.92rem; font-weight: 500; text-decoration: none; border-bottom: 1px solid rgba(255,107,0,0.35); box-shadow: 0 0 32px rgba(255,107,0,0.12), inset 0 1px 0 rgba(255,107,0,0.1); transition: transform 0.2s ease, box-shadow 0.22s ease, background 0.22s ease; } .howto__cta strong { color: #FF6B00; font-weight: 700; } .howto__cta svg { flex-shrink: 0; } .howto__cta:hover { transform: translateY(-2px); background: linear-gradient(180deg, rgba(255,107,0,0.1), rgba(255,107,0,0.04)); box-shadow: 0 12px 36px rgba(0,0,0,0.3), 0 0 40px rgba(255,107,0,0.2); border-bottom: 1px solid rgba(255,107,0,0.35); } @media (max-width: 600px) { .howto__cta { font-size: 0.85rem; padding: 14px 20px; text-align: center; } } /* ============================================================ PAYMENTS — Pagamentos confiáveis ============================================================ */ .payments { position: relative; padding: 80px 0 64px; background: #0C0C0A; border-top: 1px solid rgba(255,255,255,0.04); overflow: hidden; } @media (max-width: 768px) { .payments { padding: 56px 0 40px; } } .payments__head { text-align: center; max-width: 920px; margin: 0 auto; background: linear-gradient(180deg, #1A1A18 0%, #131311 100%); border: 1px solid rgba(255,255,255,0.06); border-radius: 28px; padding: 64px 56px; box-shadow: 0 30px 80px rgba(0,0,0,0.45); } @media (max-width: 900px) { .payments__head { background: transparent; border: none; border-radius: 0; padding: 0; box-shadow: none; margin: 0 auto 24px; } } .payments__eyebrow { display: inline-block; padding: 7px 16px; border-radius: 999px; background: rgba(255,107,0,0.08); border: 1px solid rgba(255,107,0,0.28); color: #FF6B00; font-size: 0.78rem; font-weight: 600; letter-spacing: 0.01em; margin-bottom: 24px; box-shadow: 0 0 24px rgba(255,107,0,0.12); } .payments__head h2 { font-size: clamp(2rem, 3.6vw, 3rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.1; margin: 0 0 18px; color: #fff; } .payments__head h2 em { font-style: normal; color: #FF6B00; } .payments__lead { font-size: clamp(0.95rem, 1.1vw, 1.05rem); color: #a8a8a8; margin: 0; line-height: 1.55; } .payments__strip { position: relative; background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0)), #0C0C0A; border: 1px solid rgba(255,255,255,0.06); border-radius: 18px; padding: 28px 0; overflow: hidden; } .payments__strip-fade { position: absolute; top: 0; bottom: 0; width: 60px; z-index: 2; pointer-events: none; } .payments__strip-fade--l { left: 0; background: linear-gradient(90deg, #0C0C0A 0%, transparent 100%); } .payments__strip-fade--r { right: 0; background: linear-gradient(-90deg, #0C0C0A 0%, transparent 100%); } .payments__track { display: flex; align-items: center; justify-content: space-around; gap: 32px; flex-wrap: wrap; padding: 0 32px; } @media (max-width: 760px) { .payments__track { gap: 24px; padding: 0 20px; } } .pay-logo { display: flex; align-items: center; justify-content: center; height: 36px; opacity: 0.7; transition: opacity 0.22s ease, transform 0.22s ease; flex-shrink: 0; } .pay-logo:hover { opacity: 1; transform: translateY(-1px); } .pay-logo svg { height: 100%; width: auto; display: block; } /* ============================================================ REACH — Estrutura/Cobertura com globo + stats ============================================================ */ .reach { position: relative; padding: 110px 0; background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(255,107,0,0.05), transparent 60%), #0C0C0A; border-top: 1px solid rgba(255,255,255,0.06); border-bottom: 1px solid rgba(255,255,255,0.06); overflow: hidden; } @media (max-width: 900px) { .reach { padding: 72px 0; } } .reach__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; background: linear-gradient(180deg, #1A1A18 0%, #131311 100%); border: 1px solid rgba(255,255,255,0.06); border-radius: 28px; padding: 56px 64px; box-shadow: 0 30px 80px rgba(0,0,0,0.45); } @media (max-width: 900px) { .reach__layout { grid-template-columns: 1fr; gap: 40px; background: transparent; border: none; border-radius: 0; padding: 0; box-shadow: none; } } .reach__visual { position: relative; display: flex; align-items: center; justify-content: center; } .reach__globe-wrap { position: relative; width: 100%; max-width: 480px; aspect-ratio: 1; } .reach__globe { width: 100%; height: 100%; display: block; filter: drop-shadow(0 30px 60px rgba(255,107,0,0.08)); } .reach__pin-anchor { animation: reachAnchorPulse 2.8s ease-in-out infinite; transform-box: fill-box; transform-origin: center; } @keyframes reachAnchorPulse { 0%, 100% { opacity: 0.85; } 50% { opacity: 1; } } .reach__blink { opacity: 0; animation: reachBlink 3.6s ease-in-out infinite; transform-box: fill-box; transform-origin: center; filter: drop-shadow(0 0 6px rgba(255,107,0,0.7)); } @keyframes reachBlink { 0% { opacity: 0; transform: scale(0.4); } 15% { opacity: 1; transform: scale(1.2); } 35% { opacity: 0.9; transform: scale(1); } 60% { opacity: 0; transform: scale(0.4); } 100% { opacity: 0; transform: scale(0.4); } } .reach__tag { position: absolute; display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; background: rgba(19, 19, 17, 0.92); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,0.10); border-radius: 999px; font-size: 0.78rem; font-weight: 600; color: #fff; letter-spacing: -0.005em; white-space: nowrap; box-shadow: 0 8px 24px rgba(0,0,0,0.5); } .reach__tag::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #FF6B00; box-shadow: 0 0 10px rgba(255,107,0,0.7); } .reach__tag--tl { top: 18%; left: 4%; } .reach__tag--bl { bottom: 22%; left: -2%; } .reach__tag--br { bottom: 14%; right: 6%; } @media (max-width: 600px) { .reach__tag { font-size: 0.68rem; padding: 6px 12px; gap: 6px; } .reach__tag::before { width: 6px; height: 6px; } .reach__tag--tl { top: 14%; left: 4%; } .reach__tag--bl { bottom: 18%; left: 2%; } .reach__tag--br { bottom: 12%; right: 4%; } /* Conteúdo centralizado e respirado abaixo do globo */ .reach__content { text-align: center; align-items: center; gap: 16px; } .reach__eyebrow { justify-content: center; } .reach__title { font-size: clamp(1.6rem, 6vw, 2rem); } .reach__lead { font-size: 0.95rem; line-height: 1.55; } } .reach__content { display: flex; flex-direction: column; gap: 22px; } .reach__eyebrow { font-size: 0.78rem; letter-spacing: 0.22em; font-weight: 700; color: #999999; text-transform: uppercase; display: inline-flex; align-items: center; gap: 8px; } .reach__eyebrow-slash { color: #FF6B00; letter-spacing: 0; font-weight: 800; } .reach__title { font-size: clamp(2rem, 3.2vw, 2.85rem); font-weight: 800; letter-spacing: -0.025em; line-height: 1.06; color: #fff; margin: 0; } .reach__title em { font-style: normal; color: #FF6B00; } .reach__lead { font-size: 1rem; color: #a8a8a8; line-height: 1.6; margin: 0; max-width: 480px; } .reach__cta { align-self: flex-start; margin-top: 4px; } .reach__stats { margin-top: 64px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; } @media (max-width: 900px) { .reach__stats { grid-template-columns: repeat(2, 1fr); margin-top: 48px; } } @media (max-width: 480px) { .reach__stats { grid-template-columns: 1fr; } } .reach__stat { position: relative; padding: 32px 24px; background: #0C0C0A; border: 1px solid rgba(255,255,255,0.07); border-radius: 16px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; transition: transform 0.25s, border-color 0.25s; } .reach__stat:hover { transform: translateY(-2px); border-color: rgba(255,107,0,0.22); } .reach__stat-num { font-size: clamp(2rem, 3.4vw, 2.6rem); font-weight: 800; letter-spacing: -0.03em; color: #fff; line-height: 1; } .reach__stat-label { font-size: 0.85rem; color: #8a8a8a; text-transform: uppercase; letter-spacing: 0.12em; font-weight: 600; line-height: 1.3; } /* ============================================================ TESTIMONIALS — Feedbacks de traders ============================================================ */ .testimonials { position: relative; padding: 110px 0; background: #0C0C0A; border-top: 1px solid rgba(255,255,255,0.06); border-bottom: 1px solid rgba(255,255,255,0.06); } @media (max-width: 900px) { .testimonials { padding: 72px 0; } } .testimonials__head { text-align: center; max-width: 720px; margin: 0 auto 56px; display: flex; flex-direction: column; align-items: center; gap: 18px; } .testimonials__eyebrow { display: inline-block; padding: 7px 18px; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.04em; color: #FF6B00; background: rgba(255,107,0,0.08); border: 1px solid rgba(255,107,0,0.28); border-radius: 999px; } .testimonials__head h2 { font-size: clamp(1.9rem, 3.2vw, 2.85rem); font-weight: 800; letter-spacing: -0.025em; line-height: 1.1; color: #fff; margin: 0; } .testimonials__head h2 em { font-style: italic; color: #fff; font-weight: 700; } .testimonials__lead { font-size: 0.95rem; color: #8a8a8a; margin: 0; line-height: 1.5; } .testimonials__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; } @media (max-width: 1100px) { .testimonials__grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 600px) { .testimonials__grid { grid-template-columns: 1fr; } } .testimonial { position: relative; display: flex; flex-direction: column; gap: 18px; padding: 28px 26px; background: #0C0C0A; border: 1px solid rgba(255,255,255,0.07); border-radius: 18px; transition: transform 0.25s, border-color 0.25s; } .testimonial:hover { transform: translateY(-3px); border-color: rgba(255,107,0,0.22); } .testimonial__stars { display: inline-flex; align-items: center; gap: 3px; } .testimonial__stars svg { display: block; } .testimonial__text { font-size: 0.92rem; color: #999999; line-height: 1.6; margin: 0; flex: 1; } .testimonial__author { display: flex; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,0.06); } .testimonial__avatar { width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg, #1A1A18 0%, #2a2a2a 100%); border: 1px solid rgba(255,107,0,0.35); display: inline-flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: 700; color: #FF6B00; letter-spacing: 0.04em; flex-shrink: 0; } .testimonial__name { font-size: 0.9rem; font-weight: 600; color: #fff; } /* Feedback form */ .feedback-form { max-width: 720px; margin: 48px auto 0; display: flex; flex-direction: column; gap: 12px; } .feedback-form__label { font-size: 0.78rem; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 700; color: #8a8a8a; text-align: center; } .feedback-form__field { position: relative; background: #0C0C0A; border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 18px 20px 14px; transition: border-color 0.2s; } .feedback-form__field:focus-within { border-color: rgba(255,107,0,0.4); box-shadow: 0 0 0 4px rgba(255,107,0,0.08); } .feedback-form__textarea { width: 100%; background: transparent; border: 0; outline: 0; resize: none; color: #fff; font-family: inherit; font-size: 16px; /* 16px+ evita auto-zoom do iOS Safari no focus */ line-height: 1.55; padding: 0; min-height: 72px; } .feedback-form__textarea::placeholder { color: #5a5a5a; } .feedback-form.is-locked .feedback-form__textarea { opacity: 0.7; cursor: not-allowed; } .feedback-form.is-locked .feedback-form__textarea::placeholder { color: #8a8a8a; } .feedback-form.is-locked .feedback-form__submit { opacity: 0.4; cursor: not-allowed; } /* Honeypot anti-bot — esconde do humano mas mantém visível pro crawler */ .vd-hp { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; } .feedback-form__meta { display: flex; align-items: center; justify-content: space-between; margin-top: 10px; gap: 12px; } .feedback-form__count { font-size: 0.78rem; color: #6a6a6a; font-variant-numeric: tabular-nums; letter-spacing: 0.02em; } .feedback-form__count.is-warn { color: #FF6B00; } .feedback-form__count.is-max { color: #ff6b6b; } .feedback-form__submit { display: inline-flex; align-items: center; gap: 8px; padding: 9px 18px; background: linear-gradient(180deg, #fff 0%, #ededed 100%); color: #060604; border: 0; border-radius: 999px; font-family: inherit; font-size: 0.88rem; font-weight: 700; letter-spacing: -0.005em; cursor: pointer; transition: transform 0.15s, box-shadow 0.2s, opacity 0.2s; box-shadow: 0 6px 18px rgba(0,0,0,0.4); } .feedback-form__submit:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,107,0,0.25); } .feedback-form__submit:active { transform: translateY(0); } .feedback-form__submit:disabled { opacity: 0.5; cursor: not-allowed; transform: none; } .feedback-form__msg { min-height: 18px; text-align: center; font-size: 0.85rem; color: #FF6B00; letter-spacing: -0.005em; } .feedback-form__msg.is-error { color: #ff6b6b; } /* ============================================================ CHOOSE — Você escolhe valor e duração ============================================================ */ .choose { position: relative; padding: 100px 0; background: #060604; overflow: hidden; } @media (max-width: 900px) { .choose { padding: 72px 0; } } .choose__layout { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 60px; align-items: center; background: linear-gradient(180deg, #1A1A18 0%, #131311 100%); border: 1px solid rgba(255,255,255,0.06); border-radius: 28px; padding: 56px 64px; box-shadow: 0 30px 80px rgba(0,0,0,0.45); } @media (max-width: 900px) { .choose__layout { grid-template-columns: 1fr; gap: 40px; background: transparent; border: none; border-radius: 0; padding: 0; box-shadow: none; } .choose__content { order: 1; } .choose__visual { order: 2; } } .choose__visual { position: relative; display: flex; flex-direction: column; align-items: center; gap: 28px; } .choose__chart-wrap { position: relative; width: 100%; aspect-ratio: 600 / 280; max-width: 620px; } .choose__chart { width: 100%; height: 100%; display: block; } /* Estado inicial — invisível até a seção entrar na viewport */ .choose__chart-line { stroke-dasharray: 100; stroke-dashoffset: 100; filter: drop-shadow(0 0 6px rgba(255,107,0,0.45)); } .choose__chart-area, .choose__chart-marker, .choose__chart-cursor, .choose__chart-cursor-glow, .choose__pill, .choose__chart-trail { opacity: 0; } .choose__chart-marker, .choose__chart-cursor, .choose__chart-cursor-glow { transform-box: fill-box; transform-origin: center; } .choose__chart-trail { filter: drop-shadow(0 0 8px rgba(255,107,0,0.8)); } /* Quando a seção entra na viewport — anima tudo */ .choose.is-visible .choose__chart-line { animation: chooseDraw 2.6s cubic-bezier(0.4, 0, 0.2, 1) 0.2s forwards; } @keyframes chooseDraw { to { stroke-dashoffset: 0; } } .choose.is-visible .choose__chart-area { animation: chooseFade 2.8s ease-out 0.2s forwards; } @keyframes chooseFade { 0% { opacity: 0; } 40% { opacity: 0; } 100% { opacity: 1; } } .choose.is-visible .choose__chart-marker { animation: choosePop 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; } .choose.is-visible .choose__chart-marker--m1 { animation-delay: 0.85s; } .choose.is-visible .choose__chart-marker--m2 { animation-delay: 1.45s; } .choose.is-visible .choose__chart-marker--m3 { animation-delay: 2.05s; } @keyframes choosePop { 0% { opacity: 0; transform: scale(0.3); } 60% { opacity: 1; transform: scale(1.4); } 100% { opacity: 1; transform: scale(1); } } .choose.is-visible .choose__chart-cursor { animation: chooseCursorIn 0.5s ease-out 2.6s forwards; } @keyframes chooseCursorIn { to { opacity: 1; } } .choose.is-visible .choose__chart-cursor-glow { animation: chooseGlowIn 0.5s ease-out 2.6s forwards, chooseGlowPulse 1.8s ease-in-out 3.1s infinite; } @keyframes chooseGlowIn { to { opacity: 0.35; } } @keyframes chooseGlowPulse { 0%, 100% { opacity: 0.25; transform: scale(0.9); } 50% { opacity: 0.55; transform: scale(1.35); } } .choose.is-visible .choose__chart-trail { animation: chooseTrailFade 0.4s ease-out 0.4s forwards; } @keyframes chooseTrailFade { to { opacity: 1; } } .choose.is-visible .choose__pill { animation: choosePillIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards, choosePillFloat 4s ease-in-out infinite; } .choose.is-visible .choose__pill:nth-of-type(1) { animation-delay: 0.95s, 3s; } .choose.is-visible .choose__pill:nth-of-type(2) { animation-delay: 1.55s, 3.6s; } .choose.is-visible .choose__pill:nth-of-type(3) { animation-delay: 2.15s, 4.2s; } @keyframes choosePillIn { 0% { opacity: 0; transform: translate(-50%, calc(-50% + 10px)) scale(0.85); } 60% { opacity: 1; transform: translate(-50%, calc(-50% - 4px)) scale(1.05); } 100% { opacity: 1; transform: translate(-50%, -50%) scale(1); } } @keyframes choosePillFloat { 0%, 100% { transform: translate(-50%, -50%); } 50% { transform: translate(-50%, calc(-50% - 5px)); } } @media (prefers-reduced-motion: reduce) { .choose__chart-line { stroke-dashoffset: 0; } .choose__chart-area, .choose__chart-marker, .choose__chart-cursor, .choose__chart-cursor-glow, .choose__pill { opacity: 1; animation: none !important; } .choose__chart-trail { display: none; } } .choose__pill { position: absolute; display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border-radius: 999px; font-size: 0.78rem; font-weight: 700; letter-spacing: -0.005em; white-space: nowrap; box-shadow: 0 6px 18px rgba(0,0,0,0.45); transform: translate(-50%, -50%); } .choose__pill svg { background: rgba(0,0,0,0.2); border-radius: 50%; padding: 2px; width: 14px; height: 14px; } .choose__pill--up { background: linear-gradient(180deg, #FF9500 0%, #FF6B00 100%); color: #2B1200; } .choose__pill--down { background: linear-gradient(180deg, #ff5a5a 0%, #d83030 100%); color: #2b0000; } .choose__inputs { display: flex; gap: 16px; margin-top: -10px; } .choose__input { min-width: 110px; padding: 10px 18px; background: #0C0C0A; border: 1px solid rgba(255,255,255,0.08); border-radius: 10px; display: flex; flex-direction: column; gap: 4px; align-items: flex-start; } .choose__input-label { font-size: 0.68rem; letter-spacing: 0.18em; color: #6a6a6a; font-weight: 700; } .choose__input-value { font-size: 0.95rem; font-weight: 700; color: #fff; } .choose__content { display: flex; flex-direction: column; gap: 18px; } .choose__title { font-size: clamp(1.9rem, 3.2vw, 2.85rem); font-weight: 800; letter-spacing: -0.025em; line-height: 1.08; color: #fff; margin: 0; } .choose__title em { font-style: normal; color: #FF6B00; } .choose__lead { font-size: 1rem; color: #a8a8a8; line-height: 1.6; margin: 0; max-width: 460px; } /* Botão padrão "COMEÇAR AGORA" — solid verde, uppercase, com seta */ .btn--start { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; padding: 14px 26px; background: linear-gradient(180deg, #FF9500 0%, #FF6B00 100%); color: #2B1200; border: 0; border-radius: 999px; font-family: inherit; font-size: 0.82rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; cursor: pointer; box-shadow: none; transition: transform 0.18s cubic-bezier(0.4,0,0.2,1), background 0.22s ease; margin-top: 6px; } .btn--start svg { transition: transform 0.18s ease; } .btn--start:hover { transform: translateY(-2px); background: linear-gradient(180deg, #FFB347 0%, #FF9500 100%); box-shadow: none; } .btn--start:hover svg { transform: translateX(3px); } .btn--start:active { transform: translateY(0); } /* Wrappers que centralizam o botão em seções não-flex */ .payments__cta { margin: 28px auto 0; align-self: center; } .payments__head { display: flex; flex-direction: column; align-items: center; } .howto__cta-wrap, .testimonials__cta-wrap { display: flex; justify-content: center; margin-top: 48px; } /* ============================================================ LEGAL PAGE (Terms, Privacy, etc.) ============================================================ */ .legal-page { padding: 96px 0 80px; background: #060604; color: var(--fg); position: relative; } .legal-page .container { max-width: 820px; } .legal-page__head { margin-bottom: 56px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,0.08); } .legal-page__eyebrow { display: inline-block; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: #FF6B00; margin-bottom: 16px; } .legal-page__head h1 { font-size: clamp(2rem, 4.2vw, 3rem); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 14px; color: #fff; } .legal-page__meta { font-size: 0.92rem; color: #8a8a8a; margin: 0; } .legal-page__meta strong { color: #d0d0d0; font-weight: 600; } .legal-page__body h2 { font-size: 1.35rem; font-weight: 700; letter-spacing: -0.01em; color: #fff; margin: 48px 0 18px; padding-top: 8px; } .legal-page__body h2:first-child { margin-top: 0; } .legal-page__body p { font-size: 1rem; line-height: 1.75; color: #c5c5c5; margin: 0 0 16px; } .legal-page__body p strong { color: #fff; font-weight: 600; } .legal-page__body ul { list-style: none; padding: 0; margin: 0 0 20px; display: grid; gap: 10px; } .legal-page__body ul li { position: relative; padding-left: 22px; font-size: 0.98rem; line-height: 1.6; color: #c5c5c5; } .legal-page__body ul li::before { content: ""; position: absolute; left: 0; top: 0.7em; width: 6px; height: 6px; border-radius: 50%; background: #FF6B00; box-shadow: 0 0 8px rgba(255,107,0,0.5); } .legal-page__body a { color: #FF6B00; border-bottom: 1px solid rgba(255,107,0,0.3); transition: border-color 0.15s ease, color 0.15s ease; } .legal-page__body a:hover { color: #FFB347; border-bottom-color: #FFB347; } @media (max-width: 600px) { .legal-page { padding: 64px 0 56px; } .legal-page__head { margin-bottom: 40px; padding-bottom: 24px; } .legal-page__body h2 { font-size: 1.2rem; margin-top: 36px; } .legal-page__body p, .legal-page__body ul li { font-size: 0.95rem; } } /* ============================================================ LEGAL FOOTER (compact, brokerage-style) ============================================================ */ .legal-footer { background: #060604; border-top: 1px solid rgba(255,255,255,0.06); padding: 48px 0 36px; text-align: center; } .legal-footer .container { max-width: 820px; } .legal-footer p { margin: 0 0 14px; } .legal-footer__warning { font-size: 0.82rem; line-height: 1.7; color: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.04); border-radius: 12px; padding: 18px 22px; margin-bottom: 24px !important; text-align: left; } .legal-footer__warning strong { color: rgba(255,255,255,0.28); font-weight: 600; } .legal-footer__brand { font-size: 0.95rem; font-weight: 600; letter-spacing: 0.01em; color: rgba(255,255,255,0.28); margin-bottom: 6px !important; } .legal-footer__line { font-size: 0.85rem; color: rgba(255,255,255,0.18); display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 12px; margin-bottom: 22px !important; } .legal-footer__line a { color: rgba(255,255,255,0.2); border-bottom: 1px solid transparent; transition: color 0.15s ease, border-color 0.15s ease; } .legal-footer__line a:hover { color: rgba(255,255,255,0.55); border-bottom-color: rgba(255,255,255,0.18); } .legal-footer__line span[aria-hidden] { color: rgba(255,255,255,0.1); font-weight: 700; } .legal-footer__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px; font-size: 0.82rem; margin-bottom: 22px; } .legal-footer__links a { color: rgba(255,255,255,0.18); padding: 4px 0; border-bottom: 1px solid transparent; transition: color 0.15s ease, border-color 0.15s ease; } .legal-footer__links a:hover { color: rgba(255,107,0,0.65); border-bottom-color: rgba(255,107,0,0.3); } .legal-footer__copy { font-size: 0.78rem; color: rgba(255,255,255,0.12); margin-top: 8px !important; margin-bottom: 0 !important; } @media (max-width: 600px) { .legal-footer { padding: 36px 0 28px; } .legal-footer__warning { padding: 16px 18px; font-size: 0.78rem; } .legal-footer__line { font-size: 0.8rem; } .legal-footer__links { gap: 4px 14px; font-size: 0.78rem; } } /* ============================================================ FAQ — accordion ============================================================ */ .faq { padding: 120px 0 100px; background: #060604; position: relative; } .faq__head { display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 64px; } .faq__eyebrow { display: inline-flex; align-items: center; padding: 10px 22px; border-radius: 999px; font-size: 0.85rem; font-weight: 600; letter-spacing: 0.01em; color: #FF6B00; background: rgba(255,107,0, 0.08); border: 1px solid rgba(255,107,0, 0.28); margin-bottom: 28px; } .faq__title { font-size: clamp(3rem, 7vw, 5.5rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1; margin: 0 0 24px; color: #fff; } .faq__lead { font-size: 1.05rem; color: #8a8a8a; margin: 0; max-width: 540px; } .faq__list { max-width: 880px; margin: 0 auto; display: grid; gap: 16px; } .faq-item { background: #131311; border: 1px solid rgba(255,255,255,0.04); border-radius: 18px; overflow: hidden; transition: background 0.2s ease, border-color 0.2s ease; } .faq-item[open] { background: #1A1A18; border-color: rgba(255,107,0,0.18); } .faq-item__q { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 28px; font-size: 1.05rem; font-weight: 600; color: #fff; user-select: none; -webkit-user-select: none; } .faq-item__q::-webkit-details-marker { display: none; } .faq-item__q::marker { content: ""; } .faq-item__icon { position: relative; width: 22px; height: 22px; flex-shrink: 0; transition: transform 0.3s ease; } .faq-item__icon::before, .faq-item__icon::after { content: ""; position: absolute; left: 50%; top: 50%; width: 18px; height: 1.8px; background: #FF6B00; border-radius: 2px; transform: translate(-50%, -50%); transition: transform 0.3s ease, opacity 0.3s ease; } .faq-item__icon::after { transform: translate(-50%, -50%) rotate(90deg); } .faq-item[open] .faq-item__icon::after { transform: translate(-50%, -50%) rotate(0deg); opacity: 0; } .faq-item__a { padding: 0 28px 24px; color: #a8a8a8; font-size: 0.96rem; line-height: 1.65; animation: faqReveal 0.3s ease; } .faq-item__a p { margin: 0 0 12px; } .faq-item__a p:last-child { margin-bottom: 0; } .faq-item__a strong { color: #d8d8d8; font-weight: 600; } .faq-item__a a { color: #FF6B00; border-bottom: 1px solid rgba(255,107,0,0.35); transition: border-color 0.15s ease; } .faq-item__a a:hover { border-bottom-color: #FF6B00; } @keyframes faqReveal { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } } .faq__disclaimer { max-width: 880px; margin: 36px auto 0; text-align: center; font-size: 0.8rem; color: #5a5a5a; line-height: 1.6; } @media (max-width: 600px) { .faq { padding: 72px 0 64px; } .faq__head { margin-bottom: 40px; } .faq__title { font-size: clamp(2.4rem, 12vw, 3.6rem); } .faq__eyebrow { font-size: 0.78rem; padding: 8px 18px; } .faq-item__q { padding: 20px 22px; font-size: 0.98rem; gap: 16px; } .faq-item__a { padding: 0 22px 20px; font-size: 0.92rem; } } /* ============================================================ CONTENT PROTECTION (deterrent layer — not real security) blocks: text selection, image dragging, tap callout inputs/textareas/selects remain interactive ============================================================ */ html, body { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -webkit-tap-highlight-color: transparent; } input, textarea, select, [contenteditable="true"], [contenteditable=""], .form__input, .form__select, .allow-select, .allow-select * { -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; -webkit-touch-callout: default; } img, svg, video, canvas { -webkit-user-drag: none; -khtml-user-drag: none; -moz-user-drag: none; -o-user-drag: none; user-drag: none; -webkit-touch-callout: none; } /* ============================================================ EXIT-INTENT POPUP ============================================================ */ .exit-popup { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 24px; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.25s ease, visibility 0.25s ease; } .exit-popup.is-open { opacity: 1; visibility: visible; pointer-events: auto; } .exit-popup__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.78); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); cursor: pointer; } .exit-popup__card { position: relative; width: 100%; max-width: 460px; background: linear-gradient(180deg, #1A1A18 0%, #0C0C0A 100%); border: 1px solid rgba(255,107,0,0.18); border-radius: 22px; padding: 40px 32px 32px; text-align: center; box-shadow: 0 30px 80px rgba(0,0,0,0.6), 0 0 60px -10px rgba(255,107,0,0.25); transform: translateY(20px) scale(0.96); transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); } .exit-popup.is-open .exit-popup__card { transform: translateY(0) scale(1); } .exit-popup__close { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 50%; color: #999999; cursor: pointer; transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease; } .exit-popup__close:hover { background: rgba(255,255,255,0.08); color: #fff; border-color: rgba(255,255,255,0.2); } .exit-popup__eyebrow { display: inline-block; padding: 6px 14px; border-radius: 999px; background: rgba(255,107,0,0.08); border: 1px solid rgba(255,107,0,0.3); color: #FF6B00; font-size: 0.74rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 18px; } .exit-popup__title { font-size: clamp(1.4rem, 4vw, 1.75rem); font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; margin: 0 0 14px; color: #fff; } .exit-popup__lead { font-size: 0.96rem; line-height: 1.55; color: #999999; margin: 0 0 20px; } /* Bloco da oferta + cupom */ .exit-popup__offer { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 22px 18px; margin: 0 0 18px; background: linear-gradient(180deg, rgba(255,107,0,0.08), rgba(255,107,0,0.02)); border: 1px solid rgba(255,107,0,0.22); border-radius: 16px; } .exit-popup__offer-headline { font-size: 1.05rem; color: #d8d8d8; letter-spacing: 0.005em; } .exit-popup__offer-headline strong { color: #FF6B00; font-size: 1.35rem; font-weight: 800; letter-spacing: -0.01em; } .exit-popup__offer-sub { font-size: 0.85rem; color: #8a8a8a; margin-bottom: 6px; } .exit-popup__coupon { display: inline-flex; align-items: center; gap: 14px; padding: 12px 14px 12px 20px; background: #060604; border: 1.5px dashed rgba(255,107,0,0.55); border-radius: 12px; cursor: pointer; font: inherit; transition: border-color 0.18s ease, transform 0.15s ease, background 0.18s ease; } .exit-popup__coupon:hover { border-color: #FF6B00; background: rgba(255,107,0,0.06); transform: translateY(-1px); } .exit-popup__coupon:active { transform: translateY(0); } .exit-popup__coupon-code { font-family: 'Montserrat', monospace; font-size: 1.15rem; font-weight: 800; letter-spacing: 0.18em; color: #FF6B00; } .exit-popup__coupon-copy { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; background: rgba(255,107,0,0.12); border-radius: 8px; font-size: 0.78rem; font-weight: 600; color: #FF6B00; letter-spacing: 0.02em; } .exit-popup__coupon.is-copied .exit-popup__coupon-copy { background: #FF6B00; color: #2B1200; } .exit-popup__tagline { font-size: 0.9rem; color: #8a8a8a; line-height: 1.5; margin: 0 0 22px; } .exit-popup__actions { display: flex; flex-direction: column; gap: 10px; margin-bottom: 18px; } .exit-popup__cta { width: 100%; justify-content: center; padding: 14px 22px !important; border-radius: 999px !important; font-size: 0.95rem; font-weight: 700; display: inline-flex; align-items: center; gap: 10px; } .exit-popup__dismiss { background: transparent; border: 0; color: #8a8a8a; font-size: 0.88rem; font-weight: 500; cursor: pointer; padding: 8px; transition: color 0.15s ease; } .exit-popup__dismiss:hover { color: #fff; } .exit-popup__fine { font-size: 0.72rem; line-height: 1.5; color: #5a5a5a; margin: 0; } @media (max-width: 480px) { .exit-popup__card { padding: 32px 22px 26px; border-radius: 20px; } .exit-popup__title { font-size: 1.3rem; } .exit-popup__lead { font-size: 0.9rem; } } /* Bolinhas de bandeira inline em títulos */ .flag-circle { display: inline-flex; align-items: center; justify-content: center; width: 0.85em; height: 0.85em; border-radius: 50%; overflow: hidden; vertical-align: -0.08em; margin-right: 0.22em; box-shadow: 0 2px 10px rgba(0,0,0,0.35), 0 0 0 2px rgba(255,255,255,0.05); flex-shrink: 0; } .flag-circle svg { width: 100%; height: 100%; display: block; } /* ============================================================ SCROLL REVEAL — entrada suave quando o elemento entra na viewport ============================================================ */ .scroll-reveal { opacity: 0; transform: translate3d(0, 24px, 0); transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1); } .scroll-reveal.is-revealed { opacity: 1; transform: translate3d(0, 0, 0); } /* Variantes direcionais */ .scroll-reveal--left { transform: translate3d(-32px, 0, 0); } .scroll-reveal--right { transform: translate3d(32px, 0, 0); } .scroll-reveal--scale { transform: translate3d(0, 20px, 0) scale(0.96); } .scroll-reveal--left.is-revealed, .scroll-reveal--right.is-revealed { transform: translate3d(0, 0, 0); } .scroll-reveal--scale.is-revealed { transform: translate3d(0, 0, 0) scale(1); } /* Stagger pra filhos diretos de containers .scroll-stagger */ .scroll-stagger > .scroll-reveal { transition-delay: 0s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(1) { transition-delay: 0.05s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(2) { transition-delay: 0.12s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(3) { transition-delay: 0.19s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(4) { transition-delay: 0.26s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(5) { transition-delay: 0.33s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(6) { transition-delay: 0.40s; } /* MOBILE: fade suave — sem transform pra não criar camadas no compositor. Duração maior + cubic-bezier ease-out dá sensação de revelação fluida. */ @media (max-width: 900px), (hover: none) and (pointer: coarse) { .scroll-reveal, .scroll-reveal--left, .scroll-reveal--right, .scroll-reveal--scale { transform: none; transition: opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1); } .scroll-reveal.is-revealed, .scroll-reveal--left.is-revealed, .scroll-reveal--right.is-revealed, .scroll-reveal--scale.is-revealed { transform: none; } /* Stagger gentil — espaçamento maior pra cascata fluida */ .scroll-stagger.is-revealed > .scroll-reveal:nth-child(1) { transition-delay: 0s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(2) { transition-delay: 0.10s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(3) { transition-delay: 0.20s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(4) { transition-delay: 0.30s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(5) { transition-delay: 0.40s; } .scroll-stagger.is-revealed > .scroll-reveal:nth-child(6) { transition-delay: 0.50s; } } @media (prefers-reduced-motion: reduce) { .scroll-reveal, .scroll-reveal--left, .scroll-reveal--right, .scroll-reveal--scale { opacity: 1 !important; transform: none !important; transition: none !important; } } /* ============================================================ MOBILE PERFORMANCE — corta tudo que é GPU-pesado em mobile. backdrop-filter, drop-shadow, blurs grandes, masks complexas. ============================================================ */ @media (max-width: 900px), (hover: none) and (pointer: coarse) { /* iOS Safari sofre com backdrop-filter — troca por bg sólido */ *, *::before, *::after { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; } .nav__bar { background: rgba(19, 19, 17, 0.92) !important; } .nav__menu { background: rgba(19, 19, 17, 0.98) !important; } body.is-scrolled .nav__pill { background: rgba(19, 19, 17, 0.9) !important; } .exit-popup__backdrop { background: rgba(0,0,0,0.85) !important; } /* drop-shadow é o pior filtro do mundo no mobile — troca por box-shadow simples */ .hero__showcase-frame img { filter: none !important; } .reach__globe { filter: none !important; } /* Box-shadows com blur enorme rasterizam mal em scroll — reduz drasticamente */ .choose__layout, .reach__layout, .payments__head, .exit-popup__card { box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important; } /* Mask gradients no globe e showcase forçam composição extra */ .hero__showcase::before { mask-image: none !important; -webkit-mask-image: none !important; } /* Globo: esconde continentes pontilhados pesados, mantém wireframe */ .reach__globe g[clip-path] path[fill*="url"] { display: none !important; } /* Glow pulsante grande atrás do iPhone — caro (transform: scale + opacity em filtro blur 60px) */ .hero__showcase::before { animation: none !important; opacity: 0.7; } /* 21 bolinhas piscando + 3 pulsos no globo — somam 24 timers infinitos */ .reach__blink, .reach__pin-anchor { animation: none !important; } .reach__blink { opacity: 0.7; } /* Indicator pulses espalhados em ~6 lugares (choose, vip, etc) */ [class*="indicator-pulse"], [class*="__pulse"] { animation: none !important; } /* Float dos cards crypto no hero — já estão display:none no mobile, mas garantia */ .crypto-card { animation: none !important; } /* VIP card conic spinning border — já desativado por display:none no ::before */ .vip-card--vip::before { animation: none !important; } /* Glow pulsante e cursor do gráfico choose */ .choose__chart-glow, .choose__chart-cursor, .choose__pill { animation-iteration-count: 1 !important; } /* Ticker continua rolando mas mais devagar (menos CPU/GPU por segundo) */ .ticker__track { animation-duration: 120s !important; } /* Skeleton shimmer (cards de price) — barato mas desnecessário em mobile */ [class*="shimmer"] { animation: none !important; } } /* ============================================================ MOBILE — centraliza todos os títulos, leads e botões ============================================================ */ @media (max-width: 768px) { /* Heads de seção que já existem como container */ .choose__content, .reach__content, .vip__head, .payments__head, .testimonials__head, .howto__head, .faq__head { text-align: center; align-items: center !important; margin-left: auto; margin-right: auto; } /* Títulos, eyebrows e leads */ .choose__title, .choose__lead, .reach__title, .reach__lead, .reach__eyebrow, .vip__title, .vip__sub, .payments__title, .payments__lead, .testimonials__title, .testimonials__lead, .howto__title, .howto__lead, .faq__title, .faq__lead { text-align: center; margin-left: auto; margin-right: auto; } /* CTAs e wrappers de botão */ .choose__cta-wrap, .reach__cta-wrap, .payments__cta-wrap, .howto__cta-wrap, .testimonials__cta-wrap, .hero__cta { display: flex; justify-content: center; align-items: center; text-align: center; } /* Botões isolados (sem wrapper) que ficam à esquerda no desktop */ .choose__content .btn--start, .reach__content .btn--pill-solid, .reach__cta, .payments__cta { margin-left: auto !important; margin-right: auto !important; display: inline-flex; align-self: center; } }