feat(v3): rediseño con cloud dividers, animaciones scroll reveal, galería stock, página /servicios con 9 planes, 404 gracioso con robot, planos dark mode con todos los planes

- 9 planes de hosting con tabla completa de Mauri (USD/año)
- /servicios muestra los 3 servicios a medida + 9 planes categorizados
- /planes: 3 destacados + grilla con los 6 restantes
- 404 con robot SVG animado tomando mate (pronet.uy + peugeot style)
- Cloud dividers SVG entre secciones de la home
- Scroll reveal animations (.reveal + .stagger con IntersectionObserver)
- Galería de imágenes stock (datacenters, cables, código) en AVIF + WebP + JPG
- Sección de testimonios con placeholder honesto (Working on it)
- Back-to-top arreglado: ahora usa color naranja + icono blanco, visible en ambos temas
- WorldMap con animación SVG de 4 países
- Toggle light/dark funcional con anti-flash script
- Footer siempre dark con Maldonado, Uruguay
- i18n es/en con toggle y contenido bilingüe

Tech: Astro 5 + Tailwind v4 + Keystatic + Gitea + lftp
This commit is contained in:
Mauri
2026-06-08 23:27:55 -03:00
parent 393f6b0dc3
commit 79fc763025
38 changed files with 1069 additions and 113 deletions
+20
View File
@@ -3,8 +3,12 @@ import BaseLayout from '@/layouts/BaseLayout.astro';
import Hero from '@/components/Hero.astro';
import StatsSection from '@/components/StatsSection.astro';
import DifferenceCards from '@/components/DifferenceCards.astro';
import CloudDivider from '@/components/CloudDivider.astro';
import ServicesSection from '@/components/ServicesSection.astro';
import ProcessSteps from '@/components/ProcessSteps.astro';
import GalleryMosaic from '@/components/GalleryMosaic.astro';
import Testimonials from '@/components/Testimonials.astro';
import FAQAccordion from '@/components/FaqSection.astro';
import CtaFinal from '@/components/CtaFinal.astro';
import { getLangFromUrl, useTranslations } from '@/i18n/utils';
@@ -22,9 +26,25 @@ const description = lang === 'en'
lang={lang}
>
<Hero t={t} whatsappUrl={whatsappUrl} />
<CloudDivider fillClass="fill-hds-bg-soft" />
<StatsSection t={t} />
<DifferenceCards t={t} />
<CloudDivider fillClass="fill-hds-bg" flip={true} />
<ServicesSection t={t} lang={lang} />
<CloudDivider fillClass="fill-hds-bg-soft" />
<ProcessSteps t={t} />
<GalleryMosaic lang={lang} />
<Testimonials lang={lang} />
<FAQAccordion lang={lang} />
<CtaFinal t={t} whatsappUrl={whatsappUrl} />
</BaseLayout>