.project-story{--project-measure:1440px}.project-film-toggle{z-index:2;clip-path:inset(50%);background:var(--ink);width:1px;height:1px;color:var(--paper);font:inherit;border:0;padding:0;position:absolute;bottom:18px;right:18px;overflow:hidden}.project-film-toggle:focus-visible{clip-path:none;width:auto;height:auto;padding:12px 18px}.project-diagram-window video{aspect-ratio:16/9;width:100%;height:auto;display:block}.project-diagram{position:relative}.project-video-media figcaption{max-width:75ch;line-height:1.5}.project-video-title{letter-spacing:-.02em;text-wrap:balance;margin:0 0 24px;font-size:clamp(24px,2.5vw,36px);font-weight:500;line-height:1.15}.project-body{max-width:var(--project-measure);padding-inline:var(--gutter);margin:clamp(100px,11vw,176px) auto 0}.project-testimonial{width:calc(75% - 4vw);margin:clamp(64px,7vw,112px) 0 clamp(64px,7vw,112px) auto}.project-section{grid-template-columns:minmax(180px,25%) minmax(0,1fr);gap:4vw;margin-block:clamp(72px,8vw,128px);scroll-margin-top:40px;display:grid}.project-section-label{color:var(--muted);padding-top:8px;font-size:16px}.project-section-content{max-width:850px}.project-section h2{text-wrap:balance;max-width:23ch;margin-bottom:30px;font-size:clamp(32px,3.35vw,54px);line-height:1.09}.project-section--featured h2{max-width:19ch;font-size:clamp(40px,4.8vw,76px)}.project-section-prose{max-width:65ch;font-size:clamp(18px,1.4vw,21px);line-height:1.55}.project-section-prose p+p{margin-top:1em}.project-section-prose .text-link{margin-top:30px;font-size:17px}.project-detail-media{margin-block:clamp(60px,7vw,112px)}.project-detail-image{background:#f9fbfc;border-radius:12px;display:block;overflow:clip}.project-detail-image img{width:100%;height:auto}.project-detail-image--rotated{background:#fff;position:relative}.project-detail-image--rotated img{width:var(--rotated-image-width);max-width:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg)}.project-detail-image:focus-visible{clip-path:none!important;transform:none!important}.project-detail-media figcaption{color:var(--muted);margin-top:14px;font-size:15px}.project-close{max-width:var(--project-measure);padding:40px var(--gutter) 0;gap:clamp(32px,4vw,64px);margin:clamp(100px,12vw,192px) auto clamp(80px,10vw,160px);display:grid}.project-close h2{font:inherit;margin:0}.project-close-link{font-family:var(--font-display);letter-spacing:-.04em;align-items:flex-end;gap:clamp(30px,4vw,64px);font-size:clamp(44px,6.8vw,104px);line-height:1.05;display:inline-flex}.project-close-link .arrow{width:.8em;height:.8em;transition:transform .5s var(--ease-out)}.project-close-link:hover .arrow{transform:translate(6px,-6px)}.project-close-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin:0;padding:0;list-style:none;display:grid}.project-close-grid>li{min-width:0}.project-close-grid .project{grid-row:auto;margin-top:0}.project-close-grid .project-card-media{aspect-ratio:1}.project-close-grid .project-card-caption{padding:clamp(16px,1.7vw,28px)}.project-story :focus-visible{opacity:1!important}@media (width<=1000px){.project-testimonial{width:calc(77% - 4vw)}.project-section{grid-template-columns:minmax(140px,23%) minmax(0,1fr)}}@media (width<=700px){.project-testimonial{width:auto;margin-block:64px}.project-diagram-window video{aspect-ratio:27/25;object-fit:contain}.project-body{margin-top:84px}.project-section{grid-template-columns:minmax(0,1fr);gap:18px;margin-block:64px}.project-section-label{display:none}.project-section h2{margin-bottom:22px;font-size:clamp(30px,7.7vw,44px)}.project-section--featured h2{font-size:clamp(36px,9vw,54px)}.project-section-prose{font-size:18px}.project-detail-media{margin-block:54px}.project-detail-media figcaption{font-size:13px}.project-close{gap:32px;margin-block:90px 70px;padding-top:32px}.project-close-link{gap:28px;font-size:clamp(40px,11vw,64px)}.project-close-grid{scroll-snap-type:x proximity;scroll-padding-inline:var(--gutter);margin-inline:calc(-1 * var(--gutter));padding:0 var(--gutter) 14px;scrollbar-width:thin;scrollbar-color:var(--sea-glass) transparent;grid-template-columns:none;grid-auto-columns:82%;grid-auto-flow:column;overflow-x:auto}.project-close-grid>li{scroll-snap-align:start}}@media (prefers-reduced-motion:reduce){.project-story *,.project-story :before,.project-story :after{transition:none!important}}@media print{.project-story [style]{opacity:1!important;clip-path:none!important;transform:none!important}.project-close{display:none}}
