    /* ─── Reset & Base ─────────────────────────────────────── */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; font-size: 16px; }
    body {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
      color: #1C2B23; background: #fff;
      -webkit-font-smoothing: antialiased; overflow-x: hidden;
    }
    img { max-width: 100%; display: block; }
    a { text-decoration: none; color: inherit; }

    /* ─── Design Tokens ─────────────────────────────────────── */
    :root {
      --green-deep:   #0C3B2E;
      --green-mid:    #1A6B4A;
      --green-light:  #2A8A60;
      --green-pale:   #F0F7F3;
      --green-tint:   #E8F4EE;
      --gold:         #C49A3C;
      --gold-light:   #D4A94A;
      --gold-pale:    #FBF5E6;
      --graphite:     #1C2B23;
      --graphite-mid: #2A3B30;
      --text-body:    #2C4436;
      --text-sub:     #4A6B58;
      --text-muted:   #7A9A88;
      --border:       #D8E8DE;
      --border-dark:  #1F3828;
      --surface:      #FFFFFF;
      --chart-blue:   #2563EB;
      --chart-purple: #7C3AED;
      --shadow-sm:    0 1px 3px rgba(12,59,46,.08), 0 1px 2px rgba(12,59,46,.04);
      --shadow-md:    0 4px 16px rgba(12,59,46,.10), 0 2px 6px rgba(12,59,46,.06);
      --shadow-lg:    0 16px 48px rgba(12,59,46,.14), 0 4px 16px rgba(12,59,46,.08);
      --radius-sm:    8px;
      --radius-md:    12px;
      --radius-lg:    16px;
      --radius-xl:    24px;
    }

    /* ─── Keyframes ──────────────────────────────────────────── */
    @keyframes heroIn        { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }
    @keyframes floatMockup   {
      0%,100%{transform:perspective(1200px) rotateY(-4deg) rotateX(2deg) translateY(0)}
      50%    {transform:perspective(1200px) rotateY(-4deg) rotateX(2deg) translateY(-10px)}
    }
    @keyframes pulseDot      { 0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(1.7);opacity:.5} }
    @keyframes barGrow       { from{transform:scaleY(0)} to{transform:scaleY(1)} }
    @keyframes pulseRing     { 0%{transform:scale(1);opacity:.55} 100%{transform:scale(1.9);opacity:0} }
    @keyframes ambientFloat  {
      0%,100%{transform:translate(-50%,-50%) scale(1)}
      50%    {transform:translate(-50%,-50%) scale(1.15)}
    }
    @keyframes badgeBeat     { 0%,100%{transform:scale(1)} 50%{transform:scale(1.12)} }
    @keyframes rowIn         { from{opacity:0;transform:translateX(-8px)} to{opacity:1;transform:translateX(0)} }
    @keyframes notifBlink    { 0%,100%{opacity:1} 50%{opacity:.3} }
    @keyframes shimmerSlide  { 0%{background-position:-200% center} 100%{background-position:200% center} }
    @keyframes fadeInUp      { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
    @keyframes lineGrow      { from{transform:scaleX(0)} to{transform:scaleX(1)} }
    @keyframes spinDot       { to{transform:rotate(360deg)} }
    @keyframes checkPop      { 0%{transform:scale(0)} 70%{transform:scale(1.2)} 100%{transform:scale(1)} }

    /* ─── Utilities ─────────────────────────────────────────── */
    .container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
    .section    { padding: 80px 0; border-top: 1px solid var(--border); }
    .section-sm { padding: 56px 0; }

    .label {
      display: inline-flex; align-items: center; gap: 6px;
      font-size: 11px; font-weight: 700; letter-spacing: .12em;
      text-transform: uppercase; color: var(--green-mid);
      background: var(--green-tint); border: 1px solid var(--border);
      padding: 5px 12px; border-radius: 100px; margin-bottom: 12px;
    }
    .label-gold  { color:var(--gold);background:var(--gold-pale);border-color:#E8D5A8; }
    .label-white { color:rgba(255,255,255,.9);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2); }

    .headline {
      font-size: clamp(28px,3.5vw,44px); font-weight: 800;
      line-height: 1.2; letter-spacing: -.02em; color: var(--green-deep);
    }
    .headline-white { color:#fff; }
    .subheadline { font-size:17px;line-height:1.65;color:var(--text-sub);max-width:580px;margin-top:16px; }
    .subheadline-white { color:rgba(255,255,255,.75); }

    /* ─── Scroll animations ─────────────────────────────────── */
    .fade-up { opacity:0; transform:translateY(24px); transition:opacity .65s ease,transform .65s ease; }
    .fade-up.visible { opacity:1; transform:translateY(0); }
    .fade-up-delay-1 { transition-delay:.1s; }
    .fade-up-delay-2 { transition-delay:.2s; }
    .fade-up-delay-3 { transition-delay:.3s; }
    .fade-up-delay-4 { transition-delay:.4s; }
    .fade-up-delay-5 { transition-delay:.5s; }
    .fade-up-delay-6 { transition-delay:.6s; }

    /* Counter lock — prevents flash before JS runs */
    [data-counter] { display:inline-block; }

    /* ─── Navbar ─────────────────────────────────────────────── */
    .navbar {
      position:fixed; top:0; left:0; right:0; z-index:1000;
      height:64px; transition:background .3s,box-shadow .3s; background:transparent;
    }
    .navbar.scrolled {
      background:rgba(12,59,46,.97); backdrop-filter:blur(12px);
      box-shadow:0 1px 0 rgba(255,255,255,.08);
    }
    .navbar-inner {
      max-width:1200px; margin:0 auto; padding:0 24px;
      height:100%; display:flex; align-items:center; justify-content:space-between;
    }
    .nav-logo { display:flex; align-items:center; }
    .nav-logo img { height:32px; width:auto; transition:opacity .2s; }
    .nav-logo:hover img { opacity:.85; }
    .nav-links { display:flex; align-items:center; gap:4px; list-style:none; }
    .nav-links a {
      font-size:14px; font-weight:500; color:rgba(255,255,255,.8);
      padding:6px 14px; border-radius:8px; transition:color .2s,background .2s;
      position:relative;
    }
    .nav-links a::after {
      content:''; position:absolute; bottom:2px; left:14px; right:14px;
      height:1px; background:var(--gold-light);
      transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
    }
    .nav-links a:hover { color:#fff; background:rgba(255,255,255,.07); }
    .nav-links a:hover::after { transform:scaleX(1); }
    .nav-right { display:flex; align-items:center; gap:12px; }
    .nav-login { font-weight:600; color:rgba(255,255,255,.9); }

    .btn {
      display:inline-flex; align-items:center; gap:8px;
      font-size:14px; font-weight:600; padding:10px 22px;
      border-radius:8px; cursor:pointer; border:none;
      white-space:nowrap; transition:all .22s ease; position:relative; overflow:hidden;
    }
    .btn::after {
      content:''; position:absolute; inset:0;
      background:rgba(255,255,255,0); transition:background .2s;
    }
    .btn:active::after { background:rgba(255,255,255,.1); }

    .btn-primary { background:var(--gold); color:var(--green-deep); }
    .btn-primary:hover { background:var(--gold-light); transform:translateY(-2px); box-shadow:0 6px 20px rgba(196,154,60,.35); }

    .btn-secondary { background:rgba(255,255,255,.1); color:#fff; border:1px solid rgba(255,255,255,.2); }
    .btn-secondary:hover { background:rgba(255,255,255,.16); transform:translateY(-1px); }

    .btn-outline-dark { background:transparent; color:var(--green-deep); border:1.5px solid var(--border); }
    .btn-outline-dark:hover { background:var(--green-pale); border-color:var(--green-mid); transform:translateY(-1px); }

    .btn-lg { font-size:16px; padding:14px 32px; border-radius:10px; }

    /* CTA pulse ring */
    .btn-cta-pulse { position:relative; }
    .btn-cta-pulse::before {
      content:''; position:absolute; inset:-4px; border-radius:14px;
      border:2px solid var(--gold-light); opacity:0;
    }
    .btn-cta-pulse:hover::before { animation:pulseRing .7s ease forwards; }

    .nav-hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; background:none; border:none; }
    .nav-hamburger span { width:24px; height:2px; background:#fff; border-radius:2px; transition:all .3s; }
    .mobile-menu-close-btn { position:absolute; top:18px; right:16px; font-size:14px; font-weight:600; color:rgba(255,255,255,.7); cursor:pointer; padding:10px 14px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:8px; font-family:inherit; z-index:1; }
    .pmf-bar--green { background:linear-gradient(180deg,var(--green-light),var(--green-deep)); }
    .pmf-bar--gold  { background:linear-gradient(180deg,var(--gold-light),var(--gold)); }
    .browser-dots { display:flex; gap:6px; }
    .browser-dots span { width:10px; height:10px; border-radius:50%; }
    .browser-dots span:nth-child(1){background:#FF5F57}
    .browser-dots span:nth-child(2){background:#FEBC2E}
    .browser-dots span:nth-child(3){background:#28C840}

    /* ─── Hero ───────────────────────────────────────────────── */
    .hero {
      min-height:100vh; background:var(--green-deep);
      display:flex; flex-direction:column; justify-content:center;
      position:relative; overflow:hidden; padding:120px 0 80px;
    }
    /* Ambient orbs */
    .hero::before {
      content:''; position:absolute; inset:0;
      background:
        radial-gradient(ellipse 70% 60% at 60% 50%, rgba(26,107,74,.22) 0%, transparent 70%),
        radial-gradient(ellipse 40% 40% at 15% 80%, rgba(196,154,60,.07) 0%, transparent 60%);
      pointer-events:none;
    }
    .hero-ambient {
      position:absolute; width:500px; height:500px; border-radius:50%;
      background:radial-gradient(circle, rgba(196,154,60,.06) 0%, transparent 70%);
      top:50%; left:55%; pointer-events:none;
      animation:ambientFloat 8s ease-in-out infinite;
    }
    .hero-grid {
      display:grid; grid-template-columns:1fr 1fr; gap:64px;
      align-items:center; position:relative; z-index:1;
    }
    .hero-text { padding-right:16px; }

    /* Hero text staggered entrance */
    .hero-eyebrow {
      display:inline-flex; align-items:center; gap:8px;
      font-size:12px; font-weight:600; letter-spacing:.1em;
      text-transform:uppercase; color:var(--gold-light);
      background:rgba(196,154,60,.12); border:1px solid rgba(196,154,60,.25);
      padding:6px 14px; border-radius:100px; margin-bottom:28px;
      animation:heroIn .7s .1s ease both;
    }
    .hero-eyebrow-dot {
      width:6px; height:6px; border-radius:50%;
      background:var(--gold-light); flex-shrink:0;
      animation:pulseDot 2s ease-in-out infinite;
    }
    .hero-headline {
      font-size:clamp(32px,4vw,52px); font-weight:900;
      line-height:1.15; letter-spacing:-.02em;
      color:#fff; margin-bottom:24px;
      animation:heroIn .7s .22s ease both;
    }
    .hero-headline span { color:var(--gold-light); }
    .hero-sub {
      font-size:18px; line-height:1.65; color:rgba(255,255,255,.7);
      margin-bottom:40px; max-width:480px;
      animation:heroIn .7s .34s ease both;
    }
    .hero-actions { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:52px; animation:heroIn .7s .46s ease both; }
    .hero-trust {
      display:flex; align-items:center; gap:24px; padding-top:32px;
      border-top:1px solid rgba(255,255,255,.08);
      animation:heroIn .7s .58s ease both;
    }
    .hero-trust-item { display:flex; align-items:center; gap:8px; font-size:13px; color:rgba(255,255,255,.5); }
    .hero-trust-item .dot { width:6px; height:6px; border-radius:50%; background:var(--gold); flex-shrink:0; }

    /* ─── Mockup ─────────────────────────────────────────────── */
    .hero-mockup { position:relative; animation:heroIn .8s .3s ease both; }
    .mockup-browser {
      background:var(--graphite-mid); border-radius:14px;
      overflow:hidden; box-shadow:var(--shadow-lg), 0 0 0 1px rgba(255,255,255,.07);
      animation:floatMockup 7s 1s ease-in-out infinite;
    }
    .mockup-browser-bar { background:#1F3828; padding:10px 16px; display:flex; align-items:center; gap:10px; }
    .mockup-url {
      flex:1; background:rgba(255,255,255,.06); border-radius:5px;
      padding:4px 12px; font-size:11px; color:rgba(255,255,255,.35); text-align:center;
    }
    .mockup-screenshot { width:100%; display:block; }
    .mockup-inner { display:grid; grid-template-columns:48px 1fr; height:440px; overflow:hidden; }
    .mockup-sidebar-collapsed {
      background:#0C2820; padding:14px 0; display:flex; flex-direction:column;
      align-items:center; gap:2px; border-right:1px solid rgba(255,255,255,.06);
    }
    .mockup-sidebar-icon {
      width:32px; height:32px; border-radius:8px; display:flex; align-items:center;
      justify-content:center; color:rgba(255,255,255,.4); transition:all .15s;
    }
    .mockup-sidebar-icon.active { background:rgba(26,107,74,.35); color:#fff; }
    .mockup-notif-icon { font-size:11px; cursor:pointer; }
    /* Content area */
    .mockup-content { background:#F4F7F5; padding:14px; overflow:hidden; display:flex; flex-direction:column; gap:10px; }
    .mockup-header-bar { display:flex; align-items:center; justify-content:space-between; }
    .mockup-breadcrumb { font-size:10px; font-weight:500; }
    .mockup-page-title { font-size:10px; font-weight:700; color:#0C3B2E; }
    .mockup-search-bar { background:rgba(0,0,0,.03); border:1px solid #E5EAE7; border-radius:6px; padding:4px 10px; font-size:8px; color:#8AA898; min-width:80px; }
    .mockup-header-avatar { width:22px; height:22px; border-radius:50%; background:var(--green-mid); display:flex; align-items:center; justify-content:center; font-size:7px; font-weight:700; color:#fff; flex-shrink:0; }
    .mockup-tabs { display:flex; gap:4px; }
    .mockup-tab { font-size:8px; font-weight:500; padding:4px 10px; border-radius:6px; color:#6B7C72; border:1px solid #E5EAE7; }
    .mockup-tab.active { background:var(--green-mid); color:#fff; border-color:var(--green-mid); font-weight:600; }
    .mockup-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
    .mockup-kpi { background:#fff; border-radius:8px; padding:10px; border:1px solid #E5EAE7; display:flex; gap:8px; align-items:flex-start; }
    .mockup-kpi-icon { width:24px; height:24px; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:700; flex-shrink:0; }
    .mockup-kpi-label { font-size:7px; text-transform:uppercase; letter-spacing:.05em; color:#8AA898; font-weight:600; }
    .mockup-kpi-value { font-size:13px; font-weight:800; color:#0C3B2E; margin-top:2px; line-height:1; }
    .mockup-kpi-sub { font-size:6.5px; color:#8AA898; margin-top:2px; }
    .mockup-kpi-unit { font-size:9px; font-weight:600; color:#8AA898; }
    .mockup-section-title { font-size:9px; font-weight:700; color:#0C3B2E; }
    .mockup-charts { display:grid; grid-template-columns:1fr .7fr; gap:8px; flex:1; }
    .mockup-chart-card { background:#fff; border-radius:8px; padding:10px; border:1px solid #E5EAE7; overflow:hidden; }
    .mockup-chart-title { font-size:8px; font-weight:700; color:#0C3B2E; }
    .mockup-chart-sub { font-size:6.5px; color:#8AA898; margin-bottom:6px; }
    /* Line chart */
    .mockup-line-chart { height:70px; }
    .mockup-line-svg { width:100%; height:100%; }
    /* Product bars */
    .mockup-product-bars { display:flex; flex-direction:column; gap:5px; }
    .mockup-product-row { display:flex; align-items:center; gap:6px; animation:rowIn .5s ease both; }
    .mockup-product-row:nth-child(1){animation-delay:.3s}
    .mockup-product-row:nth-child(2){animation-delay:.5s}
    .mockup-product-row:nth-child(3){animation-delay:.7s}
    .mockup-product-row:nth-child(4){animation-delay:.9s}
    .mockup-product-row:nth-child(5){animation-delay:1.1s}
    .mockup-product-name { font-size:7.5px; font-weight:600; color:#1C2B23; width:28px; flex-shrink:0; }
    .mockup-product-bar-bg { flex:1; height:8px; background:#F0F4F1; border-radius:4px; overflow:hidden; }
    .mockup-product-bar { height:100%; background:var(--green-mid); border-radius:4px; animation:barGrow .9s ease both; transform-origin:left; }
    .mockup-product-dot { width:6px; height:6px; border-radius:50%; flex-shrink:0; }
    .mockup-product-val { font-size:7px; font-weight:600; color:#0C3B2E; width:32px; text-align:right; flex-shrink:0; }
    .mockup-product-comissao { font-size:6.5px; color:var(--green-mid); font-weight:600; width:48px; text-align:right; flex-shrink:0; }
    .mockup-product-bar.gold { background:var(--gold) !important; }

    /* Online indicator */
    .mockup-online {
      width:7px; height:7px; border-radius:50%; background:#28C840;
      margin-left:auto; animation:notifBlink 3s ease-in-out infinite;
    }

    /* ─── Strip / Ticker ─────────────────────────────────────── */
    @keyframes ticker { from { transform: translateX(0) } to { transform: translateX(-50%) } }
    .strip { background:var(--green-pale); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:18px 0; overflow:hidden; }
    .strip-track {
      display:flex; align-items:center; gap:0;
      width:max-content;
      animation: ticker 22s linear infinite;
    }
    .strip-track:hover { animation-play-state: paused; }
    .strip-item {
      display:inline-flex; align-items:center; gap:10px;
      font-size:13px; font-weight:500; color:var(--text-sub);
      white-space:nowrap; padding:0 48px;
      border-right:1px solid var(--border);
    }
    .strip-item:last-child { border-right:none; }
    .strip-icon {
      width:30px; height:30px; border-radius:8px;
      background:var(--green-tint); border:1px solid var(--border);
      display:flex; align-items:center; justify-content:center;
      flex-shrink:0;
    }
    .strip-icon svg { width:16px; height:16px; color:var(--green-mid); }

    /* ─── Problem ─────────────────────────────────────────────── */
    .problem-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:stretch; margin-top:20px; }
    .problem-list { display:flex; flex-direction:column; gap:16px; }
    .problem-item {
      display:flex; align-items:flex-start; gap:16px;
      padding:18px 20px; background:#fff; border:1px solid var(--border);
      border-radius:var(--radius-md); transition:all .25s ease;
      cursor:default;
    }
    .problem-item:hover { box-shadow:var(--shadow-md); border-color:#C5D8CC; transform:translateX(4px); }
    .problem-icon { width:40px; height:40px; border-radius:10px; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:18px; }
    .problem-icon.red   { background:#FEF2F2; }
    .problem-icon.orange{ background:#FFF7ED; }
    .problem-icon.yellow{ background:#FEFCE8; }
    .problem-icon.purple{ background:#FAF5FF; }
    .problem-icon.blue  { background:#EFF6FF; }
    .problem-text h4 { font-size:14px; font-weight:700; color:var(--green-deep); margin-bottom:4px; }
    .problem-text p  { font-size:13px; color:var(--text-sub); line-height:1.5; }

    .problem-visual { display:flex; }
    .problem-big-text {
      background:var(--green-deep); border-radius:var(--radius-xl);
      padding:40px; color:#fff; position:relative; overflow:hidden;
      display:flex; flex-direction:column; justify-content:center; width:100%;
    }
    .problem-big-text::before {
      content:''; position:absolute; top:-40px; right:-40px;
      width:200px; height:200px; border-radius:50%;
      background:rgba(26,107,74,.3);
    }
    .problem-stat {
      font-size:56px; font-weight:900; letter-spacing:-.04em;
      color:var(--gold-light); line-height:1;
    }
    .problem-stat-label { font-size:14px; color:rgba(255,255,255,.65); margin-top:8px; }
    .problem-stats { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:28px; }
    .problem-stat-num { font-size:32px; font-weight:800; color:#fff; }
    .problem-stat-desc { font-size:12px; color:rgba(255,255,255,.5); margin-top:4px; }

    /* ─── Features ─────────────────────────────────────────── */
    .features-header { text-align:center; max-width:680px; margin:0 auto 48px; }
    .features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
    .feature-card {
      background:var(--green-pale); border:1px solid var(--border);
      border-radius:var(--radius-lg); padding:28px;
      transition:all .25s ease; cursor:default;
      transform-style:preserve-3d; will-change:transform;
    }
    .feature-card:hover { background:#fff; box-shadow:var(--shadow-md); border-color:#C5D8CC; }
    .feature-icon {
      width:48px; height:48px; border-radius:14px; margin-bottom:16px;
      background:var(--green-deep); display:flex; align-items:center;
      justify-content:center; font-size:22px; transition:transform .25s;
    }
    .feature-card:hover .feature-icon { transform:scale(1.08) rotate(2deg); }
    .feature-card h3  { font-size:15px; font-weight:700; color:var(--green-deep); margin-bottom:10px; }
    .feature-card p   { font-size:13px; color:var(--text-sub); line-height:1.7; }
    .feature-tag {
      display:inline-block; font-size:10px; font-weight:700;
      padding:3px 8px; border-radius:4px; margin-top:12px;
      background:var(--green-tint); color:var(--green-mid); letter-spacing:.04em;
    }

    /* ─── Mercado ──────────────────────────────────────────── */
    .mercado-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }

    /* ─── Pricing ─────────────────────────────────────────── */
    .pricing-section { background:var(--green-pale); }
    .pricing-header { text-align:center; max-width:800px; margin:0 auto 48px; }
    .pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; max-width:960px; margin:0 auto; }
    .pricing-card {
      background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg);
      padding:32px 24px; text-align:left; position:relative;
      display:flex; flex-direction:column; transition:transform .2s ease, box-shadow .2s ease;
    }
    .pricing-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .pricing-featured { border:2px solid var(--gold); box-shadow:var(--shadow-md); }
    .pricing-badge {
      position:absolute; top:-12px; left:50%; transform:translateX(-50%);
      background:var(--gold); color:#fff; font-size:11px; font-weight:700;
      letter-spacing:.05em; padding:4px 16px; border-radius:100px;
      text-transform:uppercase; white-space:nowrap;
    }
    .pricing-plan-header { margin-bottom:24px; }
    .pricing-plan-header h3 { font-size:20px; font-weight:700; color:var(--green-deep); margin-bottom:4px; }
    .pricing-desc { font-size:13px; color:var(--text-muted); margin-bottom:16px; }
    .pricing-price { font-size:36px; font-weight:800; color:var(--green-deep); line-height:1.1; margin-bottom:6px; }
    .pricing-price span { font-size:16px; font-weight:500; color:var(--text-muted); }
    .pricing-users { font-size:13px; color:var(--text-sub); }
    .pricing-features { list-style:none; padding:0; margin:0 0 24px; flex:1; }
    .pricing-features li {
      font-size:14px; color:var(--text-body); padding:8px 0;
      border-bottom:1px solid #f0f5f2; display:flex; align-items:center; gap:8px;
    }
    .pricing-features li::before {
      content:''; display:inline-block; width:16px; height:16px;
      background:var(--green-mid); flex-shrink:0;
      mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
      mask-size:contain;
    }
    .pricing-cta {
      display:block; text-align:center; padding:14px 24px; border-radius:var(--radius-md);
      font-size:14px; font-weight:600; border:2px solid var(--green-mid);
      color:var(--green-mid); transition:all .2s ease; margin-top:auto;
    }
    .pricing-cta:hover { background:var(--green-mid); color:#fff; }
    .pricing-cta-featured { background:var(--green-mid); color:#fff; border-color:var(--green-mid); }
    .pricing-cta-featured:hover { background:var(--green-deep); border-color:var(--green-deep); }
    .pricing-note { text-align:center; margin-top:40px; font-size:14px; color:var(--text-sub); max-width:600px; margin-left:auto; margin-right:auto; }
    .billing-toggle { display:flex; align-items:center; justify-content:center; gap:12px; }
    .billing-label { font-size:14px; font-weight:500; color:var(--text-muted); transition:color .2s; }
    .billing-label.billing-active { color:var(--green-deep); font-weight:700; }
    .billing-discount { font-size:11px; font-weight:700; color:#fff; background:var(--gold); padding:2px 8px; border-radius:100px; margin-left:4px; }
    .billing-switch { width:48px; height:26px; border-radius:13px; background:var(--border); border:none; cursor:pointer; position:relative; transition:background .2s; flex-shrink:0; }
    .billing-switch.active { background:var(--green-mid); }
    .billing-knob { width:20px; height:20px; border-radius:50%; background:#fff; position:absolute; top:3px; left:3px; transition:left .2s; box-shadow:0 1px 3px rgba(0,0,0,.15); }
    .billing-switch.active .billing-knob { left:25px; }
    .pricing-annual-note { display:none; font-size:12px; color:var(--green-mid); font-weight:600; margin-top:4px; }
    .pricing-annual-note.show { display:block; }

    /* ─── Social Proof ─────────────────────────────────────── */
    .social-proof { background:var(--green-deep); }
    .social-proof-header { text-align:center; margin-bottom:40px; }
    .social-proof-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; max-width:800px; margin:0 auto; }
    .social-proof-item { text-align:center; }
    .social-proof-number { font-size:42px; font-weight:900; color:var(--gold-light); letter-spacing:-.02em; line-height:1.1; margin-bottom:10px; }
    .social-proof-label { font-size:14px; color:rgba(255,255,255,.6); line-height:1.5; }

    /* ─── FAQ ─────────────────────────────────────────────── */
    .faq-grid { max-width: 700px; margin: 0 auto; text-align: left; }
    .faq-item {
      border: 1px solid var(--border); border-radius: var(--radius-lg);
      margin-bottom: 12px; overflow: hidden; background: #fff;
      box-shadow: var(--shadow-sm); transition: box-shadow .2s ease;
    }
    .faq-item:hover { box-shadow: var(--shadow-md); }
    .faq-question {
      width: 100%; padding: 20px 24px; display: flex;
      justify-content: space-between; align-items: center;
      background: none; border: none; font-size: 15px; font-weight: 600;
      color: var(--green-deep); cursor: pointer; text-align: left;
      font-family: inherit; gap: 16px; transition: background .15s ease;
    }
    .faq-question:hover { background: rgba(26,107,74,.04); }
    .faq-icon {
      width: 28px; height: 28px; border-radius: 50%;
      background: var(--green-tint); border: 1px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      font-size: 16px; color: var(--green-mid); flex-shrink: 0;
      transition: transform .2s ease, background .2s ease;
    }
    .faq-item.active .faq-icon { transform: rotate(45deg); background: var(--green-mid); color: #fff; border-color: var(--green-mid); }
    .faq-answer { max-height: 0; overflow: hidden; transition: max-height .3s ease; }
    .faq-item.active .faq-answer { max-height: 300px; }
    .faq-answer p { padding: 0 24px 20px; font-size: 14px; line-height: 1.7; color: var(--text-sub); }

    /* ─── Contact ────────────────────────────────────────────── */
    .contact { background:#fff; }
    .contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
    .contact-info h2 { font-size:28px; font-weight:800; color:var(--green-deep); margin-bottom:16px; letter-spacing:-.01em; line-height:1.25; }
    .contact-info p { font-size:16px; color:var(--text-sub); line-height:1.65; margin-bottom:32px; }
    .contact-detail { display:flex; align-items:center; gap:12px; margin-bottom:14px; font-size:14px; color:var(--text-sub); }
    .contact-detail-icon { width:36px; height:36px; border-radius:9px; background:var(--green-tint); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; }
    .testimonial-card { margin-top:32px; padding:20px; background:var(--green-pale); border:1px solid var(--border); border-radius:var(--radius-md); }
    .testimonial-text { font-size:13px; color:var(--text-sub); line-height:1.7; font-style:italic; margin-bottom:14px; }
    .testimonial-author { display:flex; align-items:center; gap:10px; }
    .testimonial-avatar { width:36px; height:36px; border-radius:50%; background:var(--green-deep); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; color:#fff; flex-shrink:0; }
    .testimonial-name { font-size:13px; font-weight:700; color:var(--green-deep); }
    .testimonial-role { font-size:12px; color:var(--text-muted); }

    /* ─── Form ───────────────────────────────────────────────── */
    .contact-form-wrap { background:var(--green-pale); border:1px solid var(--border); border-radius:var(--radius-xl); padding:40px; }
    .form-title { font-size:20px; font-weight:800; color:var(--green-deep); margin-bottom:6px; }
    .form-subtitle { font-size:13px; color:var(--text-muted); margin-bottom:24px; }
    .form-group { margin-bottom:16px; }
    .form-label { display:block; font-size:13px; font-weight:600; color:var(--text-body); margin-bottom:6px; }
    .form-input {
      width:100%; padding:12px 16px; border:1.5px solid var(--border);
      border-radius:var(--radius-sm); font-size:14px; color:var(--text-body);
      background:#fff; outline:none; font-family:inherit;
      transition:border-color .2s, box-shadow .2s;
    }
    .form-input:focus { border-color:var(--green-mid); box-shadow:0 0 0 3px rgba(26,107,74,.1); }
    .form-input::placeholder { color:var(--text-muted); }
    .form-input.error,
    input.error { border-color:#ef4444; box-shadow:0 0 0 3px rgba(239,68,68,.08); background-color:#fff5f5; }
    textarea.form-input { resize:vertical; min-height:90px; }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    /* Honeypot — invisível para usuários */
    .form-honeypot { display:none !important; visibility:hidden; position:absolute; left:-9999px; }
    /* Counter de caracteres em textareas */
    .form-counter { font-size:11px; color:#888; text-align:right; margin-top:4px; }
    /* Cloudflare Turnstile widget spacing */
    .cf-turnstile { margin:16px 0; min-height:65px; }
    /* Dentro do modal: grid gap ja separa, zerar margin pra evitar espaco extra */
    .lead-modal-form .cf-turnstile { margin:0; grid-column:1 / -1; }
    .form-submit {
      width:100%; padding:14px; background:var(--green-deep); color:#fff;
      font-size:15px; font-weight:700; border:none; border-radius:var(--radius-sm);
      cursor:pointer; font-family:inherit; position:relative; overflow:hidden;
      transition:background .22s, transform .15s, box-shadow .22s;
    }
    .form-submit:hover:not(:disabled) { background:var(--green-mid); transform:translateY(-1px); box-shadow:0 6px 20px rgba(12,59,46,.25); }
    .form-submit:disabled { opacity:.7; cursor:not-allowed; }
    .form-submit-inner { display:flex; align-items:center; justify-content:center; gap:10px; }
    .form-spinner {
      display:none; width:16px; height:16px; border:2px solid rgba(255,255,255,.4);
      border-top-color:#fff; border-radius:50%;
      animation:spinDot .7s linear infinite;
    }
    .form-submit.loading .form-spinner { display:block; }
    .form-submit.loading .form-submit-text { opacity:.7; }
    .form-note { font-size:12px; color:var(--text-muted); text-align:center; margin-top:12px; }
    .form-msg {
      display:none; margin-top:16px; padding:14px 16px; border-radius:var(--radius-sm);
      font-size:14px; font-weight:500; text-align:center;
    }
    .form-msg.success { display:block; background:#f0fdf4; color:#15803d; border:1px solid #bbf7d0; animation:fadeInUp .4s ease; }
    .form-msg.error-msg { display:block; background:#fef2f2; color:#b91c1c; border:1px solid #fecaca; animation:fadeInUp .4s ease; }

    /* ─── Footer ─────────────────────────────────────────────── */
    .footer { background:var(--graphite); padding:56px 0 32px; }
    .footer-inner { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-bottom:48px; }
    .footer-brand { display:flex; align-items:center; gap:16px; }
    .footer-brand img { height:48px; }
    .footer-tagline { font-size:13px; color:rgba(255,255,255,.4); max-width:280px; line-height:1.6; }
    .footer-nav { display:flex; gap:24px; }
    .footer-nav a { font-size:14px; color:rgba(255,255,255,.5); transition:color .2s; }
    .footer-nav a:hover { color:rgba(255,255,255,.85); }
    .footer-bottom { border-top:1px solid rgba(255,255,255,.06); padding-top:28px; display:flex; align-items:center; justify-content:space-between; }
    .footer-copy { font-size:13px; color:rgba(255,255,255,.3); }
    .footer-bottom-links { display:flex; gap:20px; }
    .footer-bottom-links a { font-size:13px; color:rgba(255,255,255,.3); transition:color .2s; }
    .footer-bottom-links a:hover { color:rgba(255,255,255,.6); }

    /* ─── Responsive ─────────────────────────────────────────── */
    @media (max-width:1024px) {
      .features-grid { grid-template-columns:repeat(2,1fr); }
    }
    @media (max-width:768px) {
      .section { padding:64px 0; }
      .hero-grid { grid-template-columns:1fr; }
      .hero-mockup { display:none; }
      .hero-headline { font-size:38px; }
      .problem-grid { grid-template-columns:1fr; }
      .problem-visual { display:none; }
      .features-grid { grid-template-columns:1fr; }
      .mercado-grid { grid-template-columns:1fr; gap:40px; }
      .pricing-grid { grid-template-columns:1fr; max-width:400px; }
      .pricing-featured { order:-1; }
      .social-proof-grid { grid-template-columns:1fr; gap:40px; }
      .contact-grid { grid-template-columns:1fr; gap:40px; }
      .nav-links { display:none; }
      .nav-hamburger { display:flex; }
      .hero-trust { flex-direction:column; align-items:flex-start; gap:12px; }
      .footer-inner { flex-direction:column; text-align:center; }
      .footer-nav { flex-wrap:wrap; justify-content:center; }
      .footer-bottom { flex-direction:column; gap:16px; text-align:center; }
    }
    @media (max-width:480px) {
      .form-row { grid-template-columns:1fr; }
    }

    /* ─── Lucide icon sizing per container ─────────────────── */
    .strip-icon svg            { width:18px; height:18px; color:var(--green-mid); }
    .problem-icon svg          { width:20px; height:20px; }
    .problem-icon.red svg      { color:#dc2626; }
    .problem-icon.orange svg   { color:#ea580c; }
    .problem-icon.yellow svg   { color:#ca8a04; }
    .problem-icon.purple svg   { color:#9333ea; }
    .problem-icon.blue svg     { color:#2563eb; }
    .feature-icon svg          { width:24px; height:24px; color:rgba(255,255,255,.88); }
    .contact-detail-icon svg   { width:17px; height:17px; color:var(--green-mid); }
    .form-note-icon            { width:12px; height:12px; display:inline-block; vertical-align:middle; margin-right:4px; position:relative; top:-1px; }
    .form-note-icon svg        { width:12px; height:12px; color:var(--text-muted); }

    /* ─── Mobile Menu ────────────────────────────────────────── */
    .mobile-menu {
      display:none; position:fixed; inset:0; z-index:1100;
      background:var(--green-deep); padding:72px 24px 40px; flex-direction:column;
    }
    .mobile-menu.open { display:flex; }
    .mobile-menu a { display:block; font-size:24px; font-weight:700; color:rgba(255,255,255,.85); padding:16px 0; border-bottom:1px solid rgba(255,255,255,.08); }
    .mobile-menu a:hover { color:#fff; }
    .mobile-cta { margin-top:32px; }

    /* ─── Modal de Lead (Sprint 36B) ────────────────────────── */
    .lead-modal {
      display:none; position:fixed; inset:0; z-index:1200;
      background:rgba(12, 59, 46, 0.6); backdrop-filter:blur(4px);
      align-items:flex-start; justify-content:center; padding:40px 20px;
      overflow-y:auto;
    }
    .lead-modal.open { display:flex; }
    .lead-modal-content {
      background:#fff; border-radius:14px; max-width:460px; width:100%;
      padding:28px 28px 24px; box-shadow:0 20px 60px rgba(0,0,0,0.25);
      position:relative; margin:auto;
    }
    .lead-modal-close {
      position:absolute; top:10px; right:12px; background:none; border:none;
      font-size:24px; line-height:1; cursor:pointer; color:#666;
      width:32px; height:32px; border-radius:8px;
      display:flex; align-items:center; justify-content:center;
    }
    .lead-modal-close:hover { background:#f3f4f6; color:#111; }
    .lead-modal-header { margin-bottom:18px; padding-right:32px; }
    .lead-modal h3 { font-size:19px; font-weight:700; color:var(--green-deep); margin:0 0 4px; line-height:1.3; }
    .lead-modal-price { font-size:14px; color:var(--gold); font-weight:600; margin:0 0 6px; }
    .lead-modal-sub { font-size:12.5px; color:#666; margin:0; line-height:1.4; }
    .lead-modal-form {
      display:grid; grid-template-columns:1fr 1fr; gap:12px 14px;
    }
    .lead-modal-form .full { grid-column:1 / -1; }
    .lead-modal-form label {
      display:flex; flex-direction:column; gap:4px;
      font-size:12px; font-weight:600; color:#374151; letter-spacing:0.01em;
      margin:0;
    }
    .lead-modal-form input, .lead-modal-form textarea {
      width:100%; padding:9px 11px;
      border:1.5px solid var(--border, #e5e7eb); border-radius:8px;
      font-size:13.5px; color:var(--text-body, #111); font-family:inherit;
      background:#fff; outline:none;
      transition:border-color 150ms, box-shadow 150ms;
    }
    .lead-modal-form input:focus, .lead-modal-form textarea:focus {
      border-color:var(--green-mid); box-shadow:0 0 0 3px rgba(26, 107, 74, 0.1);
    }
    .lead-modal-form input::placeholder, .lead-modal-form textarea::placeholder {
      color:#9ca3af;
    }
    .lead-modal-form textarea { resize:vertical; min-height:62px; line-height:1.4; }
    .lead-modal-form .honeypot {
      position:absolute !important; left:-9999px !important;
      width:1px !important; height:1px !important; opacity:0 !important;
    }
    .lead-modal-msg {
      grid-column:1 / -1; font-size:12.5px; margin:0;
    }
    .lead-modal-msg:empty { display:none; }
    .lead-modal-msg.success { color:#16a34a; font-weight:500; }
    .lead-modal-msg.error-msg { color:#dc2626; font-weight:500; }
    .lead-modal-form button[type=submit] {
      grid-column:1 / -1; margin-top:4px; padding:11px 16px;
      background:var(--green-mid); color:#fff; border:none;
      border-radius:8px; font-size:14px; font-weight:600;
      cursor:pointer; transition:background 150ms, opacity 150ms;
    }
    .lead-modal-form button[type=submit]:hover:not(:disabled) { background:var(--green-deep); }
    .lead-modal-form button[type=submit]:disabled { opacity:0.6; cursor:not-allowed; }
    @media (max-width:540px) {
      .lead-modal { padding:20px 16px; }
      .lead-modal-content { padding:24px 20px 20px; border-radius:12px; }
      .lead-modal h3 { font-size:17px; }
      .lead-modal-form { grid-template-columns:1fr; gap:10px; }
    }
