.link-list{list-style:none;margin:0;padding:1rem 0}.body__link{all:unset;display:block;width:max-content;max-width:100%;font-size:var(--font-size-body-link);color:var(--text);cursor:pointer;padding:.6rem 0}.body__link:hover{text-decoration:underline}.body__link:focus-visible{color:var(--accent)}.project__date{margin:1rem 0}.project__image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1}@media (prefers-reduced-motion: no-preference){.project__image{animation:fade-in 1s cubic-bezier(.22,1,.36,1) .4s both}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.gallery{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));max-width:var(--measure);align-items:start}.gallery__item--feature{grid-column:1 / -1;max-width:48rem}.gallery__figure{margin:0}.gallery__frame{display:block;width:100%;aspect-ratio:var(--ratio, 4 / 3);border:0;background:var(--panel)}.gallery__frame--image{object-fit:cover}.gallery__caption{font-size:var(--font-size-text);line-height:var(--line-height);padding-top:.4rem}.gallery__video{--ratio: 4 / 3;--video-chrome: 2.5rem;--video-max-block: 70svh;position:relative;width:min(100%,calc((var(--video-max-block) - var(--video-chrome)) * (var(--ratio))));aspect-ratio:var(--ratio);margin-inline:auto;margin-bottom:var(--video-chrome)}.gallery__video__container{position:relative;width:100%;aspect-ratio:var(--ratio);display:flex;justify-content:center;align-items:center;height:calc(100% + var(--video-chrome))}.gallery__video__placeholder{all:unset;cursor:pointer;position:absolute;background-color:#000;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;border:1px dashed white}.gallery__video__play-icon{font-size:3.4em}@media (max-width: 768px){.gallery__video__play-icon{font-size:2rem}}.gallery__video__placeholder:hover{color:var(--accent)}.gallery__video__placeholder:focus{color:var(--accent)}.gallery__video iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none}@media (max-width: 600px){.gallery__video iframe{width:200%;height:200%;transform:scale(.5);transform-origin:top left}}@media (max-width: 768px){.gallery__video{--ratio: 4 / 4}}@container (max-width: 30rem){.gallery__video{--ratio: 4 / 3.6}}
