SEO / Portfolio / Public Site

FireAndStorm Portal UI UX Improvement Report

Report summary

This review covers the public FireAndStorm portal estate on fireandstorm.com while intentionally excluding the homepage from recommendation scope. Based on the crawl, the public estate includes six authentication or access-request routes , three role-based demo dashboards , three role-specific claim

Status
Research archive item
Category
SEO / Portfolio / Public Site
Length
5,246 words
Reading time
24 minutes
Report type
evaluation

Key topics

  • SEO / Portfolio / Public Site
  • SEO
  • Portfolio
  • Public Site
  • Privacy
  • Semantic Systems
  • Research Archive
  • Audit
  • Architecture

Research provenance

Archive status
Research archive item
Content identity
sha256:3426aa02cf4dfe96f97531735b354406cd477ea82082a8bbf13049f390059556

For citation, use the report title and canonical URL. Archival presence does not establish authorship or promote report statements into portfolio evidence.

Source availability: 128 citation markers in the source export have no recoverable source links. Those markers are omitted from this reader; any supplied bibliography and ordinary links remain. Check the original sources before relying on the cited claims.

This page renders the archived Markdown as safe, formatted HTML. It is background research and does not become a portfolio claim without evidence review.

Full report

On this page

Executive Summary

This review covers the public FireAndStorm portal estate on fireandstorm.com while intentionally excluding the homepage from recommendation scope. Based on the crawl, the public estate includes six authentication or access-request routes, three role-based demo dashboards, three role-specific claim-detail demos, two legal pages, one demo selector, two legacy technical demo paths that now point back to the selector, and one generic /demo/claims/ fallback route. The production experience that exists _after_ authentication was not publicly accessible; the only post-login-like experiences available to evaluate were the public demo dashboards and claim-detail previews. The www host also canonicalizes to the apex host on the publicly opened routes.

The portal architecture has several strong foundations. Role separation is clear. Each role gets a dedicated summary of purpose. Demo workspaces display concrete “next actions,” status summaries, and role-specific tool sets such as Upload photos / Schedule visit / View estimate for owners, Upload evidence / Submit invoice / Onboarding for contractors, and Review estimate / Request info for adjusters. Forms consistently warn against entering highly sensitive information in public pages, and the demo data is clearly described as redacted and read-only. All of that is directionally good for trust, task clarity, and least-privilege presentation.

The most important UX problems are structural rather than aesthetic. Every public login and registration page includes the full portal chooser below the core form, which dilutes the task and creates unnecessary page length. The login pages also contain a severe microcopy contradiction: they ask for a password but simultaneously say “Do not enter … passwords” in the page instructions. The action strips and tab rows appear dense and linearly packed, especially on demo pages, creating likely mobile and accessibility strain. CTA language is inconsistent across roles: Request Access, Sign Up, Registration, and Access goal do not form one coherent vocabulary. The legal pages are too thin to inspire confidence for a portal that is clearly framed as dealing with restoration-claim workflows.

The most important SEO and best-practice issue is that public demo dashboards, legacy technical demo paths, and even role-specific claim-detail demo pages with query parameters are discoverable in search. Google’s documentation is explicit that route-level indexing should be controlled with noindex via a robots meta tag or HTTP header when pages should not appear in search results. For this portal, public demo and access flows should almost certainly be treated as non-indexable utility routes, while only the true public marketing site should be indexed.

From a heuristic and accessibility perspective, the estate is currently closer to a promising, lightweight MVP than a polished multi-role portal system. The strongest immediate improvements are to separate auth pages from chooser pages, standardize role language and CTA wording, apply semantic tab/dialog implementations, tighten mobile hierarchy, noindex all login/register/demo/legacy routes, and add clearer status language plus help expectations. If those fixes are made first, the portal can keep its existing role clarity while becoming materially more trustworthy, more accessible, and more conversion-efficient.

Scope, Crawl Inventory, and Page Snapshots

The crawl below is based on publicly reachable routes discovered through the portal chooser, indexed route discovery, and public demo navigation. The homepage was used only as a discovery source and is not included in recommendations. Because live HTML screenshot capture was not available from this environment, the inventory uses rendered-page snapshots and semantic DOM reconstructions derived from the rendered page output. Public production pages beyond login/access-request were not accessible; the public demo routes were the only role-specific workspaces available for review.

