.portfolio-listing-section{padding-block:var(--section-gap)}.portfolio-listing-grid{display:grid;grid-template-columns:repeat(2,1fr)}.portfolio-listing-grid>.project-card:first-child{grid-column:1 / -1}.portfolio-listing-grid .project-card{background-color:#fff0;overflow:visible;display:block;text-decoration:none}.portfolio-listing-grid .project-card-text{display:grid;grid-template-columns:1fr;padding:clamp(36px, 4.5vw, 64px) clamp(24px, 5vw, 72px) clamp(28px, 3.5vw, 48px);border-bottom:1px solid rgb(75 84 64 / .16)}.portfolio-listing-grid>.project-card:first-child .project-card-text{grid-template-columns:1fr 1fr;gap:clamp(32px, 4vw, 64px);max-width:calc(1320px + clamp(24px, 5vw, 72px) * 2);margin-inline:auto;width:100%;box-sizing:border-box}.portfolio-listing-grid .project-card-eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--font-body);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:rgb(75 84 64 / .55);margin-bottom:clamp(10px, 1.2vw, 16px)}.portfolio-listing-grid .project-card-eyebrow::before{content:'';display:block;width:24px;height:1px;background-color:rgb(75 84 64 / .35);flex-shrink:0}.portfolio-listing-grid .project-card-title{font-size:var(--text-5xl);font-weight:400;line-height:1;letter-spacing:-.015em;margin-bottom:0;transition:color var(--transition)}.portfolio-listing-grid>.project-card:first-child .project-card-title{font-size:var(--text-display)}.portfolio-listing-grid .project-card:hover .project-card-title{color:var(--color-mulberry)}.portfolio-listing-grid>.project-card:first-child .project-card-detail{padding-top:clamp(32px, 3.5vw, 52px)}.portfolio-listing-grid .project-card-desc{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.7;display:block;-webkit-line-clamp:unset}.portfolio-listing-grid .project-card-image{position:relative;aspect-ratio:4 / 3;overflow:hidden}.portfolio-listing-grid>.project-card:first-child .project-card-image{aspect-ratio:21 / 9}.portfolio-listing-grid .project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-out)}.portfolio-listing-grid .project-card:hover .project-card-image img{transform:scale(1.03)}.no-projects-notice{padding:clamp(48px, 6vw, 96px) clamp(24px, 5vw, 72px);color:var(--color-text-muted)}.pf-project-row{display:grid;grid-template-columns:1fr 1fr;min-height:clamp(340px, 34vw, 520px);text-decoration:none}.pf-project-row+.pf-project-row{margin-top:clamp(40px, 5vw, 80px)}.pf-project-row--reverse .pf-row-image{order:2}.pf-project-row--reverse .pf-row-content{order:1}.pf-row-image{position:relative;overflow:hidden;background:var(--color-warm-stone)}.pf-row-image-inner{position:absolute;top:-9%;left:0;width:100%;height:118%}.pf-row-image-inner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;will-change:transform}.pf-row-content{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px, 4vw, 64px);background-color:var(--color-limestone)}.pf-row-eyebrow{display:block;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgb(75 84 64 / .55);margin-bottom:clamp(12px, 1.4vw, 20px)}.pf-row-title{font-size:var(--text-4xl);font-weight:400;line-height:1.05;letter-spacing:-.012em;color:var(--color-olive);margin-bottom:clamp(16px, 2vw, 28px);transition:color var(--transition)}.pf-project-row:hover .pf-row-title{color:var(--color-mulberry)}.pf-row-desc{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.72;max-width:46ch;margin-bottom:clamp(24px, 3vw, 40px)}.pf-row-cta{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-olive);text-decoration:none;transition:color var(--transition)}.pf-project-row:hover .pf-row-cta{color:var(--color-mulberry)}@media (max-width:768px){.pf-project-row{grid-template-columns:1fr;min-height:auto}.pf-row-content{order:1}.pf-row-image{order:2}.pf-project-row--reverse .pf-row-content{order:1}.pf-project-row--reverse .pf-row-image{order:2}.pf-row-image{aspect-ratio:4 / 3}.pf-row-image-inner{top:0;height:100%}.pf-row-content{padding:clamp(28px, 6vw, 44px) clamp(24px, 6vw, 40px)}}