/* ==========================================================================
   PAGE — shared styles for About / Services / Shop / Events
   (reuses .service-row, .event-row, .resource-card from home.css)
   ========================================================================== */

.page-hero{ padding-top:140px; padding-bottom:56px; }
.page-hero h1{ font-size:clamp(2.5rem,7vw,6rem); }

/* ---------- About ---------- */
.about-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  padding:64px 0;
  border-top:1px solid var(--line);
}
.about-grid img{ aspect-ratio:4/5; object-fit:cover; filter:grayscale(1); }
.about-timeline{ border-top:1px solid var(--line); }
.timeline-item{
  display:grid;
  grid-template-columns:200px 1fr;
  gap:32px;
  padding:32px 0;
  border-bottom:1px solid var(--line);
}
.timeline-item h3{ text-transform:none; font-family:var(--font-body); font-weight:700; font-size:1.15rem; margin-bottom:4px; }
.timeline-item .org{ color:var(--accent); font-family:var(--font-mono); font-size:.8125rem; }
.timeline-item p{ color:#C7C7C7; font-size:.95rem; max-width:56ch; margin-top:12px; }
@media (max-width:768px){
  .about-grid{ grid-template-columns:1fr; }
  .timeline-item{ grid-template-columns:1fr; gap:8px; }
}

.chip-row{ display:flex; flex-wrap:wrap; gap:10px; padding:48px 0; border-top:1px solid var(--line); }
.chip{
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.04em;
  padding:8px 16px;
  border:1px solid var(--line);
  color:var(--muted);
}

/* ---------- Services list + picker ---------- */
.service-block{ border-top:1px solid var(--line); padding:48px 0; display:grid; grid-template-columns:80px 1fr; gap:32px; }
.service-block:last-of-type{ border-bottom:1px solid var(--line); }
.service-block h3{ margin-bottom:16px; }
.service-block p{ color:#C7C7C7; max-width:60ch; }
@media (max-width:768px){ .service-block{ grid-template-columns:40px 1fr; } }

.picker{ margin-top:80px; border:1px solid var(--line); padding:clamp(32px,5vw,56px); }
.picker-list{ display:flex; flex-direction:column; gap:1px; background:var(--line); margin:32px 0; border:1px solid var(--line); }
.picker-item{ display:flex; align-items:center; gap:16px; padding:18px 20px; background:var(--ink); cursor:pointer; }
.picker-item input{ width:18px; height:18px; accent-color:var(--accent); }
.picker-item span{ font-family:var(--font-mono); font-size:.9375rem; }
#quoteBtn:disabled{ opacity:.4; cursor:not-allowed; }
.picker-note{ margin-top:16px; color:var(--muted-on-ink); font-size:.8125rem; font-family:var(--font-mono); }

/* ---------- Shop ---------- */
.shop-card{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:56px;
  align-items:center;
  border:1px solid var(--line);
  padding:48px;
  margin-top:48px;
}
.shop-card img{ aspect-ratio:3/4; object-fit:cover; }
@media (max-width:768px){ .shop-card{ grid-template-columns:1fr; } .shop-card img{ max-width:220px; } }
