Commit Graph

8 Commits

Author SHA1 Message Date
popovskik 508cb79334 fix(seo): add endDate, performer, offers to Event structured data
Clears the 3 non-critical Events issues in Search Console
("Missing field endDate/performer/offers") across all /projects/
recap pages. These are free, single-day events, so endDate mirrors
startDate, performer is MSOS (host org), and offers is a zero-price
Offer. Generated centrally in tools/seo_inject.py and re-injected.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-30 09:40:14 +02:00
popovskik 0a1971efad style(brand): unify orange to #FA7850 + yellow token; fix tablet header gap
Deploy to Production on Develop Push / deploy (push) Successful in 22s Details
- Brand orange is now the official #FA7850 everywhere: folded the stray
  oranges (#F2762E, #E8833A, #ff6b2c) into it and kept a single darker shade
  (#E85D2A) for gradient depth + button hover. Added the official brand
  --yellow (#FFE16E) token.
- Tablet header gap (769-1024px): the fixed header shrinks 80->60px there but
  first-section paddings kept their 80px clearance; pull the first section up
  by the 20px delta in that range only (phones untouched). Verified on
  interior pages and the full-bleed homepage hero — gap now matches desktop,
  no overlap.
- Re-stamped cache-bust (v=f95de694).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-27 20:48:50 +02:00
popovskik fd9df42995 style(qa3): design-token foundation + safe polish/a11y fixes
Deploy to Production on Develop Push / deploy (push) Successful in 20s Details
- Add :root design tokens in _typography.css (was empty) — brand teal/orange,
  ink/text greys, radius + type scale + section rhythm. Visually neutral;
  new rules can reference var()s instead of scattered literals.
- a11y: visible :focus-visible ring on header nav + dropdown links (keyboard
  users had none).
- Fix synthesized faux-bold: .route-report h1 800 -> 700 (Inter loads 400-700).
- Testimonials column: overflow-y scroll -> auto (no permanent scrollbar gutter).
- Lightbox image radius 6px -> 8px (matches the site rounding scale).
- Consistent card affordance: homepage .news-card now lifts on hover like the
  news-hub / blog cards.
- Re-stamped cache-bust (v=1f64b22f).

Deferred (needs a brand decision): unifying the two primary oranges
(#FA7850 vs #F2762E) and the fuller literal->token migration.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-27 19:45:59 +02:00
popovskik 0052b38c1c fix(qa2): responsive Latest-news/FAQ at tablet + muted-text contrast sweep
Deploy to Production on Develop Push / deploy (push) Successful in 22s Details
- Latest-news row and FAQ grid now go 3 -> 2 -> 1 columns (added a 1024px
  tablet step); .news-card drops its brittle fixed 405.33px width and fills a
  responsive grid cell. Fixes cramped 3-across cards on 769-1024px.
- Contrast: replace #98A2B3 text color (2.58:1 on white) with the palette
  muted #667085 (~4.8:1) across 13 CSS files (31 text-color uses; borders/
  backgrounds untouched, verified none on dark backgrounds).
- Re-stamped cache-bust (v=6770822f).

Note: the ~20px-looser header top-gap at 769-1024px is left as a minor,
lower-risk follow-up (would need a coordinated multi-page padding pass).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-27 19:33:31 +02:00
popovskik c5bdb59a92 fix(qa): SI hero copy, footer width, form contrast + iOS input-zoom
Deploy to Production on Develop Push / deploy (push) Successful in 21s Details
From the QA audit — high-impact, low-risk fixes:
- SI homepage hero: replace leftover template boilerplate subtitle
  ("timski nabiralniki"...) and truncated badge with proper Slovene copy
  matching EN/MK.
- Footer: .footer-container was a hard width:1280px and got clipped by
  overflow-x:clip on 769-1279px screens; now width:100%; max-width:1280px.
- WCAG AA contrast: darken orange text (.article-publish-date, .mm-real-link)
  and the Ask-MSOS footer (.msa-foot) which were ~2.6-3:1 on white.
- iOS Safari focus-zoom: bump form/search/assistant inputs to 16px
  (.ms-field, .msa-input, .filterbar-search-field).
- Re-stamped cache-bust (v=9ff60d7a).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-27 19:18:17 +02:00
popovskik 954f186761 build: content-hash cache-busting for local CSS/JS (?v=hash)
Deploy to Production on Develop Push / deploy (push) Successful in 20s Details
Stops deploys being served stale from browser cache — the recurring "changes
do not show up until a hard refresh" problem.

- New tools/cache_bust.py stamps a global content hash onto every local
  <link>/<script> CSS/JS ref AND the @import lines in css/main.css (so partial
  edits bust too). External (https://) refs are untouched. Deterministic and
  idempotent: same content -> same stamp, any asset edit -> new stamp sitewide.
- Wired as the final step of tools/build_site.py so every build/deploy stamps.
- Initial stamp applied across 259 pages + main.css (v=64a53dd6).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-27 18:14:44 +02:00
popovskik 659f720e44 content(press): add MSOS president interview (YouTube) to 'In the media'
Add the interview 'Македонците се поврзуваат — интервју со лидерот на МСОС'
(youtube.com/watch?v=Vi6wzK9Zfwc) as the first item in the In the media list
on the EN/MK/SI press pages, with localized descriptions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-26 01:30:43 +02:00
popovskik 57a3ca187b Press: add /press/ page (EN/MK/SI) + footer link + coverage list
- New Press & media page in all three languages: press-enquiries contact,
  a 6-way logo download grid (EN/SI/MK x colour/white), an "MSOS at a glance"
  fact sheet (full legal name + preferred name), and a grouped coverage list
  (media, universities & institutions, official records, reference, government)
  with 29 verified third-party links, each described in EN/MK/SL.
- Styling in css/pages/_press.css (imported by main.css), on the site's tokens.
- Footer: added a "Press & media" link to the Organisation column on every page
  (all languages, relative paths correct for each page depth).
- SEO/sitemap refreshed so the new pages carry NGO schema + hreflang.

MK/SI copy is AI-drafted and pending a native proofread.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-07 23:35:49 +02:00