RoutePublic purposeAccess statusRendered-page snapshotSemantic DOM snapshot
/property-owner/login/Owner sign-inPublicH1 Property Owner Login; Email + Password + Login; help/privacy/terms; Return to portal chooser; then the full chooser and demo CTA appear below the form.header utility > main > h1 > login form > help links > chooser cards > demo CTA > legal links
/property-owner/register/Owner access requestPublicH1 Property Owner Access Request; fields are Name or company / Email / Phone / Access goal; then the full chooser and demo CTA appear below.header utility > main > h1 > request form > chooser cards > demo CTA > legal links
/contractor/login/Contractor sign-inPublicH1 Contractor Login; Email + Password + Login; help/privacy/terms; then full chooser and demo CTA.header utility > main > h1 > login form > helper links > chooser cards > demo CTA
/contractor/register/Contractor registrationPublicH1 Contractor Registration; Name or company / Email / Phone / Access goal; post-submit review note; then chooser and demo CTA.header utility > main > h1 > registration form > review note > chooser cards > demo CTA
/adjuster/login/Adjuster sign-inPublicH1 Insurance Adjuster Login; Email + Password + Login; help/privacy/terms; then chooser and demo CTA.header utility > main > h1 > login form > helper links > chooser cards > demo CTA
/adjuster/register/Adjuster registrationPublicH1 Insurance Adjuster Registration; Name or company / Email / Phone / Access goal; review note; then chooser and demo CTA.header utility > main > h1 > registration form > review note > chooser cards > demo CTA
/privacyPortal privacy pagePublicH1 Privacy Policy; one short paragraph warning against entering claim numbers, policy numbers, SSNs, tax IDs, bank details, passwords, API keys, tokens, or private financial details; then links back out.header utility > main > h1 > one-paragraph policy note > footer links
/termsPortal terms pagePublicH1 Terms of Use; one short paragraph stating portal use is limited to authorized access requests and demo previews, and demo actions are read-only.header utility > main > h1 > one-paragraph terms note > footer links

Demo selector and role dashboards

RoutePublic purposeAccess statusRendered-page snapshotSemantic DOM snapshot
/demoDemo role selectorPublicH1 Choose a role to preview; links for Contractor / Adjuster / Property Owner; utility bar includes public site link, phone, privacy, terms.header utility > main > h1 > role selector links
/demo/property-ownerOwner dashboard demoPublicH1 Property Owner Portal; action row Upload photos / Schedule visit / View estimate; tabs Overview / Work / Evidence / Timeline; status card; current work card; evidence/documents; timeline; then three preview panels for upload, visit scheduling, and estimate/payment visibility.header utility + demo controls > main > h1 > action row > tab row > overview metrics > current work > evidence/docs > timeline > 3 modal-like preview sections
/demo/contractorContractor dashboard demoPublicH1 Contractor Portal; action row Open gallery / Upload evidence / Submit invoice / Onboarding; overview metrics; work card; evidence/documents; timeline; then four preview panels for gallery, upload, onboarding, invoice.header utility + demo controls > main > h1 > 4-action row > tab row > metrics > work > evidence/docs > timeline > 4 modal-like preview sections
/demo/adjusterAdjuster dashboard demoPublicH1 Insurance Adjuster Portal; action row Open evidence / Review estimate / Request info; overview metrics; work card; evidence/documents; timeline; then four preview panels for evidence review, estimate review, request info, estimate detail.header utility + demo controls > main > h1 > 3-action row > tab row > metrics > work > evidence/docs > timeline > 4 modal-like preview sections
/demo/setup-snippetLegacy demo pathPublicH1 Demo role selector; content explicitly says this older technical demo path now points to the public role selector.header utility > main > h1 > technical-note text > open selector link
/demo/export-packet-draft-manifestLegacy demo pathPublicSame as /demo/setup-snippet: older technical demo path, now pointing to selector.header utility > main > h1 > technical-note text > open selector link

Claim-detail and fallback routes

RoutePublic purposeAccess statusRendered-page snapshotSemantic DOM snapshot
/demo/claims/DEMO-DAILY-FIRE-001?role=property-owner&scenario=daily-fireOwner claim detailPublicH1 Fire / Lightning Naperville; next action; action row Upload photos / Schedule visit / View estimate; tab row including Documents; status strip; evidence/documents; timeline; then upload/visit/estimate visibility preview panels.header utility + demo controls > main > claim header > action row > tab row > status > evidence/docs > timeline > 3 modal-like preview sections
/demo/claims/DEMO-DAILY-FIRE-001?role=contractor&scenario=daily-fireContractor claim detailPublicH1 Fire / Lightning Naperville; next action; action row Open gallery / Upload evidence / Submit invoice / Onboarding; status strip; documents; timeline; four preview panels.header utility + demo controls > main > claim header > 4-action row > tab row > status > documents > timeline > 4 modal-like preview sections
/demo/claims/DEMO-DAILY-FIRE-001?role=adjuster&scenario=daily-fireAdjuster claim detailPublicH1 Fire / Lightning Naperville; next action; action row Open evidence / Review estimate / Request info; status strip; documents; timeline; four preview panels.header utility + demo controls > main > claim header > 3-action row > tab row > status > documents > timeline > 4 modal-like preview sections
/demo/claims/Generic fallback routePublicFalls back to the portal chooser rather than presenting a claim workspace.header image + chooser content

