/* eslint-disable react/prop-types */ /** * FichaHero · Hero de la ficha individual de un distrito. * * - Imagen full-bleed del distrito con overlay navy * - Breadcrumb: NUESTRO TRABAJO / DISTRITOS / [Nombre] * - Tags pill (TIPOS) + estado * - Title grande + ubicación * - Stats inline: año, región, estado */ const { useState: uS_FH, useEffect: uE_FH } = React; function FichaHero({ d }) { const [loaded, setLoaded] = uS_FH(false); uE_FH(() => { const t = setTimeout(() => setLoaded(true), 60); return () => clearTimeout(t); }, []); if (!d) return null; return (
); } const fhStyles = { section: { position: 'relative', display: 'flex', flexDirection: 'column', justifyContent: 'flex-end', minHeight: '78vh', paddingTop: 160, paddingBottom: 80, overflow: 'hidden', background: 'var(--color-navy-deep)', color: '#fff', }, imgWrap: { position: 'absolute', inset: 0 }, bottomGradient: { position: 'absolute', left: 0, right: 0, bottom: 0, /* Gradient extendido que cubre toda la zona del texto */ height: '80%', background: 'linear-gradient(180deg, transparent 0%, rgba(15,27,35,0.30) 35%, rgba(15,27,35,0.70) 65%, rgba(15,27,35,0.95) 100%)', zIndex: 1, pointerEvents: 'none', }, inner: { position: 'relative', zIndex: 2 }, crumbRow: { display: 'flex', alignItems: 'center', flexWrap: 'wrap', gap: 12, marginBottom: 24, fontSize: 11, fontWeight: 700, letterSpacing: '0.18em', textTransform: 'uppercase', textShadow: '0 1px 4px rgba(0,0,0,0.5)', }, crumbLink: { color: 'rgba(255,255,255,0.85)', textDecoration: 'none', borderBottom: '1px solid transparent', transition: 'color 200ms, border-color 200ms' }, crumbSep: { color: 'rgba(255,255,255,0.5)' }, crumbHere: { color: '#fff' }, chipsRow: { display: 'flex', flexWrap: 'wrap', alignItems: 'center', gap: 8, marginBottom: 24, }, chipCobre: { backgroundImage: 'url("../home/assets/textures/cobre-patinado.svg")', backgroundSize: 'cover', color: '#fff', fontSize: 11, fontWeight: 700, letterSpacing: '0.16em', textTransform: 'uppercase', padding: '5px 13px', borderRadius: 2, boxShadow: '0 2px 8px rgba(0,0,0,0.25)', }, chipEstado: { background: 'rgba(15,27,35,0.40)', border: '1px solid rgba(255,255,255,0.42)', color: '#fff', fontSize: 11, fontWeight: 600, letterSpacing: '0.12em', textTransform: 'uppercase', padding: '4px 12px', borderRadius: 2, backdropFilter: 'blur(6px)', WebkitBackdropFilter: 'blur(6px)', }, title: { margin: 0, fontWeight: 800, fontSize: 'clamp(28px, 6.5vw, 96px)', lineHeight: 1.02, color: '#fff', letterSpacing: '-0.015em', maxWidth: 1100, textWrap: 'balance', textShadow: '0 2px 24px rgba(0,0,0,0.4), 0 1px 4px rgba(0,0,0,0.3)', }, location: { margin: '20px 0 0', display: 'inline-flex', alignItems: 'center', gap: 10, fontSize: 'clamp(15px, 1.5vw, 18px)', color: '#fff', textShadow: '0 1px 8px rgba(0,0,0,0.6), 0 1px 2px rgba(0,0,0,0.4)', fontWeight: 700, }, statsRow: { marginTop: 40, display: 'flex', flexWrap: 'wrap', alignItems: 'center', gap: 24, }, stat: { display: 'flex', flexDirection: 'column', gap: 6 }, statLabel: { fontSize: 11, fontWeight: 700, letterSpacing: '0.18em', color: 'rgba(255,255,255,0.85)', textTransform: 'uppercase', textShadow: '0 1px 4px rgba(0,0,0,0.5)', }, statValue: { fontSize: 22, fontWeight: 800, color: '#fff', letterSpacing: '-0.005em', textShadow: '0 1px 8px rgba(0,0,0,0.5)', }, statDivider: { width: 1, height: 36, background: 'rgba(255,255,255,0.35)' }, }; const fhMQ = document.createElement('style'); fhMQ.textContent = ` section[data-screen-label="01 Ficha Hero"] a:hover { color: #fff !important; border-bottom-color: rgba(255,255,255,0.4) !important; } `; document.head.appendChild(fhMQ); window.FichaHero = FichaHero;