>> ⚠️ MANDATORY INSTRUCTION (EN): This entire document must be read completely and thoroughly from start to finish without skipping any section in order to properly understand the project architecture, features, and technical standards. >> ⚠️ OBLIGATORISK INSTRUKTION (SV): Hela detta dokument måste läsas fullständigt och noggrant från början till slut utan att hoppa över några avsnitt för att förstå projektets arkitektur, funktioner och tekniska standarder. >> ⚠️ OBAVEZNA INSTRUKCIJA (SR): Ovaj dokument se mora pročitati u celosti, detaljno i od početka do kraja bez preskakanja bilo kog dela, kako bi se u potpunosti razumele sve smernice, struktura, funkcionalnosti i tehnički standardi projekta. >> 📌 REVISIONS NOTE: Please do NOT modify the upper text or structure. Write all suggestions, feedback, and notes strictly in Section 4 at the very bottom. ================================================================================ PART 1: COMPLETE SPECIFICATION (ENGLISH VERSION) ================================================================================ 1.1 MAIN MENU & SUBMENU STRUCTURE -------------------------------------------------------------------------------- HEADER NAVIGATION BAR: · 🏠 HOME · 👥 PEOPLE COUNTERS (Dropdown) - IP Camera People Counter - People Counter – Sensor up to 2 m * Horizontal * Vertical - People Counter – Sensor up to 4.5 m · 🚗 VEHICLE COUNTERS (Dropdown) - IP Camera Vehicle Counter - Vehicle & Bicycle Counter (Combined) - Vehicle, Bicycle & People Counter – Real-Time · 🚲 BICYCLE COUNTERS (Dropdown) - IP Camera Bicycle Counter - HAL Sensor Bicycle Counter - People & Bicycle Counter (Combined) · 🔍 LICENSE PLATE RECOGNITION (ANPR / LPR) (Dropdown) - License Plate Recognition (ANPR / LPR System) - License Plate Database & Management - Vehicle Classification by Category - ANPR for Parking Systems - Automatic Barrier Gate Control (Companies & Factories) - Residential & Private Gate Access Control · 🔐 KEY CABINETS & SMART SAFES (NYCKELSKÅP) (Dropdown) - Vehicle & Car Key Cabinets (Fleet Management) - Medicine & Pharmacy Security Cabinets - Valuables & Document Safes - Small & Compact Models - Large Capacity Models (Multi-Compartment) · 📶 INNOVA 4G MODEM / ROUTER (Direct link / Single page) · 💡 CONSULTING & DEVELOPMENT SERVICES (Dropdown) - PCB Design & Hardware Engineering - Database Design & Development - Website & Web Application Development - Desktop Software Development - Mobile Application Development (iOS & Android) · 🏢 ABOUT US · 🏆 REFERENCES / PROJECTS · 📥 DOWNLOADS & TECH DOCS (Datasheets, Manuals & Software) · ✉️ CONTACT HEADER CONTROLS (Top Right Utility Bar): · 🔍 Live Search Bar (Quick product & model finder) · ☀️ / 🌙 Theme Switcher: Light Mode (Default) / Dark Mode Toggle · 🌐 Language Selector: EN | SV | SR 1.2 VISUAL NAVIGATION FLOW WITH ARROWS -------------------------------------------------------------------------------- [WEBSITE HEADER] │ ├──► [HOME] │ ├──► [PEOPLE COUNTERS] ──► │ ├──► IP Camera People Counter │ ├──► People Counter – Sensor up to 2 m │ │ ├──► Horizontal │ │ └──► Vertical │ └──► People Counter – Sensor up to 4.5 m │ ├──► [VEHICLE COUNTERS] ──► │ ├──► IP Camera Vehicle Counter │ ├──► Vehicle & Bicycle Counter (Combined) │ └──► Vehicle, Bicycle & People Counter – Real-Time │ ├──► [BICYCLE COUNTERS] ──► │ ├──► IP Camera Bicycle Counter │ ├──► HAL Sensor Bicycle Counter │ └──► People & Bicycle Counter (Combined) │ ├──► [LICENSE PLATE RECOGNITION (ANPR/LPR)] ──► │ ├──► License Plate Recognition (ANPR / LPR System) │ ├──► License Plate Database & Management │ ├──► Vehicle Classification by Category │ ├──► ANPR for Parking Systems │ ├──► Automatic Barrier Gate Control (Companies & Factories) │ └──► Residential & Private Gate Access Control │ ├──► [KEY CABINETS & SMART SAFES (NYCKELSKÅP)] ──► │ ├──► Vehicle & Car Key Cabinets (Fleet Management) │ ├──► Medicine & Pharmacy Security Cabinets │ ├──► Valuables & Document Safes │ ├──► Small & Compact Models │ └──► Large Capacity Models (Multi-Compartment) │ ├──► [INNOVA 4G MODEM / ROUTER] ──► (Direct link to product page) │ ├──► [CONSULTING & SERVICES] ──► │ ├──► PCB Design & Hardware Engineering │ ├──► Database Design & Development │ ├──► Website & Web Application Development │ ├──► Desktop Software Development │ └──► Mobile Application Development (iOS & Android) │ ├──► [ABOUT US] ├──► [REFERENCES / PROJECTS] ├──► [DOWNLOADS & TECH DOCS] (PDF Datasheets, Manuals & Brochures) ├──► [CONTACT] │ └──► [TOP RIGHT CONTROLS] ├──► Search Bar: [ 🔍 Quick Search ] ├──► Theme Toggle: [ ☀️ Light (Default) / 🌙 Dark ] └──► Language Selector: [ 🌐 EN | SV | SR ] 1.3 CONTACT PAGE LAYOUT & FORM SPECIFICATION -------------------------------------------------------------------------------- Structure: Two-column layout (Left: Interactive Form | Right: Direct Contact Info & Map) LEFT COLUMN: CONTACT FORM ------------------------- 1. 👤 Full Name * (Input text) 2. 🏢 Company Name (Input text - optional) 3. ✉️ Email Address * (Input email) 4. 📞 Phone Number * (Input tel with country code) 5. 📂 Area of Interest / Product Category (Dropdown select): - People Counters - Vehicle Counters - Bicycle Counters - License Plate Recognition (ANPR / LPR) - Key Cabinets & Smart Safes (Nyckelskåp) - Innova 4G Modem / Router - Consulting & Software/Hardware Development - Downloads / Technical Documentation - General Inquiry / Other 6. 💬 Project Description / Message * (Textarea - 5-6 rows) 7. 📎 Attach Specification / Drawing (File upload - PDF, JPG, PNG up to 10MB - optional) 8. 🛡️ Spam Protection (reCAPTCHA v3 or Cloudflare Turnstile checkbox) 9. 🚀 Action Button: [ SEND INQUIRY ] (Primary prominent button) 10. ✅ Success Notice: "Thank you! Your inquiry has been received. Our team will contact you within 24 hours." RIGHT COLUMN: DIRECT CONTACT DETAILS ------------------------------------ · 🏢 Company Name: INNOVA · 📍 Address: [Street, City, Postal Code, Country] · 📞 Direct Phone: [+381 XX XXX XXXX] · ✉️ Email: [info@innova... / sales@innova...] · 🕒 Working Hours: Monday - Friday: 08:00 - 16:00 · 💬 Quick Chat: Direct WhatsApp / Viber button · 🗺️ Interactive Google Map with company location 1.4 THEME SWITCHER SPECIFICATION (LIGHT / DARK MODE) -------------------------------------------------------------------------------- · ☀️ Default State: Light Theme (Clean, professional white and light gray background). · 🌓 Toggle Switch: Located in the top header (icon with Sun ☀️ / Moon 🌙 or pill switch). · 🌙 Dark Theme: Sleek dark mode (deep navy / slate dark backgrounds, high-contrast crisp text). · 💾 Persistence: - User's selected theme is saved in cookies and localStorage (`theme = 'light' | 'dark'`). - Next time the user visits or navigates pages, the chosen theme stays active without flickering. - Automatically respects user OS system preference (`prefers-color-scheme`) if not manually set. 1.5 VIDEO PERFORMANCE & LOCAL SERVER HOSTING (DIRECT CLICK ON PHOTO TO PLAY) -------------------------------------------------------------------------------- 🎯 OBJECTIVE: Prevent browser lag, minimize bandwidth consumption, ensure instant initial page rendering (0 MB video overhead on page load), and deliver high-performance video streaming directly from your local web server without external tracking cookies. IMPLEMENTATION RULES FOR DEVELOPERS: 1. 🖥️ Self-Hosted Video Files (Direct Local Server Hosting): - Storage: Store video files directly on your web server (or local CDN/storage directory). - Dual Modern Web Formats (Encoding): * MP4 container (H.264 video codec + AAC audio) — 100% universal compatibility across all devices, iOS Safari, Android, Windows, Mac. * WebM container (VP9 or AV1 video codec + Opus audio) — 35-50% smaller file size for modern browsers (Chrome, Edge, Firefox). - Compression: Compress videos using HandBrake or FFmpeg with Web-optimized settings (CRF 22-26, 1080p/720p max 2.5 Mbps bitrate). - 🔒 Privacy & GDPR Compliance Advantage: Hosting videos locally on your own server produces ZERO third-party tracking cookies (unlike YouTube/Vimeo embeds), requiring no intrusive cookie consent blocks before playback. 2. ⚡ Server Streaming Configuration (HTTP Byte-Range Requests): - Web server (Nginx / Apache / LiteSpeed) MUST have Byte-Range support enabled (`Accept-Ranges: bytes` header / HTTP 206 Partial Content). - Benefit: Browsers only stream and download small chunks as the video plays. Users can scrub/seek anywhere on the timeline without waiting for the full 50-100MB file to download. - 📦 Long-term Caching: Set header `Cache-Control: public, max-age=31536000, immutable` for static video and poster files. 3. 🎬 "Direct Photo Click" Playback (No Dedicated Play Button Required): - Entire Photo is Clickable: The visitor simply clicks anywhere directly on the thumbnail/photo preview (`cursor: pointer` on the container). - No separate button is required (an optional subtle play icon badge may overlay the corner, but clicking anywhere on the photograph starts playback). - Initial State: Render only a lightweight, modern WebP image thumbnail (poster). Zero video bytes loaded upfront. - Click Action: As soon as the user clicks the photo: a) Replace the photo seamlessly with the HTML5 `