# Accessibility Statement Page Audit & Implementation Notes
## Project: Kevron Suites and Apartments
## Domain: https://kevronapartments.com
## Location: Adeniyi Jones, Ikeja, Lagos, Nigeria

---

### 1. Pre-Development Audit Findings

* **Existing Routes/Controllers**: No current routes or controllers exist for `/accessibility-statement` or `/accessibility`. The route files have zero references to accessibility pages.
* **Existing Models/Migrations**: No migration or Eloquent model exists for accessibility statement configurations, feedback, issue tracking, or property profiles. The latest migration in the database is safety & emergency.
* **Global Header/Footer**: The dynamic layout is configured in `resources/views/layouts/app.blade.php`. An Accessibility Statement link or footer item is missing and needs to be registered.
* **SEO & Metadata**: Tables `seo_metadata`, `schema_metadata`, and `audit_logs` are available in the DB and can be integrated into the new Accessibility Statement views.
* **Branding Guidelines**: High-fidelity Marcellus luxury serif headings capped at `1.8rem` for `h1` and less than `1.625rem` for others. Inter font for body text at `0.875rem` maximum size. All primary components (badges, indicators, forms) must adhere to the luxury palette (#2B3192, #1FADEA, #D6A84F, #080D2B). Buttons must use `50px` rounded corners, cards use `0.1rem` card radii with subtle HSL-inspired outline shadows.
* **Reduced Motion Query**: A CSS prefers-reduced-motion media query is already configured in the design rules but can be toggled dynamically via application settings / accessibility options.

---

### 2. Database Schema Strategy

We will establish a dedicated migration creating the following tables to manage statement content, issues, audits, feedback, and support:
1. `accessibility_statements`: Dynamic statement headers, status, effective dates, versions.
2. `accessibility_statement_sections`: Custom HTML safety/compliance statement clauses.
3. `accessibility_statement_versions`: Audit tracking for compliance statement modifications.
4. `accessibility_statuses`: Lookup lookup reference of state indicators.
5. `accessibility_feedback`: User-submitted access barriers, devices, and attachments.
6. `accessibility_issues`: Management issue-tracker for WCAG failures.
7. `accessibility_audits` & `accessibility_audit_findings`: HSE / Dev audit records.
8. `accessibility_remediation_tasks`: Developer tasks with due dates.
9. `property_accessibility_profiles`: Location-specific entrance, lift, door-width, and transit details.
10. `accessibility_support_requests`: B2C check-in/booking accessibility requirements.
11. `assistive_technology_tests`: JAWS, NVDA, VoiceOver, keyboard verification logs.
12. `media_accessibility_records`: Alt-text, captioning, and video transcript logs.
13. `document_accessibility_records`: PDF invoices, receipts, and manual tag audits.
14. `motion_accessibility_settings`: Fallbacks, Three.js fallback controls, GSAP disabling variables.
15. `accessibility_widget_settings`: Font resize, contrast switcher state values.

---

### 3. Front-End UX Architecture

* **Layout Structure**: 
  - Alternate backgrounds between Soft Ice Blue (`#F4F8FF`) and Cloud White (`#FFFFFF`).
  - Left-hand sticky navigation Table of Contents using Alpine.js scroll spy.
  - Hero Section with Champage Gold and Midnight Navy highlights.
  - Active accessibility widget trigger and reduced-motion fallback options.
  - Interactive feedback form with AJAX processing.
  - Accessibility FAQ accordion with Alpine.js collapse animations.
  - Printable layout using print stylesheets, hiding sidebars and buttons.

---

### 4. Admin Governance & Secure Screenshot Downloads

* **Private Storage Isolation**: Feedback screenshots are uploaded securely and stored in the private `secure/accessibility/feedback` directory inside `storage/app`.
* **Authenticated Access Only**: Direct file access to screenshots is fully protected by a custom Laravel controller action (`downloadFeedbackScreenshot`) and route, accessible only to authenticated administrators and corporate staff.
* **Audit-Logged Document Access**: Every screenshot download or viewing action records a dedicated system transaction trail inside the `AuditLog` database table.
* **Filament Operations**: The `AccessibilityFeedbackResource` admin panel dynamically injects a secure download link inside the Feedback details form, alongside a responsive 'Download Evidence' column action within the admin lists.