Two inventory findings are strategically important. First, the portal uses a very shallow IA, which is good for comprehension. Second, because the public site exposes not only chooser pages but also role dashboards, claim-detail demos, and legacy technical routes in search discovery, the portal’s “public utility” versus “customer-ready public content” boundary is currently too porous.

Information Architecture and Key User Flows

At the highest level, FireAndStorm currently has three public conceptual layers: a portal chooser, a set of role-specific access pages, and a public demo workspace that acts as the only publicly visible stand-in for the real authenticated portals. That is a workable foundation, but the line between “live portal access” and “demo preview” is not strong enough. The auth forms still visually contain the chooser, and the legacy technical demo paths remain publicly reachable, which weakens certainty about where a user “really is” in the product.

flowchart TD
    A[Portal chooser] --> B[Property Owner Login]
    A --> C[Property Owner Access Request]
    A --> D[Contractor Login]
    A --> E[Contractor Registration]
    A --> F[Adjuster Login]
    A --> G[Adjuster Registration]
    A --> H[Demo role selector]

    H --> I[Owner demo dashboard]
    H --> J[Contractor demo dashboard]
    H --> K[Adjuster demo dashboard]

    I --> L[Owner claim detail demo]
    J --> M[Contractor claim detail demo]
    K --> N[Adjuster claim detail demo]

    A --> O[Privacy]
    A --> P[Terms]

    Q[Legacy demo routes] --> H
    R[Generic demo claims fallback] --> A

This IA diagram is derived from the publicly crawled routes and demo navigation paths.

The role logic itself is good. Owners are guided toward status, uploads, visits, estimates, and payment visibility. Contractors are guided toward assignments, evidence, onboarding, and invoicing. Adjusters are guided toward evidence review, estimate review, and request-for-information handling. That is a sound role model and aligns well with Jakob Nielsen’s heuristic that systems should match the real world and users’ tasks. The problem is less the flow model and more the presentation density, language inconsistency, and search exposure around those flows.

PortalPrimary public flowWhat worksMajor friction
Property ownerChooser → access request or login → owner dashboard demo → open claim → upload items / schedule visit → check estimate visibility.The role is clearly framed around stress-reducing tasks: status, items needed, appointments, estimate visibility.“Access goal” is vague, “Name or company” is awkward for owners, and status text such as Visible soon or Not available yet is too fuzzy for a high-stress claims context.
ContractorChooser → register or login → contractor dashboard demo → open claim → onboarding / upload evidence / invoice.The action model is direct, and onboarding is visibly staged.The page presents too many peer-priority actions at once, which increases scanning cost and likely hurts mobile use.
AdjusterChooser → register or login → adjuster dashboard demo → open claim → review evidence → review estimate → request information.The adjuster pathway is appropriately review-oriented and read-only in tone.Terms like Needs tie-out and Review framing only are specialist phrasing that may be efficient for experts but still need clearer supporting microcopy and states.
flowchart LR
    A[Owner access request] --> B[Owner login]
    B --> C[Owner dashboard]
    C --> D[Open claim]
    D --> E[Upload photos or receipts]
    D --> F[Schedule visit]
    D --> G[View estimate and payment status]

    H[Contractor registration] --> I[Contractor login]
    I --> J[Contractor dashboard]
    J --> K[Open claim]
    K --> L[Confirm onboarding]
    K --> M[Upload evidence]
    K --> N[Submit invoice]

    O[Adjuster registration] --> P[Adjuster login]
    P --> Q[Adjuster dashboard]
    Q --> R[Open claim]
    R --> S[Review evidence]
    R --> T[Review estimate]
    R --> U[Request information]

These are the top public flows visible in the crawl.

Cross-Portal UX and Accessibility Evaluation

The site performs best where it is role-specific and weakest where it is trying to be both a portal chooser, a live access path, and a demo catalogue at the same time. Below is a full heuristic pass using Nielsen’s ten heuristics, followed by mobile-specific checks and a WCAG 2.1 AA audit lens. NN/g defines heuristic evaluation as judging an interface against established usability principles, and that framing fits this portal well because most of the biggest issues are discoverable without analytics.

