mnqeventos.es (and the bare mnqcatering.com apex) were serving the same
content as www.mnqcatering.com with no redirect, causing duplicate
content. Add middleware that 301-redirects any request whose host isn't
exactly www.mnqcatering.com to the canonical domain, preserving path and
query.
Still needs verification at the reverse-proxy/hosting layer, since host
detection here depends on how the Host header arrives in production.
- add PostalAddress and areaServed (Malaga city + province) to the
sitewide JSON-LD structured data
- show the same address as visible NAP text in the footer and on the
contact page, matching the schema exactly
- add address and area served to llms.txt for AEO/AI-crawler readability
- astro 5.18.1 -> 7.3.2 (fixes critical XSS/RCE advisory GHSA-j687-52p2-xcff)
- @astrojs/node 9.5.5 -> 11.1.5
- typescript pinned to 6.0.3 (astro 7's requirement is satisfied by astro
itself; typescript 7.x is an incompatible rewrite that breaks
@astrojs/check, so staying on the 5||6 range it still supports)
- Dockerfile and nixpacks.toml bumped from node:20 to node:22, required by
astro v6+ (minimum supported node is 22.12.0)
The "Cenas Privadas" card used hero-nosotros-gen.webp, an AI-generated
image with garbled embroidery text on the chef's jacket. Swap it for
a real photo of the MNQ kitchen team.
The two-column contact grid lost its second column when the form was
removed. Restore the layout with a real branded photo (dessert plate
with an embroidered MNQ napkin) next to the contact info instead of
leaving empty space.
Drop the non-functional contact form (no backend wired up) and keep
the WhatsApp/phone contact path as the single call to action. Also
point site config, robots.txt, llms.txt, and every on-page domain
reference at www.mnqcatering.com ahead of the DNS cutover.
Swap the lead team photo with the service/montaje photo (and give
the displaced group photo a spot in the support grid instead of
dropping it). Also remove the always-visible WhatsApp pill from the
desktop header nav since it duplicated the floating WhatsApp CTA and
the mobile drawer's own WhatsApp button.
Replace the hero image with a real event photo, and remove the third
support photo from the team gallery. Also drop the now-orphaned
last-child full-span rule so the remaining two photos sit as equal
side-by-side columns instead of one stretching full width.
The desktop breakpoint forced team-gallery-visuals into a 2-column
grid, squeezing the 3-photo support grid into ~0.9fr and shrinking
each photo to ~45px. Removing the override lets the lead photo and
support grid stack full-width as intended.
- Sistema visual nuevo: tokens CSS extendidos, tipografía Noto Serif + Inter, design system completo
- Navbar con logo generado por IA (☥MNQ ★★★★★), favicon ojo de Ra, WhatsApp CTA
- Páginas rediseñadas: Home, Bodas, Corporativo, Familiares, Nosotros, Contacto
- Imágenes premium: fotografías reales + imágenes generadas con Gemini AI via nanobanana
- Logos con fondo transparente generados y procesados
- WhatsApp actualizado a +34 678 17 15 13