Tjek håndværker Blog Prisestimat Kontrakter Log ind

Tilgængelighedserklæring

Bygpas, der drives af UBRY (CVR 41366230), stræber efter at gøre vores digitale tjeneste tilgængelig for alle brugere i henhold til lov om tilgængelighed af produkter og tjenester (implementering af European Accessibility Act, EU-direktiv 2019/882).

Denne erklæring gælder for:

1. Compliance-status

Bygpas er delvist i overensstemmelse med WCAG 2.1 niveau AA.

Med "delvist i overensstemmelse" mener vi, at størstedelen af indholdet opfylder WCAG 2.1 AA-kravene, men enkelte områder har kendte problemer, som vi arbejder på at udbedre. Se afsnit 2 for en konkret liste.

Seneste interne audit: 24. april 2026 (intern audit med AI-assisteret static analysis og manuel kodegennemgang af hele public/-katalogstrukturen, dokumenteret i docs/a11y/audit-2026-04-24.md)
Seneste udbedringssprint: 29. april 2026 (automatisk rettelige issues fra audit; se afsnit 2.10–2.15)
Forrige audit: 16. april 2026
Næste planlagte audit: 24. oktober 2026 (halvårlig)
Audit-rapport: Findes som intern dokumentation (kan rekvireres via hej@bygpas.io)

2. Kendt ikke-compliance

Vi er opmærksomme på følgende problemer og arbejder aktivt på at rette dem:

2.1 Kontrast i sekundær tekst (WCAG 1.4.3) — løst 24. apr 2026

Tokens --gray-400 og --gray-500 er opdateret til henholdsvis #6B7280 og #4B5563, hvilket giver AA-godkendt kontrast mod baggrunden. En regression i index.html (inline kritisk CSS der rullede gamle værdier) blev opdaget og rettet samme dag.

2.2 Focus-trap i modale dialoger (WCAG 2.1.2, 2.4.3) — løst (verificeret 29. apr 2026)

Alle modale dialoger har nu fuld focus-trap implementeret efter mønster fra log ind-dialogen: Tab cykler kun mellem fokuserbare elementer inde i dialogen, Escape lukker, baggrunds-klik lukker, og fokus returneres til opener-knappen ved lukning. Verificerede dialoger:

Hver dialog har korrekt role="dialog", aria-modal="true" og aria-labelledby peger på dialog-titlen.

2.3 Deaktiverede navigations-links (WCAG 4.1.2) — løst 24. apr 2026

Placeholder-links i navigation og footer („Prisestimat“, „Kontrakter“) var markeret <span class="nav-link-disabled" aria-disabled="true"> på tværs af hele sitet. Alle forekomster er opdateret til aria-hidden="true", så skærmlæsere ikke annoncerer placeholder-links som aktive (aria-disabled signalerer at et element er interaktivt men midlertidigt slået fra, hvilket er misvisende for en ren label).

2.4 Score-ring verbal beskrivelse (WCAG 1.1.1) — løst 29. apr 2026, komponent retired maj 2026

Score-kort-komponenten er pensioneret som del af vurderingsfri-omlægning (maj 2026). Bygpas viser data fra offentlige kilder direkte uden at producere en samlet score. Datakilde-chips og indikator-flag har behørig role="img" og aria-label, og flag-ikonerne (styrke/advarsel/risiko) har sr-only tekst-prefix så skærmlæsere ikke længere er afhængige af farve alene (WCAG 1.4.1 Use of Color).

2.5 Ikke-tekst kontrast i borders (WCAG 1.4.11)

Kort-borders er nu i base-tokens rgba(0,0,0,0.12) (--border) og rgba(0,0,0,0.18) (--border-hover), hvilket opfylder AA for grafiske objekter. Enkelte komponenter kan stadig bruge ældre værdier direkte i styling — sporing pågår.

2.6 Status-meddelelser uden live-region (WCAG 4.1.3) — løst 24. apr 2026

