New Urban MediaOpera Memphis · Project documents

← All project documents

Mobile usability & layout audit

Site and scope

Opera Memphis, tested September 27–28, 2026. WordPress 7.1.2, Elementor 4.3.2, Elementor Pro 4.1.1, Memphis child theme. This was an automated browser test with visual review and live remediation, not a participant study or a full WCAG certification.

The most consequential defects were the open menu retaining its old dimensions after phone rotation and several anchor links landing behind the header. Both were corrected. Small buttons, supporting text, carousel controls, and an overflowing volunteer form were also improved.

Coverage

Desktop and laptop recheck

Measured shared header content geometry on Home after the mobile changes:

ViewportContent widthLeft/right gutterHorizontal overflow
1200114030None
1280122030None
1366130630None
1367130730None
1440132060None
1512132096None
15361320108None

The desktop navigation returns when resizing above 1024px. The existing desktop indicator hiding and spacing remain intact. No tested public view reported horizontal document overflow.

Fixes and measured results

ElementBeforeChangeVerified result
Header Tickets button, 58/ommbdon15px text, 38px highNative responsive type 16px/1.4; 12px vertical paddingAbout 46.4px high; 10px gap to hamburger
Mobile menu action row, 58/6a1449315px text, 44px highExisting menu-action CSS to 16px/1.446.4px high; equal 165px columns at 390px; 20px outer gutters and center gap; directly below Contact
Main menu linksAlready 18px with 51px rowsRetainedAll five parent submenus open; hover label and arrow both white
Tablet hamburger28px icon, 42px targetNative size 30px45px target; phone target remains 52.5px
Open mobile panelStale height and horizontal offset after rotationScoped resize recalculationAt 844×390: x=0, width=844, bottom=390. At 430×932: x=0, width=430, bottom=932
Menu keyboard closeEscape left panel openEscape closes and focuses togglePassed Chromium and WebKit
Plan Your Visit quick links, 894415px text; only text was clickableConverted three heading links to native full-width Button widgets, 17px/1.5 mobile textPadded row is tappable; about 53.5px tall
Jump-to links15px mobile textNative icon-list typography 17px/1.5Consistent readable rows on Get Involved, Tickets, Ways to Give, and audition notice
Audition quick-link rowsPadding surrounded the clickable linkMoved existing row padding onto anchor; removed conflicting fixed font declarationWhole row now tappable without increasing section spacing
Small labels and supporting textSeveral 11–15px labels/body fragmentsNative mobile typography: labels generally 14px; supporting body text 16px; 1.5 line heightRead back and visually checked; large display headings retained
Staff/board/home listing textRole/date/name text 13.5–15pxNative JetEngine/heading typography 15–16px with 1.5 line heightMore readable labels; compact homepage card retained
Secondary buttons12–15px text; some only 17px tallNative mobile text 16px/1.4 and 12px vertical paddingPreviously short Tickets card buttons no longer flagged as under 44px
Volunteer Registration, 5438Fields extended beyond white cardNative card padding/heading adjustment; scoped single-column form grid and bounded inputsInput right edge equals content right edge at 320/375/390/430px; balanced inner padding
Three community carousel arrow pairs30px targetsNative 44px arrow size; scoped pair separation44px targets and measured 20px gap at 320/375/390/430px
Tickets “Plan Your Visit” CTALinked to #boxofficeNative link changed to /plan-your-visit/Actual click reaches the correct page
Calendar search/view/date controls29px/29px/33px highExisting plugin stylesheet: minimum 44px targets and separated search/view controls44px on 320/390/430px; search, view selector, and date picker open correctly

Exact document IDs, element IDs, new values, and CSS exceptions are in the three native-changes*.json files. Complete original Elementor JSON for every edited document is saved in the live companion backups. These permit reversing individual changes without restoring the entire site.

Anchor and navigation behavior

Visual evidence

Mobile menu · Landscape menu · Plan Your Visit before/after · Volunteer form before/after · Hero before/after · Calendar controls

Deliberate platform exceptions

ExceptionWhy native Elementor controls cannot provide itLocation
Escape and settled rotation geometryLegacy Nav Menu has no controls for these behaviorsTheme inc/mobile-navigation.php, included once from functions.php
Sticky-header anchor offsetRequires reading actual header height when a link is activatedExisting scoped functions.php anchor handler, extended to verified secondary links
Two styled WordPress menu actionsActions are editable WordPress menu items, not separate Elementor Button widgetsExisting Nav Menu custom CSS
Shortcode form gridShortcode widget exposes no Gravity Forms field-grid controls5438/de6a337 custom CSS, phone-only
Centered carousel pair gapWidget supports size, not the custom centered pair's gapExisting carousel custom CSS, phone-only
Calendar touch targetsEvents Calendar archives are rendered by the pluginExisting om-events.css, phone-only; asset version 1.0.25

Conflicting Tickets eyebrow and audition link font declarations were removed so the native responsive settings can work. Audition stylesheet version is 1.3.2.

Remaining findings and boundaries

Quality gate

GateResult
Every width on every pageDeliberately trimmed coverage described above; not claimed
No public-page horizontal overflowPassed all 618 final responsive measurements
Gutters and laptop dead zoneDirectly measured; header and hero navigation alignment checked visually
Native controls or documented exceptionPassed; exceptions listed above
Breakpoint boundaries767/768 and 1024/1025 passed
Widest tier after mobile changesRechecked at 2560/1920px for the page sweep
Before/after evidenceSaved for changed components; full data and screenshots remain on the site desk
Outside-scope findings retainedContent readiness, protected pages, and media-quality findings recorded above and in PENDING-UPDATES