.portfolio-page{overflow:clip}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portfolio-intro{gap:var(--grid-gap);border-bottom:var(--border-thin,1px) solid var(--color-border);grid-template-columns:minmax(0,1.25fr) minmax(16rem,.75fr);align-items:end;padding-block:clamp(5rem,10vw,9rem) clamp(3rem,6vw,5rem);display:grid}.portfolio-intro h1{letter-spacing:-.04em;max-width:9ch;font-size:clamp(4rem,9vw,9rem)}.portfolio-intro__support{max-width:var(--reading-max);padding-bottom:var(--space-2);color:var(--color-text-muted);font-size:clamp(1rem,1.1vw,1.125rem);line-height:1.7}.portfolio-filters{gap:var(--space-3);padding-block:var(--space-5);border-bottom:var(--border-thin,1px) solid var(--color-border);flex-wrap:wrap;align-items:center;display:flex}.portfolio-filters__label{margin-right:var(--space-3);color:var(--color-text-muted);font-size:var(--text-small)}.portfolio-filter{min-height:2.5rem;padding:var(--space-2) var(--space-4);border:var(--border-thin,1px) solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);font:inherit;font-size:var(--text-small);background:0 0}.portfolio-filter[aria-pressed=true]{border-color:var(--color-text);background:var(--color-text);color:var(--color-on-accent)}.portfolio-filter:disabled{cursor:not-allowed;color:var(--color-text-muted);opacity:.62}.portfolio-filter:not(:disabled):hover{border-color:var(--color-accent);color:var(--color-accent)}.portfolio-filter[aria-pressed=true]:hover{background:var(--color-accent-strong);color:var(--color-on-accent)}.portfolio-filters__note{color:var(--color-text-muted);font-size:var(--text-caption);flex-basis:100%;margin:0}.portfolio-gallery{padding-block:clamp(4rem,8vw,8rem) clamp(5rem,10vw,10rem)}.portfolio-gallery__grid{grid-template-columns:minmax(0,1.18fr) minmax(10rem,.64fr) minmax(10rem,.72fr);align-items:start;gap:clamp(1rem,2.5vw,2.5rem);display:grid}.portfolio-tile{min-width:0;margin:0}.portfolio-tile__frame{background:var(--color-bg-subtle);display:block;position:relative;overflow:clip}.portfolio-tile__frame img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.portfolio-tile__frame:has(>img.photo-frame--portrait){aspect-ratio:auto}.portfolio-tile__frame>img.photo-frame--portrait{width:100%;height:auto;position:relative;inset:auto}.portfolio-tile--1{grid-column:1/3;padding-top:clamp(1rem,7vw,7rem)}.portfolio-tile--1 .portfolio-tile__frame{aspect-ratio:1.28}.portfolio-tile--2{grid-column:3;margin-top:clamp(8rem,15vw,15rem)}.portfolio-tile--2 .portfolio-tile__frame,.portfolio-tile--4 .portfolio-tile__frame,.portfolio-tile--7 .portfolio-tile__frame{aspect-ratio:.68}.portfolio-tile--3{grid-column:1;margin-top:clamp(1rem,4vw,4rem)}.portfolio-tile--3 .portfolio-tile__frame,.portfolio-tile--6 .portfolio-tile__frame{aspect-ratio:1.36}.portfolio-tile--4{grid-column:2;margin-top:clamp(8rem,14vw,14rem)}.portfolio-tile--5{grid-column:3;margin-top:clamp(2rem,7vw,7rem)}.portfolio-tile--5 .portfolio-tile__frame{aspect-ratio:.72}.portfolio-tile--6{grid-column:1/3;margin-top:clamp(2rem,7vw,7rem)}.portfolio-tile--7{grid-column:3;margin-top:clamp(-8rem,-7vw,-3rem)}.portfolio-tile--8{grid-column:2/4;margin-top:clamp(2rem,7vw,7rem)}.portfolio-tile--8 .portfolio-tile__frame{aspect-ratio:.86}.portfolio-gallery__note{max-width:31rem;color:var(--color-text-muted);font-size:var(--text-small);margin:clamp(3rem,8vw,8rem) 0 0 auto;line-height:1.6}.portfolio-cta{background:var(--color-bg-subtle);border-block:var(--border-thin,1px) solid var(--color-border);padding-block:clamp(4rem,9vw,9rem)}.portfolio-cta__inner{grid-template-columns:minmax(0,.8fr) minmax(18rem,1.2fr);align-items:end;gap:clamp(2rem,9vw,10rem);display:grid}.portfolio-cta h2{letter-spacing:-.035em;max-width:8ch;font-size:clamp(3rem,7vw,7rem)}.portfolio-cta h2 em{color:var(--color-accent)}.portfolio-cta__copy{max-width:var(--reading-max);color:var(--color-text-muted);font-size:clamp(1rem,1.1vw,1.125rem);line-height:1.7}.portfolio-cta .contact-cta{width:100%;margin:var(--space-6) 0 0}@media (width<=900px){.portfolio-intro{grid-template-columns:minmax(0,1fr) minmax(14rem,.78fr)}.portfolio-gallery__grid{grid-template-columns:minmax(0,1.12fr) minmax(10rem,.88fr)}.portfolio-tile--1,.portfolio-tile--6,.portfolio-tile--8{grid-column:1/-1}.portfolio-tile--2,.portfolio-tile--5,.portfolio-tile--7{grid-column:2}.portfolio-tile--3,.portfolio-tile--4{grid-column:1}.portfolio-tile--2{margin-top:clamp(5rem,10vw,8rem)}.portfolio-tile--4{margin-top:clamp(3rem,8vw,6rem)}.portfolio-tile--5{margin-top:clamp(1rem,4vw,3rem)}.portfolio-tile--7{margin-top:clamp(2rem,5vw,4rem)}}@media (width<=600px){.portfolio-intro{padding-block:var(--space-8) var(--space-7);display:block}.portfolio-intro h1{max-width:100%;font-size:clamp(3.8rem,18vw,6rem)}.portfolio-intro__support{margin-top:var(--space-5)}.portfolio-filters{gap:var(--space-2)}.portfolio-filters__label{margin:0 0 var(--space-2);flex-basis:100%}.portfolio-gallery{padding-block:var(--space-7) var(--space-8)}.portfolio-gallery__grid{display:block}.portfolio-tile,.portfolio-tile--1,.portfolio-tile--2,.portfolio-tile--3,.portfolio-tile--4,.portfolio-tile--5,.portfolio-tile--6,.portfolio-tile--7,.portfolio-tile--8{margin:0 0 var(--space-6)}.portfolio-tile:nth-child(2n){width:78%;margin-left:auto}.portfolio-tile:nth-child(3n){width:88%}.portfolio-tile--1 .portfolio-tile__frame,.portfolio-tile--3 .portfolio-tile__frame,.portfolio-tile--6 .portfolio-tile__frame{aspect-ratio:1.18}.portfolio-tile--8 .portfolio-tile__frame{aspect-ratio:.95}.portfolio-gallery__note{margin-top:var(--space-7)}.portfolio-cta__inner{display:block}.portfolio-cta h2{max-width:100%}.portfolio-cta__copy{margin-top:var(--space-6)}}