Nielsen heuristicAssessmentEvidenceRating
Visibility of system statusGood foundation. All role dashboards show status metrics, numbered steps, current work, and timelines.Helpful, but the wording is sometimes vague, such as Visible soon, Not available yet, Available after review, and Today without exact dates.Medium
Match between system and the real worldStrong role modeling. Owner, contractor, and adjuster tools map to expected tasks.Internal phrasing like claim-scoped, tie-out, owner-visible, and review visibility only is too insider-heavy for stressed claimants and occasionally cryptic even for professionals without context.High
User control and freedomDemo flows include Back to dashboard, Switch Role, Exit, and read-only warnings.Auth pages bury users beneath the full chooser after the form, which weakens focus. Demo preview panels also appear modal-like but public crawl evidence does not confirm complete dialog behavior.High
Consistency and standardsThe shell is visually and structurally consistent across roles.Vocabulary is not consistent: Request Access, Sign Up, Registration, and Access goal are mixed across roles.High
Error preventionPublic forms warn against entering sensitive data, which is a positive prevention pattern.The login pages undermine themselves by warning users not to enter passwords on screens whose primary task is password entry. That is a direct trust and comprehension issue.Critical
Recognition rather than recallGood. Dashboards surface next actions and key artifacts directly.Less good on auth pages, where the true task is immediately followed by the whole chooser, making users rescan options they already chose.Medium
Flexibility and efficiency of useThe public demo is a useful orientation tool, and role switching is easy.No evidence of expert accelerators such as search, filtering, bulk review, or saved form state on the public side. The action density instead raises interaction cost.Medium
Aesthetic and minimalist designThe portal is text-first and relatively lightweight, which is good.It is not minimalist enough in task framing: utility links, public site link, phone, privacy, terms, demo mode controls, chooser duplication, and multiple peer CTAs all compete on narrow screens.High
Help users recognize, diagnose, and recover from errorsCurrent public evidence does not expose full validation states.The forms do not visibly provide inline examples, expected formats, or error-recovery patterns. NN/g’s guidance strongly favors clear inline validation and actionable error text near fields.High
Help and documentationThere is some lightweight help such as Need help signing in? and legal links.There is no visible “what happens next” detail, SLA expectation, required documents explainer, or FAQ on the forms themselves. Sedgwick, Allstate, and State Farm all do better here.High

Mobile UX needs a separate lens because smartphone use brings smaller screens, shorter sessions, and more frequent interruption. NN/g explicitly notes those constraints, and mobile-specific heuristic work likewise argues that desktop-focused heuristics miss mobile problems.

Mobile-specific heuristicAssessmentEvidencePriority
Clear prioritization on small screensWeak on current demos and auth pages because top bars and action rows are too dense.High
One-handed touch ergonomicsHorizontal action rows with 3–4 peer CTAs will likely wrap awkwardly or feel cramped below 600px.High
Interruption toleranceGood conceptually because each portal exposes next steps, but weak operationally because the public auth forms do not clearly promise saved progress or recovery.Medium
Mobile data entry optimizationWeak. Public forms do not visibly expose field examples, masks, inline validation, or browser-autofill cues in the crawl. MDN recommends proper use of autocomplete to improve filling and password manager behavior.High
Mobile content parity and indexing readinessImportant because Google indexes from mobile-first crawls. Utility/demo pages should not depend on desktop-only cues.High

The WCAG 2.1 AA audit below distinguishes between confirmed issues visible in the crawl and high-risk issues that need live browser verification with keyboard, screen reader, Axe, and WAVE. W3C’s WCAG documentation, Deque’s axe rules, and WebAIM’s WAVE guidance all emphasize that manual checks are still required.

WCAG 2.1 criterionStatusObserved issueAffected routesCode-level fix
3.3.2 Labels or InstructionsConfirmed issueLogin pages require a password but the page-level instruction says do not enter … passwords, creating contradictory input guidance. W3C says instructions must make expected input clear.All three login pagesReplace the warning with role-specific safe-data guidance that excludes the actual login password field from the prohibition text.
2.4.4 Link Purpose in ContextHigh-riskRepeated generic labels such as Login, Sign Up, Open claim, and Back to dashboard may form weak link lists for assistive-tech users unless accessible names are role-specific. W3C recommends link text that is meaningful without requiring extra context whenever possible.Chooser, auth pages, dashboards, claim detailGive each actionable link a unique accessible name, for example Log in as Property Owner or Open Contractor Claim DEMO-DAILY-FIRE-001.
1.3.1 Info and RelationshipsHigh-riskTabs and action groups render in the crawl as dense text runs such as OverviewWorkEvidenceTimeline and OverviewCurrent workEvidenceTimelineDocuments, which suggests the possibility that related controls are not exposed with strong structural semantics. W3C requires relationships conveyed visually to be programmatically determinable.Demo dashboards and claim detail pagesImplement real nav landmarks, lists, or tab patterns rather than relying on visual adjacency alone.
1.3.2 Meaningful SequenceHigh-riskThe dense utility header and modal-like preview sections raise risk that DOM order, focus order, and visual order diverge on small screens. W3C requires correct reading sequence when order affects meaning.Demo dashboards and claim detail pagesEnsure DOM order matches the visual and interaction order, especially when content stacks on mobile.
4.1.2 Name, Role, ValueHigh-riskThe repeated preview sections marked by solitary × close affordances look like dialogs in the crawl, but public evidence does not confirm proper dialog roles, labels, and state announcements. W3C requires programmatically determinable names, roles, and values.Demo dashboards and claim detail pagesUse the WAI-ARIA dialog pattern or the native <dialog> element with labelled close buttons, focus placement, and focus return.
3.3.1 Error Identification / 3.3.3 Error SuggestionUntestable from public crawl but high-priorityThe public forms do not display validation or error states, so recovery quality could not be observed. W3C requires text identification of errors, and suggestions where correction is known.All auth and request formsAdd inline validation, field-level error text, summary alerts, and specific correction hints next to each invalid field.
1.1.1 Non-text ContentHigh-riskA marketing-style image alt text appears repeatedly across auth pages. If the image is decorative, W3C says it should be ignorable by assistive tech; if informative, the text alternative should match purpose without redundancy.Auth and chooser pagesIf decorative, use alt="" and keep it out of the reading stream; if informative, shorten the alt to the true purpose.
1.4.3 Contrast MinimumNot verifiable from text-only crawlContrast cannot be confirmed without rendered color capture. WCAG AA requires at least 4.5:1 for normal text.Entire estateValidate all text, icon, and focus-state contrast in a live run with WAVE, Axe, and manual inspection.

