Accessibility

Accessibility
Statement

Website: Nathan Chaim Portfolio Standard: WCAG 2.1 AA / IS 5568 Last reviewed: June 2026
Partially Conformant — WCAG 2.1 Level AA
Section 01

Accessibility Statement

Nathan Chaim is committed to ensuring digital accessibility for all users, including people with disabilities. We continually improve the user experience for everyone and apply the relevant accessibility standards.

Legal Basis

This website strives to conform to the Israeli Equal Rights for Persons with Disabilities Law (5758-1998) and the Israeli Accessibility Regulations (5773-2013), based on Israeli Standard IS 5568, which adopts WCAG 2.1 Level AA as its technical specification.

Conformance Status

Partially conformant — This website partially conforms to WCAG 2.1 Level AA. "Partially conformant" means that some parts of the content do not yet fully conform to the accessibility standard due to technological limitations or the scale of the work required, as detailed in Section 3.

Technical Specifications

This website is built using HTML5, CSS3, and vanilla JavaScript. Accessibility relies on compatibility between the following technologies: HTML, WAI-ARIA, CSS, JavaScript, and assistive technologies (screen readers, keyboard-only navigation, switch access).

Scope of This Statement

This statement covers the portfolio website accessible at its primary URL, including the homepage, visualizations gallery, websites gallery, videos section, about section, accessibility statement page, and all modal dialogs.

הצהרת נגישות

נתן חיים מחויב להנגיש את האתר לכלל המשתמשים, לרבות אנשים עם מוגבלות, בהתאם לחוק שוויון זכויות לאנשים עם מוגבלות, תשנ"ח-1998, ותקנות הנגישות לשירות, תשע"ג-2013, בהתאם לתקן ישראלי IS 5568 המבוסס על WCAG 2.1 רמה AA.

האתר עומד בחלקו בדרישות התקן. עמידה חלקית משמעה שחלק מהתכנים אינם עומדים במלוא דרישות תקן הנגישות בשל מגבלות טכנולוגיות או עומס בלתי מידתי, כמפורט בסעיף 3.

Section 02

Implemented Accessibility Features

