/* Estilos de index.php */

.hero-title {
              font-size: clamp(1.75rem, 2.2vw + 1rem, 3.4rem) !important;
              line-height: 1.1;
              word-break: break-word;
              overflow-wrap: break-word;
            }

            .btn-primary {
              display: inline-flex;
              align-items: center;
              gap: 0.5rem;
              padding: 0.90rem 2rem;
              border-radius: 50px;
              border: none;
              background: linear-gradient(135deg, #ff4800ff, #ff5e00ff);
              color: #fff;
              font-weight: 600;
              font-size: 0.95rem;
              text-decoration: none;
              transition: all 0.3s ease;
              cursor: pointer;
              font-family: inherit;
            }
            .btn-primary:hover {
              transform: translateY(-2px);
              box-shadow: 0 8px 25px rgba(196, 194, 194, 0.31);
            }
            .btn-secondary {
              display: inline-flex;
              align-items: center;
              gap: 0.5rem;
              padding: 0.60rem 3rem;
              border-radius: 50px;
              border: 1px solid rgba(0, 0, 0, 0.2);
              background: transparent;
              color: #000000ff;
              font-weight: 700;
              font-size: 0.95rem;
              text-decoration: none;
              transition: all 0.3s ease;
              cursor: pointer;
              font-family: inherit;
            }
            .btn-secondary:hover {
              background: rgba(0,0,0,0.05);
              border-color: rgba(0,0,0,0.4);
            }

            .carousel-wrapper {
              overflow: visible;
            }

            @media (max-width: 960px) {
              .hero-grid {
                grid-template-columns: 1fr !important;
                gap: 1.5rem !important;
                text-align: center !important;
              }
              .hero-grid > div:first-child {
                text-align: center !important;
              }
              .hero-grid .btn-container {
                justify-content: center !important;
              }
              .hero-grid > div:first-child > div:last-child {
                justify-items: center !important;
                text-align: center !important;
              }
              .main-carousel-container {
                width: 100% !important;
                left: 0 !important;
                height: 300px !important;
              }
              .carousel-wrapper {
                overflow: hidden;
              }
              #Hero {
                padding-top: 7rem !important;
                padding-bottom: 3rem !important;
              }
            }

            @media (max-width: 600px) {
              .hero-title {
                font-size: 1.65rem !important;
                line-height: 1.15;
                text-align: center !important;
              }
              .main-carousel-container {
                height: 220px !important;
                border-radius: 16px !important;
              }
              #Hero {
                padding-top: 6.5rem !important;
                padding-bottom: 2.5rem !important;
              }
              .hero-grid .btn-container {
                justify-content: center !important;
                width: 100% !important;
              }
              .btn-primary {
                padding: 1rem 2rem !important;
                font-size: 1.05rem !important;
                margin: 0 auto !important;
              }
            }

            @media (max-width: 400px) {
              .main-carousel-container {
                height: 190px !important;
              }
              .hero-title {
                font-size: 1.5rem !important;
              }
              .btn-primary {
                padding: 0.95rem 1.75rem !important;
                font-size: 1rem !important;
              }
            }

@media (max-width: 960px) {
              .system-title {
                font-size: 2.2rem !important;
                margin-bottom: 2.5rem !important;
              }
            }
            @media (max-width: 600px) {
              .system-title {
                font-size: 1.7rem !important;
                margin-bottom: 2rem !important;
              }
            }

@media (max-width: 768px) {
              .porque-banner-wrapper {
                padding: 0 !important;
              }
              .porque-banner-inner {
                max-width: 100% !important;
                border-radius: 0 !important;
                box-shadow: none !important;
              }
              .banner-porque {
                border-radius: 0 !important;
              }
            }

@media (max-width: 1024px) {
              .carrusel-ventana {
                --item-width: 85vw !important;
              }
            }
            @media (max-width: 768px) {
              .carrusel-ventana {
                --item-width: 90vw !important;
              }
              .carrusel-btn {
                width: 36px !important;
                height: 36px !important;
              }
            }

@media (max-width: 900px) {
              .clients-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
                gap: 0.75rem !important;
              }
            }
            @media (max-width: 500px) {
              .clients-grid {
                display: flex !important;
                justify-content: center !important;
                align-items: center !important;
                gap: 0 !important;
              }
              .clients-grid > a {
                height: 130px !important;
                min-height: 130px !important;
                width: 100% !important;
                max-width: 300px !important;
                margin: 0 auto !important;
              }
              .clients-grid img {
                max-height: 95px !important;
              }
              .clients-dots {
                gap: 0.25rem !important;
              }
              .clients-dots button {
                width: 6px !important;
                height: 6px !important;
                min-width: 6px !important;
              }
              .clients-dots button[aria-current="true"] {
                width: 14px !important;
              }
            }



@keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
          }

          @media (max-width: 1024px) {
            .hero-grid {
              grid-template-columns: 1fr !important;
              gap: 2rem !important;
              text-align: left;
            }
            .hero-grid > div:first-child h1 {
              font-size: clamp(1.75rem, 3vw, 2.6rem) !important;
            }
            .hero-grid .btn-container {
              justify-content: flex-start !important;
            }
            .main-carousel-container {
              width: 100% !important;
              left: 0 !important;
            }
            .stats-grid {
              grid-template-columns: repeat(3, 1fr) !important;
            }
            .featured-grid {
              grid-template-columns: 1fr !important;
              gap: 2rem !important;
            }
          }

          @media (max-width: 768px) {
            .stats-grid {
              grid-template-columns: 1fr 1fr !important;
              gap: 1.5rem !important;
            }
            .clients-grid {
              grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
              gap: 0.75rem !important;
            }
            .news-grid {
              grid-template-columns: 1fr !important;
            }
            .hidden.md\:block {
              display: none !important;
            }
          }

          @media (max-width: 480px) {
            .stats-grid {
              grid-template-columns: 1fr !important;
            }
          }