The three most important accessibility and form code fixes are below. They are aligned with W3C, MDN, and WAI guidance on instructions, autocomplete, tabs, and dialogs.

<!-- Auth form: clear instructions, correct autocomplete, explicit error region -->
<form id="owner-login" novalidate aria-describedby="login-help login-errors">
  <h1>Property Owner Login</h1>

  <p id="login-help">
    Use the email address and password for your FireAndStorm portal account.
    Do not enter claim numbers, policy numbers, SSNs, tax IDs, bank details,
    API keys, tokens, or unrelated financial details on this public form.
  </p>

  <label for="email">Email address</label>
  <input
    id="email"
    name="email"
    type="email"
    inputmode="email"
    autocomplete="username"
    required
  />

  <label for="password">Password</label>
  <div class="password-row">
    <input
      id="password"
      name="password"
      type="password"
      autocomplete="current-password"
      required
    />
    <button type="button" aria-controls="password" aria-pressed="false">
      Show
    </button>
  </div>

  <div id="login-errors" role="alert" aria-live="polite"></div>

  <button type="submit">Log in as Property Owner</button>
</form>
<!-- Tabs + progress steps: real relationships, not visual-only text runs -->
<nav aria-label="Claim sections">
  <div role="tablist" aria-label="Claim sections">
    <button id="tab-overview" role="tab" aria-selected="true" aria-controls="panel-overview">
      Overview
    </button>
    <button id="tab-work" role="tab" aria-selected="false" aria-controls="panel-work">
      Work
    </button>
    <button id="tab-evidence" role="tab" aria-selected="false" aria-controls="panel-evidence">
      Evidence
    </button>
    <button id="tab-timeline" role="tab" aria-selected="false" aria-controls="panel-timeline">
      Timeline
    </button>
  </div>
</nav>

<ol class="claim-steps">
  <li>Claim opened</li>
  <li aria-current="step">Evidence organized</li>
  <li>Internal review</li>
  <li>Owner update</li>
</ol>
<!-- Accessible modal preview -->
<dialog id="upload-evidence-dialog" aria-labelledby="upload-evidence-title">
  <form method="dialog">
    <button type="submit" aria-label="Close upload evidence dialog">×</button>
  </form>

  <h2 id="upload-evidence-title">Upload evidence</h2>
  <p id="upload-evidence-help">
    Add photos, receipts, or status notes for this claim.
  </p>

  <label for="evidence-type">Evidence type</label>
  <select id="evidence-type" name="evidenceType" aria-describedby="upload-evidence-help">
    <option>Damage photo</option>
    <option>Receipt</option>
    <option>Work status note</option>
  </select>

  <button type="button">Upload evidence</button>
</dialog>

Beyond accessibility, the microcopy needs a disciplined rewrite. The following changes would have an immediate effect on clarity and trust:

Current copyProblemRecommended rewrite
“Do not enter … passwords” on login pages.Contradicts the required password field.“Use the password linked to your portal account. Do not enter claim numbers, policy numbers, SSNs, tax IDs, or unrelated financial details on this form.”
“Access goal”.Too vague; increases ambiguity and manual review burden.“Why do you need access?” with role-specific choices like Check claim status, Review approved work, Review documentation.
“Name or company” on owner access request.Wrong mental model for homeowners.Split into Full name and, if needed, Property or business name as optional secondary context.
“Estimate Visible soon” / “Not available yet”.Too vague for stressed claimants.“Estimate available after internal review. We’ll notify you by email when it is ready.”
“Needs tie-out”.Specialist jargon without explanation.“Needs matching photo evidence.”

Visual consistency is directionally good because the same shell, role cards, and utility pattern repeat across the site. That repetition is a useful seed for a design system. However, it currently repeats too much of the wrong content. The hero image, chooser content, and legal links recur beneath pages whose primary job is simply to let someone log in or request access. The result is a UI that is consistent in component presence but not consistent in task focus.

