/* The portfolio uses the shared project palette, cards, and page shell. */
.project-case-study .site-portfolio { padding-top: 60px; padding-bottom: 76px; }
.project-case-study .site-portfolio-hero { padding-bottom: 38px; border-bottom: 1px solid var(--case-line); }
.project-case-study .site-portfolio-hero .case-eyebrow { font-size: 12px; }
.project-case-study .site-portfolio-hero h1 { margin: 15px 0 18px; font-size: clamp(38px, 5.1vw, 60px); line-height: 1.1; letter-spacing: -.055em; }
.project-case-study .site-portfolio-summary { max-width: 65ch; margin: 0; color: var(--case-muted); font-size: 18px; line-height: 1.75; }
.project-case-study .site-portfolio-copy { max-width: 896px; margin-top: 32px; }
.project-case-study .site-portfolio-toolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 30px 0; }
.project-case-study .site-portfolio-filters { display: flex; flex-wrap: wrap; gap: 8px; max-width: 1000px; }
.project-case-study .site-portfolio-filter { min-height: 42px; padding: 8px 13px; border: 1px solid var(--case-line); border-radius: 3px; background: transparent; color: var(--case-muted); font: inherit; font-size: 14px; line-height: 1.5; text-align: left; cursor: pointer; }
.project-case-study .site-portfolio-filter:hover { background: var(--case-tint); border-color: #a6b6a6; color: var(--case-accent); }
.project-case-study .site-portfolio-filter[aria-pressed="true"] { background: var(--case-accent); border-color: var(--case-accent); color: #fff; }
.project-case-study .site-portfolio-count { flex-shrink: 0; margin: 9px 0 0; color: var(--case-muted); font-size: 14px; line-height: 1.7; }
.project-case-study .site-portfolio-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 30px; margin: 0; padding: 0; list-style: none; }
.project-case-study .site-portfolio-project { min-width: 0; margin: 0; }
.project-case-study .site-portfolio-project .case-project-card { display: block; min-width: 0; height: 100%; padding: 14px; border: 1px solid #cbd4c7; border-radius: 5px; background: #f0f2eb; box-shadow: inset 0 0 5px rgba(32, 46, 42, .035); }
.project-case-study .site-portfolio-project .case-project-card:hover, .project-case-study .site-portfolio-project .case-project-card:focus-visible { border-color: #99ad9c; }
.project-case-study .site-portfolio-project .case-project-card-body { padding-top: 19px; }
.project-case-study .site-portfolio-project .case-eyebrow { font-size: 14px; }
.project-case-study .site-portfolio-project .case-project-card h3 { margin: 7px 0 10px; font-size: 22px; line-height: 1.35; letter-spacing: -.5px; overflow-wrap: anywhere; }
.project-case-study .site-portfolio-project .case-project-card p { font-size: 15px; line-height: 1.8; }
.project-case-study .site-portfolio-empty { margin: 0; font-size: 17px; }
@media (max-width: 1000px) {
	.project-case-study .site-portfolio-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.project-case-study .site-portfolio-toolbar { flex-direction: column; gap: 13px; }
	.project-case-study .site-portfolio-count { margin-top: 0; }
}
@media (max-width: 600px) {
	.project-case-study .site-portfolio { padding-top: 37px; padding-bottom: 48px; }
	.project-case-study .site-portfolio-hero { padding-bottom: 28px; }
	.project-case-study .site-portfolio-summary { font-size: 17px; }
	.project-case-study .site-portfolio-toolbar { padding-block: 24px; }
	.project-case-study .site-portfolio-filter { min-height: 44px; padding-inline: 11px; }
	.project-case-study .site-portfolio-grid { grid-template-columns: minmax(0, 1fr); gap: 34px; }
	.project-case-study .site-portfolio-project .case-project-card h3 { font-size: 22px; }
}
@media print {
	.project-case-study .site-portfolio { padding-block: 0; }
	.project-case-study .site-portfolio-filters { display: none; }
	.project-case-study .site-portfolio-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.project-case-study .site-portfolio-project { break-inside: avoid; }
}
