.home__details{margin:0;border-radius:4px}.home__details-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--home-touch-min);padding-block:var(--space-2);padding-inline:var(--space-1);margin-inline:calc(var(--space-1) * -1);border-radius:4px;-webkit-tap-highlight-color:transparent;transition:color var(--duration-short) var(--ease-out)}.home__details-summary::-webkit-details-marker{display:none}.home__details[open]:not(.home__details--closing) .home__details-summary{color:var(--accent)}.home__project-title{flex:1 1;min-width:0;font-family:var(--font-medium);font-size:var(--type-headline-inline-size);font-weight:500;line-height:var(--type-headline-inline-leading);letter-spacing:var(--type-headline-inline-tracking)}.home__disclosure{position:relative;flex-shrink:0;width:.72em;height:.72em;opacity:.52}.home__disclosure:after,.home__disclosure:before{content:"";position:absolute;background:currentColor;border-radius:1px;transition:transform var(--duration-standard) var(--ease-out),opacity var(--duration-short) var(--ease-out)}.home__disclosure:before{top:50%;left:0;right:0;height:1.5px;transform:translateY(-50%)}.home__disclosure:after{top:0;bottom:0;left:50%;width:1.5px;transform:translateX(-50%)}.home__details[open]:not(.home__details--closing) .home__disclosure:before{transform:translateY(-50%) rotate(45deg);transition-timing-function:var(--ease-out)}.home__details[open]:not(.home__details--closing) .home__disclosure:after{transform:translateX(-50%) rotate(45deg);transition-timing-function:var(--ease-out)}.home__details:not([open]) .home__disclosure:after{transition-duration:var(--duration-short);transition-timing-function:var(--ease-in)}.home__details[open]{scroll-margin-top:var(--home-pad-block)}.home__project-body-shell{display:grid;grid-template-rows:0fr;transition:none}.home__details[open]:not(.home__details--closing) .home__project-body-shell{grid-template-rows:1fr}.home__details--opening .home__project-body-shell{transition:grid-template-rows var(--duration-standard) var(--ease-out)}.home__details--closing .home__project-body-shell{grid-template-rows:0fr;transition:grid-template-rows var(--duration-short) var(--ease-in)}.home__details.home__details--closing .home__project-body{opacity:0;transition-duration:var(--duration-short);transition-timing-function:var(--ease-in);transition-delay:0s}.home__details.home__details--closing .home__disclosure:before{transform:translateY(-50%) rotate(0deg);transition-duration:var(--duration-short);transition-timing-function:var(--ease-in)}.home__details.home__details--closing .home__disclosure:after{transform:translateX(-50%) rotate(0deg);transition-duration:var(--duration-short);transition-timing-function:var(--ease-in)}.home__project-body{overflow:hidden;min-height:0;margin-top:var(--space-2);display:flex;flex-direction:column;gap:var(--space-3);max-width:var(--home-measure-body);opacity:0;transition:opacity var(--duration-short) var(--ease-in)}.home__details[open]:not(.home__details--closing) .home__project-body{opacity:1}.home__details--opening:not(.home__details--closing) .home__project-body{opacity:1;transition-duration:var(--duration-standard);transition-timing-function:var(--ease-out);transition-delay:0s}.home__details:not([open]) .home__project-body{transition-delay:0s}@media (max-width:39.99rem){.home__details-summary,.home__project-static{padding-inline:0;margin-inline:0}}.home__link--footer{color:var(--text-muted);font-family:var(--font-regular);font-weight:400;font-size:var(--text-subhead);min-height:var(--home-touch-min);padding-block:var(--space-2);padding-inline:0;border-radius:2px;flex-shrink:0}.home__footer-icon{display:none;width:1.125rem;height:1.125rem;font-size:1.125rem;line-height:1;text-align:center;flex-shrink:0;align-items:center;justify-content:center}.home__footer-icon--legacy{display:none;overflow:visible}.home__footer-icon--medium{transform:scale(1.06)}.home__footer-icon svg{display:block;width:100%;height:100%;overflow:visible}.home__footer{margin-top:auto;padding-top:var(--space-5);border-top:1px solid var(--separator);display:flex;flex-direction:column;gap:var(--space-4)}.home__footer-nav{justify-content:flex-start;width:100%;gap:var(--space-2) var(--space-4)}.home__footer-meta,.home__footer-nav{display:flex;flex-wrap:wrap;align-items:center}.home__footer-meta{gap:var(--space-1);margin:0;font-family:var(--font-regular);font-size:var(--type-caption-size);font-weight:400;line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking)}.home__footer-meta,.home__footer-meta-hint{color:var(--text-muted)}@media (min-width:40rem){.home__footer{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-4)}.home__footer-nav{width:auto;flex:1 1;min-width:0}.home__footer-meta{flex-shrink:0}}.home__footer-mark{display:block;width:1.0625rem;height:1.0625rem;flex-shrink:0;object-fit:contain;object-position:center center;transform:translateY(-.06em)}@media (max-width:39.99rem){.home__footer{padding-top:var(--space-4);gap:var(--space-3)}.home__footer-nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-gap:0;gap:0;justify-items:center}.home__footer-icon{width:1.0625rem;height:1.0625rem;font-size:1.0625rem}.home__footer-icon,.home__footer-icon--legacy{display:inline-flex}.home__footer-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.home__link--footer{justify-content:center;width:100%;min-width:0;min-height:var(--home-touch-min);padding-inline:0}.home__footer-meta{align-items:center;justify-content:center;width:100%;min-height:1.25rem}}.home__primary{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.home__detail{overflow-y:auto;max-width:var(--home-measure-body);-webkit-overflow-scrolling:touch}@media (min-width:40rem){.home__detail{max-height:calc(100dvh - 12rem)}}.home__detail-intro{display:flex;flex-direction:column;gap:var(--space-3)}.home__detail-shell{display:grid;grid-template-rows:1fr;min-height:0}.home__detail-shell--closing{grid-template-rows:0fr;transition:grid-template-rows var(--duration-short) var(--ease-in)}.home__detail-shell>.home__detail{overflow:hidden;min-height:0}.home__detail--enter{animation:home-detail-enter var(--duration-standard) var(--ease-out) forwards}.home__detail--exit{animation:home-detail-exit var(--duration-short) var(--ease-in) forwards}.home__detail--crossfade{animation:home-detail-crossfade var(--panel-crossfade,.15s) var(--ease-out) forwards}@keyframes home-detail-enter{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}@keyframes home-detail-exit{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-12px)}}@keyframes home-detail-crossfade{0%{opacity:0}to{opacity:1}}@media (min-width:40rem){.home__content--detail-closing,.home__content--detail-open{transition:grid-template-columns var(--duration-short) var(--ease-in),gap var(--duration-short) var(--ease-in)}.home__content--detail-open{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.home__content--detail-closing{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.home__content--detail-closing .home__work,.home__content--detail-open .home__work{transition:transform var(--duration-short) var(--ease-in)}.home__content--detail-open .home__work{transition-timing-function:var(--ease-out);transition-duration:var(--duration-standard)}}.home__inline-link[aria-current=page]{color:var(--accent)}.home--sheet-open{overflow:hidden}.home__scrim{position:fixed;inset:0;z-index:100;background:color-mix(in srgb,var(--ink) 32%,transparent);border:none;padding:0;margin:0;cursor:pointer;animation:home-scrim-enter var(--duration-standard) var(--ease-out) forwards}.home__scrim--exit{animation:home-scrim-exit var(--duration-short) var(--ease-in) forwards}@keyframes home-scrim-enter{0%{opacity:0}to{opacity:1}}@keyframes home-scrim-exit{0%{opacity:1}to{opacity:0}}.home__sheet{position:fixed;inset-inline:0;bottom:0;z-index:101;display:flex;flex-direction:column;background:var(--bg);border-start-start-radius:12px;border-start-end-radius:12px;border-top:1px solid var(--separator);box-shadow:0 -4px 24px color-mix(in srgb,var(--ink) 8%,transparent);height:var(--sheet-height,50dvh);max-height:82dvh;animation:home-sheet-enter var(--duration-standard) var(--ease-out) forwards}.home__sheet--exit{animation:home-sheet-exit var(--duration-short) var(--ease-in) forwards}@keyframes home-sheet-enter{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes home-sheet-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.home__sheet-handle{flex-shrink:0;display:flex;justify-content:center;padding-block:var(--space-3);cursor:-webkit-grab;cursor:grab;touch-action:none}.home__sheet-handle:before{content:"";display:block;width:36px;height:5px;border-radius:2.5px;background:var(--separator)}.home__sheet-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.home__sheet-header{flex-shrink:0;display:flex;align-items:center;gap:var(--space-2);padding-inline:var(--space-4);-webkit-padding-after:var(--space-3);padding-block-end:var(--space-3);border-bottom:1px solid var(--separator)}.home__sheet-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:var(--home-touch-min);min-height:var(--home-touch-min);padding:0 var(--space-3);border:none;border-radius:4px;background:transparent;color:var(--accent);font-family:var(--font-medium);font-size:var(--text-body);font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}.home__sheet-close:focus-visible{outline:2px solid var(--accent-focus-ring);outline-offset:2px}.home__sheet-title{flex:1 1;margin:0;font-family:var(--font-medium);font-size:var(--type-subhead-size);font-weight:500;line-height:var(--type-subhead-leading);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home__sheet-body{flex:1 1;overflow-y:auto;padding:var(--space-5);padding-bottom:max(var(--space-5),env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch}html.home--sheet-scroll-lock{overflow:hidden}