Rapport-færdig-tilstanden (#rapport-done) og GDPR-sletnings-fejlmeddelelsen (#gdpr-delete-error) havde tidligere ingen aria-live. Begge er nu opdateret: rapport-færdig med aria-live="polite", sletnings-fejl med role="alert". Skærmlæsere annoncerer nu begge tilstande.

2.7 Formular-labels på blog-nyhedsbrev (WCAG 3.3.2) — løst 24. apr 2026

Blog-sektionens nyhedsbrev-tilmelding havde <input type="email"> uden synlig label eller aria-label. Alle forekomster på tværs af blog-posts er opdateret med aria-label="Email til nyhedsbrev".

2.8 Dekorative SVG-ikoner (WCAG 1.1.1) — løst 24. apr 2026

Dekorative SVG-ikoner på håndværker-tilmeldingsformularen manglede aria-hidden="true" eller var ikke inde i hidden parents. Disse er opdateret så skærmlæsere springer dem over (tekst-indholdet ved siden af ikonerne bærer hele informationen).

2.9 Blog-sider ikke fuld-auditeret — delvist løst 29. apr 2026

Vores blog-sektion (/blog/) er nu inkluderet i automatiserede heading-hierarki, alt-tekst, lang-attribut, skip-link og form-label tests (tests/a11y/*.test.ts). Alle 28 blog-posts består disse tests. Manuel kontrast-tjek og focus-flow-test pågår. Forventet: maj 2026.

2.10 Generisk link-tekst i cookie-banner (WCAG 2.4.4) — løst 29. apr 2026

"Læs mere"-linket i cookie-banneret pegede på privatlivspolitikken, men link-teksten alene var ikke selvbeskrivende. Skærmlæser-brugere der får links læst ud af kontekst kunne ikke afgøre destinationen. Alle 168 forekomster på tværs af kerne-sider, blog, byer, nyhedsbrev og admin er opdateret med aria-label="Læs mere om vores cookie-politik og privatlivspolitik".

2.11 Heading-hierarki i rapport (WCAG 1.3.1, 2.4.6) — løst 29. apr 2026

Rapport-siden havde to steder hvor heading-rækken sprang fra h3 til h5 (ejer-træ og anmeldelses-temaer), hvilket bryder WCAG 1.3.1 Info and Relationships. Begge er rettet til h4, så skærmlæser-brugere kan navigere via heading-niveauer i den korrekte rækkefølge.

2.12 Eksplicit type="button" på alle <button> (WCAG 4.1.2) — løst 29. apr 2026

92 <button>-elementer manglede eksplicit type-attribut, hvilket betyder de defaultede til type="submit" i <form>-kontekster. Det kunne forårsage utilsigtet form-submit ved klik på knapper der reelt var luk-modal- eller toggle-handlere. Alle er nu type="button"; eksplicitte submit-knapper er bevaret som type="submit".

2.13 Sider uden hamburger-handler (WCAG 2.4.8, 4.1.2) — løst 29. apr 2026

Tre sider (sammenlign.html, design-system.html, styleguide.html) havde nav-elementer og en hamburger-knap, men loadede ikke en JS-handler. Det betød at mobile-menuen ikke kunne åbnes med tastatur, aria-expanded blev aldrig opdateret, og aria-current="page" blev aldrig sat på det aktive nav-link. Alle tre sider loader nu hamburger.js, som dækker alle tre adfærder.

2.14 Komplementære <aside> uden navngivning (WCAG 2.4.6) — løst 29. apr 2026

Tre sidebar-asides i rapport-skabelonen ("Vores anbefaling", "Risiko for dig", "Juridisk posture") manglede aria-label. Skærmlæsere annoncerede dem som generiske "complementary"-landmarks uden formål. Hver enkelt har nu en kort aria-label der matcher den indeholdte h4-overskrift.

2.15 Tilstand-skift via aria-hidden (WCAG 4.1.2) — løst 29. apr 2026

Rapport-flowets show()/hide()-helpers togglede tidligere kun hidden-attributten og .hidden-CSS-klassen, men ikke aria-hidden. Det betød at hvis HTML-markup-en startede med aria-hidden="true", kunne skærmlæsere ikke se det rich indhold selv efter show() blev kaldt. Helpers fjerner nu også aria-hidden ved show(), og rapport-done-sektionen har fået aria-live="polite" så tilstandsskift fra loading til done annonceres.

3. Undtagelser (uforholdsmæssig byrde)

Vi påberåber os på nuværende tidspunkt ingen undtagelser efter reglen om "uforholdsmæssig byrde". Hvis situationen ændrer sig, opdaterer vi dette afsnit.

4. Hvordan vi tester

Vi kombinerer automatiserede og manuelle tests:

5. Feedback — sådan kontakter du os

Oplever du et tilgængelighedsproblem på Bygpas, vil vi meget gerne høre fra dig. Beskriv gerne:

Kontakt:

E-mail: hej@bygpas.io
Postadresse: UBRY, Østerbrogade 226, st. th, 2100 København Ø

Svartid: Vi svarer som udgangspunkt inden for 10 hverdage og senest inden for 14 dage (EAA-standarden for feedback-kanaler).

6. Håndhævelse — hvis du ikke er tilfreds

Hvis vores svar eller handling ikke er tilfredsstillende, kan du klage til tilsynsmyndigheden:

Digitaliseringsstyrelsen
Landgreven 4
Postboks 2193
1017 København K
E-mail: tilgaengelighed@digst.dk
Hjemmeside: digst.dk

For forbrugerklager specifikt kan du også kontakte Ligebehandlingsnævnet, der fører tilsyn med European Accessibility Act:

Ligebehandlingsnævnet
c/o Ankestyrelsen
7998 Statsservice
Hjemmeside: ast.dk/naevn/ligebehandlingsnaevnet

7. Lovgrundlag

Denne tilgængelighedserklæring er udfærdiget i henhold til:

8. Løbende arbejde

Tilgængelighed er en proces, ikke en engangsopgave. Vi:

Hvis du har input til, hvordan vi kan blive bedre, hører vi meget gerne fra dig via hej@bygpas.io.