.portfolio-design-gallery{--portfolio-bg:#0f0f0f;--portfolio-accent:#c9a96e;--portfolio-border:hsla(0,0%,100%,.07);--portfolio-ease:0.4s ease}.portfolio-section__header{margin-bottom:2rem}@media (min-width:768px){.portfolio-section__header{margin-bottom:2.75rem}}.portfolio-section__eyebrow{color:var(--portfolio-accent);letter-spacing:.22em}.portfolio-section__title{margin-top:.5rem;font-family:var(--font-display);font-size:clamp(2.25rem,5.5vw,3.5rem);font-weight:400;font-style:italic;line-height:1.05;color:var(--text-primary)}.portfolio-section__subtitle{margin-top:.75rem;max-width:36rem;font-family:var(--font-ui);font-size:.9375rem;font-weight:300;line-height:1.6;color:var(--text-secondary)}.portfolio-masonry-rows{display:flex;flex-direction:column;gap:1.25rem}@media (min-width:768px){.portfolio-masonry-rows{gap:1.5rem}}.portfolio-row{display:grid;gap:1rem;align-items:stretch;min-width:0}@media (min-width:640px){.portfolio-row{gap:1.15rem}}@media (min-width:1024px){.portfolio-row{gap:1.25rem;--portfolio-row-h:clamp(300px,36vw,440px)}.portfolio-row--featured-trio,.portfolio-row--featured-trio-reverse{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:var(--portfolio-row-h)}.portfolio-row--twin-landscape{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-row--quad-portrait{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:var(--portfolio-row-h)}.portfolio-row--pair-portrait{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:var(--portfolio-row-h)}}@media (max-width:1023px){.portfolio-row--featured-trio,.portfolio-row--featured-trio-reverse{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-row--featured-trio .project-card[data-ratio=landscape],.portfolio-row--featured-trio-reverse .project-card[data-ratio=landscape]{grid-column:1/-1}.portfolio-row--pair-portrait,.portfolio-row--quad-portrait,.portfolio-row--twin-landscape{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-row--quad-portrait .project-card:nth-child(n+3){margin-top:0}}@media (max-width:639px){.portfolio-row--featured-trio,.portfolio-row--featured-trio-reverse,.portfolio-row--pair-portrait,.portfolio-row--quad-portrait,.portfolio-row--twin-landscape{grid-template-columns:minmax(0,1fr)}}.project-card{border-radius:5px;border:1px solid var(--portfolio-border);background:hsla(0,0%,100%,.02);box-shadow:0 12px 40px rgba(0,0,0,.35);transition:border-color var(--portfolio-ease),box-shadow var(--portfolio-ease),transform var(--portfolio-ease)}.project-card:focus-within,.project-card:hover{border-color:hsla(39,46%,61%,.35);box-shadow:0 20px 48px rgba(0,0,0,.5)}.project-card__link{display:block;color:inherit;text-decoration:none}.project-card__link--landscape{display:flex;flex-direction:column}.project-card__link--portrait{height:100%}.project-card{min-width:0;height:100%}.portfolio-row .project-card[data-ratio=portrait]{width:100%;max-width:none;margin-inline:0}@media (min-width:1024px){.portfolio-row--featured-trio .project-card,.portfolio-row--featured-trio-reverse .project-card,.portfolio-row--pair-portrait .project-card,.portfolio-row--quad-portrait .project-card{height:100%;min-height:0}.portfolio-row--featured-trio .project-card__link--landscape,.portfolio-row--featured-trio-reverse .project-card__link--landscape{display:flex;flex-direction:column;height:100%;min-height:0}.portfolio-row--featured-trio .project-card__media--landscape,.portfolio-row--featured-trio-reverse .project-card__media--landscape{flex:1 1 auto;aspect-ratio:unset;min-height:0}.portfolio-row--featured-trio .project-card__info--below,.portfolio-row--featured-trio-reverse .project-card__info--below{flex:0 0 auto}.portfolio-row--featured-trio .project-card__link--portrait,.portfolio-row--featured-trio-reverse .project-card__link--portrait,.portfolio-row--pair-portrait .project-card__link--portrait,.portfolio-row--quad-portrait .project-card__link--portrait{height:100%;min-height:0}.portfolio-row--featured-trio .project-card__media--portrait,.portfolio-row--featured-trio-reverse .project-card__media--portrait,.portfolio-row--pair-portrait .project-card__media--portrait,.portfolio-row--quad-portrait .project-card__media--portrait{height:100%;aspect-ratio:unset;min-height:0}}.project-card__media--landscape{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:4px 4px 0 0}.project-card__media--portrait{position:relative;aspect-ratio:9/16;width:100%;overflow:hidden;border-radius:4px}.portfolio-row--solo-landscape,.portfolio-row--solo-portrait{grid-template-columns:minmax(0,1fr)}.portfolio-row--solo-portrait{justify-items:center}@media (min-width:1024px){.portfolio-row--solo-portrait{grid-template-columns:minmax(0,min(100%,360px));justify-content:center;justify-items:stretch}}.project-card__img{object-fit:cover}.project-card__img,.project-card__img--zoom{transition:transform var(--portfolio-ease)}.project-card[data-ratio=landscape]:focus-within .project-card__img--zoom,.project-card[data-ratio=landscape]:hover .project-card__img--zoom{transform:scale(1.04)}.project-card[data-ratio=portrait]:focus-within .project-card__img,.project-card[data-ratio=portrait]:hover .project-card__img{transform:scale(1.03)}.project-card__hover-panel{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:transparent;transition:background var(--portfolio-ease);pointer-events:none}.project-card[data-ratio=landscape]:focus-within .project-card__hover-panel,.project-card[data-ratio=landscape]:hover .project-card__hover-panel{background:rgba(0,0,0,.28)}.project-card__shade{position:absolute;inset:0;background:linear-gradient(0deg,hsla(0,0%,6%,.92) 0,hsla(0,0%,6%,.45) 38%,transparent 72%);pointer-events:none;transition:opacity var(--portfolio-ease)}.project-card__hover-veil{position:absolute;inset:0;background:transparent;transition:background var(--portfolio-ease);pointer-events:none}.project-card[data-ratio=portrait]:focus-within .project-card__hover-veil,.project-card[data-ratio=portrait]:hover .project-card__hover-veil{background:rgba(0,0,0,.18)}.project-card__hover-cta{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-ui);font-size:.625rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--portfolio-accent);opacity:0;transform:translateY(6px);transition:opacity var(--portfolio-ease),transform var(--portfolio-ease);pointer-events:none}.project-card__hover-cta--landscape{position:relative;z-index:2}.project-card[data-ratio=landscape]:focus-within .project-card__hover-cta,.project-card[data-ratio=landscape]:hover .project-card__hover-cta,.project-card[data-ratio=portrait]:focus-within .project-card__hover-cta,.project-card[data-ratio=portrait]:hover .project-card__hover-cta{opacity:1;transform:translateY(0)}.project-card[data-ratio=portrait] .project-card__hover-cta{position:absolute;left:50%;top:42%;z-index:3;transform:translate(-50%,6px)}.project-card[data-ratio=portrait]:focus-within .project-card__hover-cta,.project-card[data-ratio=portrait]:hover .project-card__hover-cta{transform:translate(-50%)}.project-card__info--below{padding:1.1rem 1.15rem 1.25rem}.project-card__info--overlay{position:absolute;right:0;bottom:0;left:0;z-index:2;padding:1.25rem 1.15rem 1.15rem;pointer-events:none}.project-card__pill{display:inline-block;margin-bottom:.5rem;padding:.28rem .65rem;border-radius:999px;border:1px solid hsla(39,46%,61%,.35);background:hsla(39,46%,61%,.1);font-family:var(--font-ui);font-size:.5625rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--portfolio-accent)}.project-card__title{font-family:var(--font-display);font-size:clamp(1.35rem,2.8vw,1.75rem);font-weight:400;font-style:italic;line-height:1.1;color:var(--text-primary)}.project-card__desc{margin-top:.4rem;font-family:var(--font-ui);font-size:.75rem;font-weight:300;line-height:1.45;color:var(--text-secondary)}