.cx-portfolio-index h1, .cx-portfolio-index h2 { margin:0; color:#29251f; text-transform:none; }
.cx-portfolio-index h1 { font-size:clamp(34px,4vw,57px); line-height:1.08; }
.cx-portfolio-index nav { margin:clamp(18px,2.2vw,28px) 0; }
.cx-portfolio-index nav h2 { font-size:clamp(19px,1.7vw,25px); line-height:1.2; }
.cx-portfolio-index .cx-portfolio-families {
	display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px 10px;
	margin:12px 0 0; padding:0; list-style:none;
}
.cx-portfolio-families li { min-width:0; margin:0; padding:0; }
.cx-portfolio-families li::before { content:none; }
.cx-portfolio-index .cx-portfolio-families a {
	box-sizing:border-box; display:flex; align-items:center; gap:10px; height:100%; min-height:52px;
	padding:4px 9px 4px 4px; background:#fffdf7; border:1px solid #ded8cd;
	color:#302920; text-decoration:none; font-size:15px; font-weight:600; line-height:1.24;
}
.cx-portfolio-index .cx-portfolio-families a:hover { background:#f4ebdd; border-color:#baa17f; }
.cx-portfolio-index .cx-portfolio-families a:focus-visible { outline:2px solid #975314; outline-offset:2px; }
.cx-portfolio-families .cx-portfolio-family-photo { flex:none; width:42px; height:42px; object-fit:cover; }
.cx-portfolio-index .cx-portfolio-projects-title {
	margin:clamp(24px,3vw,44px) 0 12px; font-size:clamp(24px,2.5vw,35px); line-height:1.2;
}
@media(max-width:940px) {
	.cx-portfolio-index .cx-portfolio-families { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:640px) {
	.cx-portfolio-index .cx-portfolio-families { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
	.cx-portfolio-index .cx-portfolio-families a { min-height:48px; gap:6px; padding:4px; font-size:13px; }
	.cx-portfolio-families .cx-portfolio-family-photo { width:32px; height:36px; }
}