✅ Fully Implemented

  • Keyboard Navigation
    All interactive elements — navigation links, buttons, modals, category tabs, and footer links — are fully operable using keyboard only (Tab, Shift+Tab, Enter, Space, Escape). Focus order follows logical reading order.
  • Visible Focus Indicators
    All focusable elements display a clearly visible focus ring on keyboard focus (yellow-green outline, 2px, minimum 3:1 contrast ratio against adjacent colors). Focus indicators meet WCAG 2.4.7 and 2.4.11.
  • Skip to Main Content Link
    Two skip links are present at the top of every page — one in English ("Skip to main content") and one in Hebrew ("דלג לתוכן הראשי"). They become visible on keyboard focus and allow users to bypass repetitive navigation blocks (WCAG 2.4.1).
  • Alt Text on All Images
    Every meaningful image — including all AI visualization renders, website screenshots, the profile photo, and the logo — has a descriptive alt attribute. Decorative images use alt="" so screen readers ignore them (WCAG 1.1.1).
  • Color Contrast — Text
    Primary text (#EDECEB on #07080F) achieves a contrast ratio of 19.4:1, far exceeding the WCAG AA minimum of 4.5:1. Secondary/muted text achieves a minimum of 3.1:1. Interactive element contrast meets 3:1 for non-text (WCAG 1.4.3, 1.4.11).
  • Heading Hierarchy
    The page uses a correct and sequential heading hierarchy (H1 → H2 → H3) without skipping levels. The main page title is H1 (NATAN), section titles are H2, and subsections are H3. This enables screen reader users to navigate by headings (WCAG 1.3.1, 2.4.6).
  • ARIA Labels on Interactive Elements
    All buttons, links, and form controls that rely on visual context have aria-label or aria-labelledby attributes. Icons-only buttons (WhatsApp, LinkedIn, Email, Close modal) have descriptive accessible names. Modals use role="dialog", aria-modal="true", and aria-labelledby (WCAG 4.1.2).
  • Language Declaration
    The primary page language is declared as lang="en" on the HTML element. Hebrew sections within the page use lang="he" and dir="rtl" to ensure correct pronunciation by screen readers (WCAG 3.1.1, 3.1.2).
  • Semantic HTML Structure
    The page uses semantic HTML5 landmarks: <nav>, <main>, <section>, <footer>, <article>. All lists use <ul>/<li> elements. Sections have aria-labelledby attributes linking to their headings (WCAG 1.3.1).
  • Responsive Design
    The website adapts to all viewport sizes from 320px to 2560px+ without horizontal scrolling or loss of content. Text can be resized up to 200% without loss of functionality. Viewport is not locked (WCAG 1.4.4, 1.4.10).
  • Modal Focus Management
    When a modal opens, focus is moved to the modal container. The Escape key closes all modals. Clicking outside the modal closes it. Focus is managed so keyboard users cannot interact with background content while a modal is open (WCAG 2.1.2).
  • Page Title
    Every page has a meaningful, descriptive <title> element that identifies both the specific page and the site. The accessibility document page has its own distinct title (WCAG 2.4.2).
  • No Color-Only Information
    No information is conveyed through color alone. Status indicators (conformant/not conformant) use both color and text labels. Interactive state changes include shape/text changes in addition to color (WCAG 1.4.1).
  • No Keyboard Trap
    Users can always navigate away from any component using only the keyboard. The Tab key moves focus through all interactive elements in order. No component traps keyboard focus permanently (WCAG 2.1.2).
  • Consistent Navigation
    Navigation links appear in the same location and order on every page. The logo always links to the homepage. The same links appear in the same relative order throughout the site (WCAG 3.2.3, 3.2.4).
  • Touch Target Size
    All interactive elements meet the minimum touch target size of 44×44px as required by WCAG 2.5.5 and iOS/Android accessibility guidelines. Icon buttons in the navigation are at minimum 44px in both dimensions (WCAG 2.5.5).
  • Accessible Video Link
    The video content is presented as a clickable thumbnail linking to YouTube rather than an auto-playing embedded video. Users have full control over playback. The link is clearly labeled "Watch on YouTube" (WCAG 2.2.2).
Section 03

Elements Not Yet Fully Accessible

  • Video Captions (WCAG 1.2.2, 1.2.4)
    Issue: The AI-produced video "להיות עצמך" on YouTube does not include captions or subtitles. Barrier: Deaf and hard-of-hearing users cannot access the audio content. Reason: The video is externally hosted on YouTube; captions require post-production effort and Hebrew transcription. Plan: Hebrew captions will be added to the YouTube video within 6 months of this statement.
  • Audio Description — Background Video (WCAG 1.2.5)
    Issue: The background video displayed on the homepage (particle animation) does not have an audio description. Mitigating factor: The background video is purely decorative and conveys no informational content — all meaningful content is available as text and images. The video does not supplement or replace any textual information. Classification: Decorative media — disproportionate burden to add audio description for a non-informational animation.
  • Before/After Image Comparison Slider — Keyboard (WCAG 2.1.1)
    Issue: The before/after visualization comparison slider requires mouse drag or touch to operate. Keyboard-only users cannot currently adjust the slider position. Impact: Keyboard and switch-access users cannot independently compare before/after states. Mitigation: Both the Before and After images are individually visible at the default 50% position; neither image is completely hidden. Alt text is present on both images. Plan: Arrow key support for the slider handle will be implemented in the next development cycle.
  • Cursor Proximity Text Effect (WCAG 1.4.13)
    Issue: The interactive letter-scaling effect in the hero section responds to mouse cursor proximity. On keyboard-only or touch devices, this effect does not activate. Impact: Visual enhancement only — the text content ("NATAN" and the tagline) is fully readable at its base state without any interaction. The effect is decorative and does not convey meaning. No information is lost when the effect is inactive.
  • High Contrast Mode (WCAG 1.4.3 — Enhancement)
    Issue: The website does not offer a user-controlled high-contrast toggle widget beyond the system-level settings. Note: The base design already exceeds WCAG AA contrast requirements significantly (primary text ratio 19.4:1). However, no custom high-contrast mode is provided. Plan: A high-contrast CSS class will be implemented as an accessibility widget option in the next iteration.
  • Font Size Widget (WCAG 1.4.4 — Enhancement)
    Issue: The site does not provide in-page font size increase/decrease controls. Note: All text is responsive and the page supports browser-level zoom to 200% without loss of content or functionality, meeting WCAG 1.4.4. However, a dedicated font-size widget is recommended for users unfamiliar with browser zoom. Plan: Font size controls (+/−) will be added to the accessibility widget.
Section 04

Accessibility Coordinator

If you encounter any accessibility barrier on this website, or if you have feedback on how we can improve, please contact us using any of the following methods:

Accessibility Coordinator: Nathan Chaim
Phone: 055-680-7812
Response time: We aim to respond to all accessibility requests within 5 business days.

When submitting an accessibility complaint, please include: the URL of the page where you experienced the barrier, the assistive technology and browser you are using, and a description of the issue.

Enforcement

If you are not satisfied with our response, you may submit a complaint to the Israeli Commission for Equal Rights of Persons with Disabilities at the Ministry of Justice: gov.il/nechut-online

Section 05

Using the Accessibility Button

This website includes a floating accessibility button located in the bottom-left corner of every page. It is represented by the universal accessibility symbol (♿) in an electric yellow-green circle.

How to access it

  • Mouse: Click the yellow-green circle button in the bottom-left corner of any page.
  • Keyboard: Press Tab until the button receives focus, then press Enter or Space to activate it.
  • Screen reader: The button is announced as "Accessibility Statement — הצהרת נגישות".

What the button does

Clicking the accessibility button opens this Accessibility Statement in a modal dialog. The modal can be closed by:

  • Pressing the Escape key
  • Clicking the × button in the top-right corner of the modal
  • Clicking anywhere outside the modal

The Accessibility Statement is also accessible from the website footer via the "Accessibility" text link.

Section 06

Recommendations for Future Improvements

  • Hebrew Captions on YouTube Video
    Transcribe and upload Hebrew (and English) captions to the YouTube video "להיות עצמך" using YouTube's caption editor. Priority: High. Target: within 6 months.
  • Arrow Key Support for Before/After Slider
    Add keyboard event listeners to the comparison slider handle element: Left/Right arrow keys should move the slider in 5% increments. The handle element should have role="slider", aria-valuemin, aria-valuemax, and aria-valuenow. Priority: High.
  • Font Size Adjustment Widget
    Add + / − font size controls to the accessibility widget panel, using CSS custom properties to scale body font-size. Priority: Medium.
  • High-Contrast Mode
    Implement a CSS class toggle (.high-contrast) that increases all foreground/background contrast to at minimum 7:1 (WCAG AAA). Store preference in localStorage. Priority: Medium.
  • Reduced Motion Preference
    Honour the prefers-reduced-motion CSS media query for all animations (floating orbs, cursor proximity effect, scroll-driven video). Users who have enabled reduced motion in their OS should see a static site. Priority: Medium.
  • Regular Accessibility Audit
    Commission an independent accessibility audit using automated tools (axe-core, WAVE) combined with manual testing using NVDA + Chrome and VoiceOver + Safari. Recommended frequency: annually, or after significant site changes. Priority: Medium.
  • Live Accessibility Status Page
    Create an automatically updated accessibility status page that runs axe-core on each deployment and publishes results. This demonstrates ongoing commitment and keeps the accessibility statement accurate. Priority: Low.
Section 07

Accessibility QA Testing Checklist

Use this checklist when performing accessibility testing on this website. Test using the combinations: NVDA + Chrome (Windows), JAWS + Edge (Windows), VoiceOver + Safari (macOS/iOS).

A — Screen Reader Tests (NVDA / JAWS / VoiceOver)
Navigate page using screen reader heading navigation (H key in NVDA/JAWS). Confirm H1 "NATAN" is announced, followed by H2 section headings in correct order.
Tab through all interactive elements. Confirm each receives focus and is announced with a meaningful name (not "button", "link" without context).
Open the Accessibility modal. Confirm screen reader announces "dialog" role and modal title. Confirm focus moves inside the modal.
Confirm all image alt text is read correctly. Test visualization images ("Luxury Living Room — After"), profile photo, and logo.
Verify the navigation landmark is announced as "navigation" and the main content landmark as "main".
Confirm the cookie banner is announced when it appears (1.2 seconds after load). Verify the "Got it" and "Decline" buttons are focusable and announced correctly.
Verify Hebrew sections (Accessibility Statement modal, lang="he" elements) are announced in Hebrew by the screen reader.
Confirm the mobile category tab bar is announced as a tablist with individual tabs labeled "Renders", "Websites", "Videos".
Confirm the skip link is announced on first Tab press and activates correctly when Enter is pressed.
B — Keyboard-Only Navigation Tests
Navigate entire page using Tab only. Confirm all interactive elements are reachable and none are skipped.
Confirm Shift+Tab navigates backwards through all interactive elements.
Open and close the Accessibility modal using keyboard only (Enter to open, Escape to close).
Open and close the Terms of Use modal using keyboard only.
Activate the mobile category tabs (Renders/Websites/Videos) using Enter key.
Confirm no keyboard trap exists anywhere — pressing Tab always moves focus forward.
Verify the hamburger menu on mobile opens and closes using Enter/Space, and links inside are reachable by Tab.
Attempt to use the before/after slider with arrow keys. Document result (expected: currently not supported — logged as known issue).
Confirm the floating accessibility button (♿) is reachable by Tab and activates with Enter.
C — Color Contrast Tests
Measure primary text (#EDECEB on #07080F) using a contrast checker. Expected result: ≥19:1. Minimum required: 4.5:1.
Measure muted/secondary text (rgba(237,236,235,0.42)) against background. Expected: ≥3.1:1. Note: this approaches but should meet WCAG AA minimum.
Measure accent color text (electric yellow-green #E8FF4B on #07080F). Expected: ≥12:1.
Measure UI component contrast: border colors, button outlines, focus rings against their backgrounds. Required: ≥3:1.
Test all text overlaid on the background video (hero section, skill ticker). Confirm readable with the video overlay in place.
Test with Windows High Contrast Mode enabled. Confirm page remains usable and no content is hidden.
Test all link colors (in modals, accessibility statement) for ≥4.5:1 contrast and underline/distinguishable indicator.
D — Heading Structure and Navigation Tests
Generate a heading outline using a browser extension (HeadingsMap, WAVE). Confirm single H1, logical H2s, no skipped levels.
Navigate by headings using NVDA (H key) or JAWS. Confirm all sections are reachable and headings describe section content accurately.
Navigate by landmarks (R key in NVDA, F6 in JAWS). Confirm nav, main, footer landmarks are announced.
Verify the accessibility document page (this page) also has correct H1 → H2 → H3 hierarchy without skipped levels.
E — Image ALT Text Tests
Using WAVE or axe-core, confirm zero images have missing alt attributes.
Verify all 9 before-image alt texts describe the "before" state (e.g., "Luxury Living Room — Before").
Verify all 9 after-image alt texts describe the "after" state (e.g., "Luxury Living Room — After").
Confirm website screenshot images have meaningful alt text (site name).
Confirm SVG icons that are decorative use aria-hidden="true".
Verify the profile photo alt text describes the person (e.g., "Nathan Chaim").
Confirm no alt text is redundant or just a filename (e.g., "IMG_1234" is not acceptable).
F — Video Captioning Tests
Click the video thumbnail link. Verify it opens the YouTube page for "להיות עצמך".
On YouTube, verify whether Hebrew captions are available. (Currently: not available — logged as known issue.)
Verify the video thumbnail image has descriptive alt text ("להיות עצמך · Be Yourself").
Confirm the "Watch on YouTube" label is visible and announced by screen readers.
Verify the background video does not contain speech, audio, or any informational audio content (decorative-only check).
Section 08

WCAG 2.1 AA — Full Requirements Table

All 50 success criteria at Level A and AA under WCAG 2.1, with conformance status for this website. Criteria introduced in WCAG 2.1 (not in WCAG 2.0) are marked 2.1 New.

Criterion Name Level Description Status
Principle 1 — Perceivable
1.1.1Non-text ContentAAll non-text content has a text alternative (alt text, labels, captions).Conforms
1.2.1Audio-only & Video-onlyAPrerecorded audio-only and silent video provide text alternatives.N/A
1.2.2Captions (Prerecorded)ACaptions are provided for prerecorded audio content in synchronized media.Fails
1.2.3Audio Description / Alt (Prerecorded)AAudio description or full text alternative for prerecorded video.Partial
1.2.4Captions (Live)AACaptions provided for all live audio content in synchronized media.N/A
1.2.5Audio Description (Prerecorded)AAAudio description provided for all prerecorded video content.Fails
1.3.1Info and RelationshipsAInformation, structure, and relationships conveyed through presentation can be programmatically determined.Conforms
1.3.2Meaningful SequenceAContent reading sequence can be programmatically determined where order affects meaning.Conforms
1.3.3Sensory CharacteristicsAInstructions do not rely solely on sensory characteristics (shape, size, visual location, etc.).Conforms
1.3.4OrientationAA 2.1Content does not restrict view or operation to a single display orientation.Conforms
1.3.5Identify Input PurposeAA 2.1The purpose of each input field can be programmatically determined.N/A
1.4.1Use of ColorAColor is not the only visual means of conveying information.Conforms
1.4.2Audio ControlAA mechanism to pause, stop, or control volume for any audio that plays automatically.N/A
1.4.3Contrast (Minimum)AAText and images of text have a contrast ratio of at least 4.5:1 (3:1 for large text).Conforms
1.4.4Resize TextAAText can be resized without assistive technology up to 200% without loss of content or functionality.Conforms
1.4.5Images of TextAAImages of text are only used for decoration or where essential (e.g., logos).Conforms
1.4.10ReflowAA 2.1Content can be presented without horizontal scrolling at 320px viewport width.Conforms
1.4.11Non-text ContrastAA 2.1UI components and graphical objects have a contrast ratio of at least 3:1.Conforms
1.4.12Text SpacingAA 2.1No loss of content when letter-spacing, word-spacing, line-height, and paragraph spacing are modified.Conforms
1.4.13Content on Hover or FocusAA 2.1Content that appears on hover or focus is dismissible, hoverable, and persistent.Partial
Principle 2 — Operable
2.1.1KeyboardAAll functionality is operable through a keyboard interface without specific timing.Partial
2.1.2No Keyboard TrapAKeyboard focus can always be moved away from any component.Conforms
2.1.4Character Key ShortcutsA 2.1Single character key shortcuts can be turned off, remapped, or deactivated on focus.N/A
2.2.1Timing AdjustableATime limits can be turned off, adjusted, or extended by the user.N/A
2.2.2Pause, Stop, HideAMoving, blinking, or scrolling content can be paused, stopped, or hidden.Partial
2.3.1Three Flashes or Below ThresholdAContent does not flash more than three times per second.Conforms
2.4.1Bypass BlocksAA mechanism to bypass repeated navigation blocks (skip link).Conforms
2.4.2Page TitledAPages have titles that describe their topic or purpose.Conforms
2.4.3Focus OrderAFocus order preserves meaning and operability.Conforms
2.4.4Link Purpose (In Context)AThe purpose of each link can be determined from the link text or context.Conforms
2.4.5Multiple WaysAAMore than one way to locate a page within a set of pages.N/A
2.4.6Headings and LabelsAAHeadings and labels describe topic or purpose.Conforms
2.4.7Focus VisibleAAAny keyboard operable UI has a visible focus indicator.Conforms
2.5.1Pointer GesturesA 2.1All multipoint or path-based gestures have a single-pointer alternative.Conforms
2.5.2Pointer CancellationA 2.1Functions that activate on single pointer can be cancelled or reversed.Conforms
2.5.3Label in NameA 2.1Accessible name of UI components with visible text contains the visible text.Conforms
2.5.4Motion ActuationA 2.1Functionality using device motion can be operated without motion and motion response can be disabled.N/A
Principle 3 — Understandable
3.1.1Language of PageADefault human language of the page can be programmatically determined.Conforms
3.1.2Language of PartsAALanguage of each passage or phrase can be programmatically determined.Conforms
3.2.1On FocusAReceiving focus does not automatically change context.Conforms
3.2.2On InputAChanging a setting does not automatically cause a context change unless user is advised.Conforms
3.2.3Consistent NavigationAANavigation mechanisms repeated on multiple pages appear in the same relative order.Conforms
3.2.4Consistent IdentificationAAComponents with the same functionality are identified consistently.Conforms
3.3.1Error IdentificationAInput errors are identified and described to the user in text.N/A
3.3.2Labels or InstructionsALabels or instructions are provided when content requires user input.N/A
3.3.3Error SuggestionAAIf an input error is detected, suggestions for correction are provided.N/A
3.3.4Error Prevention (Legal/Financial)AAFor legal, financial, or data-entry submissions: submissions are reversible, checked, or confirmed.N/A
Principle 4 — Robust
4.1.1ParsingAContent implemented in markup languages has complete start/end tags, no duplicate attributes, and unique IDs.Conforms
4.1.2Name, Role, ValueAUI components have name, role, and value programmatically available and change notifications sent to assistive technologies.Conforms
4.1.3Status MessagesAA 2.1Status messages can be programmatically determined through role or properties and are not required to receive focus.Conforms
ConformsMeets the criterion PartialPartially meets; known limitation FailsDoes not meet; remediation planned N/ANot applicable to this site