.portfolio-main{padding-top:150px}.portfolio-heading{padding-bottom:45px}.portfolio-breadcrumb{gap:14px;margin-bottom:25px;display:flex}.portfolio-breadcrumb a:hover{text-underline-offset:4px;text-decoration:underline}.portfolio-heading h1{letter-spacing:-.045em;max-width:12ch;margin:0;font-size:clamp(64px,8.4vw,128px);line-height:.98}.portfolio-heading h1 span{display:block}.portfolio-heading-bottom{justify-content:space-between;align-items:flex-end;gap:36px;margin-top:38px;display:flex}.portfolio-heading-bottom p{max-width:41ch;margin:0;font-size:18px;line-height:1.6}.portfolio-heading-bottom .eyebrow{text-align:right;margin:0}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:78px 40px;padding-bottom:88px;display:grid}.portfolio-card{min-width:0}.portfolio-card-link{display:block}.portfolio-card-photo{aspect-ratio:4/3;background:#1d1d1d0f;margin:0;position:relative;overflow:hidden}.portfolio-card-photo img{object-fit:cover;width:100%;height:100%;transition:transform .65s var(--motion-ease)}.portfolio-card-open{background:var(--cream);width:48px;height:48px;color:var(--ink);justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex;position:absolute;bottom:20px;right:20px}.portfolio-card-caption{justify-content:space-between;align-items:center;gap:24px;padding-top:22px;display:flex}.portfolio-card-caption .eyebrow{letter-spacing:.1em;margin:0 0 9px;font-size:10px}.portfolio-card-caption h2{text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(25px,2.65vw,40px);line-height:1.12}.portfolio-card-caption>svg{transition:transform .25s var(--motion-ease);flex:none}.portfolio-card-link:hover .portfolio-card-photo img{transform:scale(1.035)}.portfolio-card-link:hover .portfolio-card-open{background:var(--ink);color:var(--cream)}.portfolio-card-link:hover .portfolio-card-caption>svg{transform:translate(5px)}.portfolio-reference{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:24px;font-size:14px;display:flex}.portfolio-reference p{max-width:none;margin:0}.portfolio-reference a{text-underline-offset:5px;align-items:center;gap:20px;text-decoration:underline;display:inline-flex}.portfolio-reference a span{font-size:23px;text-decoration:none}.project-story-hero{isolation:isolate;height:min(88svh,1000px);min-height:620px;color:var(--cream);background:var(--ink);align-items:flex-end;display:flex;position:relative}.project-story-media{z-index:-2;position:absolute;inset:0;overflow:hidden}.project-story-media img{object-fit:cover;object-position:center;width:100%;height:100%}.project-story-hero:after{content:"";z-index:-1;background:linear-gradient(#0000006e,#0000000d 34%,#00000038 60%,#000000b3);position:absolute;inset:0}.project-story-hero-inner{width:100%;padding-top:150px;padding-bottom:54px}.project-story-back{text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:12px;min-height:44px;font-size:12px;display:inline-flex;position:absolute;top:132px}.project-story-back span{font-size:21px}.project-story-back:hover{text-underline-offset:5px;text-decoration:underline}.project-story-back:focus-visible{outline-color:var(--cream)}.project-story-meta{letter-spacing:.1em;margin:0 0 18px}.project-story-hero h1{text-transform:uppercase;text-wrap:balance;letter-spacing:-.04em;max-width:17ch;margin:0;font-size:clamp(54px,6.7vw,104px);line-height:1.03}.project-story-intro{grid-template-columns:1fr 1.7fr;gap:56px;padding-block:70px 88px;display:grid}.project-story-intro .eyebrow{margin:5px 0 0}.project-story-intro p{letter-spacing:-.015em;text-wrap:pretty;max-width:46ch;margin:0;font-size:clamp(19px,2vw,27px);line-height:1.55}.project-gallery{padding-bottom:90px}.project-gallery-heading{justify-content:space-between;align-items:center;gap:28px;margin-bottom:30px;display:flex}.project-gallery-heading h2{letter-spacing:.14em;margin:0}.project-gallery-heading p{margin:0;font-size:12px}.project-gallery-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:66px 40px;display:grid}.project-gallery-item{grid-column:span 6;min-width:0;margin:0}.project-gallery-item[data-motion=image]{overflow:visible}.project-gallery-item.gallery-item-wide{grid-column:1/-1}.project-gallery-item.gallery-item-wide.gallery-item-portrait{grid-column:3/11}.project-gallery-item>a{background:#1d1d1d0b;display:block;position:relative;overflow:hidden}.project-gallery-item img{width:100%;height:auto;transition:transform .65s var(--motion-ease)}.project-gallery-item>a:hover img{transform:scale(1.015)}.project-gallery-item>a:focus-visible{outline:3px solid var(--ink);outline-offset:5px}.gallery-expand{background:var(--cream);width:44px;height:44px;color:var(--ink);justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex;position:absolute;bottom:18px;right:18px}.project-gallery-item>a:hover .gallery-expand{background:var(--ink);color:var(--cream)}.project-gallery-item figcaption{grid-template-columns:32px minmax(0,1fr);gap:12px;padding-top:13px;font-size:12px;line-height:1.6;display:grid}.project-gallery-item figcaption>span:first-child{font-family:var(--mono);letter-spacing:.08em;padding-top:2px;font-size:10px}.project-contact{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:40px;padding-block:60px 76px;display:flex}.project-contact h2{text-transform:uppercase;text-wrap:balance;max-width:16ch;margin:12px 0 0;font-size:clamp(35px,4.5vw,66px);line-height:1.06}.project-contact .eyebrow{margin:0}.project-contact .button{flex:none}.project-next{background:var(--ink);color:var(--cream);padding-block:68px 84px}.project-next-link{grid-template-columns:1fr 1.3fr;align-items:center;gap:60px;display:grid}.project-next-copy>.eyebrow{margin-bottom:22px}.project-next-copy h2{text-transform:uppercase;text-wrap:balance;max-width:15ch;margin:0 0 24px;font-size:clamp(38px,4.7vw,70px);line-height:1.06}.project-next-meta{margin:0 0 32px;font-size:13px}.project-next-action{font-family:var(--display);text-transform:uppercase;border-bottom:1px solid #fff5e8a6;align-items:center;gap:28px;padding-bottom:7px;font-size:13px;font-weight:600;display:inline-flex}.project-next-photo{aspect-ratio:3/2;margin:0;position:relative;overflow:hidden}.project-next-photo img{object-fit:cover;width:100%;height:100%;transition:transform .65s var(--motion-ease)}.project-next-link:hover .project-next-photo img{transform:scale(1.035)}.project-lightbox{background:var(--ink);width:calc(100% - 32px);max-width:1800px;height:calc(100dvh - 32px);max-height:none;color:var(--cream);border:1px solid #fff5e826;margin:auto;padding:20px 24px;overflow:hidden}.project-lightbox[open]{flex-direction:column;gap:14px;display:flex}.project-lightbox::backdrop{background:#000000e0}.lightbox-toolbar{flex:none;justify-content:space-between;align-items:center;gap:24px;min-height:44px;display:flex}.lightbox-toolbar h2{margin:0;font-size:11px;line-height:1.6}.lightbox-icon-button{width:48px;height:48px;color:var(--cream);background:0 0;border:1px solid #fff5e88c;flex:none;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s;display:flex}.lightbox-icon-button:hover:not(:disabled){background:var(--cream);color:var(--ink)}.lightbox-icon-button:disabled{opacity:.3;cursor:default}.lightbox-icon-button:focus-visible,.project-lightbox a:focus-visible{outline-color:var(--cream);outline-offset:4px}.lightbox-image-frame{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.lightbox-image-frame img{object-fit:contain;width:100%;max-width:100%;height:100%;max-height:100%;display:block}.lightbox-footer{flex:none;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:28px;padding-top:5px;display:grid}.lightbox-description p{max-width:70ch;margin:0 0 6px;font-size:12px;line-height:1.5}.lightbox-description>a{text-underline-offset:4px;min-height:24px;font-size:11px;text-decoration:underline;display:inline-block}.lightbox-position{font-family:var(--mono);letter-spacing:.12em;white-space:nowrap;margin:0;font-size:11px}.lightbox-navigation{gap:10px;display:flex}@media (width>=1000px){.portfolio-grid>.portfolio-card:nth-child(2n){margin-top:64px}.portfolio-grid>.portfolio-card:nth-child(odd){margin-bottom:64px}}@media (width>=1600px){.project-story-hero-inner{padding-bottom:68px}.project-story-intro{padding-block:88px 106px}}@media (width<=1100px){.portfolio-main{padding-top:144px}.portfolio-grid{gap:56px 28px}.project-gallery-grid{gap:48px 28px}.project-story-intro{grid-template-columns:1fr 2fr;gap:40px}.project-next-link{gap:40px}.project-story-hero{height:80svh;min-height:580px}}@media (width<=900px){.project-story-back{top:104px}.portfolio-heading{padding-bottom:54px}.portfolio-heading h1{font-size:clamp(64px,10vw,92px)}.portfolio-heading-bottom{margin-top:30px}.portfolio-heading-bottom p{font-size:16px}.portfolio-heading-bottom .eyebrow{max-width:23ch}.project-story-hero-inner{padding-bottom:42px}.project-story-hero h1{font-size:clamp(52px,8vw,78px)}.project-story-intro{grid-template-columns:1fr 2.2fr;gap:30px;padding-block:52px 64px}.project-gallery{padding-bottom:60px}.project-contact{gap:28px;padding-block:48px 60px}.project-contact h2{font-size:42px}.project-next{padding-block:54px 62px}.project-next-link{grid-template-columns:1fr 1.1fr;gap:30px}.project-next-copy h2{font-size:40px}.project-next-copy>.eyebrow{margin-bottom:16px}}@media (width<=767px){.portfolio-main{padding-top:124px}.portfolio-heading h1{font-size:clamp(54px,13.5vw,92px)}.portfolio-heading-bottom{display:block}.portfolio-heading-bottom p{max-width:36ch}.portfolio-heading-bottom .eyebrow{text-align:left;max-width:none;margin-top:22px}.portfolio-grid{grid-template-columns:1fr;gap:42px;padding-bottom:52px}.portfolio-card-caption{gap:20px;padding-top:18px}.portfolio-card-caption h2{font-size:30px}.portfolio-card-caption .eyebrow{font-size:10px}.portfolio-card-open{width:44px;height:44px;bottom:14px;right:14px}.portfolio-reference{flex-direction:column;align-items:flex-start;gap:14px;font-size:13px}.project-story-hero{height:78svh;min-height:520px;max-height:820px}.project-story-hero-inner{padding-bottom:36px}.project-story-hero h1{max-width:15ch;font-size:clamp(44px,10.8vw,72px);line-height:1.04}.project-story-meta{max-width:36ch;margin-bottom:14px;font-size:10px}.project-story-back{font-size:11px;top:92px}.project-story-intro{grid-template-columns:1fr;gap:22px;padding-block:42px 50px}.project-story-intro p{font-size:21px;line-height:1.55}.project-gallery-heading{margin-bottom:22px;display:block}.project-gallery-heading p{margin-top:10px;font-size:12px}.project-gallery-grid{grid-template-columns:1fr;gap:34px}.project-gallery-item,.project-gallery-item.gallery-item-wide,.project-gallery-item.gallery-item-wide.gallery-item-portrait{grid-column:1/-1}.project-gallery-item figcaption{grid-template-columns:24px minmax(0,1fr);gap:9px;padding-top:11px;font-size:11px}.gallery-expand{bottom:12px;right:12px}.project-contact{flex-direction:column;align-items:flex-start;gap:30px;padding-block:40px 52px}.project-contact h2{font-size:clamp(34px,9vw,48px)}.project-next-link{grid-template-columns:1fr;gap:32px}.project-next-copy h2{max-width:18ch;font-size:clamp(38px,9.5vw,54px)}.project-next-meta{margin-bottom:22px}.project-next-photo{aspect-ratio:4/3}.project-lightbox{width:100%;max-width:none;height:100dvh;padding:16px 16px max(16px,env(safe-area-inset-bottom));border:0;margin:0}.project-lightbox[open]{gap:12px}.lightbox-toolbar{gap:14px}.lightbox-toolbar h2{max-width:28ch;font-size:10px}.lightbox-icon-button{width:44px;height:44px}.lightbox-footer{grid-template-columns:1fr auto;gap:16px 14px}.lightbox-description{grid-column:1/-1}.lightbox-description p{max-width:52ch;font-size:12px}.lightbox-description>a{min-height:28px;font-size:11px}.lightbox-position{font-size:10px}.lightbox-navigation{justify-content:flex-end}.lightbox-image-frame{min-height:140px}}@media (height<=540px){.project-story-hero{min-height:520px}.project-lightbox{border:0;width:100%;height:100dvh;padding:10px 20px}.project-lightbox[open]{gap:6px}.lightbox-toolbar{min-height:38px}.lightbox-icon-button{width:44px;height:44px}.lightbox-image-frame{min-height:0}.lightbox-footer{grid-template-columns:minmax(0,1fr) auto auto;gap:18px}.lightbox-description{grid-column:auto}.lightbox-description p{font-size:11px}.lightbox-description>a{min-height:22px}}@media (prefers-reduced-motion:reduce){.portfolio-card-photo img,.portfolio-card-caption>svg,.project-gallery-item img,.project-next-photo img{transition:none;transform:none!important}}
