    /* ==================== DESIGN SYSTEM - GIGSTACK ==================== */

    /* Base Font */
    * { font-family: 'Inter', sans-serif; }
    .text-block-100 { font-family: 'Russo One', sans-serif !important; }

    /* OLD HERO - HIDDEN FOR NOW */
    #Beta-hero {
      display: none !important;
    }

    /* Hero Dark to Light Transition */
    #Beta-hero,
    #Beta-hero.hero-section.hero {
      background: #000 !important;
      background-color: #000 !important;
      transition: background-color 0.8s ease-in-out;
    }
    #Beta-hero.hero-loaded,
    #Beta-hero.hero-loaded.hero-section.hero {
      background: #fff !important;
      background-color: #fff !important;
    }
    #Beta-hero .hero-heading,
    #Beta-hero .text-size-medium-3,
    #Beta-hero .hero-tag {
      transition: color 0.8s ease-in-out;
    }
    #Beta-hero .hero-heading {
      color: #fff !important;
      -webkit-text-fill-color: #fff !important;
    }
    #Beta-hero.hero-loaded .hero-heading {
      color: #000 !important;
      -webkit-text-fill-color: #000 !important;
    }
    #ai-gradient-text {
      display: inline-block !important;
      padding: 10px 24px !important;
      border-radius: 14px !important;
      background: linear-gradient(135deg, #1e2a4a 0%, #2d3a5f 50%, #1a2744 100%) !important;
      border: 1px solid rgba(255, 255, 255, 0.15) !important;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
    }
    #ai-gradient-text .ai-text-inner {
      background: linear-gradient(180deg, #ffffff 0%, #c0c8d4 40%, #8090a8 100%) !important;
      -webkit-background-clip: text !important;
      background-clip: text !important;
      -webkit-text-fill-color: transparent !important;
      color: transparent !important;
    }
    #Beta-hero .text-size-medium-3 {
      color: rgba(255, 255, 255, 0.8) !important;
    }
    #Beta-hero.hero-loaded .text-size-medium-3 {
      color: #637381 !important;
    }
    #Beta-hero .hero-tag {
      color: #fff !important;
      background-color: rgba(255, 255, 255, 0.1) !important;
      border-color: rgba(255, 255, 255, 0.2) !important;
      transition: color 0.8s ease-in-out, background-color 0.8s ease-in-out, border-color 0.8s ease-in-out;
    }
    #Beta-hero.hero-loaded .hero-tag {
      color: #000 !important;
      background-color: rgba(0, 0, 0, 0.05) !important;
      border-color: rgba(0, 0, 0, 0.1) !important;
    }
    #Beta-hero .text-size-medium-3 strong {
      color: #fff !important;
    }
    #Beta-hero.hero-loaded .text-size-medium-3 strong {
      color: #000 !important;
    }

    /* Nav Dark to Light Transition */
    .gs-nav {
      background: rgba(0, 0, 0, 0.95) !important;
      border-bottom-color: rgba(255, 255, 255, 0.1) !important;
      transition: background 0.8s ease-in-out, border-bottom-color 0.8s ease-in-out;
    }
    .gs-nav.nav-scrolled {
      background: rgba(255, 255, 255, 0.95) !important;
      border-bottom-color: #f0f0f0 !important;
    }
    .gs-nav .gs-nav-logo {
      color: #fff !important;
      transition: color 0.8s ease-in-out;
    }
    .gs-nav.nav-scrolled .gs-nav-logo {
      color: #141414 !important;
    }
    .gs-nav .gs-nav-dot {
      background: rgba(255, 255, 255, 0.3) !important;
      transition: background 0.8s ease-in-out;
    }
    .gs-nav.nav-scrolled .gs-nav-dot {
      background: #d1d1d1 !important;
    }
    .gs-nav .gs-nav-link:not(.gs-nav-soma) {
      color: rgba(255, 255, 255, 0.85) !important;
      transition: color 0.8s ease-in-out, background 0.2s;
    }
    .gs-nav.nav-scrolled .gs-nav-link:not(.gs-nav-soma) {
      color: #333 !important;
    }
    .gs-nav .gs-nav-link:not(.gs-nav-soma):hover {
      background: rgba(255, 255, 255, 0.1) !important;
      color: #fff !important;
    }
    .gs-nav.nav-scrolled .gs-nav-link:not(.gs-nav-soma):hover {
      background: #f5f5f5 !important;
      color: #111 !important;
    }
    .gs-nav .gs-nav-soma {
      color: #1a1a1a !important;
    }
    .gs-nav .gs-nav-btn {
      background: #fff !important;
      color: #000 !important;
      transition: background 0.8s ease-in-out, color 0.8s ease-in-out;
    }
    .gs-nav.nav-scrolled .gs-nav-btn {
      background: #000 !important;
      color: #fff !important;
    }
    .gs-nav .gs-dropdown-btn {
      color: rgba(255, 255, 255, 0.85) !important;
      background: transparent !important;
      transition: color 0.8s ease-in-out, background 0.2s ease;
    }
    .gs-nav.nav-scrolled .gs-dropdown-btn {
      color: #333 !important;
    }
    .gs-nav .gs-dropdown-btn:hover {
      color: #fff !important;
      background: rgba(255, 255, 255, 0.1) !important;
    }
    .gs-nav .gs-dropdown.active .gs-dropdown-btn {
      color: #fff !important;
      background: #2a2a2a !important;
    }
    .gs-nav.nav-scrolled .gs-dropdown-btn:hover {
      color: #111 !important;
      background: #f5f5f5 !important;
    }
    .gs-nav.nav-scrolled .gs-dropdown.active .gs-dropdown-btn {
      color: #111 !important;
      background: #f5f5f5 !important;
    }
    .gs-nav .gs-dropdown-arrow {
      stroke: rgba(255, 255, 255, 0.85) !important;
      transition: stroke 0.8s ease-in-out;
    }
    .gs-nav.nav-scrolled .gs-dropdown-arrow {
      stroke: #333 !important;
    }

    /* Mobile hamburger - dark mode */
    .gs-nav .gs-hamburger span {
      background: #fff !important;
      transition: background 0.8s ease-in-out;
    }
    .gs-nav.nav-scrolled .gs-hamburger span {
      background: #333 !important;
    }
    /* When menu is open, always dark hamburger */
    .gs-nav.menu-open .gs-hamburger span {
      background: #333 !important;
    }
    .gs-nav.menu-open .gs-nav-logo {
      color: #141414 !important;
    }

    /* AI Gradient Text Effect */
    #Beta-hero .hero-heading .ai-gradient-text {
      color: transparent !important;
      background: linear-gradient(90deg, #4facfe 0%, #00f2fe 25%, #43e97b 50%, #38f9d7 75%, #4facfe 100%) !important;
      background-size: 200% 200% !important;
      -webkit-background-clip: text !important;
      -webkit-text-fill-color: transparent !important;
      background-clip: text !important;
      animation: gradientShift 3s ease infinite !important;
    }
    #Beta-hero.hero-loaded .hero-heading .ai-gradient-text {
      background: linear-gradient(90deg, #667eea 0%, #764ba2 25%, #f093fb 50%, #f5576c 75%, #667eea 100%) !important;
      background-size: 200% 200% !important;
      -webkit-background-clip: text !important;
      -webkit-text-fill-color: transparent !important;
      background-clip: text !important;
    }
    @keyframes gradientShift {
      0% { background-position: 0% 50%; }
      50% { background-position: 100% 50%; }
      100% { background-position: 0% 50%; }
    }

    /* Hero Particles Background */
    .hero-particles-container {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0;
      overflow: hidden;
      opacity: 1;
      transition: opacity 0.8s ease-in-out;
    }
    #Beta-hero.hero-loaded .hero-particles-container {
      opacity: 0;
    }
    .hero-particle {
      position: absolute;
      background: rgba(255, 255, 255, 0.6);
      border-radius: 50%;
    }
    .hero-particle:nth-child(1) { left: 10%; top: 20%; width: 2px; height: 2px; animation: heroFloat1 20s infinite; opacity: 0.5; }
    .hero-particle:nth-child(2) { left: 20%; top: 80%; width: 3px; height: 3px; animation: heroFloat2 25s infinite; opacity: 0.7; }
    .hero-particle:nth-child(3) { left: 30%; top: 40%; width: 1px; height: 1px; animation: heroFloat3 18s infinite; opacity: 0.4; }
    .hero-particle:nth-child(4) { left: 40%; top: 60%; width: 2px; height: 2px; animation: heroFloat4 22s infinite; opacity: 0.6; }
    .hero-particle:nth-child(5) { left: 50%; top: 30%; width: 3px; height: 3px; animation: heroFloat1 28s infinite; opacity: 0.5; }
    .hero-particle:nth-child(6) { left: 60%; top: 70%; width: 1px; height: 1px; animation: heroFloat2 19s infinite; opacity: 0.6; }
    .hero-particle:nth-child(7) { left: 70%; top: 50%; width: 2px; height: 2px; animation: heroFloat3 24s infinite; opacity: 0.4; }
    .hero-particle:nth-child(8) { left: 80%; top: 25%; width: 2px; height: 2px; animation: heroFloat4 21s infinite; opacity: 0.7; }
    .hero-particle:nth-child(9) { left: 85%; top: 85%; width: 1px; height: 1px; animation: heroFloat1 26s infinite reverse; opacity: 0.5; }
    .hero-particle:nth-child(10) { left: 15%; top: 55%; width: 2px; height: 2px; animation: heroFloat2 23s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(11) { left: 25%; top: 15%; width: 3px; height: 3px; animation: heroFloat3 27s infinite; opacity: 0.4; }
    .hero-particle:nth-child(12) { left: 45%; top: 90%; width: 1px; height: 1px; animation: heroFloat4 17s infinite reverse; opacity: 0.7; }
    .hero-particle:nth-child(13) { left: 55%; top: 10%; width: 2px; height: 2px; animation: heroFloat1 22s infinite reverse; opacity: 0.5; }
    .hero-particle:nth-child(14) { left: 75%; top: 35%; width: 2px; height: 2px; animation: heroFloat2 29s infinite; opacity: 0.4; }
    .hero-particle:nth-child(15) { left: 90%; top: 65%; width: 1px; height: 1px; animation: heroFloat3 20s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(16) { left: 5%; top: 45%; width: 2px; height: 2px; animation: heroFloat4 25s infinite reverse; opacity: 0.5; }
    .hero-particle:nth-child(17) { left: 35%; top: 75%; width: 3px; height: 3px; animation: heroFloat1 18s infinite; opacity: 0.7; }
    .hero-particle:nth-child(18) { left: 65%; top: 5%; width: 1px; height: 1px; animation: heroFloat2 30s infinite; opacity: 0.4; }
    .hero-particle:nth-child(19) { left: 95%; top: 40%; width: 2px; height: 2px; animation: heroFloat3 21s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(20) { left: 8%; top: 95%; width: 2px; height: 2px; animation: heroFloat4 24s infinite; opacity: 0.5; }
    .hero-particle:nth-child(21) { left: 12%; top: 35%; width: 2px; height: 2px; animation: heroFloat1 19s infinite; opacity: 0.6; }
    .hero-particle:nth-child(22) { left: 22%; top: 65%; width: 1px; height: 1px; animation: heroFloat2 21s infinite reverse; opacity: 0.5; }
    .hero-particle:nth-child(23) { left: 32%; top: 12%; width: 3px; height: 3px; animation: heroFloat3 26s infinite; opacity: 0.4; }
    .hero-particle:nth-child(24) { left: 42%; top: 48%; width: 2px; height: 2px; animation: heroFloat4 23s infinite reverse; opacity: 0.7; }
    .hero-particle:nth-child(25) { left: 52%; top: 78%; width: 1px; height: 1px; animation: heroFloat1 17s infinite; opacity: 0.5; }
    .hero-particle:nth-child(26) { left: 62%; top: 22%; width: 2px; height: 2px; animation: heroFloat2 28s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(27) { left: 72%; top: 88%; width: 3px; height: 3px; animation: heroFloat3 20s infinite; opacity: 0.4; }
    .hero-particle:nth-child(28) { left: 82%; top: 42%; width: 1px; height: 1px; animation: heroFloat4 25s infinite reverse; opacity: 0.7; }
    .hero-particle:nth-child(29) { left: 92%; top: 8%; width: 2px; height: 2px; animation: heroFloat1 22s infinite; opacity: 0.5; }
    .hero-particle:nth-child(30) { left: 3%; top: 72%; width: 2px; height: 2px; animation: heroFloat2 19s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(31) { left: 18%; top: 28%; width: 1px; height: 1px; animation: heroFloat3 24s infinite; opacity: 0.4; }
    .hero-particle:nth-child(32) { left: 28%; top: 58%; width: 3px; height: 3px; animation: heroFloat4 27s infinite reverse; opacity: 0.7; }
    .hero-particle:nth-child(33) { left: 38%; top: 18%; width: 2px; height: 2px; animation: heroFloat1 21s infinite; opacity: 0.5; }
    .hero-particle:nth-child(34) { left: 48%; top: 42%; width: 1px; height: 1px; animation: heroFloat2 18s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(35) { left: 58%; top: 92%; width: 2px; height: 2px; animation: heroFloat3 29s infinite; opacity: 0.4; }
    .hero-particle:nth-child(36) { left: 68%; top: 15%; width: 3px; height: 3px; animation: heroFloat4 16s infinite reverse; opacity: 0.7; }
    .hero-particle:nth-child(37) { left: 78%; top: 68%; width: 1px; height: 1px; animation: heroFloat1 23s infinite; opacity: 0.5; }
    .hero-particle:nth-child(38) { left: 88%; top: 32%; width: 2px; height: 2px; animation: heroFloat2 26s infinite reverse; opacity: 0.6; }
    .hero-particle:nth-child(39) { left: 97%; top: 82%; width: 2px; height: 2px; animation: heroFloat3 18s infinite; opacity: 0.4; }
    .hero-particle:nth-child(40) { left: 7%; top: 8%; width: 1px; height: 1px; animation: heroFloat4 30s infinite reverse; opacity: 0.7; }

    @keyframes heroFloat1 {
      0%, 100% { transform: translate(0, 0); }
      25% { transform: translate(30px, -40px); }
      50% { transform: translate(-20px, -80px); }
      75% { transform: translate(40px, -40px); }
    }
    @keyframes heroFloat2 {
      0%, 100% { transform: translate(0, 0); }
      25% { transform: translate(-40px, 30px); }
      50% { transform: translate(50px, -20px); }
      75% { transform: translate(-30px, -50px); }
    }
    @keyframes heroFloat3 {
      0%, 100% { transform: translate(0, 0); }
      25% { transform: translate(50px, 20px); }
      50% { transform: translate(30px, 60px); }
      75% { transform: translate(-40px, 30px); }
    }
    @keyframes heroFloat4 {
      0%, 100% { transform: translate(0, 0); }
      25% { transform: translate(-30px, -60px); }
      50% { transform: translate(40px, -30px); }
      75% { transform: translate(-50px, 20px); }
    }

    /* Lottie Star Animation */
    .lottie-star {
      display: inline-block;
      width: 48px;
      height: 48px;
      vertical-align: middle;
      margin-left: 4px;
    }
    @media (max-width: 768px) {
      .lottie-star {
        width: 32px;
        height: 32px;
      }
    }
    #Beta-hero {
      position: relative;
      overflow: hidden;
    }
    #Beta-hero {
      min-height: 100vh;
    }
    #Beta-hero .hero---container {
      position: relative;
      z-index: 1;
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 60vh;
      padding-top: 60px;
    }
    @media (max-width: 768px) {
      #Beta-hero .hero---container {
        min-height: 50vh;
        padding-top: 40px;
      }
    }

    /* Country Selector */
    .country-selector {
      position: relative;
      display: inline-flex;
      align-items: center;
      margin-left: 12px;
    }
    .country-btn {
      width: 36px;
      height: 36px;
      border-radius: 50%;
      border: 2px solid #e5e5e5;
      background: #fff;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 18px;
      transition: all 0.2s ease;
    }
    .country-btn:hover {
      border-color: #141414;
    }
    .country-dropdown {
      position: absolute;
      top: 100%;
      right: 0;
      padding-top: 8px;
      background: transparent;
      opacity: 0;
      visibility: hidden;
      transform: translateY(-10px);
      transition: all 0.2s ease;
      z-index: 1000;
    }
    .country-dropdown-inner {
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 20px rgba(0,0,0,0.15);
      min-width: 180px;
      overflow: hidden;
    }
    .country-selector:hover .country-dropdown {
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
    }
    .country-option {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 16px;
      text-decoration: none;
      color: #333;
      font-size: 14px;
      font-weight: 500;
      transition: background 0.2s ease;
    }
    .country-option:hover {
      background: #f5f5f5;
    }
    .country-option.active {
      background: #f0f0f0;
    }
    .country-option span.flag {
      font-size: 20px;
    }

    /* Geist font for headings */
    .heading-style-h1,
    .h3-heading-17,
    .h2-heading-33,
    .ps-title,
    h1, h2, h3, h4 {
      font-family: 'Geist', sans-serif !important;
    }

    /* Scroll Animations */
    .fade-up {
      opacity: 0;
      transform: translateY(40px);
      transition: opacity 0.8s ease, transform 0.8s ease;
    }
    .fade-up.visible {
      opacity: 1;
      transform: translateY(0);
    }
    .fade-up-delay-1 { transition-delay: 0.1s; }
    .fade-up-delay-2 { transition-delay: 0.2s; }
    .fade-up-delay-3 { transition-delay: 0.3s; }

    /* Section Styles */
    .mexico-section { padding: 80px 0; }
    .mexico-section.gray-bg { background: #f8f9fa; }
    .mexico-section.dark-bg { background: #0a0a0a; color: #fff; }
    .mexico-container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

    /* Dark Section Text */
    .dark-bg .h3-heading-17 { color: #fff; }
    .dark-bg .text-size-medium-3 { color: rgba(255,255,255,0.8); }

    /* Benefits Grid Dark */
    .benefits-grid-dark {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 40px;
      margin-top: 60px;
      max-width: 1000px;
      margin-left: auto;
      margin-right: auto;
    }
    @media (max-width: 900px) {
      .benefits-grid-dark { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 600px) {
      .benefits-grid-dark { grid-template-columns: 1fr; }
    }

    .benefit-card-dark {
      text-align: left;
      background: rgba(255,255,255,0.03);
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: 16px;
      padding: 28px;
    }
    .benefit-icon-dark {
      width: 48px;
      height: 48px;
      background: rgba(255,255,255,0.08);
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
      color: #fff;
    }
    .benefit-icon-dark svg {
      width: 24px;
      height: 24px;
    }
    .benefit-card-dark h4 {
      font-size: 17px;
      font-weight: 600;
      color: #fff;
      margin-bottom: 10px;
    }
    .benefit-card-dark p {
      font-size: 14px;
      color: rgba(255,255,255,0.55);
      line-height: 1.6;
    }

    /* Features List */
    .features-list { list-style: none; padding: 0; margin: 24px 0 0; }
    .features-list li {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      padding: 14px 0;
      border-bottom: 1px solid #f3f4f6;
    }
    .features-list li:last-child { border-bottom: none; }
    .features-list .check-black {
      width: 22px;
      height: 22px;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      margin-top: 2px;
      color: #111;
    }
    .features-list .check-black svg { width: 20px; height: 20px; }
    .features-list li span { font-size: 15px; color: #374151; }

    /* FAQ Styles */
    .faq-container { max-width: 800px; margin: 48px auto 0; }
    .faq-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
    }
    @media (max-width: 768px) {
      .faq-grid { grid-template-columns: 1fr; }
    }
    .faq-column {
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    .faq-item-new {
      background: #fff;
      border: 1px solid #e5e5e5;
      border-radius: 16px;
      overflow: hidden;
      transition: border-color 0.2s ease;
    }
    .faq-item-new:hover {
      border-color: #d1d1d1;
    }
    .faq-item-new.active {
      border-color: #111;
    }
    .faq-question-new {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 22px 24px;
      cursor: pointer;
      font-size: 15px;
      font-weight: 500;
      color: #111;
      transition: color 0.2s ease;
    }
    .faq-question-new:hover {
      color: #333;
    }
    .faq-icon-new {
      width: 24px;
      height: 24px;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      color: #9ca3af;
      transition: transform 0.3s ease, color 0.2s ease;
    }
    .faq-item-new.active .faq-icon-new {
      transform: rotate(45deg);
      color: #111;
    }
    .faq-answer-new {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease;
    }
    .faq-item-new.active .faq-answer-new {
      max-height: 200px;
    }
    .faq-answer-new p {
      padding: 0 24px 22px;
      font-size: 14px;
      color: #6b7280;
      line-height: 1.7;
      margin: 0;
    }

    /* CTA Section */
    .cta-section-new {
      background: #fff;
      padding: 80px 0 100px;
    }
    .cta-card-dark {
      background: #141414;
      border-radius: 24px;
      padding: 100px 40px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }
    .cta-button-white {
      display: inline-block;
      background: #fff;
      color: #141414;
      padding: 16px 32px;
      border-radius: 100px;
      font-size: 15px;
      font-weight: 500;
      text-decoration: none;
      transition: all 0.2s ease;
    }
    .cta-button-white:hover {
      background: #f5f5f5;
      transform: translateY(-2px);
    }

    /* Section Header */
    .section-header { text-align: center; max-width: 700px; margin: 0 auto; }
    .section-header.left { text-align: left; max-width: none; }

    /* Logos section - match hero white */
    .logos_testimonials {
      background: #fff !important;
    }

    /* ==================== NEW CLEAN HERO ==================== */
    .new-hero {
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      position: relative;
      padding: 120px 24px 80px;
      overflow: hidden;
      background: #000;
      transition: background 0.8s ease-in-out;
    }
    .new-hero.hero-light {
      background: #fff;
    }
    .new-hero-particles {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0;
      overflow: hidden;
      opacity: 1;
      transition: opacity 0.8s ease-in-out;
    }
    .new-hero.hero-light .new-hero-particles {
      opacity: 0;
    }
    .new-hero-particle {
      position: absolute;
      background: rgba(255, 255, 255, 0.6);
      border-radius: 50%;
    }
    .new-hero-particle:nth-child(1) { left: 10%; top: 20%; width: 2px; height: 2px; animation: heroFloat1 20s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(2) { left: 20%; top: 80%; width: 3px; height: 3px; animation: heroFloat2 25s infinite; opacity: 0.7; }
    .new-hero-particle:nth-child(3) { left: 30%; top: 40%; width: 1px; height: 1px; animation: heroFloat3 18s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(4) { left: 40%; top: 60%; width: 2px; height: 2px; animation: heroFloat4 22s infinite; opacity: 0.6; }
    .new-hero-particle:nth-child(5) { left: 50%; top: 30%; width: 3px; height: 3px; animation: heroFloat1 28s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(6) { left: 60%; top: 70%; width: 1px; height: 1px; animation: heroFloat2 19s infinite; opacity: 0.6; }
    .new-hero-particle:nth-child(7) { left: 70%; top: 50%; width: 2px; height: 2px; animation: heroFloat3 24s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(8) { left: 80%; top: 25%; width: 2px; height: 2px; animation: heroFloat4 21s infinite; opacity: 0.7; }
    .new-hero-particle:nth-child(9) { left: 85%; top: 85%; width: 1px; height: 1px; animation: heroFloat1 26s infinite reverse; opacity: 0.5; }
    .new-hero-particle:nth-child(10) { left: 15%; top: 55%; width: 2px; height: 2px; animation: heroFloat2 23s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(11) { left: 25%; top: 15%; width: 3px; height: 3px; animation: heroFloat3 27s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(12) { left: 45%; top: 90%; width: 1px; height: 1px; animation: heroFloat4 17s infinite reverse; opacity: 0.7; }
    .new-hero-particle:nth-child(13) { left: 55%; top: 10%; width: 2px; height: 2px; animation: heroFloat1 22s infinite reverse; opacity: 0.5; }
    .new-hero-particle:nth-child(14) { left: 75%; top: 35%; width: 2px; height: 2px; animation: heroFloat2 29s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(15) { left: 90%; top: 65%; width: 1px; height: 1px; animation: heroFloat3 20s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(16) { left: 5%; top: 45%; width: 2px; height: 2px; animation: heroFloat4 25s infinite reverse; opacity: 0.5; }
    .new-hero-particle:nth-child(17) { left: 35%; top: 75%; width: 3px; height: 3px; animation: heroFloat1 18s infinite; opacity: 0.7; }
    .new-hero-particle:nth-child(18) { left: 65%; top: 5%; width: 1px; height: 1px; animation: heroFloat2 30s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(19) { left: 95%; top: 40%; width: 2px; height: 2px; animation: heroFloat3 21s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(20) { left: 8%; top: 95%; width: 2px; height: 2px; animation: heroFloat4 24s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(21) { left: 12%; top: 35%; width: 2px; height: 2px; animation: heroFloat1 19s infinite; opacity: 0.6; }
    .new-hero-particle:nth-child(22) { left: 22%; top: 65%; width: 1px; height: 1px; animation: heroFloat2 21s infinite reverse; opacity: 0.5; }
    .new-hero-particle:nth-child(23) { left: 32%; top: 12%; width: 3px; height: 3px; animation: heroFloat3 26s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(24) { left: 42%; top: 48%; width: 2px; height: 2px; animation: heroFloat4 23s infinite reverse; opacity: 0.7; }
    .new-hero-particle:nth-child(25) { left: 52%; top: 78%; width: 1px; height: 1px; animation: heroFloat1 17s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(26) { left: 62%; top: 22%; width: 2px; height: 2px; animation: heroFloat2 28s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(27) { left: 72%; top: 88%; width: 3px; height: 3px; animation: heroFloat3 20s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(28) { left: 82%; top: 42%; width: 1px; height: 1px; animation: heroFloat4 25s infinite reverse; opacity: 0.7; }
    .new-hero-particle:nth-child(29) { left: 92%; top: 8%; width: 2px; height: 2px; animation: heroFloat1 22s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(30) { left: 3%; top: 72%; width: 2px; height: 2px; animation: heroFloat2 19s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(31) { left: 18%; top: 28%; width: 1px; height: 1px; animation: heroFloat3 24s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(32) { left: 28%; top: 58%; width: 3px; height: 3px; animation: heroFloat4 27s infinite reverse; opacity: 0.7; }
    .new-hero-particle:nth-child(33) { left: 38%; top: 18%; width: 2px; height: 2px; animation: heroFloat1 21s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(34) { left: 48%; top: 42%; width: 1px; height: 1px; animation: heroFloat2 18s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(35) { left: 58%; top: 92%; width: 2px; height: 2px; animation: heroFloat3 29s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(36) { left: 68%; top: 15%; width: 3px; height: 3px; animation: heroFloat4 16s infinite reverse; opacity: 0.7; }
    .new-hero-particle:nth-child(37) { left: 78%; top: 68%; width: 1px; height: 1px; animation: heroFloat1 23s infinite; opacity: 0.5; }
    .new-hero-particle:nth-child(38) { left: 88%; top: 32%; width: 2px; height: 2px; animation: heroFloat2 26s infinite reverse; opacity: 0.6; }
    .new-hero-particle:nth-child(39) { left: 97%; top: 82%; width: 2px; height: 2px; animation: heroFloat3 18s infinite; opacity: 0.4; }
    .new-hero-particle:nth-child(40) { left: 7%; top: 8%; width: 1px; height: 1px; animation: heroFloat4 30s infinite reverse; opacity: 0.7; }

    .new-hero-content {
      max-width: 900px;
      text-align: center;
      position: relative;
      z-index: 2;
    }
    .new-hero-tag {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: 'Geist Mono', monospace;
      background: #2a2a2a;
      color: #fff;
      padding: 8px 20px;
      border-radius: 100px;
      font-size: 14px;
      font-weight: 400;
      margin-bottom: 24px;
      border: none;
      letter-spacing: -0.01em;
      transition: all 0.8s ease-in-out;
    }
    .new-hero.hero-light .new-hero-tag {
      background: #f5f5f5;
      color: #1a1a1a;
    }
    .new-hero-title {
      font-family: 'Geist', sans-serif;
      font-size: clamp(36px, 5vw, 64px);
      font-weight: 500;
      line-height: 1.1;
      letter-spacing: -0.02em;
      color: #fff;
      margin: 0 0 20px;
      transition: color 0.8s ease-in-out;
    }
    .new-hero.hero-light .new-hero-title {
      color: #000;
    }
    .new-hero-title .ai-badge {
      display: inline-block;
    }
    .new-hero-title .ai-badge span {
      background: linear-gradient(90deg, #cef17b 0%, #ffffff 25%, #a3e635 50%, #dcff79 75%, #cef17b 100%);
      background-size: 200% 200%;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      color: transparent;
      animation: aiGradientShift 4s ease infinite;
    }
    @keyframes aiGradientShift {
      0% { background-position: 0% 50%; }
      50% { background-position: 100% 50%; }
      100% { background-position: 0% 50%; }
    }
    /* When light mode, show as normal text */
    .new-hero.hero-light .new-hero-title .ai-badge {
      padding: 0;
      border-radius: 0;
      background: none;
      border: none;
      box-shadow: none;
    }
    .new-hero.hero-light .new-hero-title .ai-badge span {
      background: none;
      -webkit-background-clip: unset;
      background-clip: unset;
      -webkit-text-fill-color: #000;
      color: #000;
      animation: none;
    }
    .new-hero-title .lottie-star-new {
      display: inline-block;
      width: 80px;
      height: 80px;
      vertical-align: middle;
      margin-left: 8px;
    }
    .new-hero-subtitle {
      font-family: 'Inter', sans-serif;
      font-size: 18px;
      line-height: 1.6;
      color: rgba(255, 255, 255, 0.8);
      max-width: 600px;
      margin: 0 auto 32px;
      transition: color 0.8s ease-in-out;
    }
    .new-hero.hero-light .new-hero-subtitle {
      color: #637381;
    }
    .new-hero-subtitle strong {
      color: #fff;
      font-weight: 600;
      transition: color 0.8s ease-in-out;
    }
    .new-hero.hero-light .new-hero-subtitle strong {
      color: #000;
    }
    .new-hero-actions {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 16px;
      flex-wrap: wrap;
    }
    .new-hero-image-wrapper {
      position: relative;
      z-index: 2;
      width: 100%;
      max-width: 1070px;
      margin-top: 60px;
      perspective: 1000px;
    }
    .new-hero-image-wrapper img {
      width: 100%;
      height: auto;
      border-radius: 16px;
      box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
      transform: rotateX(25deg) scale(0.85);
      transform-origin: center bottom;
      transition: transform 0.1s ease-out, box-shadow 0.3s ease;
    }
    .new-hero-image-wrapper img.scroll-active {
      transform: rotateX(0deg) scale(1);
      box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.35);
    }
    .new-hero-image-wrapper.mobile {
      display: none;
    }
    /* Tablet */
    @media (max-width: 1024px) {
      .new-hero {
        padding: 120px 24px 80px;
      }
      .new-hero-title {
        font-size: clamp(32px, 5vw, 48px);
      }
      .new-hero-title .lottie-star-new {
        width: 56px;
        height: 56px;
      }
      .new-hero-image-wrapper {
        max-width: 90%;
      }
    }

    /* Mobile */
    @media (max-width: 768px) {
      .new-hero {
        padding: 100px 20px 60px;
        min-height: auto;
      }
      .new-hero-content {
        max-width: 100%;
      }
      .new-hero-tag {
        font-size: 12px;
        padding: 6px 14px;
      }
      .new-hero-title {
        font-size: 28px;
        line-height: 1.2;
      }
      .new-hero-title .lottie-star-new {
        width: 40px;
        height: 40px;
      }
      .new-hero-subtitle {
        font-size: 15px;
        margin-bottom: 24px;
      }
      .new-hero-actions {
        flex-direction: column;
        width: 100%;
        gap: 12px;
      }
      .new-hero-actions .gs-btn {
        width: 100%;
        justify-content: center;
      }
      .new-hero-image-wrapper:not(.mobile) {
        display: none;
      }
      .new-hero-image-wrapper.mobile {
        display: block;
        max-width: 280px;
        margin: 40px auto 0;
        perspective: none;
      }
      .new-hero-image-wrapper.mobile img {
        transform: none !important;
        box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.2);
      }
    }

    /* Small Mobile */
    @media (max-width: 480px) {
      .new-hero {
        padding: 90px 16px 50px;
      }
      .new-hero-title {
        font-size: 24px;
      }
      .new-hero-title .lottie-star-new {
        width: 32px;
        height: 32px;
      }
      .new-hero-subtitle {
        font-size: 14px;
      }
      .new-hero-image-wrapper.mobile {
        max-width: 240px;
      }
    }
  <link href="https://fonts.googleapis.com" rel="preconnect">
  <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin="anonymous">
  <script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js" type="text/javascript"></script>
  <script type="text/javascript">WebFont.load({  google: {    families: ["Varela Round:400","Inconsolata:400,700","Open Sans:300,300italic,400,400italic,600,600italic,700,700italic,800,800italic","Varela:400","Lato:100,100italic,300,300italic,400,400italic,700,700italic,900,900italic","Inter:100,200,300,regular,500,600,700,800,900","Russo One:regular","Lora:regular,500,600,700,italic,500italic,600italic,700italic"]  }});</script>
  <script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script>
  <link href="images/favicon.png" rel="shortcut icon" type="image/x-icon">
  <link href="images/webclip.png" rel="apple-touch-icon">
  <script src="https://www.google.com/recaptcha/api.js" type="text/javascript"></script><!--  ✅ Google Tag Manager  -->
  <script>
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-KR8W5CH');
</script>
  <!--  End Google Tag Manager  -->
  <!--  ✅ Google Ads - Seguimiento entre dominios  -->
  <script async="" src="https://www.googletagmanager.com/gtag/js?id=AW-7335855837"></script>
  <script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'AW-7335855837', {
    'linker': {
      'domains': ['gigstack.pro', 'app.gigstack.pro']
    }
  });
</script>
  <!--  ✅ Google Analytics 4 - GA4  -->
  <script async="" src="https://www.googletagmanager.com/gtag/js?id=G-XNEJ28KJGK"></script>
  <script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-XNEJ28KJGK', {
    'linker': {
      'domains': ['gigstack.pro', 'app.gigstack.pro']
    }
  });
</script>
  <!--  ✅ PostHog heatmap  -->
  <script>
    !function(t,e){var o,n,p,r;e.__SV||(window.posthog && window.posthog.__loaded)||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.crossOrigin="anonymous",p.async=!0,p.src=s.api_host.replace(".i.posthog.com","-assets.i.posthog.com")+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="init Dr Ur fi Lr zr ci Or jr capture Ai calculateEventProperties qr register register_once register_for_session unregister unregister_for_session Jr getFeatureFlag getFeatureFlagPayload isFeatureEnabled reloadFeatureFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSurveysLoaded onSessionId getSurveys getActiveMatchingSurveys renderSurvey displaySurvey cancelPendingSurvey canRenderSurvey canRenderSurveyAsync identify setPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException loadToolbar get_property getSessionProperty Gr Br createPersonProfile Vr Cr Kr opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing get_explicit_consent_status is_capturing clear_opt_in_out_capturing Hr debug O Wr getPageViewId captureTraceFeedback captureTraceMetric Rr".split(" "),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]);
    posthog.init('phc_rd0aAtXdBAomlJIQREuxMm6XZjVFrVNkfgCk8lPYe7S', {
        api_host: 'https://us.i.posthog.com',
        defaults: '2025-11-30',
        person_profiles: 'identified_only', // or 'always' to create profiles for anonymous users as well
    })
    posthog.register({ surface: 'landing', product: 'gigstack', environment: 'production' });
</script>
  <!--  End PostHog  -->
  <!-- A/B router: esta URL (/) SIRVE la variante 'main' con contenido y schema completos.
       Los bots de IA (sin JS) ven 'main' completo. Solo los humanos asignados a 'btest'
       se redirigen a /index-btest. Ver auditoría GEO 2026 (hallazgos #1 y #2). -->
  <script>
    (function() {
      var experimentId = 'landing_homepage_btest_2026_06';
      var storageKey = 'gigstack.' + experimentId + '.variant';
      var BTEST_PATH = '/index-btest';
      var redirected = false;

      function forcedVariant() {
        var params = new URLSearchParams(window.location.search);
        var forced = (params.get('ab') || params.get('variant') || '').toLowerCase();
        if (forced === 'a' || forced === 'control' || forced === 'main') return 'main';
        if (forced === 'b' || forced === 'variant' || forced === 'btest') return 'btest';
        return '';
      }
      function savedVariant() {
        try { var s = window.localStorage.getItem(storageKey); if (s === 'main' || s === 'btest') return s; } catch (e) {}
        return '';
      }
      function phVariant() {
        if (!window.posthog || !posthog.getFeatureFlag) return '';
        try {
          var flag = posthog.getFeatureFlag(experimentId);
          if (flag === true) return 'btest';
          if (flag === false) return 'main';
          if (flag === 'main' || flag === 'btest') return flag;
        } catch (e) {}
        return '';
      }
      function apply(variant, source) {
        if (redirected || (variant !== 'main' && variant !== 'btest')) return;
        try { window.localStorage.setItem(storageKey, variant); } catch (e) {}
        document.documentElement.setAttribute('data-landing-ab-variant', variant);
        if (window.posthog) {
          try {
            posthog.register({ landing_ab_test: experimentId, landing_ab_variant: variant });
            posthog.capture('landing_ab_assigned', {
              experiment_id: experimentId, variant: variant,
              assignment_source: source, forced: source === 'url', destination: variant === 'btest' ? BTEST_PATH : '/'
            });
          } catch (e) {}
        }
        if (variant === 'btest') {
          redirected = true;
          window.location.replace(BTEST_PATH + window.location.search + window.location.hash);
        }
        // 'main' => se queda en / (esta página YA es main)
      }

      // 1) Forzado por URL (?ab=b) — instantáneo
      var forced = forcedVariant();
      if (forced) { apply(forced, 'url'); return; }
      // 2) Visitante recurrente — instantáneo, sin parpadeo
      var saved = savedVariant();
      if (saved) { apply(saved, 'local_storage'); return; }
      // 3) Visitante nuevo — feature flag de PostHog, con fallback aleatorio
      if (window.posthog && posthog.onFeatureFlags) {
        try { posthog.onFeatureFlags(function() { var v = phVariant(); if (v) apply(v, 'posthog_feature_flag'); }); } catch (e) {}
      }
      window.setTimeout(function() {
        apply(phVariant() || (Math.random() < 0.5 ? 'main' : 'btest'),
              phVariant() ? 'posthog_feature_flag' : 'local_random');
      }, 700);
    })();
  </script>
  <!-- Cookies Thomas -->
  <script async="" type="text/javascript">
(function handleTouch() {
  const firstTouchUrl = (document.cookie.match(/(?:^|;)\s*firstTouchUrl=([^;]*)/) || [, null])[1];
  const lastTouchUrl = (document.cookie.match(/(?:^|;)\s*lastTouchUrl=([^;]*)/) || [, null])[1];
  function setTouchToCookie(prefix, expiresDays) {
    const touchUrl = window.location.href;
    const touchDate = new Date().toISOString();
    const touchReferrer = document.referrer;
    const touchExpires = new Date(Date.now() + expiresDays * 864e5); // 864e5 = 24*60*60*1000
    const cookieBase = `; expires=${touchExpires.toUTCString()}; path=/; domain=.gigstack.pro`;
    document.cookie = `${prefix}TouchUrl=${encodeURIComponent(touchUrl)}${cookieBase}`;
    document.cookie = `${prefix}TouchDate=${encodeURIComponent(touchDate)}${cookieBase}`;
    document.cookie = `${prefix}TouchReferrer=${encodeURIComponent(touchReferrer)}${cookieBase}`;
  }
  const isExternalReferrer = document.referrer !== '' && !document.referrer.includes('gigstack.pro');
  if (firstTouchUrl && lastTouchUrl && isExternalReferrer) {
    setTouchToCookie('last', 7);
  }
  if (firstTouchUrl && !lastTouchUrl && isExternalReferrer) {
    setTouchToCookie('last', 7);
  }
  if (!firstTouchUrl) {
    setTouchToCookie('first', 365);
  }
})();
</script>
  <!--  Leadsy.ai - Tag de tracking y generación de leads  -->
  <script id="vtag-ai-js" async="" src="https://r2.leadsy.ai/tag.js" data-pid="M4K8LRonsUEfjN55" data-version="062024"></script>
  <!--  SEO general  -->
  <meta name="keywords" content="facturación electrónica, CFDI, SAT, automatización financiera, conciliación, pagos, gigstack">
  <meta name="robots" content="index, follow">
  <!--  Funcionalities scroll  -->
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Swiper/9.0.5/swiper-bundle.css" integrity="sha512-CTWIgc35lLPcCl1OP7MNcrrES+jyBBvMEz8Cqx/v0hifPNjIpPsd/jUYTJ/41CYCrQdfuw7LopKaqqjXVLqejg==" crossorigin="anonymous" referrerpolicy="no-referrer">
  <script defer="" src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/9.0.5/swiper-bundle.min.js" integrity="sha512-cEcJcdNCHLm3YSMAwsI/NeHFqfgNQvO0C27zkPuYZbYjhKlS9+kqO5hZ9YltQ4GaTDpePDQ2SrEk8gHUVaqxig==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
  <script defer="" src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.4/gsap.min.js"></script>
  <script defer="" src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.4/ScrollTrigger.min.js"></script>
  <!--  🔍 SCHEMA.ORG - Información estructurada para SEO de gigstack  -->
  <!--  Schema.org para SEO – Landing Principal gigstack  -->
  <script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "gigstack",
  "url": "https://gigstack.pro/",
  "image": "https://i.postimg.cc/fbhbyNmP/Opengraph.png",
  "description": "Automatiza la facturación y cobranza de tus ventas en México con gigstack. Deja de facturar manualmente.",
  "applicationCategory": "AccountingApplication",
  "applicationSubCategory": "Invoicing, Reconciliation, Compliance, Collections",
  "operatingSystem": "Web-based",
  "browserRequirements": "Requires modern browser",
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "MXN",
    "url": "https://gigstack.pro/",
    "availability": "https://schema.org/InStock"
  },
  "publisher": {
    "@type": "Organization",
    "name": "gigstack",
    "url": "https://gigstack.pro",
    "logo": {
      "@type": "ImageObject",
      "url": "https://media.licdn.com/dms/image/v2/D4E0BAQEVAgUGq7maPg/company-logo_200_200/company-logo_200_200/0/1726706609297/gigstack_logo?e=2147483647&v=beta&t=wtIxDczkJy7YpDddLhKnQxV_4XF7edSqw3yB-3DKJu0"
    }
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "5",
    "reviewCount": "20"
  },
  "review": [
    {
      "@type": "Review",
      "reviewRating": {
        "@type": "Rating",
        "ratingValue": "5"
      },
      "author": {
        "@type": "Person",
        "name": "Juan Garoz"
      },
      "reviewBody": "Fue amor a primera vista. Estábamos buscando un software que nos ayudara a automatizar la emisión de facturas integradas con nuestro CRM y ERP, y Gigstack fue la solución perfecta."
    }
  ]
}
</script>

<!-- Schema Organization para GEO -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "@id": "https://gigstack.pro/#organization",
  "name": "gigstack",
  "url": "https://gigstack.pro",
  "logo": {
    "@type": "ImageObject",
    "url": "https://media.licdn.com/dms/image/v2/D4E0BAQEVAgUGq7maPg/company-logo_200_200/company-logo_200_200/0/1726706609297/gigstack_logo"
  },
  "description": "Plataforma de automatización de facturación electrónica CFDI y cobranza para empresas en México.",
  "foundingDate": "2021",
  "areaServed": {
    "@type": "Country",
    "name": "México"
  },
  "sameAs": [
    "https://www.linkedin.com/company/gigstack",
    "https://www.instagram.com/gigstack.mx",
    "https://x.com/gigstackpromx"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "contactType": "customer support",
    "email": "hola@gigstack.pro",
    "availableLanguage": ["Spanish", "English"]
  },
  "knowsAbout": [
    "Facturación electrónica CFDI",
    "Automatización fiscal México",
    "Integración Stripe facturación",
    "Conciliación SAT",
    "Complementos de pago"
  ],
  "founder": [
    { "@id": "https://gigstack.pro/#mariana-hernandez" },
    { "@id": "https://gigstack.pro/#santiago-carranca" },
    { "@id": "https://gigstack.pro/#gabriel-paredes" }
  ]
}
</script>

<!-- Schema HowTo para GEO - Cómo funciona gigstack -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "Cómo automatizar la facturación CFDI con gigstack",
  "description": "Guía paso a paso para configurar la facturación automática de CFDIs en México usando gigstack.",
  "totalTime": "PT5M",
  "step": [
    {
      "@type": "HowToStep",
      "position": 1,
      "name": "Conecta tu plataforma de pagos",
      "text": "Integra gigstack con tu procesador de pagos como Stripe, PayPal, Shopify, WooCommerce o Mercado Pago. La conexión toma solo segundos.",
      "url": "https://gigstack.pro/#how-it-works"
    },
    {
      "@type": "HowToStep",
      "position": 2,
      "name": "Configura tus reglas de facturación",
      "text": "Define qué datos fiscales usar, cuándo emitir la factura y cómo enviarla al cliente. Todo sin código.",
      "url": "https://gigstack.pro/#how-it-works"
    },
    {
      "@type": "HowToStep",
      "position": 3,
      "name": "Recibe un pago",
      "text": "Cuando un cliente realiza un pago en tu plataforma, gigstack lo detecta automáticamente.",
      "url": "https://gigstack.pro/#how-it-works"
    },
    {
      "@type": "HowToStep",
      "position": 4,
      "name": "CFDI emitido automáticamente",
      "text": "gigstack genera el CFDI timbrado, lo valida con el SAT y lo envía al cliente por correo. Todo en segundos.",
      "url": "https://gigstack.pro/#how-it-works"
    }
  ]
}
</script>

<!-- Schema Person - Fundadores de gigstack (E-E-A-T) -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "@id": "https://gigstack.pro/#mariana-hernandez",
  "name": "Mariana Hernández Barreto",
  "jobTitle": "Co-Founder",
  "description": "Co-Founder de gigstack. Forbes 30 under 30 (2025). Master in Business & Technology.",
  "worksFor": {
    "@id": "https://gigstack.pro/#organization"
  },
  "alumniOf": {
    "@type": "EducationalOrganization",
    "name": "Collective Academy"
  },
  "sameAs": [
    "https://www.linkedin.com/in/marianahbarreto/"
  ],
  "knowsAbout": [
    "Fintech",
    "Automatización fiscal",
    "Facturación electrónica CFDI",
    "Startups"
  ],
  "award": "Forbes 30 under 30 - 2025"
}
</script>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "@id": "https://gigstack.pro/#santiago-carranca",
  "name": "Santiago Carrancá",
  "jobTitle": "Founder",
  "description": "Founder de gigstack. Forbes 30 under 30. 500 LatAm alumni.",
  "worksFor": {
    "@id": "https://gigstack.pro/#organization"
  },
  "alumniOf": [
    {
      "@type": "EducationalOrganization",
      "name": "California State University San Marcos"
    },
    {
      "@type": "Organization",
      "name": "500 LatAm"
    }
  ],
  "sameAs": [
    "https://www.linkedin.com/in/scarranca/"
  ],
  "knowsAbout": [
    "Fintech",
    "Automatización financiera",
    "Facturación electrónica CFDI",
    "Startups"
  ],
  "award": "Forbes 30 under 30"
}
</script>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "@id": "https://gigstack.pro/#gabriel-paredes",
  "name": "Gabriel Paredes",
  "jobTitle": "Founder",
  "description": "Founder de gigstack. Johnson Cornell Tech MBA. 500 LatAm B17 alumni.",
  "worksFor": {
    "@id": "https://gigstack.pro/#organization"
  },
  "alumniOf": [
    {
      "@type": "EducationalOrganization",
      "name": "Cornell Tech - Johnson MBA"
    },
    {
      "@type": "Organization",
      "name": "500 LatAm B17"
    }
  ],
  "sameAs": [
    "https://www.linkedin.com/in/gparedesg/"
  ],
  "knowsAbout": [
    "Fintech",
    "Automatización fiscal",
    "Facturación electrónica CFDI",
    "Startups",
    "Product Management"
  ]
}
</script>

<!-- Modal Styles (Colombia Design) -->
  /* Hide old Webflow modal completely */
  .modal-2,
  #modal,
  div[role="dialog"][aria-labelledby="Popup Modal"],
  .modal-bg-2,
  .signup-form-block {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /* Modal Styles */
  body.modal-open .navigation-component {
    visibility: hidden;
  }
  .modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.4s;
  }
  .modal-overlay.active {
    opacity: 1;
    visibility: visible;
  }
  .modal-container {
    background: #fff;
    border-radius: 20px;
    padding: 36px;
    width: 90%;
    max-width: 480px;
    position: relative;
    transform: scale(0.9) translateY(20px);
    opacity: 0;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    margin: 40px 20px;
    box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25);
  }
  .modal-overlay.active .modal-container {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
  .modal-close {
    position: absolute;
    top: 20px;
    right: 20px;
    background: #f5f5f5;
    border: none;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
  }
  .modal-close:hover {
    background: #e5e5e5;
    transform: rotate(90deg);
  }
  .modal-close svg {
    width: 18px;
    height: 18px;
    color: #666;
  }
  .modal-content {
    text-align: center;
  }
  /* Phone input styles */
  .iti {
    width: 100%;
  }
  .iti__flag-container {
    border-right: 1px solid #e5e5e5;
  }
  .form-error {
    display: none;
    color: #ef4444;
    font-size: 13px;
    margin-top: 4px;
  }
  .form-group.error input {
    border-color: #ef4444;
  }
  .form-group.error .form-error {
    display: block;
  }
  .modal-title {
    font-family: 'Geist', sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 24px;
    line-height: 1.2;
  }
  .modal-form {
    text-align: left;
  }
  .form-group {
    margin-bottom: 20px;
  }
  .form-group label {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-bottom: 8px;
  }
  .form-group input {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    font-size: 15px;
    transition: all 0.2s ease;
    font-family: 'Inter', sans-serif;
  }
  .form-group input:focus {
    outline: none;
    border-color: #1a1a1a;
    box-shadow: 0 0 0 3px rgba(26,26,26,0.1);
  }
  .form-group input::placeholder {
    color: #aaa;
  }
  .modal-submit {
    width: 100%;
    margin-top: 8px;
    justify-content: center;
  }
  .modal-disclaimer {
    font-size: 12px;
    color: #999;
    margin: 20px 0 0;
    line-height: 1.5;
  }

  /* Success State */
  .modal-success {
    display: none;
    text-align: center;
    padding: 20px 0;
  }
  .modal-success.active {
    display: block;
    animation: success-appear 0.5s ease forwards;
  }
  @keyframes success-appear {
    0% { opacity: 0; transform: scale(0.9); }
    100% { opacity: 1; transform: scale(1); }
  }
  .modal-content.hidden {
    display: none;
  }
  .success-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 24px;
    background: #10b981;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .success-icon svg {
    width: 32px;
    height: 32px;
    color: #fff;
  }
  .modal-subtitle {
    color: #666;
    font-size: 15px;
    line-height: 1.6;
    margin: 12px 0 24px;
  }

  /* reCAPTCHA Styles */
  .recaptcha-container {
    display: flex;
    justify-content: center;
    margin: 20px 0;
  }