Information architecture and conversion effectiveness are similarly mixed. The chooser explains roles well, but once a user picks a role, the product should narrow to that task. Instead, auth pages immediately reintroduce every other route. That weakens conversion by turning a single-task page into a mini-site. The owner pathway is especially vulnerable because owners are the least expert audience and the most likely to be stressed by claim uncertainty.

Performance, Responsive Design, Benchmarking, and Measurement

A live Lighthouse, Axe, or WAVE run against the FireAndStorm routes was not directly executable from this research environment, so this section does not fabricate numeric current scores. Instead, it gives a route-family assessment, explicit target bands, and the most likely hotspot areas, using Chrome, Google Search Central, WAVE, and axe guidance as the measurement framework. Lighthouse audits performance, accessibility, SEO, and best practices; Lighthouse performance scores should be interpreted in score bands, and Google also notes that performance runs vary and should be medianed across repeated tests.

Route familyCurrent live Lighthouse scoreWhat the crawl suggestsRecommended target
Auth and legal pagesNot directly measuredThese routes are mostly text, forms, links, and one repeated hero image, so they should be capable of strong performance if CSS, fonts, and JS are kept lean. The biggest waste visible in the crawl is duplication of chooser content below every form.Performance 90+, Accessibility 95+, Best Practices 95+, SEO noindex utility routes or 90+ where indexing is intended.
Demo dashboardsNot directly measuredMore complex than forms because they present metrics, action bars, section tabs, timelines, and modal-like previews. Likely biggest risks are DOM density, layout instability on narrow widths, and interaction complexity.Performance 85+, Accessibility 95+, Best Practices 95+, SEO noindex.
Claim-detail demosNot directly measuredThese are the densest pages in the estate, with claim headers, action rows, tab rows, status strips, documents, timelines, and multiple preview sections. They are also public and indexable in search, which is undesirable for demo detail pages.Performance 85+, Accessibility 95+, Best Practices 95+, SEO noindex.
Legacy technical demo routesNot directly measuredThese are lightweight but should not be index targets. Their public presence adds crawl noise and weakens IA clarity.Best Practices 95+, SEO noindex and preferably deprecate in navigation entirely.

The highest-confidence performance and best-practice recommendations are straightforward. Remove chooser duplication from auth pages. Reduce top-bar clutter on demo pages. Collapse or lazy-render secondary preview panels instead of exposing them as always-present modal-like regions in the page stream. Add noindex, nofollow to all login/register/demo/legacy routes so search engines do not treat utility screens and query-string demo detail pages as content pages.

<!-- SEO / utility-route control -->
<meta name="robots" content="noindex, nofollow">

Responsive behavior could not be pixel-tested on live viewports here, but the page composition strongly suggests that the current density will create avoidable strain on mobile widths. Google documents that Search is mobile-first, so desktop-only clarity is not enough. Material’s responsive guidance treats breakpoints as opinionated transitions where the layout should adapt to available space and ergonomics.

ViewportRecommended behaviorCurrent-risk evidenceBreakpoint recommendation
Narrow mobileOne-column layout; utility links collapsed into a top-right menu; one primary CTA above the fold; steps converted to compact cards; tabs replaced by segmented control or accordion.Utility bars include brand, public-site link, phone, privacy, terms, demo mode, reset, switch role, and exit in one strip; dashboards also expose 3–4 peer CTAs immediately.< 600px
Large mobile / small tabletTwo-up cards where useful; action row wraps into 2x2 max; timeline and documents remain stacked; help card pinned under primary action group.Dashboard action rows are currently too dense to rely on horizontal persistence.600–839px
Tablet / small desktopClaim header with primary actions on first row, secondary utilities separated; timeline can move to secondary column only if order remains accessible.Claim-detail pages are significantly denser than dashboards and need clearer primary/secondary grouping.840–1279px
Desktop wideTwo-column claim workspace: claim summary/status left, evidence/timeline right, but with semantic order preserved.Current pages already have content blocks that could be rearranged into a stronger desktop workspace.1280px+

Competitor and adjacent-product benchmarking shows what stronger patterns look like in the same broad problem space:

BenchmarkPublic pattern worth borrowingWhy it matters for FireAndStorm
Contractor ConnectionEmphasizes real-time updates, accurate tracking, transparency, and intuitive dashboards in managed repair.FireAndStorm already has dashboard seeds but needs clearer state language, stronger progress structure, and less clutter around those dashboards.
SedgwickPuts claim guidance, start/check pathways, chat help, and a visible staged process on one support surface.FireAndStorm’s forms need more “what happens next,” expected response time, and self-service help at the point of friction.
AllstateClean split between File a claim and Track a claim, plus support resources and payment guidance.FireAndStorm should separate “request access,” “log in,” “explore demo,” and “get help” rather than blending them on one long page.
State FarmUses explicit step-based claims language and highlights online/app capabilities such as status checks, uploads, direct deposit, and guided photos.FireAndStorm should make owner-facing status language more concrete and could turn abstract stages into clearer task steps.
EncircleMobile claim home page uses shortcuts for GPS, call, email, documents, notes, search, notifications, and sync status in one operational hub.FireAndStorm’s role dashboards would benefit from explicit mobile task shortcuts and clearer field-to-office collaboration cues.

