.portfolio-section{padding:86px 0 100px;overflow:hidden}.portfolio-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:34px}.portfolio-head h2{margin-bottom:0}.portfolio-copy{display:flex;align-items:flex-end;justify-content:flex-start;gap:26px}.portfolio-copy>p{margin:0;max-width:510px;color:var(--muted);font-size:14px;line-height:1.65}.portfolio-viewport{position:relative}.portfolio-side-arrow{position:absolute;z-index:7;top:50%;transform:translateY(-50%);width:54px;height:54px;border:1px solid rgba(24,46,53,.22);background:rgba(250,251,248,.74);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);border-radius:50%;font-size:23px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(16,32,38,.10);transition:background .2s ease,transform .2s ease,opacity .2s ease,visibility .2s ease}.portfolio-side-arrow:hover{background:rgba(250,251,248,.92);transform:translateY(-50%) scale(1.04)}.portfolio-side-arrow:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.portfolio-side-prev{left:14px}.portfolio-side-next{right:14px}.portfolio-side-arrow:disabled{opacity:0;visibility:hidden;pointer-events:none}.portfolio-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 0 16px;overscroll-behavior-x:contain}.portfolio-track::-webkit-scrollbar{display:none}.portfolio-item{flex:0 0 75%;scroll-snap-align:start;display:grid;grid-template-columns:minmax(0,2fr) minmax(245px,1fr);background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;min-width:0}.portfolio-image-button{position:relative;display:block;width:100%;height:100%;min-height:420px;border:0;padding:0;background:#e9edeb;overflow:hidden;cursor:zoom-in}.portfolio-image-button img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.portfolio-image-button:hover img{transform:scale(1.025)}.portfolio-zoom{position:absolute;right:16px;bottom:16px;width:42px;height:42px;display:grid;place-items:center;background:rgba(250,251,248,.94);color:var(--ink);border-radius:50%;font-size:17px;box-shadow:0 5px 18px #00000012}.portfolio-meta{padding:34px 30px 30px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.portfolio-meta-top{min-width:0}.portfolio-project-label{display:block;font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--muted);margin-bottom:22px}.portfolio-meta h3{font-size:clamp(24px,2.25vw,34px);font-weight:400;letter-spacing:-1px;line-height:1.08;margin:0 0 20px}.portfolio-meta p{margin:0;color:var(--muted);font-size:14px;line-height:1.7;max-width:31ch}.portfolio-meta-foot{border-top:1px solid var(--line);padding-top:18px;margin-top:34px;display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:11px;color:var(--muted)}.portfolio-meta-foot span:last-child{font-size:17px;color:var(--ink)}.portfolio-lightbox[hidden]{display:none}.portfolio-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(10,22,27,.94);display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;padding:28px}.portfolio-lightbox figure{margin:0;max-width:min(1320px,calc(100vw - 190px));max-height:calc(100vh - 56px);justify-self:center;display:flex;flex-direction:column;gap:12px}.portfolio-lightbox img{max-width:100%;max-height:calc(100vh - 125px);object-fit:contain;display:block;border-radius:4px}.portfolio-lightbox figcaption{color:#fff;display:flex;gap:18px;align-items:baseline}.portfolio-lightbox figcaption strong{font-size:14px}.portfolio-lightbox figcaption span{font-size:12px;color:#b9c7c9}.portfolio-lightbox-close,.portfolio-lightbox-nav{border:1px solid #ffffff55;background:#ffffff0e;color:#fff;border-radius:50%;cursor:pointer}.portfolio-lightbox-close{position:absolute;top:24px;right:24px;width:48px;height:48px;font-size:28px}.portfolio-lightbox-nav{width:48px;height:48px;font-size:20px;justify-self:center}.portfolio-open{overflow:hidden}@media(max-width:1000px){.portfolio-item{flex-basis:82%;grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr)}.portfolio-image-button{min-height:360px}.portfolio-meta{padding:28px 24px 24px}.portfolio-meta h3{font-size:26px}}@media(max-width:720px){.portfolio-section{padding:55px 0 65px}.portfolio-head{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.portfolio-copy{align-items:flex-start}.portfolio-copy>p{font-size:13px}.portfolio-side-arrow{width:48px;height:48px;font-size:21px}.portfolio-side-prev{left:8px}.portfolio-side-next{right:8px}.portfolio-track{gap:14px}.portfolio-item{flex-basis:88vw;grid-template-columns:1fr;display:block}.portfolio-image-button{height:auto;min-height:0;aspect-ratio:4/3}.portfolio-meta{padding:22px 20px 20px;min-height:220px}.portfolio-project-label{margin-bottom:14px}.portfolio-meta h3{font-size:25px;margin-bottom:12px}.portfolio-meta p{font-size:13px}.portfolio-meta-foot{margin-top:24px}.portfolio-lightbox{grid-template-columns:42px minmax(0,1fr) 42px;padding:18px 8px}.portfolio-lightbox figure{max-width:calc(100vw - 100px);max-height:calc(100vh - 36px)}.portfolio-lightbox img{max-height:calc(100vh - 110px)}.portfolio-lightbox-close{top:14px;right:14px;width:42px;height:42px}.portfolio-lightbox-nav{width:38px;height:38px}.portfolio-lightbox figcaption{display:block}.portfolio-lightbox figcaption span{display:block;margin-top:4px}}@media(prefers-reduced-motion:reduce){.portfolio-image-button img{transition:none}.portfolio-track{scroll-behavior:auto}}
