Repository navigation
design: team-page - Add the Team page patterns (LSA-109) - #142
Conversation
…ro (LSA-109) Patterns - Add Hero - Split Index Card: split hero with a grouped jump-link team index - Add Section - Profile Card Group: three-column plain portrait cards with anchors - Add Section - Text Stack: eyebrow, H2 and stacked lede paragraphs on a band - Add Section - Text Stack With Actions: text stack with a primary and two ghost buttons - Add CTA - Dark Band Buttons: fixed-dark closing band with two buttons Behaviour - Keep the hero text sticky while the index card scrolls past - Slide and recolour index rows on hover and focus - Offset jump links and smooth-scroll on this page only - Drop the shared arrow tile on the ghost buttons and add the arrow to the dark primary button Styles - Add about-team.scss and compiled about-team.css for what JSON cannot express - Reuse existing tokens, button-primary-on-dark and is-style-outline, with no new tokens or styles Wiring - Register about-team.css in package.json, the editor styles and the effect styles - Load it on /about/team/ and wherever the patterns render Content - Use the About page roster, roles and DEV photo URLs - Link the CTAs to /free-consultation/, /work/, /about/careers/, /about/culture/ and the LightSpeed LinkedIn page
Bug fix - Cap the profile grid to a 76rem measure so three columns no longer stretch across the full wide width - Portraits drop from about 440x550 to about 392x490 at 1440px, matching the design's card size Files - Add the ls-profile-grid class to the grid in Section - Profile Card Group - Add the max-width rule to about-team.scss and recompile about-team.css - Add ls-profile-grid to the render markers in inc/animations.php
…109) Hero - Add a primary "Book a consultation" and an outline "Explore our culture" button - Split the index into two side-by-side lists with the role under each name - Change the hero columns to 50/50 and centre them vertically - Cut the hero height by about a third so the text and card are balanced Cleanup - Remove the sticky hero column rule, no longer needed - Keep the row hover slide and the jump links Files - Update hero-split-index-card.php - Update about-team.scss and recompile about-team.css
…utline override (LSA-109) Careers - Remove the "Explore our culture" button - Keep View Open Roles and Connect on LinkedIn Buttons - Keep the shared is-style-outline button for every secondary button - Remove the no-arrow override the hero, Careers row and CTA band no longer need Files - Update hero-split-index-card.php, text-stack-actions.php and cta-dark-band-buttons.php - Remove the ghost-button rule from about-team.scss and recompile about-team.css - Correct the about-team comment in inc/animations.php
…edge (LSA-109) Bug fix - Remove the inline pill radius, 1px border and font size from the CTA band's outline button - The arrow tile was poking out of the fully round end; the button now uses the default 8px radius and 2px border like the hero and Careers buttons Kept - On-dark text colour, transparent background and soft border colour Files - Update cta-dark-band-buttons.php
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
Changelog - Add the Team page patterns entry linking to PR 142 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Conflicts - Keep both sides in package.json: the Careers and Culture build entries plus about-team - Keep both sides in functions.php and inc/animations.php: the careers editor style and effect bundle plus about-team - Put the Team entry above the Careers and Culture entries in CHANGELOG.md Cleanup - Correct the about-team effect-style comment to match the final behaviour Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Design Pull Request
Linked issues
Relates to Linear LSA-109 (design: team-page - Build Team page). It does not close the issue: the Team page content on DEV, SEO metadata and the manual QA are still open.
Design Overview
The five section patterns for the About "Team" page (
/about/team/), built from the standalone prototypeAbout Team Standalone.htmland the content doc03-about-team.md.split-header-profile-card-grid), linked directly to the DEV media. The bios are the design's, checked against the About focus lines. Links:/free-consultation/,/work/,/about/careers/,/about/culture/and the LightSpeed LinkedIn page already used in the footer.is-style-outlineandis-style-button-primary-on-dark; the band reusesls-corner-glowand thesurface.band-startand on-dark tokens; the eyebrow reuses thelightspeed/dotIcon block. No new tokens and no new block or section styles.Design Files / References
Standalone HTML prototype
About Team Standalone.htmland content doc03-about-team.md. No Figma frames.Changes
patterns/hero/hero-split-index-card.php,patterns/sections/profile-card-group.php,patterns/sections/text-stack.php,patterns/sections/text-stack-actions.phpandpatterns/cta/cta-dark-band-buttons.php. Layout, spacing, type and colour are block attributes and existing tokens; the profile card is a plain group with no card shell.src/scss/structural/about-team.scss(compiled toassets/css/about-team.css) owns only what JSON cannot express: the index row hover, the jump-link scroll offset and smooth scroll (scoped to pages with the index hero and off under reduced motion), the profile grid measure, balanced heading wrapping, and the arrow on the dark primary button. Each rule carries a JSON-limitation comment.inc/animations.phpregisters theabout-teambundle (loads on/about/team/and wherever the patterns render),functions.phpadds the editor stylesheet andpackage.jsonadds the build entries.Scope and exclusions
CHANGELOG.md(11 in total), 590 added and 3 removed lines againstdevelop.assets/css/about-team.cssis compiled output (1 added line). That is above the preferred ~400 lines but within 15 files and under 800 lines. It is one outcome, and the SCSS depends on the patterns' classes, so it is not split.Screenshots / video
None attached. Checked on the local site at 1440px and 390px: the hero is 536px tall (text 343px, index card 395px), the portraits are 392 x 490px at 1440px, there is no horizontal scroll, and all 17 jump anchors resolve.
Accessibility / performance notes
prefers-reduced-motion.Testing
npm run lint:jsonpasses (notheme.jsonorstyles/file changed)npm run security:scanpassesnpm run patterns:escapereports nothing for the five new patternsnpm run build:cssleaves no diffnpm run theme:validatecompletes with warnings onlynpx stylelint src/scss/structural/about-team.scsspassesphp -land phpcs (WordPress standard) pass for the five patterns,inc/animations.phpandfunctions.phpSINGLE_PAGE_URLon/about/team/(Chromium plus Mobile Chrome): 15 passed, run twice (the second after the maintainer switched the site to dark mode; the Playwright browser's own colour scheme was not confirmed)dark.jsontoken values so far)Changelog
meta:needs-changelog: adds new patterns and a stylesheet. The entry is inCHANGELOG.mdon this branch.Checklist
🤖 Generated with Claude Code
Summary by CodeRabbit