/* Project photography follows the original image proportions and colors. */
.project-heading .project-hint{margin-top:18px;font-size:16px;line-height:1.7;color:var(--muted);max-width:42ch}
.portfolio-grid{grid-template-columns:minmax(0,1fr);row-gap:64px}
.portfolio-card{display:block}
.portfolio-card .project-image{aspect-ratio:auto;background:transparent}
.portfolio-card .project-image>img{height:auto;filter:none;transition:transform 1.4s cubic-bezier(.22,.61,.36,1)}
.portfolio-card .project-caption{padding-top:23px;align-items:flex-start}
.portfolio-card .project-caption h3{font-size:clamp(24px,2.2vw,34px);font-weight:300}
.portfolio-card .project-caption p{font-size:16px;line-height:1.7;color:var(--muted);margin-top:6px}
.portfolio-card .project-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:46px;max-width:100%;margin-top:20px;padding:11px 18px;border:1px solid #b3ab9d;color:var(--ink);font-size:14px;line-height:1.5;transition:background-color .2s,color .2s,border-color .2s}
.portfolio-card .project-cta>span[aria-hidden]{flex-shrink:0;font-size:20px;line-height:1}
.portfolio-card:focus-visible .project-cta{background:var(--ink);border-color:var(--ink);color:var(--paper)}
@media(hover:hover){.portfolio-card:hover .project-cta{background:var(--ink);border-color:var(--ink);color:var(--paper)}}
@media(prefers-reduced-motion:reduce){.portfolio-card .project-cta{transition:none}}
.portfolio-card .project-caption h3{display:inline;background:linear-gradient(currentColor,currentColor) left bottom / 0 1px no-repeat;transition:background-size .6s}
.portfolio-card:focus-visible .project-caption h3{background-size:100% 1px}
@media(hover:hover){.portfolio-card:hover .project-image>img{transform:scale(1.012);filter:none}.portfolio-card:hover .project-caption h3{background-size:100% 1px}}
.project-page{background:#eeece7}
.project-page .header{position:relative}
.project-page .desktop-nav a[aria-current=page]:after{right:0}
.project-intro{padding:26px 6.8% 47px}
.project-back{display:inline-flex;align-items:center;gap:12px;font-size:14px;line-height:1.5;padding:10px 0;color:var(--muted)}
.project-back:hover{text-decoration:underline;text-underline-offset:5px}
.project-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:32px}
.project-title-row .eyebrow{font-size:14px;color:var(--muted);margin-bottom:14px}
.project-title-row h1{font-size:clamp(40px,4.8vw,74px);font-weight:300;line-height:1.12;letter-spacing:.005em}
.project-kind{font-size:16px;color:var(--muted);line-height:1.65;max-width:240px;padding-bottom:5px}
.project-photo{margin:0 3.5%;position:relative;transform:translate3d(0,var(--parallax-y,0px),0)}
.project-photo img{width:100%;height:auto;aspect-ratio:auto;display:block}
.project-zoom{transform-origin:center}
.project-description{max-width:1040px;margin:0 auto;padding:76px 6.8% 86px}
.project-description>p:first-child{font-size:clamp(19px,1.7vw,25px);font-weight:300;line-height:1.8}
.project-facts{font-size:14px;line-height:1.9;letter-spacing:.025em;color:var(--muted);margin-top:25px}
.project-photo+.project-photo{margin-top:85px}
.project-return{padding:64px 6.8% 77px}
[data-reveal]{transition:opacity 1.1s cubic-bezier(.22,.61,.36,1),translate 1.1s cubic-bezier(.22,.61,.36,1)}
[data-reveal].reveal-pending{opacity:0;translate:0 12px}
[data-reveal].is-visible{opacity:1;translate:0 0}
.portfolio-motion .is-visible .project-zoom{animation:project-intro-zoom 4.8s cubic-bezier(.2,.45,.35,1) both}
.portfolio-suspended .project-zoom{animation-play-state:paused!important}
@keyframes project-intro-zoom{from{transform:scale(.992)}to{transform:scale(1)}}
@media(max-width:1200px){.project-intro{padding-left:6%;padding-right:6%}.project-title-row{gap:28px}.project-kind{max-width:205px}.project-description{padding-top:62px;padding-bottom:70px}}
@media(max-width:950px){.project-title-row{display:block}.project-kind{margin-top:17px;max-width:none}.project-intro{padding-left:5%;padding-right:5%}}
@media(max-width:760px){.portfolio-grid{row-gap:40px}.portfolio-card .project-caption{padding-top:17px}.portfolio-card .project-caption p{font-size:16px}.project-intro{padding:12px 7% 31px}.project-title-row{margin-top:25px}.project-title-row h1{font-size:clamp(34px,8vw,54px);line-height:1.18}.project-title-row .eyebrow{font-size:14px;margin-bottom:12px}.project-kind{margin-top:14px}.project-photo{margin-left:5%;margin-right:5%}.project-description{padding:40px 7% 46px}.project-description>p:first-child{font-size:19px;line-height:1.75}.project-facts{margin-top:21px}.project-photo+.project-photo{margin-top:40px}.project-return{padding:34px 7% 42px}}
@media(prefers-reduced-motion:reduce){[data-reveal],[data-reveal].reveal-pending{opacity:1;translate:none;transition:none}.project-photo{transform:none}.portfolio-motion .is-visible .project-zoom{animation:none}.portfolio-card .project-image>img,.portfolio-card:hover .project-image>img{transform:none;transition:none}}

/* Paragraph spacing for the new, longer project descriptions. */
.project-story>p{font-size:18px;line-height:1.8}
.project-story>p+p{margin-top:22px}
.project-story>p:first-child{font-size:clamp(19px,1.7vw,25px);font-weight:300}
.project-story strong{font-weight:500}
.project-intro>.project-status{display:inline-block;margin-top:24px;padding:9px 14px;border:1px solid var(--line);font-size:14px;line-height:1.5}
