.folio{--folio-width:1440px;--folio-gutter:clamp(22px, 4.4vw, 80px);--folio-label-size:12px;--folio-navigation-height:80px;--folio-column-gap:clamp(32px, 5vw, 72px);grid-template-rows:80px minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid}.folio-wrap{width:min(100%, calc(var(--folio-width) + 2 * var(--folio-gutter)));padding-inline:var(--folio-gutter);margin-inline:auto}.folio a{text-decoration:none}.folio a:hover{text-underline-offset:5px;text-decoration:underline}.folio-scroll-marker{pointer-events:none;width:1px;height:1px;position:absolute;top:64px;left:0}.folio-header{z-index:10;background:var(--color-bg);grid-area:1/1/-1;align-self:start;position:sticky;top:0}.folio-navigation{min-height:var(--folio-navigation-height);justify-content:space-between;align-items:center;display:flex}.folio-name{letter-spacing:-.045em;flex-shrink:0;align-items:baseline;min-width:44px;padding-block:12px;font-size:22px;font-weight:600;line-height:1.2;display:inline-flex}.folio-name-tail{opacity:1;transition:grid-template-columns .32s var(--ease-standard), opacity .22s var(--ease-standard);grid-template-columns:1fr;display:inline-grid}.folio-name-tail>span{white-space:pre;min-width:0;overflow:hidden}.folio-compact .folio-name-tail{opacity:0;grid-template-columns:0fr}.folio-navigation nav{align-items:center;gap:clamp(20px,3.2vw,48px);padding:10px 0 10px 20px;font-size:14px;display:flex}.folio-navigation nav [aria-current]{text-underline-offset:5px;text-decoration:underline}.folio>main{grid-area:2/1;min-width:0}.folio>.folio-footer{grid-area:3/1}.folio [id]{scroll-margin-top:calc(var(--folio-navigation-height) + 16px)}.folio-contact{align-items:center;gap:8px;display:inline-flex}.folio-label{font-size:var(--folio-label-size);letter-spacing:.07em;text-transform:uppercase;margin:0;font-weight:500;line-height:1.4}.folio-muted{color:var(--color-text-muted)}.folio-footer{justify-content:space-between;align-items:end;gap:32px;margin-top:56px;padding-block:28px 32px;font-size:13px;display:flex;position:relative}.folio-footer:before{content:"";left:var(--folio-gutter);right:var(--folio-gutter);border-top:1px solid var(--color-border);position:absolute;top:0}.folio-footer p{margin:0 0 4px}.folio-footer-links{gap:32px;display:flex}.folio .skip-link{z-index:20;background:var(--color-text);color:var(--color-bg);padding:12px 18px;position:fixed;top:12px;left:16px;transform:translateY(-180%)}.folio .skip-link:focus{transform:none}.folio figure{margin:0}.folio img{width:100%;height:auto}.folio figcaption{color:var(--color-text-muted);margin-top:12px;font-size:12px;line-height:1.5}.folio .project-link{border-bottom:1px solid var(--color-text);justify-content:space-between;align-items:center;gap:44px;padding:0 0 8px;font-size:16px;display:inline-flex}.folio .project-link:hover{text-decoration:none}.folio .project-link span{transition:transform var(--transition-fast)}.folio .project-link:hover span{transform:translate(3px,-3px)}@media (width<=680px){.folio{--folio-navigation-height:100px;grid-template-rows:100px minmax(0,1fr) auto}.folio-compact{--folio-navigation-height:52px}.folio-name{align-items:center;height:52px;padding:0;font-size:20px;position:absolute;top:0}.folio-navigation{transition:min-height .32s var(--ease-standard);position:relative}.folio-navigation nav{width:100%;min-height:52px;transition:margin-top .32s var(--ease-standard), padding-left .32s var(--ease-standard);justify-content:flex-end;gap:clamp(14px,4vw,26px);margin-top:48px;padding:10px 0;font-size:13px}.folio-compact .folio-navigation nav{justify-content:flex-end;margin-top:0;padding-left:46px}.folio-compact .folio-name{z-index:1}.folio-contact{gap:16px}.folio-footer{flex-direction:column;align-items:start;gap:20px;margin-top:40px}.folio-footer-links{gap:28px}}@media (width<=380px){.folio-compact{--folio-navigation-height:100px}.folio-compact .folio-navigation nav{margin-top:48px;padding-left:0}}@media (prefers-reduced-motion:reduce){.folio .project-link span,.folio-name-tail,.folio-navigation,.folio-navigation nav{transition:none}}@media print{.folio-header,.folio-navigation,.folio-footer,.skip-link{display:none}.folio{color:#000;background:#fff;display:block}}
