/* Client work and an optional project catalog inside the Builder section. */
.p-builds { margin-top:52px; padding-top:38px; border-top:1px solid var(--p-line); }
.p-builds-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:24px; }
.p-builds-heading h3 { max-width:600px; font-size:clamp(28px,3.6vw,42px); font-weight:500; line-height:1.12; letter-spacing:-.035em; }
.p-builds-heading p { max-width:300px; color:var(--p-muted); font-size:14px; font-weight:300; line-height:1.6; }
.p-client-sites { display:grid; grid-template-columns:1fr; }
.p-client-site { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); min-width:0; overflow:hidden; border:1px solid var(--p-line); border-radius:20px; background:#141416; }
.p-client-site-image { display:block; aspect-ratio:16/10; overflow:hidden; border-right:1px solid var(--p-line); background:#211b2b; }
.p-client-site-image img { width:100%; height:100%; object-fit:cover; object-position:top; transition:transform .4s ease; }
.p-client-site-image:hover img { transform:scale(1.025); }
.p-client-site-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:25px 32px 28px; }
.p-client-site-copy h4 { font-size:27px; font-weight:500; line-height:1.16; letter-spacing:-.025em; }
.p-client-site-copy>p { margin-top:12px; color:var(--p-muted); font-size:15px; font-weight:300; line-height:1.6; }
.p-client-site-deliverables { display:flex; flex-wrap:wrap; gap:6px 16px; margin:18px 0 23px; padding:0; list-style:none; color:var(--p-accent); font-size:12px; font-weight:400; line-height:1.6; }
.p-client-site-copy .p-text-link { font-size:13px; }
.p-build-catalog { margin-top:24px; border:1px solid var(--p-line); border-radius:18px; background:#111113; }
.p-build-catalog summary { display:flex; align-items:center; gap:16px; padding:24px 26px; list-style:none; cursor:pointer; border-radius:17px; }
.p-build-catalog summary::-webkit-details-marker { display:none; }
.p-build-catalog summary::marker { content:''; }
.p-build-catalog summary>span:first-child { font-size:21px; font-weight:500; line-height:1.3; letter-spacing:-.02em; }
.p-build-count { margin-left:auto; color:var(--p-muted); font-size:12px; line-height:1.5; }
.p-build-catalog summary svg { width:20px; height:20px; fill:none; stroke:var(--p-accent); stroke-width:1.5; transition:transform .2s ease; }
.p-build-catalog[open] summary svg { transform:rotate(180deg); }
.p-build-catalog summary:hover { background:#19161e; }
.p-build-catalog summary:focus-visible { outline:3px solid var(--p-accent); outline-offset:6px; }
.p-build-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:0; padding:0 26px 8px; list-style:none; }
.p-build-list li { min-width:0; border-top:1px solid var(--p-line); }
.p-build-list li:nth-child(odd) { padding-right:24px; }
.p-build-list li:nth-child(even) { padding-left:24px; border-left:1px solid var(--p-line); }
.p-build-list a { display:flex; height:100%; flex-direction:column; align-items:flex-start; padding:24px 0; text-decoration:none; }
.p-build-name { font-size:21px; font-weight:500; line-height:1.25; letter-spacing:-.02em; }
.p-build-kind { margin-top:7px; color:var(--p-accent); font-size:11px; line-height:1.5; }
.p-build-description { max-width:440px; margin-top:12px; color:var(--p-muted); font-size:14px; font-weight:300; line-height:1.6; }
.p-build-visit { margin-top:auto; padding-top:18px; color:#d6c1f0; font-size:12px; font-weight:400; line-height:1.5; text-decoration:underline; text-underline-offset:4px; }
.p-build-visit svg { display:inline-block; width:14px; height:14px; margin-left:5px; vertical-align:-2px; fill:none; stroke:currentColor; stroke-width:1.5; }
.p-build-list a:hover .p-build-name { color:var(--p-accent); }
@media(max-width:767px) {
  .p-builds { margin-top:36px; padding-top:29px; }
  .p-builds-heading { flex-direction:column; gap:13px; margin-bottom:22px; }
  .p-builds-heading h3 { font-size:31px; }
  .p-builds-heading p { max-width:460px; }
  .p-client-site { grid-template-columns:1fr; }
  .p-client-site-image { border-right:0; border-bottom:1px solid var(--p-line); }
  .p-client-site-copy { padding:23px 24px 26px; }
  .p-client-site-copy h4 { font-size:26px; }
  .p-build-catalog summary { gap:12px; padding:23px 22px; }
  .p-build-catalog summary>span:first-child { font-size:20px; }
  .p-build-list { grid-template-columns:1fr; padding:0 22px 4px; }
  .p-build-list li:nth-child(odd),.p-build-list li:nth-child(even) { padding:0; border-left:0; }
  .p-build-list a { padding:23px 0; }
}
@media(max-width:370px) {
  .p-client-site-copy { padding:21px 20px 24px; }
  .p-build-catalog summary { padding:21px 18px; gap:10px; }
  .p-build-count { font-size:11px; }
  .p-build-catalog summary>span:first-child { font-size:18px; }
  .p-build-list { padding-inline:18px; }
}
@media(prefers-reduced-motion:reduce) {
  .p-client-site-image img,.p-build-catalog summary svg { transition:none; }
  .p-client-site-image:hover img { transform:none; }
}
