.portfolio-world{min-height:100svh;color:var(--funeral-black);background:var(--cloth)}.portfolio-world a{color:inherit;text-underline-offset:.25em}.portfolio-nav{z-index:10;background:var(--cloth-light);border-bottom:1px dashed rgba(32,31,29,.65);justify-content:space-between;align-items:center;min-height:4.5rem;padding:1rem max(1.25rem,min(4vw,4rem));display:flex;position:relative}.portfolio-nav a{text-transform:uppercase;font-size:.8rem;font-weight:800;text-decoration:none}.portfolio-nav a:last-child{min-height:2.5rem;color:var(--soft-cream);background:var(--thread-red);align-items:center;padding:.7rem 1rem;display:inline-flex}.portfolio-home-link{align-items:center;gap:.5rem;display:inline-flex}.portfolio-home-link svg{width:1rem;height:1rem;transition:transform .24s}.portfolio-home-link:hover svg{transform:translate(-.2rem)}.portfolio-nav a:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.portfolio-card:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.portfolio-intro-copy a:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.portfolio-contact a:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.project-description a:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.project-contact a:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.portfolio-footer a:focus-visible{outline:3px solid var(--funeral-black);outline-offset:3px}.portfolio-intro-copy a:focus-visible{outline-color:var(--stitch-gold)}.project-description a:focus-visible{outline-color:var(--stitch-gold)}.portfolio-intro{border-bottom:1px dashed rgba(32,31,29,.65);grid-template-columns:minmax(0,1.1fr) minmax(22rem,.9fr);min-height:min(44rem,82svh - 4.5rem);display:grid}.portfolio-intro h1{color:var(--soft-cream);background:var(--chambray);font-family:var(--font-display),sans-serif;font-variation-settings:"wdth" 82,"wght" 690;letter-spacing:0;flex-direction:column;justify-content:center;margin:0;padding:max(3rem,min(7vw,7rem));font-size:max(3.75rem,min(7.6vw,6rem));font-weight:690;line-height:.88;display:flex}.portfolio-intro h1 span,.portfolio-contact h2 span{color:var(--thread-coral)}.portfolio-intro-copy{background:var(--cloth-light);border-left:1px dashed rgba(32,31,29,.65);flex-direction:column;justify-content:center;gap:1.35rem;padding:max(2.5rem,min(6vw,6rem));display:flex}.portfolio-intro-copy p{max-width:36rem;margin:0;font-size:max(1rem,min(1.4vw,1.2rem));font-weight:620;line-height:1.55}.portfolio-intro-copy a,.project-description a{min-height:2.75rem;color:var(--soft-cream);background:var(--funeral-black);text-transform:uppercase;align-self:flex-start;align-items:center;gap:.5rem;margin-top:.65rem;padding:.75rem 1rem;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-flex}.portfolio-intro-copy a svg,.project-description a svg{width:1rem;height:1rem}.portfolio-work,.project-related{background:var(--cloth)}.portfolio-section-heading{border-bottom:1px dashed rgba(32,31,29,.65);justify-content:space-between;align-items:end;min-height:9rem;padding:2rem max(1.25rem,min(4vw,4rem));display:flex}.portfolio-section-heading h2{font-family:var(--font-body),sans-serif;margin:0;font-size:max(2.5rem,min(5vw,4.5rem));font-weight:800;line-height:.9}.portfolio-section-heading span,.portfolio-section-heading>a{text-transform:uppercase;font-size:.8rem;font-weight:800}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portfolio-card{min-width:0;color:var(--funeral-black);background:var(--cloth-light);border-bottom:1px dashed rgba(32,31,29,.65);border-right:1px dashed rgba(32,31,29,.65);flex-direction:column;text-decoration:none;display:flex}.portfolio-card:nth-child(2n){border-right:0}.portfolio-card-image{aspect-ratio:990/656;background:var(--muted);display:block;position:relative;overflow:hidden}.portfolio-card-image img{object-fit:cover;width:100%;height:100%;transition:filter .24s,transform .5s cubic-bezier(.16,1,.3,1)}.portfolio-card-copy{border-top:1px dashed rgba(32,31,29,.65);grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;min-height:7.5rem;padding:1.25rem max(1.25rem,min(3vw,2rem));display:grid}.portfolio-card-copy>span:first-child{flex-direction:column;gap:.4rem;display:flex}.portfolio-card-copy strong{max-width:30rem;font-size:max(1.05rem,min(1.8vw,1.45rem));line-height:1.15}.portfolio-card-copy small,.portfolio-card-year{font-size:.78rem;font-weight:700;line-height:1.25}.portfolio-card-copy small{color:var(--muted-foreground)}.portfolio-card-year{align-items:flex-start;gap:.5rem;display:flex}.portfolio-card-year svg{width:1rem;height:1rem;transition:transform .28s cubic-bezier(.16,1,.3,1)}.portfolio-card:hover .portfolio-card-image img{filter:saturate(1.08)contrast(1.02);transform:scale(1.018)}.portfolio-card:hover .portfolio-card-year svg{transform:translate(.14rem,-.14rem)}.portfolio-contact{min-height:25rem;color:var(--cloth);background:var(--funeral-black);grid-template-columns:minmax(0,1fr) minmax(18rem,.35fr);display:grid}.portfolio-contact h2{max-width:58rem;font-family:var(--font-display),sans-serif;font-variation-settings:"wdth" 80,"wght" 690;align-self:center;margin:0;padding:max(3rem,min(7vw,7rem));font-size:max(2.6rem,min(5.5vw,5.5rem));font-weight:690;line-height:.95}.portfolio-contact a{color:var(--soft-cream);background:var(--thread-red);border-left:1px dashed rgba(241,233,220,.55);justify-content:center;align-items:center;gap:.7rem;padding:2rem;font-size:.9rem;font-weight:800;text-decoration:none;display:flex}.portfolio-contact a svg{width:1.1rem;height:1.1rem}.portfolio-footer{background:var(--cloth-light);text-transform:uppercase;border-top:1px dashed rgba(32,31,29,.65);justify-content:space-between;align-items:center;min-height:5rem;padding:1rem max(1.25rem,min(4vw,4rem));font-size:.76rem;font-weight:800;display:flex}.project-intro{border-bottom:1px dashed rgba(32,31,29,.65)}.project-summary{grid-template-columns:minmax(0,1.15fr) minmax(22rem,.85fr);min-width:0;min-height:28rem;display:grid}.project-summary h1{min-width:0;color:var(--soft-cream);background:var(--chambray);font-family:var(--font-display),sans-serif;font-variation-settings:"wdth" 76,"wght" 690;overflow-wrap:anywhere;align-items:center;margin:0;padding:max(2rem,min(6vw,6rem));font-size:max(3rem,min(6.6vw,6rem));font-weight:690;line-height:.9;display:flex}.project-description{background:var(--cloth-light);border-left:1px dashed rgba(32,31,29,.65);flex-direction:column;justify-content:center;gap:1rem;min-width:0;padding:max(2rem,min(5vw,5rem));display:flex}.project-description p{max-width:36rem;margin:0;font-size:max(1rem,min(1.5vw,1.2rem));font-weight:620;line-height:1.6}.project-facts{background:var(--funeral-black);border-top:1px dashed rgba(32,31,29,.65);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.project-facts div{border-right:1px dashed rgba(241,233,220,.55);min-height:8rem;padding:1.5rem max(1.25rem,min(3vw,2.5rem))}.project-facts div:last-child{border-right:0}.project-facts dt{color:var(--thread-coral);text-transform:uppercase;font-size:.72rem;font-weight:800}.project-facts dd{color:var(--cloth);margin:.65rem 0 0;font-size:max(1rem,min(1.7vw,1.3rem));font-weight:760}.project-gallery{background:var(--cloth);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-media{background:var(--cloth-light);border-bottom:1px dashed rgba(32,31,29,.65);grid-column:1/-1;margin:0;padding:max(1rem,min(3vw,3rem))}.project-media-half{grid-column:auto}.project-media-half-right{border-left:1px dashed rgba(32,31,29,.65)}.project-media img,.project-media video{background:0 0;width:100%;height:auto;display:block}.project-media figcaption{max-width:58rem;margin-top:1rem;font-size:.86rem;font-weight:650;line-height:1.5}.project-related .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-contact{min-height:8rem;color:var(--cloth);background:var(--funeral-black);justify-content:space-between;align-items:center;padding:1.5rem max(1.25rem,min(4vw,4rem));display:flex}.project-contact p{margin:0;font-size:max(1.1rem,min(2.2vw,1.75rem));font-weight:780}.project-contact a{color:var(--soft-cream);background:var(--thread-red);text-transform:uppercase;align-items:center;gap:.65rem;padding:.8rem 1rem;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-flex}.project-contact a svg{width:1rem;height:1rem}@media (max-width:820px){.portfolio-intro,.project-summary{grid-template-columns:1fr}.portfolio-intro{min-height:0}.portfolio-intro h1{min-height:20rem;padding:3rem 1.5rem;font-size:max(3.5rem,min(15vw,5.5rem))}.portfolio-intro-copy,.project-description{border-top:1px dashed rgba(32,31,29,.65);border-left:0;padding:2.5rem 1.5rem}.portfolio-contact{grid-template-columns:1fr}.portfolio-contact h2{padding:3.5rem 1.5rem}.portfolio-contact a{border-top:1px dashed rgba(241,233,220,.55);border-left:0;min-height:5rem}.project-summary{min-height:0}.project-summary h1{min-height:19rem;padding:3rem 1.5rem}}@media (max-width:620px){.portfolio-nav{min-height:4rem;padding:.75rem 1rem}.portfolio-nav a:first-child{max-width:9rem;line-height:1.15}.portfolio-nav a:last-child{min-height:2.35rem;padding:.6rem .75rem}.portfolio-section-heading{min-height:7rem;padding:1.5rem 1.25rem}.portfolio-section-heading h2{font-size:2.65rem}.portfolio-grid,.project-related .portfolio-grid{grid-template-columns:1fr}.portfolio-card,.portfolio-card:nth-child(2n){border-right:0}.portfolio-card-copy{min-height:6.5rem;padding:1rem 1.25rem}.portfolio-card-copy strong{font-size:1.1rem}.portfolio-contact h2{font-size:3rem}.project-summary h1{min-height:17rem;font-size:max(2.65rem,min(12.5vw,4.25rem))}.project-facts{grid-template-columns:1fr}.project-facts div{border-bottom:1px dashed rgba(241,233,220,.55);border-right:0;grid-template-columns:5rem minmax(0,1fr);align-items:start;min-height:0;padding:1rem 1.25rem;display:grid}.project-facts div:last-child{border-bottom:0}.project-facts dd{margin:0;font-size:.95rem}.project-gallery{grid-template-columns:1fr}.project-media,.project-media-half{border-left:0;grid-column:1;padding:.8rem}.project-contact{flex-direction:column;align-items:stretch;gap:1.25rem;padding:2rem 1.25rem}.project-contact a{align-self:flex-start}.portfolio-footer{min-height:4.5rem;padding:1rem 1.25rem}}
