GlowQueen: Header Hero para SPA & Beauty - CSS Avanzado

GlowQueen: Header Hero para SPA & Beauty - CSS Avanzado

Visión general

GlowQueen es un pequeño proyecto de maquetación web que forma parte del módulo de CSS Experto del Máster en Desarrollo Web Full Stack. El objetivo era replicar con la máxima fidelidad posible el header-hero de una página web para un negocio de SPA (Salud y Belleza) a partir de un diseño proporcionado en Figma.

Aunque los requisitos de la tarea solicitaban únicamente un diseño estático no responsive, decidí ir más allá e implementar una solución completamente responsive con arquitectura SASS modular. Esta decisión me permitió profundizar en técnicas avanzadas de organización CSS, sistemas de capas superpuestas y metodologías como BEM, creando un componente profesional y escalable que mantiene su integridad visual en todos los dispositivos.


El Desafío Técnico

El diseño presentaba varios retos interesantes que requerían un enfoque cuidadoso:

Sistema de Capas Superpuestas

El diseño incluía tres capas de fondo superpuestas (beige, verde y blanco) además de una imagen decorativa de flor de loto y la fotografía principal de la modelo. Gestionar correctamente el z-index y el posicionamiento absoluto manteniendo la flexibilidad responsive fue uno de los mayores desafíos.

Diseño Adaptativo Complejo

Las tarjetas testimoniales tenían posiciones absolutas con transformaciones específicas en desktop (transform: translateX(130px) translateY(180px)) que debían transformarse en un flujo natural en móvil. Esto requería una estrategia de media queries cuidadosamente planificada.

Componentes Visualmente Ricos

El diseño incluía:

  • Grid de características con iconos SVG circulares
  • Tarjetas testimoniales con efecto blur y sombras
  • Botones con estados hover personalizados
  • Navegación compleja con iconos y divisores

Solución Implementada

Arquitectura SASS Modular

Opté por una estructura de archivos SASS completamente modular que separa las responsabilidades:

scss/
├── main.scss                # Archivo principal (importaciones)
├── _variables.scss          # Variables globales (colores, breakpoints, sombras)
├── _mixins.scss             # Mixins reutilizables (flex-center, respond-to, button-base)
├── _base.scss               # Estilos base y reset
├── _layout.scss             # Estructura de página y capas de fondo
├── _navigation.scss         # Estilos de navegación
├── _hero.scss               # Hero section y feature grid
├── _testimonials.scss       # Tarjetas testimoniales
└── _responsive.scss         # Todos los media queries

Esta organización permite:

  • Mantenibilidad: Cada componente tiene su propio archivo
  • Reutilización: Variables y mixins centralizados
  • Escalabilidad: Fácil añadir nuevos componentes

Sistema de Variables Robusto

// _variables.scss
$primary-dark: #264065;
$primary-green: #A9D6CB;
$background-beige: #FAF8F5;
$breakpoint-xl: 1400px;
$breakpoint-lg: 992px;
$shadow-card: 0 18px 30px -12px rgba(0,0,0,0.15);

Mixins Inteligentes

// _mixins.scss
@mixin respond-to($breakpoint) {
    @if $breakpoint == sm {
        @media (max-width: $breakpoint-sm) { @content; }
    } @else if $breakpoint == lg {
        @media (max-width: $breakpoint-lg) { @content; }
    } @else if $breakpoint == xl {
        @media (max-width: $breakpoint-xl) { @content; }
    }
}

Estrategia Responsive

Implementé 4 breakpoints clave:

  • 1920px+: Diseño fijo con ancho de 1920x1080 (fiel al diseño original)
  • 1400px: Transición a layout fluido, testimonios reposicionados
  • 992px: Mobile-first, capas de fondo ocultas, testimonios apilados
  • 576px: Ajustes para móviles pequeños (tipografía reducida, botones apilados)

Gestión de Capas

// Sistema de z-index organizado
.bg-beige { z-index: 1; }
.bg-green { z-index: 1; }
.bg-white-bottom { z-index: 2; }
.flower-svg-bg { z-index: 5; }
.main-content { z-index: 10; }
.testimonial-card.card1 { z-index: 30; }

Tecnologías Implementadas

Frontend

  • HTML5: Estructura semántica con header, nav, section y article implícitos
  • CSS3 Avanzado: Flexbox, Grid, posicionamiento absoluto, backdrop-filter
  • SASS/SCSS: Arquitectura modular, variables, mixins, anidamiento

Herramientas de Diseño

  • Figma: Análisis y extracción de medidas, colores y tipografías
  • SVG Optimizados: Todos los iconos en formato vectorial

Metodologías

  • BEM: Nomenclatura consistente de clases
  • Arquitectura CSS: Separación de concerns
  • Mobile First: Aunque el diseño era desktop-first, apliqué principios mobile-first en la transición

Características Principales

  • Fidelidad Pixel-Perfect: Recreación exacta del diseño Figma
  • Arquitectura SASS Modular: 7 archivos parciales bien organizados
  • Sistema de Capas Complejo: 3 fondos superpuestos + imagen decorativa
  • Diseño Completamente Responsive: 4 breakpoints para todos los dispositivos
  • Componentes Reutilizables: Sistema de diseño coherente
  • Iconos SVG: Todos los iconos en formato vectorial optimizado
  • Semántica HTML: Estructura correcta y accesible
  • Estados Hover: Todos los elementos interactivos tienen feedback visual
  • Sistema de Variables: Colores, tipografías, sombras y breakpoints centralizados
  • Mixins Eficientes: Código DRY y mantenible

Enlaces


Conclusión

GlowQueen representa mi enfoque hacia el desarrollo CSS profesional: ir más allá de los requisitos mínimos para crear soluciones robustas, mantenibles y escalables. Aunque la tarea solo pedía un diseño estático, la implementación de SASS, arquitectura modular y responsive design demuestra mi compromiso con las buenas prácticas y la calidad del código.

Este proyecto, aunque pequeño en alcance, incorpora principios fundamentales que aplico en desarrollos más complejos: organización modular, sistemas de diseño coherentes, atención al detalle en la implementación visual y una mentalidad de mejora continua. Es la base sobre la que construyo proyectos full-stack más ambiciosos como AnGoTest.

Logotipo Footer - Jaterli
© 2026 Jaime TL ⚡️
Desarrollado con Astro y con amor ❤️