- Hide Apache version (ServerTokens Prod)
- Add Permissions-Policy header
- Remove deprecated X-XSS-Protection
- Consolidate security headers to .htaccess only (remove duplicates from PHP)
- Deploy free tools: robots-analyzer, data-converter
- Deploy tools announcement blog post
- Update sitemap with new tools and blog post
- Add /services → /project-types 301 redirects in .htaccess
- Remove .php extensions from all user-facing links across all pages
- Rewrite homepage hero with benefit-focused H1, subtitle, CTAs, and stats
- Add trust signals section below hero with badges
- Rewrite service cards with benefit-focused copy
- Update FAQ schema to match actual page FAQ content (6 questions)
- Restructure quote form from 5-step to 3-step wizard with sidebar
- Update about page mission statement and CTA copy
- Update project-types page title, H1, and add Organization schema
- Add trust signals and quote layout CSS styles
- Clean sitemap: remove .php extensions, remove blog/search, update dates
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix color contrast: change #179e83 to #148069 for WCAG AA compliance
- Add ARIA attributes to mobile nav toggle (aria-expanded, aria-controls)
- Implement focus trap on mobile menu with Escape key support
- Add aria-hidden to decorative hero SVG
- Add ARIA validation to contact form (aria-invalid, aria-describedby)
- Fix touch target sizes (notification close button 48x48px)
- Fix form session expiration by relaxing timestamp validation
- Add cache busting (v1.1.0) to JS/CSS files
- Update service worker cache version to force refresh
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add leadership team section to about.php with 4 team members
- Add visible FAQ section to homepage with accordion functionality
- Fix broken blog category link (legal-&-compliance → compliance)
- Add Twitter Card and og:image meta tags to data-cleaning.php and quote.php
- Add social links to 5 pages missing them (data-cleaning, quote, case-studies, blog/search, faq-enhanced)
- Standardize LinkedIn URLs across 24 blog files (remove www prefix)
- Fix social media placeholder links across 8 pages
- Optimize meta descriptions on 3 service pages (under 160 chars)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The minified JS was out of sync with the source file, missing the
grecaptcha integration, XMLHttpRequest header, and interaction token
that the server-side handler requires.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
SEO Improvements:
- Add Twitter/OG meta tags to gdpr-compliance.php and terms-of-service.php
- Add author bios with E-E-A-T signals to all blog articles
- Add breadcrumb schema markup to key pages
- Create new service pages: price-monitoring.php, competitive-intelligence.php
- Create location pages: london.php, manchester.php, birmingham.php
- Update sitemap.xml with new pages
UI/CSS Improvements:
- Move testimonials section from inline styles to CSS classes
- Standardize hero gradients to #144784 → #179e83 across all pages
- Unify card border styles to border-left: 4px solid #179e83
- Fix CTA gradient direction consistency on location pages
- Standardize breadcrumb colors to #144784
- Replace all purple accent colors (#667eea, #764ba2) with brand colors
- Add CSS variables for brand consistency in main.css
Code Cleanup:
- Delete 6 emergency CSS fix files (button-emergency-fix.css, etc.)
- Remove related-articles-fix.css references from blog articles
- Consolidate styles into main.css
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Move SVG path definitions to defs section for proper animation references
- Add staggered data-pulse animations to data lines with sequential delays
- Fix animateMotion path references for moving particles
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix JavaScript syntax errors preventing form submission
- Update reCAPTCHA configuration with working test keys
- Restore comprehensive spam protection (reCAPTCHA v3, AJAX validation, rate limiting)
- Switch from minified to source JS file to apply critical fixes
- Add missing security headers and form validation
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add region1.google-analytics.com to CSP headers in index.php and blog articles
- Fix manifest.json icon purpose warning by changing to "any"
- Add mobile-web-app-capable meta tag for mobile compatibility
- Revert CSS files to stable version from commit 5558f53 to resolve hero section animation issues
- Remove spam protection code that was causing layout problems
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed tech-tag buttons from gradient background to solid #179e83 color
to match the cta-button style. Updated hover effects for consistency.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>