Because internal analytics are unspecified, the right move is a lean event framework tied directly to the public flows visible in the crawl. It should avoid claim numbers, free-text note payloads, and any personally sensitive values in event properties, in line with the portal’s own data-safety warnings.

Funnel areaRecommended eventsKPI
Role discoveryportal_role_card_clicked, demo_role_selected, public_site_clickedRole selection rate by audience and device class
Authlogin_started, login_submitted, login_error, login_success by roleLogin completion rate, login error rate, median time to success
Access requestsaccess_request_started, access_request_submitted, access_request_abandoned by roleAccess-request completion rate, abandonment by field
Owner claim flowowner_claim_opened, owner_upload_opened, owner_visit_opened, owner_estimate_viewedClaim-detail open rate, upload initiation rate, schedule-request conversion
Contractor flowcontractor_claim_opened, onboarding_opened, evidence_opened, invoice_openedEvidence completion rate, onboarding completion rate, invoice submission rate
Adjuster flowadjuster_claim_opened, evidence_review_opened, estimate_review_opened, request_info_openedReview completion rate, info-request rate, decision latency
Help and trusthelp_clicked, privacy_clicked, terms_clicked, call_clickedSupport dependency by page and device
UX qualitycta_click_distribution, tab_switched, dialog_opened, dialog_closedCTA concentration, tab engagement, dialog abandonment

Prioritized Backlog and Annotated Wireframes

The backlog below is ordered by user harm, clarity impact, and implementation leverage. Severity uses a product-risk lens rather than a purely technical severity scale.

PriorityFixAffected pagesSeverityEffortWhy first
P1Noindex all login, register, demo, claim-detail demo, and legacy technical routesAll utility/demo routesHighLowSearch engines are already discovering demo and technical routes; this is the cleanest SEO/business-risk win.
P2Remove the full chooser from all auth pagesAll six auth routesCriticalMediumAuth pages should do one thing well. Current duplication increases confusion and hurts completion.
P3Fix contradictory password warning on login pagesAll three login routesCriticalLowThis is a trust-breaking content bug on a core task.
P4Standardize CTA and terminology across rolesChooser + auth routes + dashboard headersHighMedium“Request Access,” “Sign Up,” “Registration,” and “Access goal” create avoidable cognitive friction.
P5Replace dense action strips and text-run tabs with semantic, responsive controlsAll dashboards and claim-detail pagesHighMediumThis is the biggest usability and accessibility improvement on the workspaces.
P6Rewrite owner-facing and cross-role status language in plain EnglishOwner dashboards, all claim-detail pages, some adjuster viewsHighLowClaimants need certainty; vague or insider-heavy language reduces confidence.
P7Rebuild public forms with proper helper text, autocomplete, examples, and error statesAll auth/request formsHighMediumBetter completion, fewer support contacts, better accessibility.
P8Make preview panels accessible dialogsDashboards and claim-detail pagesHighMediumPublic evidence strongly suggests modal-like behavior without confirmed dialog semantics.
P9Add visible help, expectations, and “what happens next” contentAuth and request formsMediumLowClaim portals compete on certainty as much as functionality. Sedgwick, Allstate, and State Farm show this clearly.
P10Create a true responsive shell with mobile utility collapse and primary/secondary action hierarchyDemo dashboards and claim-detail pagesHighMediumCurrent utility density and peer-CTA structure are likely mobile-hostile.
P11Expand trust surfaces: privacy, terms, security, and demo disclosurePrivacy, terms, auth formsMediumLowCurrent legal content is too thin for a portal that asks users to trust claim workflows.
P12Instrument the full public funnel with role-based KPIsEntire public estateMediumMediumWithout analytics, optimization will remain anecdotal. The current public flow architecture is well-suited to event-based measurement.

Below are annotated sketches for the top 10 fixes.

Fix 1 — Auth page stripped to one job

┌──────────────────────────────────────┐
│ FireAndStorm Portal                  │
│ Property Owner Login                 │
│ Use your portal email and password.  │
│ [ Email address__________________ ]  │
│ [ Password________________ ][Show]   │
│ [ Log in as Property Owner ]         │
│ Need access? Request owner access →  │
│ Need help signing in?                │
└──────────────────────────────────────┘

This removes the chooser from the auth page and keeps the user in one task lane. It directly addresses the current duplicated chooser problem.

Fix 2 — Dedicated chooser with stronger role framing

┌────────────────────────────────────────────┐
│ Choose your portal                         │
│                                            │
│ [ Property Owner ]  Track status & visits  │
│ [ Contractor ]      Manage work & invoices │
│ [ Adjuster ]        Review documents       │
│                                            │
│ Secondary: Explore demo workspace →        │
└────────────────────────────────────────────┘

