refactor(components): separate page shells from reusable components

Additional info:
  - move page-specific shells into src/components/pages/
  - keep reusable building blocks and home sections in their existing component folders
  - update PageLayout and the home route imports to the new page-shell paths
  - preserve current page behavior while making the component tree easier to navigate
This commit is contained in:
2026-06-19 21:03:27 -07:00
parent d348174f95
commit 9398321fac
9 changed files with 20 additions and 20 deletions
+94
View File
@@ -0,0 +1,94 @@
---
const groups = [
{
title: 'Board Certified Behavioral Analysts & Psychologists',
members: [
['team-rula-diab.webp', 'Rula Diab, BCBA, LBA, M.Ed', 'Clinical Director'],
['team-jennifer-espinoza.webp', 'Jennifer Espinoza, MAOL/ABA', 'Clinical BCBA'],
['team-timirah-clay.webp', 'Timirah Clay, M.Psy/ABA', 'Clinical BCBA']
]
},
{
title: 'Clinical Support',
members: [
['team-carol-harrington.webp', 'Carol Harrington, A.A. Spec. Ed.', 'Clinical Manager'],
['team-rachel-crosby.webp', 'Rachel Crosby', 'Clinical Administrator'],
['team-jennifer-bonefont.webp', 'Jennifer Bonefont, B.A. Psy', 'Clinical Client Advocate Supervisor']
]
},
{
title: 'Clinical Case Supervisors',
members: [['team-rachael-sanchez.webp', 'Rachael Sanchez, BS, M Psy/ABA', 'Clinical Supervisor']]
},
{
title: 'Clinical Education Specialists',
members: [['team-mahima-bedi.webp', 'Mahima Bedi', 'Clinical Instructor']]
},
{
title: 'ABA Clinic Management',
tagline: 'Applied Behavior Analysis "(ABA) at your service"',
tinted: true,
members: [
['team-mariah-marley.webp', 'Mariah Marley', 'Claims Billing'],
['team-eney-garcia.webp', 'Eney Garcia, BA', 'Accounts Billing'],
['team-ayah-shahbander.webp', 'Ayah Shahbander', 'Human Resources'],
['team-barbara-samanich.webp', 'Barbara Samanich, BFA', 'Creative Marketing Developer']
]
}
];
---
<article class="team-page">
<section class="team-intro container-narrow">
<h2>Our Clinical Team</h2>
<p class="script-label">Arizona Institute for Autism<br />Scottsdale, Arizona</p>
<p>AIA's clinical team consists of experienced professionals and paraprofessionals as well as Board Certified Behavior Analysts (BCBA) and Psychologists who have diverse experience and expertise.</p>
</section>
{groups.map((group) => (
<section class:list={['team-group', { 'section-tint': group.tinted }]}>
<div class="container">
<h2>{group.title}</h2>
{group.tagline && <p class="team-group__tagline"><em>{group.tagline}</em></p>}
<div class="team-grid">
{group.members.map(([image, name, role]) => (
<article class="team-member">
<div class="team-thumb">
<img src={`/assets/images/${image}`} alt={name} loading="lazy" />
</div>
<h3>{name}</h3>
<p>{role}</p>
</article>
))}
</div>
</div>
</section>
))}
<section class="team-careers">
<div class="container-narrow">
<p class="script-label">Join the AIA Team!</p>
<h2>Employment Opportunities</h2>
<p>Apply online to join the AIA team! At the Arizona Institute for Autism (AIA) we are on a mission to improve special education and strengthen communities throughout Arizona.</p>
<p>Our talented and passionate employees are a critical piece to the high-quality ABA therapy we provide along with our commitment to behavioral health, school solutions, and community outreach. For questions regarding open positions, please contact us at <a href="mailto:hr@azinstitute4autism.com">hr@azinstitute4autism.com</a>.</p>
<a class="button" href="/careers">View Open Positions</a>
</div>
</section>
</article>
<style>
.team-intro { padding-block: 4rem; text-align: center; }
.team-intro .script-label { font-size: 1.8rem; }
.team-group { padding-block: 2rem 4rem; text-align: center; }
.team-group h2 { margin: 0 auto 1rem; max-width: 760px; }
.team-group__tagline { font-size: 1.125rem; margin: 0 auto 2rem; }
.team-grid { display: flex; flex-wrap: wrap; gap: 2rem 1.5rem; justify-content: center; }
.team-member { flex: 0 0 227px; }
.team-thumb { border-radius: 4px; overflow: hidden; }
.team-thumb img { display: block; object-fit: cover; transform: scale(1.1); transition: transform .5s; width: 100%; }
.team-thumb img:hover { transform: scale(1.05); }
.team-member h3 { font-family: var(--font-body); font-size: .8rem; margin-bottom: 0; }
.team-member p { font-size: .85rem; margin: 0; }
.team-careers { padding-block: 5rem; }
.team-careers .button { margin-left: 50%; margin-top: 4rem; translate: -50%; }
@media (max-width: 950px) {
.team-member { flex-basis: min(100%, 227px); }
}
</style>