@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DMtmJ5ZE.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.Dg_dQHbK.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-ext-wght-normal.b6lpi8_2.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.Cjtb1TV-.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-weight-4: 400;--font-lineheight-4: 1.75;--font-sans: var(--font-system-ui);--size-7: 2rem;--size-3: 1rem;--size-5: 1.5rem;--font-mono: var(--font-monospace-code);--font-size-fluid-3: clamp(2rem, 9vw, 3.5rem);--font-lineheight-0: 1.1;--font-size-6: 2.5rem;--font-size-5: 2rem;--font-size-fluid-0: clamp(.75rem, 2vw, 1rem);--font-weight-7: 700;--font-size-3: 1.25rem;--size-6: 1.75rem;--radius-blob-1: 30% 70% 70% 30% / 53% 30% 70% 47%;--radius-blob-2: 53% 47% 34% 66% / 63% 46% 54% 37%;--radius-blob-3: 37% 63% 56% 44% / 49% 56% 44% 51%;--radius-blob-4: 63% 37% 37% 63% / 43% 37% 63% 57%;--radius-blob-5: 49% 51% 48% 52% / 57% 44% 56% 43%;--size-10: 5rem;--yellow-4: #ffd43b;--gray-9: #212529;--size-11: 7.5rem;--size-4: 1.25rem;--ease-elastic-in-out-2: cubic-bezier(.5, -.3, .1, 1.5);--size-8: 3rem;--radius-2: 5px;--gray-8: #343a40;--gradient-18: linear-gradient(0deg var(--gradient-space), hsla(0 100% 50% / 80%), hsla(0 100% 50% / 0) 75%), linear-gradient(60deg var(--gradient-space), hsla(60 100% 50% / 80%), hsla(60 100% 50% / 0) 75%), linear-gradient(120deg var(--gradient-space), hsla(120 100% 50% / 80%), hsla(120 100% 50% / 0) 75%), linear-gradient(180deg var(--gradient-space), hsla(180 100% 50% / 80%), hsla(180 100% 50% / 0) 75%), linear-gradient(240deg var(--gradient-space), hsla(240 100% 50% / 80%), hsla(240 100% 50% / 0) 75%), linear-gradient(300deg var(--gradient-space), hsla(300 100% 50% / 80%), hsla(300 100% 50% / 0) 75%) ;--radius-round: 1e5px;--shadow-color: 220 3% 15%;--font-system-ui: system-ui, sans-serif;--font-monospace-code: Dank Mono,Operator Mono, Inconsolata, Fira Mono, ui-monospace, SF Mono, Monaco, Droid Sans Mono, Source Code Pro, Cascadia Code, Menlo, Consolas, DejaVu Sans Mono, monospace;--size-1: .25rem;--ease-1: cubic-bezier(.25, 0, .5, 1);--font-size-0: .75rem;--gradient-15: linear-gradient(to bottom right var(--gradient-space), #c7d2fe, #fecaca, #fef3c7);--blue-6: #228be6;--yellow-5: #fcc419;--size-2: .5rem;--gray-1: #f1f3f5;--radius-3: 1rem;--gray-7: #495057;--font-size-1: 1rem;--ease-2: cubic-bezier(.25, 0, .4, 1);--font-size-7: 3rem;--font-lineheight-1: 1.25;--gray-3: #dee2e6;--size-9: 4rem;--gray-0: #f8f9fa;--gray-10: #16191d}:root{--black: #0b0b0b;--purple: #4929a9;--pink: #e47ba8;--blue: #76bfe9;--yellow: #eec057;--grey: #323232;--white: #ffffff;--offwhite: #e1e1e1}@property --button-accent{syntax: "<color>"; initial-value: black; inherits: false;}*{margin:var(--size-fluid-0);box-sizing:border-box;padding:var(--size-fluid-0);font-family:Geist Variable,system-ui,sans-serif;font-weight:var(--font-weight-4)}:root{--font-size: 16px;--rhythm: calc(var(--font-size) * var(--font-lineheight-4));color-scheme:light dark}html{background:var(--offwhite);font-family:var(--font-sans);color:light-dark(var(--grey),var(--offwhite))}@media (prefers-reduced-motion: no-preference){html{transition:all .3s var(--ease-2)}}@media (prefers-color-scheme: dark){html{background:var(--grey)}}html,body{margin:0;padding:0}.home--page header{background-color:var(--purple)}.wrapper,.fullwidth{--_container-gap: 0px;--_container-margin: var(--size-7);--_container-gutter: var(--size-3);--_content-width: 100%;display:grid;column-gap:var(--_container-gap);grid-template-columns:[full-bleed-start] minmax(0,1fr) [feature-start] minmax(0,calc(var(--rhythm) * 1)) [body-start] minmax(0,var(--_content-width)) [body-end] minmax(0,calc(var(--rhythm) * 1)) [feature-end] minmax(0,1fr) [full-bleed-end]}@media (width >= 768px){.wrapper,.fullwidth{--_container-gutter: var(--size-6);--_container-margin: var(--size-10);--_content-width: 1280px }}.wrapper>*,.fullwidth>*{grid-column-start:body-start;grid-column-end:body-end}.wrapper:has(.sidebar),.fullwidth:has(.sidebar){--_sidebar-content-min-width: 0px;--_sidebar-target-width: 0px;grid-template-columns:[full-bleed-start] minmax(0,1fr) [sidebar-start] minmax(var(--_sidebar-content-min-width),var(--_sidebar-target-width, 20rem)) [sidebar-end feature-start] minmax(calc(var(--rhythm) * 1),1fr) [body-start] minmax(0,var(--_content-width)) [body-end] minmax(calc(var(--rhythm) * 1),1fr) [feature-end] minmax(0,1fr) [full-bleed-end]}@media (width >= 480px){.wrapper:has(.sidebar),.fullwidth:has(.sidebar){--_sidebar-content-min-width: 8rem;--_sidebar-target-width: 12.5rem;--_content-width: 52ch }}@media (width >= 768px){.wrapper:has(.sidebar),.fullwidth:has(.sidebar){--_sidebar-content-min-width: 8rem;--_sidebar-target-width: 12.5rem;--_content-width: 52ch;grid-template-columns:[full-bleed-start] minmax(0,1fr) [sidebar-start] minmax(var(--_sidebar-content-min-width),var(--_sidebar-target-width, 20rem)) [sidebar-end feature-start] minmax(0,calc(var(--rhythm) + 6ch * 2)) [body-start] minmax(0,var(--_content-width)) [body-end] minmax(0,calc(var(--rhythm) + 6ch * 2)) [feature-end] minmax(0,1fr) [full-bleed-end]}}.fullwidth,.fullbleed{grid-column-start:full-bleed-start;grid-column-end:full-bleed-end}.section-title{display:flex;justify-content:space-between;flex-direction:column;padding-block:var(--size-3);gap:1rem;margin-block-end:var(--size-5)}@media (width >= 768px){.section-title{flex-direction:row}}.section-title[data-alignment=top]{align-items:start}.section-title[data-alignment=bottom]{align-items:unset}@media (width >= 768px){.section-title[data-alignment=bottom]{align-items:end}}.section-title[data-alignment=center]{align-items:center}.section-title p{flex-shrink:1;max-width:43ch}:root{--font-sans: "Geist Variable", system-ui, sans-serif;--font-mono: "Geist Mono Variable", monospace}:where(h1,h2,h3,h4,h5,h6,time){font-family:var(--font-mono)}h1,h2,h3,h4,h5,h6,p{margin-top:var(--rhythm);font-size:var(--font-size)}h1{--font-size: var(--font-size-fluid-3);line-height:var(--font-lineheight-0)}h2{--rhythm: calc(var(--font-size) * var(--font-lineheight-4));--font-size: var(--font-size-6);line-height:var(--font-lineheight-0)}h3,h4{--font-size: var(--font-size-5);font-weight:700}h5,h6{--font-size: var(--font-size-fluid-0)}h4,h6{font-weight:var(--font-weight-7)}p{--font-size: var(--font-size-3);font-family:var(--font-sans);line-height:var(--font-lineheight-4)}strong{font-weight:700}a{color:light-dark(var(--purple),var(--yellow))}ul,ol{margin-top:var(--rhythm);margin-left:var(--rhythm)}blockquote{--font-size: var(--font-size-6);padding:var(--size-6);background-color:light-dark(var(--grey),var(--offwhite));font-weight:800;letter-spacing:-.03em;line-height:1;color:light-dark(var(--offwhite),var(--grey));margin-block:var(--rhythm);grid-column:feature!important;font-variation-settings:"wght" 800}blockquote p{--font-size: inherit;line-height:inherit}blockquote p:first-of-type{margin-block-start:0}@keyframes wave{0%{transform:rotate(0)}5%{transform:rotate(16deg)}10%{transform:rotate(-6deg)}15%{transform:rotate(16deg)}30%{transform:rotate(-4deg)}35%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes blob{0%{border-radius:var(--radius-blob-1)}20%{border-radius:var(--radius-blob-2)}40%{border-radius:var(--radius-blob-3)}60%{border-radius:var(--radius-blob-4)}80%{border-radius:var(--radius-blob-5)}to{border-radius:var(--radius-blob-1)}}@keyframes sparkle{50%{transform:translate(-50%,-50%) scale(var(--s, 1))}}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease,translate .5s ease}.fade-enter-from,.fade-leave-to{opacity:0;translate:0 1rem}@keyframes ring{0%{animation-timing-function:ease-in-out;stroke-dashoffset:-122.52;transform:rotate(135deg)}15%{animation-timing-function:ease-in;stroke-dashoffset:-122.52;transform:rotate(90deg)}35%{animation-timing-function:ease-out;stroke-dashoffset:-65.34;transform:rotate(297.5deg)}55%{animation-timing-function:ease-in-out;stroke-dashoffset:-122.52;transform:rotate(505deg)}70%{animation-timing-function:ease-in-out;stroke-dashoffset:-122.52;transform:rotate(490deg)}85%,to{stroke-dashoffset:-122.52;transform:rotate(497.5deg)}}@keyframes ball1{0%{transform:rotate(14deg)}20%{transform:rotate(-7deg)}60%{transform:rotate(399deg)}75%{transform:rotate(361deg)}90%,to{transform:rotate(374deg)}}@keyframes ball2{0%{transform:rotate(-21deg)}25%{transform:rotate(-47deg)}60%{transform:rotate(364deg)}75%{transform:rotate(326deg)}90%,to{transform:rotate(339deg)}}.loader{display:grid;place-items:center;height:calc(100vh - var(--size-10) + 86px)}.pl{display:block;width:8em;height:8em;color:var(--yellow-4)}.pl__ring,.pl__ball1,.pl__ball2{animation-duration:2s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;transform-origin:32px 32px}.pl__ring{animation-name:ring}.pl__ball1{animation-name:ball1}.pl__ball2{animation-name:ball2}header{position:relative;z-index:1;border-bottom:2px solid var(--white);color:var(--gray-9)}header nav{z-index:10;display:flex;justify-content:space-between;gap:var(--size-4)}header nav .hero--intro{--font-size: var(--font-size-3);display:none;margin-top:0;color:var(--gray-8)}@media (width >= 768px){header nav .hero--intro{display:block}}@media (prefers-color-scheme: dark){header nav .hero--intro{color:var(--gray-1)}}@media (prefers-reduced-motion: no-preference){header nav .hero--intro span{display:inline-block;animation:wave 2.5s .6s infinite;transform-origin:75% 75%}}header nav .links{display:flex;gap:var(--size-4)}header nav a{text-decoration:none;color:var(--white)}@media (prefers-color-scheme: dark){header nav a{color:var(--white)}header nav a:visited{color:var(--white)}}header nav a:visited{color:var(--white)}nav{padding-top:var(--size-7);padding-bottom:var(--size-7)}nav *{font-family:var(--font-mono)}.home{overflow:hidden}@media (width >= 768px){.home{position:relative;top:calc((var(--size-7) * 2 + 1lh) * -1);width:100%}}.home--title{display:grid;margin:var(--size-11) 0;padding:0 var(--size-10);grid-template-columns:1fr 1fr}.posts--grid{position:relative;display:flex;flex-direction:column;margin:0;gap:var(--size-7);list-style:none}@media (width >= 768px){.posts--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(25rem,1fr))}}.posts{padding-block:var(--size-10)}.posts--list{padding-top:var(--size-11);padding-bottom:var(--size-11);color:var(--gray-9)}.posts--list .posts--details{width:100%;max-width:100%;margin-bottom:var(--size-10)}@media (width >= 768px){.posts--list .posts--details{max-width:60%}}.posts--list .posts--details p{font-size:var(--font-size-0)}.posts--list .posts--details h2{--font-size: var(--font-size-7);line-height:var(--font-lineheight-1)}.posts--list ul{list-style:none;margin:0}.posts--list ul li{border-top:1px solid var(--gray-9);overflow:hidden;cursor:pointer;position:relative;z-index:1}.posts--list ul li:after{content:"";transition:transform .2s ease-out;width:100%;height:100%;background-color:var(--gray-9);transform:translateY(100%);position:absolute;top:0;z-index:-1}.posts--list ul li:hover{color:var(--gray-0)}.posts--list ul li:hover:after{transform:translateY(0)}.posts--list ul li:hover .read--button p{color:var(--gray-9);transform:translateY(-100%)}.posts--list ul li a{color:inherit;text-decoration:none;padding-top:var(--size-9);padding-bottom:var(--size-9);display:block}.posts--list ul li .list--item{display:grid;grid-template-columns:1fr;align-items:center;gap:var(--size-3)}@media (width >= 768px){.posts--list ul li .list--item{grid-template-columns:420px 1fr 80px}}.posts--list ul li .list--item p{margin:0}.posts--list ul li h3{margin-top:0;font-weight:700}@media (width >= 768px){.posts--list ul li h3{font-weight:400}}.posts--grid:has(:hover)>li:not(:hover){opacity:.8;scale:.95}.posts--grid li{transition:all .2s cubic-bezier(.5,1,.75,1.25)}.posts--grid li:hover{scale:1.05}.posts--grid li:has(.post--card){list-style:none}.post--card{--_pc-padding-block: 30px;--_pc-padding-inline: 30px;--_pc-radius: 24px;--_pc-background: var(--yellow);--_pc-color: var(--black);display:grid;border-radius:var(--_pc-radius);height:100%;padding-block:var(--_pc-padding-block);padding-inline:var(--_pc-padding-inline);background-color:var(--_pc-background);text-decoration:none;color:var(--_pc-color);gap:var(--size-3)}.post--card>li{transition:opacity .3s ease}.post--card *{margin-top:0}.post--card footer{display:grid;align-items:center;align-self:end;margin-top:var(--size-4);grid-template-columns:1fr 1fr;gap:var(--size-4)}.post--card footer time{justify-self:end}.projects--grid{position:relative;display:grid;margin:0;margin-block-start:var(--rhythm);gap:var(--rhythm);list-style:none;grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.projects{padding-block-start:var(--size-10)}.projects ul li{list-style:none}.project{--font-size: var(--font-size-3);--rhythm: calc(var(--font-size) * var(--font-lineheight-4));display:grid;margin-bottom:var(--size-7);font-size:var(--font-size);line-height:var(--font-lineheight-4)}.project header{display:grid;border-bottom:0;padding-block:var(--rhythm);color:var(--offwhite);gap:calc(var(--size-1) + var(--size-3));grid-column:feature}.project header .tags{display:flex;gap:var(--size-2)}@media (width >= 768px){.project .wrapper{--_content-width: 52ch }}.project img{width:100%;background-color:var(--offwhite);grid-column:feature}.project--card{--_pjc-width: 350px;--_pjc-height: 400px;--_pjc-padding-block: var(--size-4);--_pjc-padding-inline: var(--size-4);--_pjc-radius: 24px;--_pjc-color: var(--black);--_pjc-background: var(--white);--_pjc-border-width: 4px;--_pjc-border-color: var(--white);--x0: calc(var(--i) * 1.334 + var(--i) * var(--i) * .5325 + .235);--floor: calc(var(--x0) - .5);--x: calc(var(--x0) - var(--floor));--base-angle: 20deg;--rotation: calc(var(--x) * var(--base-angle));position:relative;display:flex;justify-content:end;flex-direction:column;overflow:hidden;transition:rotate .2s var(--ease-elastic-in-out-2);border:var(--_pjc-border-width) solid var(--_pjc-border-color);border-radius:var(--_pjc-radius);outline:calc(var(--_pjc-border-width) * 2) solid var(--_pjc-background);height:100%;padding-block:var(--_pjc-padding-block);padding-inline:var(--_pjc-padding-inline);background:var(--_pjc-background);text-decoration:none;color:var(--_pjc-color)}@media (width >= 768px){.project--card{aspect-ratio:4/5}}.project--card[data-bg-color=blue]{--_pjc-background: var(--blue)}.project--card[data-bg-color=purple]{--_pjc-background: var(--purple);--_pjc-color: var(--white)}.project--card[data-bg-color=pink]{--_pjc-background: var(--pink);--_pjc-color: var(--white)}.project--card[data-bg-color=yellow]{--_pjc-background: var(--yellow)}.project--card:hover{rotate:var(--rotation)}.project--card .project--tags{display:flex;padding-block-start:10vb;gap:1vb}@media (width >= 768px){.project--card .project--tags{padding-block-start:0}}.post--header{padding-block:var(--size-8);padding-inline:calc(var(--rhythm) * 1);background-color:var(--yellow);grid-column:sidebar/feature;grid-template-columns:subgrid}.post--header footer{padding-top:var(--size-10);color:var(--black)}.post{--font-size: var(--font-size-3);--rhythm: calc(var(--font-size) * var(--font-lineheight-4));display:grid;margin-bottom:var(--size-7);font-size:var(--font-size);line-height:var(--font-lineheight-4)}.post .sidebar+*{margin-top:0;padding-block-start:var(--size-11)}.post iframe{margin-top:var(--rhythm);width:100%;grid-column:body}@media (width >= 1024px){.post iframe{width:calc(100% + var(--_sidebar-target-width, 20rem) / 2);margin-inline-start:calc((var(--_sidebar-target-width, 20rem) / 2) * -1);grid-column:feature}}.hero{--_bg-image-size: 24px;display:grid;align-items:center;min-height:700px;padding-block:var(--size-7);background-color:var(--purple);background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAYKADAAQAAAABAAAAYAAAAACpM19OAAACMElEQVR4Ae3du46CQBSA4QUETNRY0G1lTEx8DXsfyoey9wnsTTTGaqu18QqO4M4xYUMQh90J5W/D5cwl+c7MSHec1Wr1+WH4jcfjL0OYUI1Ana9r6t/v95UpTqxeQCmVmloZExDHMQkw6f0hliRJbGpmTMBgMDiaOhOrF9CniF0CfN8/O45j3D7109NiNBolp9Pp/E6icgd4nqeGwyGr/53aP9/P5/OjPoruVd1a5Zey8gVfr/6sHOPZTmA2m4nl93Q67XW73U5xFEc+k4IgSB+PR5xlWSxbptiA+2YFtLO32+16h8MhCMPwZQM0OxujIYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAgAg8CzpLCfPr9Xrf7/fHyWRSWXobrmYE1ut16LpuW1csb99uN++ZgOLQlDQvajR3rytpu8vl8qWkuVueQinV2Ww2kXQox3i2ExBLMS3Xk5fRKpHTNPW3223Pbjp6lQVk5Ytp+b08VyZAArIT5LySe372AovFolW18vMR3yZAGsifRd6Qq51AFEXGk8SYgMvlQgLs3H976fO/8ujJGxgToL+IvLwhVzuBMAxbpp4/1XaKbBFAEs4AAAAASUVORK5CYII=);background-size:var(--_bg-image-size);background-position-y:calc(var(--_bg-image-size) / 2 * -1);background-position-x:calc(var(--_bg-image-size) / 2 * -1)}.hero--layout{display:grid;align-items:end;grid-template-columns:1fr;gap:var(--size-10)}@media (width >= 1024px){.hero--layout{grid-template-columns:6fr 4fr}}button{appearance:none;cursor:pointer}.button{display:inline-flex;align-content:center;align-items:center;flex-wrap:wrap;flex-shrink:0;border:2px solid var(--black);border-radius:56px;width:fit-content;height:56px;padding:16px 8px 16px 16px;background:#eec057;font-size:24px;font-family:Geist;font-weight:600;text-decoration:none;letter-spacing:-.48px;color:var(--grey);gap:16px;margin-block:var(--rhythm)}.button:hover .icon{rotate:-90deg}.button .icon{display:grid;transition:all .2s var(--ease-1);border:2px solid var(--black);border-radius:50%;width:36px;background:#fff;aspect-ratio:1;place-items:center}.read--button{display:none;overflow:hidden;border-radius:50%;width:80px;height:80px;color:var(--gray-9)}@media (width >= 768px){.read--button{display:grid}}.read--button p{display:grid;transition:all .15s ease-out;margin:0;width:80px;height:80px;background-color:#fff;font-size:var(--font-size-0);place-items:center}.read--button p:last-of-type{background:var(--yellow-4)}.alert{border-radius:var(--radius-2);margin-top:var(--rhythm);padding:var(--rhythm)}.alert h3{margin-top:0}.alert.info{background-color:#c7d2fe;background-image:var(--gradient-15);color:var(--gray-8)}.not-found--grid{--grid-height: 60;display:grid;margin:auto;height:100%;max-height:calc(var(--grid-height) * 1vh);grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);aspect-ratio:1/1}.not-found--grid:hover span{color:var(--gray-3);scale:.6}@media (prefers-color-scheme: dark){.not-found--grid:hover span{color:var(--gray-8)}}.not-found--grid:hover svg{color:var(--blue-6)}@media (prefers-color-scheme: dark){.not-found--grid:hover svg{color:var(--yellow-5)}}.not-found--grid span{display:grid;font-size:calc(var(--grid-height) * .5vh);font-family:Space Mono,monospace;line-height:1;transition:all .3s;place-items:center}.not-found--grid span:nth-child(1){transform-origin:bottom right}.not-found--grid span:nth-child(2){transform-origin:bottom left}.not-found--grid span:nth-child(3){transform-origin:top right}.not-found--grid svg{display:block;width:100%;height:100%}.home-link{color:var(--gray-8);cursor:pointer;text-decoration:none}@media (prefers-color-scheme: dark){.home-link{color:var(--gray-1)}}@property --angle-1{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@property --angle-2{syntax: "<angle>"; initial-value: 60deg; inherits: false;}@property --angle-3{syntax: "<angle>"; initial-value: 120deg; inherits: false;}@property --angle-4{syntax: "<angle>"; initial-value: 180deg; inherits: false;}@property --angle-5{syntax: "<angle>"; initial-value: 240deg; inherits: false;}@property --angle-6{syntax: "<angle>"; initial-value: 300deg; inherits: false;}.rainbow{background:var(--gradient-18);background:linear-gradient(var(--angle-1, 0deg),hsla(0 100% 50% / 80%),hsla(0 100% 50% / 0) 75%),linear-gradient(var(--angle-2, 60deg),hsla(60 100% 50% / 80%),hsla(60 100% 50% / 0) 75%),linear-gradient(var(--angle-3, 120deg),hsla(120 100% 50% / 80%),hsla(120 100% 50% / 0) 75%),linear-gradient(var(--angle-4, 180deg),hsla(180 100% 50% / 80%),hsla(180 100% 50% / 0) 75%),linear-gradient(var(--angle-5, 240deg),hsla(240 100% 50% / 80%),hsla(240 100% 50% / 0) 75%),linear-gradient(var(--angle-6, 300deg),hsla(300 100% 50% / 80%),hsla(300 100% 50% / 0) 75%);background-size:cover;background-repeat:no-repeat;min-height:100vh;color:var(--gray-8);animation:10s infinite background-rotate}.rainbow header nav a{color:var(--gray-8)}.rainbow a{color:var(--blue-6)}@keyframes background-rotate{to{--angle-1: 359deg;--angle-2: 59deg;--angle-3: 119deg;--angle-4: 179deg;--angle-5: 239deg;--angle-6: 299deg}}.popart{background:#fff;font-family:var(--font-sans);color:var(--gray-9)}.popart .hero{--scale: .2}.popart .hero picture{scale:calc(1 - var(--scale))}.popart .hero .hero--detail{scale:calc(1 + var(--scale));background-image:repeating-linear-gradient(-45deg,#fff,#fff 10px,#000 10px 20px)}.popart .hero .hero--text{padding-top:calc(var(--size-7) - .4rem)}.popart header{position:relative;margin-right:calc(50% - 50vw);margin-left:calc(50% - 50vw);border-bottom:3px solid var(--gray-9);background:linear-gradient(135deg,transparent,transparent 25%,black 25%,black calc(25% + 3px),white calc(25% + 3px),white calc(25% + 70px),var(--yellow-5) calc(25% + 3px))}.popart header nav{padding-right:var(--size-4);padding-left:var(--size-4)}.popart header nav .hero--intro{width:fit-content;padding:.4rem;background:#fff;color:var(--gray-9)}.popart header nav a{color:var(--gray-9)}.popart a{color:var(--blue-6)}.popart .posts--list{position:relative;z-index:1;background:#fff}.popart .posts--list li{background:var(--yellow-4)}.popart .posts--grid:before{background-color:#fff;background-image:radial-gradient(black 30%,transparent 10%),radial-gradient(black 30%,transparent 30%);background-position:0 0,5px 5px;background-size:10px 10px}.popart .posts--grid .post--card,.popart .posts--grid .project--card{border:3px solid black;background:#fff;color:var(--gray-9)}.resume{--font-size: var(--font-size-3);--rhythm: calc(var(--font-size) * var(--font-lineheight-4));display:grid;font-size:var(--font-size);line-height:var(--font-lineheight-4);grid-template-columns:minmax(0,1fr) minmax(0,calc(var(--rhythm) * 1)) minmax(0,54ch) minmax(0,calc(var(--rhythm) * 1)) minmax(0,1fr);margin-bottom:var(--size-7)}.resume *,.resume *>*{grid-column:3}.resume .gradient-text{background-image:linear-gradient(-20deg,#b721ff,#21d4fd)}@media (prefers-color-scheme: dark){.resume .gradient-text{background-image:linear-gradient(-225deg,#ffe29f,#ffa99f 48%,#ff719a)}}.resume .gradient-text p{mix-blend-mode:lighten;color:#000;background:#fff;padding-top:var(--rhythm);margin:-1px -1px 0}.resume .gradient-text p:last-of-type{margin-bottom:-1px}@media (prefers-color-scheme: dark){.resume .gradient-text p{mix-blend-mode:darken;color:#fff;background:var(--gray-9)}}.resume .experience--wrapper{grid-column:3;margin-top:var(--rhythm);display:grid;grid-template-columns:repeat(1,1fr);gap:var(--size-2)}@media (width >= 768px){.resume .experience--wrapper{grid-column:2/5;grid-template-columns:repeat(2,1fr)}}.resume .experience{--offset: var(--size-5);width:100%;grid-column:auto;background:var(--gray-1);padding:var(--size-4);border-radius:var(--radius-3)}@media (width >= 768px){.resume .experience:nth-child(2n){transform:translateY(var(--offset))}}@media (prefers-color-scheme: dark){.resume .experience{background:var(--gray-10)}}.resume .experience p,.resume .experience li{font-size:var(--font-size-1)}.resume .experience .skills{display:flex;flex-wrap:wrap;gap:var(--size-2);list-style:none;padding:0;margin:0;margin-top:var(--size-4)}.resume .experience .skills .skill{border:1px solid var(--gray-8);border-radius:var(--radius-round);padding-left:var(--size-2);padding-right:var(--size-2)}@media (prefers-color-scheme: dark){.resume .experience .skills .skill{border:1px solid var(--gray-1)}}.resume span{color:var(--gray-7);font-size:var(--font-size-1)}.resume h4{margin-top:0;line-height:1}.marquee{--duration: 15s;--gap: var(--size-8);display:flex;transform:skewY(-3deg);overflow:hidden;margin-top:var(--size-7);user-select:none;gap:var(--gap);grid-column:1/-1}@media (width >= 768px){.marquee{--duration: 30s }}.marquee--group{display:flex;justify-content:space-around;align-items:center;flex-shrink:0;animation:scroll var(--duration) linear infinite;gap:var(--gap)}.marquee--group img{width:100%;max-width:clamp(10rem,1rem + 23vmin,20rem);object-fit:cover;filter:grayscale(1) brightness(1.5)}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(calc(-100% - var(--gap)))}}.block-heading{--_font-size: inherit;--_block-color: var(--white);--_block-background-color: green;--_block-mark: linear-gradient( 0deg, transparent var(--_highlight-start, 20%), var(--_block-background-color) var(--_highlight-start, 20%), var(--_block-background-color) var(--_highlight-end, 84%), transparent var(--_highlight-end, 84%) );--_highlight-start: 0%;--_hightlight-end: 100%;margin:0;font-size:var(--_font-size);font-family:Geist Mono Variable,monospace;color:var(--_block-color)}.block-heading[data-mark-bg=purple]{--_block-background-color: var(--purple)}.block-heading[data-mark-bg=pink]{--_block-background-color: var(--pink)}.block-heading[data-mark-bg=blue]{--_block-background-color: var(--blue)}.block-heading[data-mark-bg=yellow]{--_block-background-color: var(--yellow)}.block-heading[data-mark-bg=white]{--_block-color: var(--black);--_block-background-color: var(--white)}.block-heading[data-mark-bg=black]{--_block-background-color: var(--black)}.block-heading[data-color=purple]{--_block-color: var(--purple)}.block-heading[data-color=pink]{--_block-color: var(--pink)}.block-heading[data-color=blue]{--_block-color: var(--blue)}.block-heading[data-color=yellow]{--_block-color: var(--yellow)}.block-heading[data-color=white]{--_block-color: var(--white)}.block-heading[data-color=black]{--_block-color: var(--black)}.block-heading[data-size=sm]{--_font-size: 48px;font-weight:600;letter-spacing:-.96px;line-height:1}.block-heading[data-size=sm] mark{padding-block-start:.5rem}.block-heading[data-size=md]{--_font-size: 58px;font-weight:600;font-style:normal;letter-spacing:-1.92px;line-height:.97;text-wrap:pretty}.block-heading[data-size=lg]{--_font-size: 68px;font-weight:600;font-style:normal;letter-spacing:-1.92px;line-height:70px;text-wrap:pretty}@media (width >= 768px){.block-heading[data-size=lg]{--_font-size: 96px;line-height:100px}}.block-heading mark{padding-inline:.5rem;background:var(--_block-mark, var(--_block-background-color));font-family:inherit;color:var(--_block-color);box-decoration-break:clone}.fadeout-horizontal{mask-image:linear-gradient(to right,transparent,black 5rem,black calc(100% - 5rem),transparent)}.text-marquee{--speed: 15s;position:relative;z-index:1;top:0%;left:-5%;translate:0 -10%;rotate:-3deg;width:100%;width:110%;padding-block:var(--size-4);background-color:var(--pink)}@media (width >= 768px){.text-marquee{top:-50%;translate:0 -50%}}.text-marquee .decoration{position:absolute;z-index:-1;top:0;left:0;width:100%;height:100%;background-color:color-mix(in srgb,var(--pink),transparent 80%)}@media (width >= 768px){.text-marquee .decoration{width:110%}}.text-marquee .decoration:nth-child(odd){rotate:3deg}.text-marquee .decoration:nth-child(2n){rotate:-3deg}.marquee-text{overflow:clip}.marquee-text-track{display:flex;animation:marquee-move-text var(--speed, 20s) linear infinite var(--direction, forwards);width:max-content;padding-left:1.5rem;gap:1.5rem}.marquee-text-track p{margin:0;font-size:48px;font-family:Geist;font-weight:600;letter-spacing:-.96px}@keyframes marquee-move-text{to{transform:translate(-50%)}}.chip{display:grid;border:1px solid var(--black);width:fit-content;padding:8px 10px;font-family:var(--font-mono);letter-spacing:-.32px;gap:10px}.pill{display:grid;border:1px solid currentColor;border-radius:var(--radius-round);width:fit-content;padding:4px 12px;font-size:small;font-family:var(--font-mono);letter-spacing:-.32px;color:currentColor;gap:10px}.modern-table{display:flex}.modern-table tbody{width:100%}.modern-table tbody tr{display:grid;justify-content:space-between;align-items:center;border-top:1px solid var(--white);padding-block:var(--size-9);grid-template-columns:1fr;gap:2rem}@media (width >= 1024px){.modern-table tbody tr{gap:10rem;grid-template-columns:320px auto auto}}.modern-table tbody tr td{font-size:var(--font-size-3);text-wrap:wrap}.modern-table tbody tr td:first-of-type{font-size:var(--font-size-6)}@property --floor{syntax: "<integer>"; initial-value: 0; inherits: true;}@keyframes offscreen-inert{entry 0%,entry 19%,exit 100% {opacity: .25; interactivity: inert;} entry 20%,exit 99% {opacity: 1; interactivity: auto;}}@keyframes offscreen-searchability{entry 0%,entry 19%,exit 100% {content-visibility: hidden;} entry 20%,exit 99% {content-visibility: visible;}}.carousel{overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}@media (prefers-reduced-motion: no-preference){.carousel{scroll-behavior:smooth}}.carousel li{scroll-snap-align:center}.carousel:not([is-searching])>li{animation:offscreen-inert linear both;animation-timeline:view(x)}.carousel:not([is-searching]) [hidden=until-found]{animation:offscreen-searchability linear both;animation-timeline:view(x)}.carousel[is-searching] [hidden=until-found]{content-visibility:visible}.carousel::scroll-button(*){margin:5px;border:2px solid #999;border-radius:1e3px;inline-size:48px;aspect-ratio:1}.carousel::scroll-button(*):focus-visible{outline-offset:5px}.carousel::scroll-button(*):not(:disabled):is(:hover,:active){background-color:Canvas}.carousel::scroll-button(*):not(:disabled):active{scale:90%}.carousel::scroll-button(left){content:"⬅" / "Scroll Left";grid-column:left}.carousel::scroll-button(right){content:"⮕" / "Scroll Right";grid-column:right}.carousel{scroll-marker-group:after}.carousel::scroll-marker-group{display:grid;overflow:auto;padding:15px;grid-area:markers;place-content:safe end;grid:6px / auto-flow 48px;scroll-padding:15px;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x mandatory}@media (prefers-reduced-motion: no-preference){.carousel::scroll-marker-group{scroll-behavior:smooth}}.carousel>.content>li::scroll-marker{content:" ";background-color:var(--white);-webkit-tap-highlight-color:transparent;scroll-snap-align:center}.carousel>.content>li::scroll-marker:target-current{background-color:var(--yellow)}.scroll-layout{display:grid;grid-template-areas:"scroll scroll scroll scroll scroll" ". left right markers .";grid-template-columns:var(--_container-margin) auto auto 1fr var(--_container-margin);grid-column:full-bleed}.scroll-layout .carousel{grid-area:scroll}.carousel{padding-block:1rem;max-inline-size:100cqi;overscroll-behavior-x:contain;scroll-behavior:smooth}.carousel li{--x0: calc(var(--i) * 1.334 + var(--i) * var(--i) * .5325 + .235);--floor: calc(var(--x0) - .5);--x: calc(var(--x0) - var(--floor));--base-angle: 20deg;--rotation: calc(var(--x) * var(--base-angle));rotate:var(--rotation)}.carousel li:nth-child(2n){--rotation: calc(var(--x) * var(--base-angle) * -1)}.content{display:grid;margin:0;padding:0;grid:1fr / auto-flow 1fr;gap:-1rem}.content>li{list-style-type:none}.sidebar{--row-count: 99}@media (width >= 768px){.sidebar{display:grid;border-right:1px solid var(--black);padding-block-start:var(--size-11);grid-column:sidebar;grid-row:span var(--row-count)}}.preview-frame{--vp-width: 100;--vp-height: 30rem;--vp-scale: 1;--vp-border-color: var(--black);--vp-inline-padding: var(--size-6);display:grid;margin-top:var(--rhythm);border:1px solid var(--vp-border-color);background-color:var(--offwhite);grid-column:body;gap:24px}@media (width >= 1024px){.preview-frame{width:round(calc(100% + var(--_sidebar-target-width, 20rem) / 2),1px);margin-inline-start:round(calc((var(--_sidebar-target-width, 20rem) / 2) * -1),1px);grid-column:feature}}.preview-frame__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:0;border-bottom:1px solid var(--vp-border-color)}@media (width >= 768px){.preview-frame__header{flex-wrap:nowrap;padding-inline-start:var(--vp-inline-padding);padding-inline-end:revert}}@media (width < 768px){.preview-frame__header h3{padding-inline-start:var(--vp-inline-padding);padding-inline-end:var(--vp-inline-padding)}}.preview-frame__header *{margin:0}.preview-frame__inner{display:flex;flex-direction:column;padding-inline:var(--vp-inline-padding)}.preview-frame iframe{display:block;transform:scale(var(--vp-scale));border:0;width:clamp(150px,calc(var(--vp-width) / var(--vp-scale) * 1%),100%);height:var(--vp-height);margin-block:0;margin-inline:auto;overscroll-behavior:contain}@media (width >= 768px){.preview-frame iframe{width:clamp(300px,calc(var(--vp-width) / var(--vp-scale) * 1%),100%)}}.preview-frame__controls{position:relative;display:grid;align-self:end;border:1px solid var(--offwhite);width:100%;padding-block-start:var(--size-3);padding-inline-start:var(--vp-inline-padding);background-color:var(--offwhite)}@media (width >= 768px){.preview-frame__controls{translate:0 -100%;width:fit-content}}.preview-frame__controls label{text-align:center;color:var(--vp-border-color)}.preview-frame__controls input{width:100%;color:var(--vp-border-color);accent-color:var(--vp-border-color);scroll-margin-top:var(--space-l)}@media (width >= 768px){.preview-frame__controls input{width:400px}}.preview-frame__controls input[type=range]{-webkit-appearance:none;height:13px;background:transparent;touch-action:none}.preview-frame__controls input[type=range]:focus{outline:none}.preview-frame__controls input[type=range]:focus::-webkit-slider-thumb{outline:1px solid currentColor;outline-offset:2px}.preview-frame__controls input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background:currentColor;cursor:pointer;animate:.2s}.preview-frame__controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-11px;border-radius:24px;width:24px;height:24px;background:currentColor;cursor:pointer}.preview-frame__controls input[type=range]::-moz-range-track{width:100%;height:2px;background:currentColor;cursor:pointer;animate:.2s}.preview-frame__controls input[type=range]::-moz-range-thumb{border-radius:24px;width:24px;height:24px;background:currentColor;cursor:pointer}.preview-frame__actions{border-top:1px solid var(--vp-border-color);width:100%;padding-block:var(--vp-inline-padding)}@media (width >= 768px){.preview-frame__actions{border-top:unset;border-left:1px solid var(--vp-border-color);width:revert}}.preview-frame__actions button{display:flex;justify-content:center;align-items:center;align-self:stretch;border:none;height:100%;padding:0 16px;background-color:transparent;color:var(--vp-border-color);gap:10px}@media (width < 768px){.preview-frame__actions button{width:100%}}.code-block{--_cb-padding: clamp(1.875rem, 1.7072rem + .8389vi, 2.5rem);border:1px solid var(--black);background-color:var(--offwhite);margin-block:var(--rhythm)}.code-block--header{display:flex;justify-content:space-between;border-bottom:1px solid var(--black);padding-inline-start:var(--_cb-padding)}.code-block--header .code-block--language{font-family:var(--font-mono);color:var(--black)}.code-block--header button{display:flex;justify-content:center;align-items:center;align-self:stretch;border:none;border-left:1px solid var(--black);padding:0 16px;background-color:transparent;color:var(--black);gap:10px}.code-block--code{padding-block:calc(var(--_cb-padding) / 2);padding-inline:var(--_cb-padding)}.code-block--code pre{display:flex}code[class*=language-],pre[class*=language-]{margin:0;border-radius:0;padding:0;font-family:var(--font-mono);text-align:left;word-spacing:normal;color:var(--black);word-break:normal;word-wrap:normal;hyphens:none;tab-size:2;text-shadow:none}code[class*=language-] span,pre[class*=language-] span{font-family:inherit}code[class*=language-] .comment,pre[class*=language-] .comment{color:color-mix(in srgb,var(--grey) 50%,var(--offwhite))}pre[class*=language-]{display:flex;overflow:auto}@layer stuck{:root{--margin: .1;--nav-height: 86px;--_content-width: 52ch;--width: 260;--duration: .26;--gutter: 1;--threshold: calc((min(var(--_content-width) + 4rem, 100vw - 2rem) * (9 / 16) * var(--margin)) * -1)}.video-backdrop{position:relative;margin-bottom:-100%!important;box-shadow:inset 0 -2px 6px -2px color-mix(in oklch,canvasText,#0000 80%);border-radius:1rem;width:100%;background:var(--black);aspect-ratio:16 / 9;grid-column:feature!important}.video-container{position:sticky;top:var(--threshold);margin:0 auto;width:100%;aspect-ratio:16 / 9;grid-column:feature!important}.video-container iframe{position:absolute;top:0%;left:50%;transform:translate(-50%);transition-property:width,transform,box-shadow,border-radius;transition-duration:calc(var(--duration) * 1s);transition-timing-function:ease-out;border-radius:1rem;width:100%;aspect-ratio:16 / 9}[data-stuck=true] .video-container iframe{--shadow-color: 0 0% 0%;transform:translate(-50%) translate(calc(50vw - (50% + (var(--gutter) * 1rem))),calc((100vh - var(--threshold)) - (100% + (var(--gutter) * 1rem))));transition-timing-function:ease-in-out;box-shadow:0 .6px .7px hsl(var(--shadow-color) / .1),0 1.6px 1.8px -.6px hsl(var(--shadow-color) / .1),0 3.2px 3.6px -1.2px hsl(var(--shadow-color) / .1),0 6.5px 7.3px -1.9px hsl(var(--shadow-color) / .1),0 12.6px 14.2px -2.5px hsl(var(--shadow-color) / .1);border-radius:6px;width:calc(var(--width) * 1px)}.video-container{z-index:10}@supports (container-type: scroll-state){@container scroll-state(stuck: top){.video-container iframe{--shadow-color: 0 0% 0%;transform:translate(-50%) translate(calc(50vw - (50% + (var(--gutter) * 1rem))),calc((100vh - var(--threshold)) - (100% + (var(--gutter) * 1rem))));transition-timing-function:ease-in-out;box-shadow:0 .6px .7px hsl(var(--shadow-color) / .1),0 1.6px 1.8px -.6px hsl(var(--shadow-color) / .1),0 3.2px 3.6px -1.2px hsl(var(--shadow-color) / .1),0 6.5px 7.3px -1.9px hsl(var(--shadow-color) / .1),0 12.6px 14.2px -2.5px hsl(var(--shadow-color) / .1);border-radius:6px;width:calc(var(--width) * 1px)}}.video-container{container-type:scroll-state}}}.notes--grid{--_gap: var(--size-5);--line-offset: calc(var(--_gap) / 2);--line-thickness: 1px;--line-color: var(--offwhite);--line-type: dashed;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:var(--_gap);grid-auto-flow:dense}.notes--grid .block-heading{padding-block-end:var(--line-offset);grid-column:span 2;grid-row:span 2}.notes--grid .grid--item{position:relative}.notes--grid .grid--item:before,.notes--grid .grid--item:after{position:absolute;z-index:1}.notes--grid .grid--item:before{border-left:var(--line-thickness) var(--line-type) var(--line-color);block-size:calc(100% + var(--_gap));inset-block-start:calc(var(--_gap) / 2 * -1);inset-inline-start:calc(var(--line-offset) * -1)}.notes--grid .grid--item:after{border-top:var(--line-thickness) var(--line-type) var(--line-color);inline-size:calc(100% + var(--_gap));inset-inline-start:calc(var(--_gap) / 2 * -1);inset-block-start:calc(var(--line-offset) * -1)}.notes--grid .grid--item:has(>[data-title-length=extra-long]){grid-row:span 2}a:has(.note--card){text-decoration:none}.note--card{border-radius:8px;height:100%;padding:var(--size-3);background-color:var(--yellow);color:var(--black);place-content:center}.note--card .block-heading{padding-block-end:0}@property --flip{syntax: "<number>"; inherits: true; initial-value: 0;}@keyframes flip{to{--flip: 1}}@keyframes fade{0%,55%{opacity:0}}@keyframes reveal{0%,30%{scale:0}}@keyframes scale-x{0%,10%{width:calc(100vw - (2 * var(--gutter)))}}@keyframes scale-y{0%,10%{height:calc(100vh - (2 * var(--gutter)))}}@media (prefers-reduced-motion: no-preference){[data-enhanced=true] section:first-of-type{min-height:240vh}@supports (animation-timeline: scroll()) and (animation-range: 0 100%){[data-enhanced=true] main section:first-of-type{view-timeline:--runner}[data-enhanced=true][data-center=true] .scaler .scaler--inner{animation-name:scale-x,scale-y;animation-timing-function:var(--power-2-out),var(--power-1-out);animation-fill-mode:both;animation-timeline:--runner,--runner;animation-range:entry 100% exit -20%}[data-enhanced=true][data-layers=true] .grid .layer{animation-name:fade,reveal;animation-timing-function:var(--sine),var(--power-1-out);animation-fill-mode:both;animation-timeline:--runner,--runner;animation-range:entry 100% exit 0%}[data-enhanced=true][data-layers=true][data-stagger=timing] .grid .layer:nth-of-type(1){animation-timing-function:var(--sine),var(--power-1-out)}[data-enhanced=true][data-layers=true][data-stagger=timing] .grid .layer:nth-of-type(2){animation-timing-function:var(--sine),var(--power-3-out)}[data-enhanced=true][data-layers=true][data-stagger=timing] .grid .layer:nth-of-type(3){animation-timing-function:var(--sine),var(--power-4-out)}[data-enhanced=true][data-layers=true][data-stagger=range] .grid .layer:nth-of-type(1){animation-range:entry 100% exit 0%}[data-enhanced=true][data-layers=true][data-stagger=range] .grid .layer:nth-of-type(2){animation-range:entry 100% exit -10%}[data-enhanced=true][data-layers=true][data-stagger=range] .grid .layer:nth-of-type(3){animation-range:entry 100% exit -20%}}}:root{--power-1-out: linear( 0 0%, .0027 3.64%, .0106 7.29%, .0425 14.58%, .0957 21.87%, .1701 29.16%, .2477 35.19%, .3401 41.23%, .5982 55.18%, .7044 61.56%, .7987 68.28%, .875 75%, .9297 81.25%, .9687 87.5%, .9922 93.75%, 1 100% );--power-2-out: linear( 0 0%, .0036 9.62%, .0185 16.66%, .0489 23.03%, .0962 28.86%, .1705 34.93%, .269 40.66%, .3867 45.89%, .5833 52.95%, .683 57.05%, .7829 62.14%, .8621 67.46%, .8991 70.68%, .9299 74.03%, .9545 77.52%, .9735 81.21%, .9865 85%, .9949 89.15%, 1 100% );--power-3-out: linear( 0 0%, .0029 13.8%, .0184 21.9%, .0339 25.51%, .0551 28.81%, .0827 31.88%, .1168 34.76%, .1962 39.57%, .3005 44.02%, .4084 47.53%, .6242 53.45%, .7493 57.93%, .8495 62.97%, .8888 65.67%, .9213 68.51%, .9629 73.9%, .9876 80.16%, .998 87.5%, 1 100% );--power-4-out: linear( 0 0%, .0012 14.95%, .0089 22.36%, .0297 28.43%, .0668 33.43%, .0979 36.08%, .1363 38.55%, .2373 43.07%, .3675 47.01%, .5984 52.15%, .7121 55.23%, .8192 59.21%, .898 63.62%, .9297 66.23%, .9546 69.06%, .9733 72.17%, .9864 75.67%, .9982 83.73%, 1 100% );--sine: linear( 0 0%, .2861 18.47%, .4829 32.08%, .6437 44.52%, .7712 56.07%, .8722 67.47%, .9115 73.02%, .9434 78.49%, .9682 83.91%, .9859 89.3%, .9965 94.66%, 1 100% )}@media (max-width: 600px){:root{--gutter: 1rem}}:root{--gap: 2rem;--gutter: 2rem}.content{position:sticky;top:0;display:flex;align-content:center;min-height:100vh;place-items:center}.scaler{position:relative;z-index:2;width:100%;height:100%}.scaler .scaler--inner{--_rule-color: color-mix(in srgb, var(--grey) 10%, var(--offwhite));position:absolute;top:50%;left:50%;translate:-50% -50%;border-radius:1rem;width:100%;height:100%;background-image:repeating-linear-gradient(var(--offwhite),var(--offwhite) 20px,var(--_rule-color) 20px,var(--_rule-color) 22px);background-attachment:scroll;text-align:center;object-fit:cover;place-content:center}.scaler .scaler--inner p{text-align:center;color:var(--black)}@media (width < 768px){.grid{--offset: -1;grid-template-columns:repeat(3,1fr)}.grid>div:nth-of-type(1){display:none}}.grid{--offset: 0;position:absolute;top:50%;left:50%;display:grid;align-content:center;translate:-50% -50%;margin:0 auto;width:1600px;max-width:calc(100% - (2 * var(--gutter)));grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(3,auto);gap:var(--gap);container-type:inline-size}.grid>.layer{display:grid;grid-column:1 / -1;grid-row:1 / -1;grid-template-columns:subgrid;grid-template-rows:subgrid;gap:var(--gap)}.grid>.layer:nth-of-type(2){grid-template-columns:repeat(3,1fr);grid-column:2 / span 3}.grid>.layer:nth-of-type(3){grid-template-columns:1fr;grid-column:3}.grid>.layer div{aspect-ratio:5/4}.grid>div:nth-of-type(1) div:nth-of-type(2n){grid-column:-2}.grid>div:nth-of-type(2) div:nth-of-type(odd){grid-column:1}.grid>div:nth-of-type(2) div:nth-of-type(2n){grid-column:3}.grid>div:nth-of-type(2) div:nth-of-type(odd):nth-last-of-type(2){grid-row:-1}.grid>div:nth-of-type(2) div:nth-of-type(2n):last-of-type{grid-row:-1}.grid>div:nth-of-type(3) div{grid-column:1}.grid>div:nth-of-type(3) div:last-of-type{grid-row:-1}.grid .scaler{position:relative;grid-area:2 / calc(2 + var(--offset)) / auto / span 3}.grid .placeholder{border:2px dashed var(--black);border-radius:8px;height:100%;padding:var(--size-3);background-color:color-mix(in srgb,var(--black) 10%,transparent);color:var(--black);place-content:center}@media (prefers-color-scheme: dark){:root{--shadow-color: 220 40% 2%}}