The demo becomes a secondary orientation path instead of competing with primary access tasks on every form page.

Fix 3 — Mobile utility header collapse

┌──────────────────────────────┐
│ FireAndStorm     ☰           │
│ Contractor Portal            │
│ [ Open claim ]               │
│ Tabs: Overview | Work | ...  │
└──────────────────────────────┘

Menu contains:
- Public site
- Call
- Privacy
- Terms
- Switch role
- Exit demo

This turns the current crowded inline utility strip into a predictable mobile pattern.

Fix 4 — Semantic tab rail with active state

┌──────────────────────────────────────┐
│ [Overview]* [Work] [Evidence] [Docs] │
├──────────────────────────────────────┤
│ Overview panel content               │
│ Status card                          │
│ Next actions                         │
└──────────────────────────────────────┘

This replaces the current text-run impression with real tabs, a visible active state, and proper panel relationships.

Fix 5 — Owner status card with certainty language

┌──────────────────────────────────────┐
│ Claim status                         │
│ Stage: Internal review               │
│ Next update: by Tue, Jun 16          │
│ What we need from you: 2 items       │
│ [ Upload requested items ]           │
│ [ Schedule visit ]                   │
└──────────────────────────────────────┘

This replaces vague states like Visible soon or Not available yet with concrete dates and next actions.

Fix 6 — Guided access-request form

┌──────────────────────────────────────┐
│ Request Property Owner Access        │
│ Full name                            │
│ [______________________________]     │
│ Email                                │
│ [______________________________]     │
│ Phone                                │
│ [______________________________]     │
│ Why do you need access?              │
│ ( ) Check claim status               │
│ ( ) Upload requested items           │
│ ( ) Review estimate                  │
│ [ Submit request ]                   │
└──────────────────────────────────────┘

This is clearer and more role-appropriate than Name or company plus a freeform Access goal field.

Fix 7 — Accessible upload dialog

┌──────────────────────────────────────┐
│ Upload evidence                    X │
│ Add photos, receipts, or notes.      │
│ Type                                 │
│ [ Damage photo ▼ ]                   │
│ Files                                │
│ [ Choose files ]                     │
│ Note                                 │
│ [______________________________]     │
│ [ Upload evidence ]                  │
└──────────────────────────────────────┘

The visual sketch assumes proper dialog semantics, focus trap, return focus, and live error messaging.

Fix 8 — Claim detail as a two-layer workspace

┌────────────────────────────────────────────────────┐
│ Fire / Lightning Naperville   DEMO-DAILY-FIRE-001 │
│ Next action: Review photo set and estimate lines  │
├────────────────────────────────────────────────────┤
│ Left: status + documents        Right: timeline    │
│ Left: primary actions           Right: next tasks  │
└────────────────────────────────────────────────────┘

This turns the current stacked density into a more legible workspace while preserving semantic order.

Fix 9 — Embedded help and expectation card

┌──────────────────────────────────────┐
│ What happens next                    │
│ • We review your request in 1–2 days │
│ • We contact you if more info is needed
│ • You receive an email when access is ready
│ [ Read eligibility details ]         │
└──────────────────────────────────────┘

This brings support and expectation-setting to the point of need instead of hiding them behind generic help.

Fix 10 — Dashboard shortcut cluster inspired by modern claim tools

┌──────────────────────────────────────┐
│ Quick actions                        │
│ [ Call ] [ Email ] [ Upload ]        │
│ [ Notes ] [ Documents ] [ Search ]   │
└──────────────────────────────────────┘

Encircle’s mobile claim home page shows the value of operational shortcuts such as GPS, phone, email, documents, notes, search, and sync state. FireAndStorm can bring the same clarity into its role dashboards.

Open Questions and Limitations

Exact Lighthouse, Axe, and WAVE scores were not directly available in this environment, so no fabricated current scores are included. The report therefore uses official tool guidance plus public-route evidence to provide a score-ready remediation plan and target bands instead. Chrome’s Lighthouse docs confirm those tools can be run on public or authenticated pages, WAVE’s browser extension can evaluate password-protected and dynamic pages, and WebAIM as well as Deque both emphasize that automated tools do not replace manual evaluation.

Rendered HTML screenshots of live pages were not available from this environment, so the “snapshots” in this report are rendered-text snapshots plus semantic DOM reconstructions. That means visual-only issues such as exact spacing, contrast, type scale, focus styling, and breakpoint behavior still require live browser QA. WCAG contrast checks, keyboard traps, screen-reader announcements, and dialog focus handling should all be verified in-browser before release.

Finally, no authenticated production workspace beyond the public login and request pages was accessible. The role-based demo dashboards and claim-detail pages were therefore used as the only observable representation of the post-login experience. That is enough to identify the estate’s biggest structural and language problems, but it is not enough to certify the real signed-in production experience without direct testing of private routes.