@font-face{font-family:Libre Baskerville;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/libre-baskerville-latin-ext-400-italic-BgvGgHFw.woff2)format("woff2"),url(/assets/libre-baskerville-latin-ext-400-italic-DZExQWkT.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Libre Baskerville;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/libre-baskerville-latin-400-italic-Dx5Rrf3o.woff2)format("woff2"),url(/assets/libre-baskerville-latin-400-italic-DvfstiAl.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0a0a0b;--surface:#141416;--surface-hover:#1c1c1f;--text:#ecebe6;--text-2:#ecebe68c;--text-3:#ecebe652;--accent:#c8ff00;--accent-2:#ff3b3b;--stroke:#ecebe629;--cut:14px;--cut-shape:polygon(-1px -1px, calc(100% + 1px) -1px, calc(100% + 1px) calc(100% - var(--cut)), calc(100% - var(--cut)) calc(100% + 1px), -1px calc(100% + 1px));--positive:#96e6b4;--positive-bg:#78dca01f;--negative:#ff968c;--font-sans:"Space Grotesk", ui-sans-serif, system-ui, -apple-system, "PingFang SC", "Hiragino Sans", "Noto Sans CJK SC", sans-serif;--font-serif:"Libre Baskerville", Georgia, serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", "Cascadia Mono", Consolas, monospace;--hairline:#ecebe617;--weight-strong:600;--pad:40px;--gap:24px;--sidebar:calc(var(--pad) + var(--gap) + max(296px, .22 * (100vw - 2 * var(--pad))));--radius-card:0;--radius-media:0;--card-pad-top:28px;--reveal:134px;--ease-out:cubic-bezier(.22, 1, .36, 1);--hover-ease:cubic-bezier(.4, 0, .2, 1);--hover-duration:.45s;--glass-blur:blur(20px) saturate(1.45);--glass-panel:#0a0a0bf0;--glass-control:#0a0a0bdb;--glass-control-hover:#1e1e21f0;--glass-edge:inset 0 0 0 1px #ecebe624;--glass-shadow:0 6px 22px #0000006b;--glass-bar-shadow:0 10px 36px -10px #0000008c;--chevron-right:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='black'%3E%3Cpath fill-rule='evenodd' d='M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.06l-4.5 4.25a.75.75 0 01-1.06-.02z' clip-rule='evenodd'/%3E%3C/svg%3E");--arrow-external:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='2 -2.15 20 20' fill='black'%3E%3Cpath fill-rule='evenodd' d='M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z' clip-rule='evenodd'/%3E%3C/svg%3E");--icon-clipboard:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='black'%3E%3Cpath d='M7 3a1 1 0 016 0h1a2 2 0 012 2v11a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h1V3zm1 0v1h4V3H8zM5 5v11h10V5H5z'/%3E%3C/svg%3E");--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@property --edge-fade-left{syntax:"<number>";inherits:false;initial-value:0}@property --edge-fade-right{syntax:"<number>";inherits:false;initial-value:0}*,:before,:after{box-sizing:border-box}html{background:var(--bg)}html,body{color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5}h1,h2,h3,p,ul,figure{margin:0;padding:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:0}body:after{content:"";z-index:999;pointer-events:none;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.link{--icon-size:.72em;transition:text-decoration-color var(--hover-duration) var(--hover-ease)}.link__tail{white-space:nowrap}.link__icon{width:0;height:var(--icon-size);vertical-align:calc(.34em - var(--icon-size) / 2);-webkit-mask:var(--link-icon) no-repeat left center / var(--icon-size) var(--icon-size);-webkit-mask:var(--link-icon) no-repeat left center / var(--icon-size) var(--icon-size);mask:var(--link-icon) no-repeat left center / var(--icon-size) var(--icon-size);opacity:0;transition:width var(--hover-duration) var(--ease-out), margin-left var(--hover-duration) var(--ease-out), opacity var(--hover-duration) var(--hover-ease);background-color:currentColor;margin-left:0;display:inline-block}.link:hover .link__icon{width:var(--icon-size);opacity:1;margin-left:.22em}.link--internal{--link-icon:var(--chevron-right)}.link--external{--link-icon:var(--arrow-external)}.link--inline{color:var(--text);text-underline-offset:.2em;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration:underline #c8ff0080;text-decoration:underline #c8ff0080;text-decoration-thickness:1px}.link--inline:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.link--nav{transform-origin:0;transition:transform var(--hover-duration) var(--hover-ease);display:inline-block}.link--nav:hover{transform:scale(.94)}.link--nav{font-size:20px;font-weight:var(--weight-strong);line-height:1.2}.home{grid-template-columns:var(--sidebar) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{height:100svh;padding:var(--pad) var(--gap) var(--pad) var(--pad);flex-direction:column;display:flex;position:sticky;top:0}.sidebar__nav,.sidebar__socials{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.sidebar__nav{margin-top:32px}.sidebar .link--nav,.work__footer .link--nav{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);transition:color .25s var(--hover-ease), transform var(--hover-duration) var(--hover-ease);font-size:13px;font-weight:500}.sidebar .link--nav:hover,.work__footer .link--nav:hover{color:var(--text);transform:none}.sidebar__socials{margin-top:auto;padding-top:40px}.work{z-index:0;padding:0 var(--pad) var(--pad) 0;min-width:0;position:relative}.dot-field{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.dot-field canvas{width:100%;height:100%;display:block}.work__footer{display:none}.title__name{font-size:30px;font-weight:var(--weight-strong);letter-spacing:-.03em;white-space:nowrap;height:40px;line-height:40px}.title__word,.title__char{display:inline-block}.title__word.is-scrambling .title__char.is-scramble{font-family:var(--font-mono);letter-spacing:.06em;color:var(--accent);font-size:.88em;font-weight:500;animation:.12s steps(2,jump-none) infinite title-scramble-flicker}.title__word.is-scrambling .title__char.is-settled{color:var(--text)}.title__cursor{background:var(--accent);opacity:0;width:2px;height:.9em;margin-left:3px;transition:opacity .4s;display:inline-block}.title__cursor.is-visible{opacity:1;animation:1.2s ease-in-out infinite cursor-blink}.title__sub{min-height:56px;color:var(--text-2);opacity:0;filter:blur(4px);transition:opacity .6s ease, filter .6s ease, transform .8s var(--ease-out);flex-direction:column;margin-top:10px;font-size:18px;line-height:28px;display:flex;transform:translateY(6px)}.title__sub.is-visible{opacity:1;filter:none;transform:none}.title__sub span{white-space:nowrap}@keyframes title-scramble-flicker{50%{opacity:.45}}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:.15}}@media (prefers-reduced-motion:reduce){.title__word.is-scrambling .title__char.is-scramble{opacity:1;animation:none}}.categories{z-index:100;padding:var(--pad) 0 14px;background:var(--bg);border-bottom:1px solid var(--hairline);position:sticky;top:0}@media (width>=901px){.categories{--categories-gutter:32px;margin-left:calc(-1 * var(--categories-gutter));padding-left:var(--categories-gutter)}}@media (width>=901px) and (width<=1599.98px){.categories{margin-right:calc(-1 * var(--pad));padding-right:var(--pad)}}.categories:after{content:"";background:linear-gradient(var(--bg), transparent);pointer-events:none;height:20px;position:absolute;top:100%;left:0;right:0}@media (width>=901px){.categories:after{left:calc(-1 * var(--categories-gutter,32px))}}.categories__list{flex-wrap:wrap;gap:0 28px;display:flex}.categories__item{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;transition:color .35s var(--hover-ease);font-size:13px;font-weight:500;line-height:32px}.categories__item:hover{color:var(--text-2)}.categories__item.is-active{color:var(--accent)}.section{scroll-margin-top:calc(var(--categories-height,96px) + 4px);margin-bottom:56px;padding-top:24px}.section__title{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);transition:color .35s var(--hover-ease);margin-bottom:18px;font-size:12px;font-weight:500;line-height:20px}.section__title.is-active{color:var(--text)}.grid{gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.grid.grid--featured .card--compact{aspect-ratio:16/11}.card--compact .card__description{display:none}.card__tag{z-index:2;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--glass-control);box-shadow:var(--glass-edge);pointer-events:none;padding:3px 8px;font-size:10px;font-weight:500;line-height:16px;position:absolute;top:12px;right:12px}.card{aspect-ratio:32/25;border-radius:var(--radius-card);background:var(--surface);isolation:isolate;animation:card-in .8s var(--ease-out) both;animation-delay:calc(min(var(--i), 8) * 60ms);display:block;position:relative;overflow:hidden}.tile,.cs-highlights li,.cs-stats li,.cs-notes li,.cs-card{--line:var(--stroke);border:1px solid var(--line);clip-path:var(--cut-shape);transition:border-color .3s var(--hover-ease);background:0 0;position:relative}.tile:before,.cs-highlights li:before,.cs-stats li:before,.cs-notes li:before,.cs-card:before,.card:before{content:"";z-index:3;width:var(--cut);height:var(--cut);pointer-events:none;background:linear-gradient(to top left, transparent calc(50% - .5px), var(--line) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px));position:absolute;bottom:0;right:0}.card{--line:var(--stroke);clip-path:var(--cut-shape)}.card:after{content:"";z-index:3;pointer-events:none;border:1px solid var(--line);transition:border-color .3s var(--hover-ease);position:absolute;inset:0}@keyframes card-in{0%{opacity:0;translate:0 24px}}.card__reveal{padding-top:var(--card-pad-top);position:absolute;inset:0 28px auto}.card__title{font-size:21px;font-weight:var(--weight-strong);letter-spacing:-.01em;align-items:center;gap:6px;line-height:1.35;display:flex}.card__icon{width:17px;height:17px;color:var(--text-2);opacity:0;transition:transform var(--hover-duration) var(--ease-out), opacity var(--hover-duration) var(--hover-ease);flex-shrink:0;transform:translate(-6px)}.card__description{color:var(--text-2);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin-top:5px;font-size:14px;line-height:20px;display:-webkit-box;overflow:hidden}.card__media{border-radius:var(--radius-card);background:var(--surface);transform-origin:50% 0;transition:transform .7s var(--ease-out), border-radius .7s var(--ease-out);will-change:transform;position:absolute;inset:0;overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out);transform:scale(1.04)}.card__preview{object-fit:cover;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .2s var(--ease-out);position:absolute;inset:0}.card__preview.is-playing{opacity:1}.card:hover .card__media,.card:focus-visible .card__media{transform:translateY(var(--reveal)) scale(.94);border-radius:var(--radius-media)}.card:hover .card__media img,.card:focus-visible .card__media img{transform:scale(1)}.card:hover .card__icon,.card:focus-visible .card__icon{opacity:1;transition-delay:.15s;transform:none}@media (pointer:fine){.card__reveal{z-index:2;pointer-events:none;background:linear-gradient(#0a0a0b00 0%,#0a0a0b59 18%,#0a0a0bb8 40%,#0a0a0be6 62%,#0a0a0bf5 100%);padding:64px 24px 22px;inset:auto 0 0}.card__title,.card__description{text-shadow:0 1px 12px #00000080}.card--compact .card__reveal{padding:44px 18px 14px}.card--compact .card__title{font-size:17px}.card__description{color:#ecebe6b8;-webkit-line-clamp:2;line-clamp:2}.card__media img{transform:none}.card:hover .card__media,.card:focus-visible .card__media{border-radius:var(--radius-card);transform:none}.card:hover .card__media img,.card:focus-visible .card__media img{transform:none}.card{transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(1);transition:transform .45s var(--ease-out)}.card:hover,.card:focus-visible{--line:#ff3b3bbf;transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(.965)}.card:hover:after,.card:focus-visible:after{border-width:.5px}.card.is-nav-masked,.card.is-nav-masked:hover,.card.is-nav-masked:focus-visible{--line:var(--stroke);transform:perspective(1200px)rotateX(0)rotateY(0)scale(1)}.card.is-nav-masked:hover:after,.card.is-nav-masked:focus-visible:after{border-width:1px}.card__media img,.card__preview{scale:1.06;translate:calc(var(--px,0) * -16px) calc(var(--py,0) * -16px);transition:translate .45s var(--ease-out), opacity .2s var(--ease-out)}.card__crt{pointer-events:none;opacity:0;transition:opacity .4s var(--hover-ease);background:radial-gradient(circle at calc(50% + var(--px,0) * 100%) calc(50% + var(--py,0) * 100%), #ffffff1a, transparent 45%), repeating-linear-gradient(180deg, #00000029 0 1px, transparent 1px 3px), radial-gradient(ellipse 120% 100% at 50% 50%, transparent 60%, #00000059);mix-blend-mode:normal;display:block;position:absolute;inset:0}.card__crt:after{content:"";background:linear-gradient(#0000,#b4dcff0f,#0000);height:20%;animation:3.2s linear infinite crt-sweep;position:absolute;inset:-20% 0 auto}.card:hover .card__crt,.card:focus-visible .card__crt{opacity:1;animation:.12s steps(2,end) infinite crt-flicker}.card.is-nav-masked .card__crt{opacity:0}}.card__crt{display:none}@keyframes crt-sweep{to{transform:translateY(700%)}}@keyframes crt-flicker{50%{opacity:.94}}@media (prefers-reduced-motion:reduce){.card__crt,.card__crt:after{animation:none!important}}.cursor-frame{--c:var(--text);--len:8px;--w:1.5px;--tick:linear-gradient(var(--c), var(--c));z-index:1000;pointer-events:none;opacity:0;will-change:transform, width, height;background:var(--tick) top left / var(--len) var(--w) no-repeat, var(--tick) top left / var(--w) var(--len) no-repeat, var(--tick) top right / var(--len) var(--w) no-repeat, var(--tick) top right / var(--w) var(--len) no-repeat, var(--tick) bottom left / var(--len) var(--w) no-repeat, var(--tick) bottom left / var(--w) var(--len) no-repeat, var(--tick) bottom right / var(--len) var(--w) no-repeat, var(--tick) bottom right / var(--w) var(--len) no-repeat;transition:opacity .2s;position:fixed;top:0;left:0}.cursor-frame.is-ready{opacity:1}.cursor-frame.is-ready.is-reading{opacity:.25}.cursor-frame.is-locked{--c:var(--accent-2);--len:14px}.cursor-frame.is-hidden{opacity:0}.cursor-tag{z-index:1000;pointer-events:none;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#000;background:var(--accent-2);opacity:0;will-change:transform;padding:2px 5px;font-size:9px;font-weight:600;line-height:1.4;transition:opacity .15s;position:fixed;top:0;left:0;box-shadow:0 0 10px #ff3b3b73}.cursor-tag.is-on{opacity:1;animation:cursor-tag-type .28s steps(var(--chars,10), end) both}@keyframes cursor-tag-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.page{min-height:100vh;padding:112px var(--pad) 120px}.page .article{animation:page-in .6s var(--ease-out) both}@keyframes page-in{0%{opacity:0;transform:translateY(12px)}}.back{z-index:10;background:var(--glass-control);width:40px;height:40px;color:var(--text-2);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge), var(--glass-shadow);transition:background-color .3s var(--hover-ease), color .3s var(--hover-ease), transform .4s var(--ease-out), box-shadow .3s var(--hover-ease);border-radius:0;place-items:center;display:grid;position:fixed;top:16px;left:16px}.back svg{width:16px;height:16px}.back:hover,.back:focus-visible{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--accent-2);background-color:#160a0a;transform:translate(-2px);box-shadow:inset 0 0 0 1px #ff3b3bbf,0 0 14px #ff3b3b47,0 8px 26px #0000007a}.article{max-width:568px;margin:0 auto}.article__hero{border-radius:var(--radius-card);background:var(--surface);margin:0 -40px 48px;overflow:hidden}.article__hero img{aspect-ratio:32/25;object-fit:cover;width:100%}.article__title{font-size:24px;font-weight:var(--weight-strong);line-height:1.4}.article__header{margin-bottom:32px}.prose{color:var(--text-2);flex-direction:column;gap:24px;font-size:17px;line-height:28px;display:flex}.prose__note{font-family:var(--font-serif);color:var(--text-3);font-style:italic}.article__links{margin-top:32px}.article__section{margin-top:72px}.article__heading{font-size:20px;font-weight:var(--weight-strong);margin-bottom:20px}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;display:grid}.tile{align-items:center;gap:14px;height:100%;padding:14px 16px;display:flex;position:relative}.tile__logo{background:var(--surface-hover);flex-shrink:0;width:44px;height:44px;position:relative;overflow:hidden}.tile__logo img{object-fit:cover;width:100%;height:100%}.tile__logo img[data-loaded]{background:#fff}.tile__text{flex-direction:column;min-width:0;display:flex}.tile__role{font-size:15px;font-weight:var(--weight-strong);color:var(--text);line-height:20px}.tile__company{color:var(--text-2);font-size:14px;line-height:20px}.tile__dates{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px;line-height:18px}.tile__arrow{width:14px;height:14px;color:var(--text-2);opacity:0;transition:opacity var(--hover-duration) var(--hover-ease), transform var(--hover-duration) var(--ease-out);position:absolute;top:14px;right:14px;transform:translate(-3px,3px)}.tile--link:hover{--line:var(--accent-2)}.tile--link:hover .tile__arrow{opacity:1;transform:none}.tile--plain{padding:16px 20px}.cs-article{max-width:720px}.cs-hero .article__title{letter-spacing:-.03em;font-size:36px;line-height:1.15}.cs-hero__subtitle{color:var(--text-2);margin-top:8px;font-size:20px;line-height:30px}.cs-meta{--tick:linear-gradient(var(--text-3), var(--text-3));background:var(--tick) top left / 14px 1px no-repeat, var(--tick) top left / 1px 14px no-repeat, var(--tick) top right / 14px 1px no-repeat, var(--tick) top right / 1px 14px no-repeat, var(--tick) bottom left / 14px 1px no-repeat, var(--tick) bottom left / 1px 14px no-repeat, var(--tick) bottom right / 14px 1px no-repeat, var(--tick) bottom right / 1px 14px no-repeat;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px 24px;margin:32px 0 0;padding:20px 24px 24px;display:grid}.cs-meta dt{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:12px;line-height:20px}.cs-meta dd{font-size:15px;line-height:22px;font-weight:var(--weight-strong);margin:4px 0 0}.cs-cover{border-radius:var(--radius-card);background:var(--surface);margin-bottom:40px;overflow:hidden}.cs-cover img{aspect-ratio:2;object-fit:cover;width:100%}.cs-lead{color:var(--text);margin-top:32px;font-size:20px;line-height:32px}.cs-highlights{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:40px;list-style:none;display:grid}.cs-highlights li{flex-direction:column;gap:8px;padding:22px 24px 24px;display:flex}.cs-highlights__value{font-size:32px;line-height:1.1;font-weight:var(--weight-strong);color:var(--positive);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.cs-highlights__label{color:var(--text-2);font-size:15px;line-height:22px}.cs-section{margin-top:112px;scroll-margin-top:48px}.cs-section__title{font-size:24px;line-height:1.3;font-weight:var(--weight-strong);margin-bottom:20px}.cs-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px;list-style:none;display:grid}.cs-notes li{flex-direction:column;gap:4px;padding:16px 20px;display:flex}.cs-notes h3{font-size:16px;line-height:24px;font-weight:var(--weight-strong)}.cs-notes p{color:var(--text-2);font-size:15px;line-height:22px}.cs-project{border-left:1px solid var(--stroke);margin-top:40px;padding:2px 0 2px 28px}.cs-section__title+.cs-project{margin-top:20px}.cs-project__toggle{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:0;display:flex}.cs-project__toggle-icon{width:32px;height:32px;color:var(--text-2);transition:background-color .3s var(--hover-ease), color .3s var(--hover-ease);background:#ffffff14;border-radius:0;flex-shrink:0;place-items:center;display:grid}.cs-project__toggle-icon svg{width:16px;height:16px;transition:transform .45s var(--ease-out);transform:rotate(180deg)}.cs-project__toggle:hover .cs-project__toggle-icon{color:var(--text);background:#ffffff24}.is-collapsed .cs-project__toggle-icon svg{transform:none}.cs-project__header .cs-results,.cs-project__header .cs-results__note{margin-top:14px}.cs-project__body{transition:grid-template-rows .5s var(--ease-out), opacity .35s var(--hover-ease);grid-template-rows:1fr;display:grid}.is-collapsed .cs-project__body{opacity:0;grid-template-rows:0fr}.cs-project__inner{min-height:0;overflow:hidden}.cs-project__inner>.media{margin-top:28px}.cs-project__title{font-size:20px;line-height:1.35;font-weight:var(--weight-strong)}.cs-project__summary{color:var(--text-2);margin-top:6px;font-size:17px;line-height:28px}.cs-spec{margin:28px 0 0}.cs-spec__row{border-top:1px solid #ffffff14;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:16px 0;display:grid}.cs-spec dt{font-size:15px;line-height:28px;font-weight:var(--weight-strong);color:var(--text-3)}.cs-spec dd{color:var(--text-2);margin:0;font-size:17px;line-height:28px}.cs-results{flex-wrap:wrap;gap:8px;padding-top:2px;list-style:none;display:flex}.cs-results li{background:var(--positive-bg);color:var(--positive);font-size:14px;line-height:20px;font-weight:var(--weight-strong);font-variant-numeric:tabular-nums;border-radius:0;padding:4px 12px}.cs-results__note{color:var(--text-3);font-size:15px;line-height:24px}.cs-project__header .cs-results+.cs-results__note{margin-top:10px}.cs-section__title+.cs-blocks{margin-top:4px}.cs-section__kicker{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:12px;line-height:20px;font-weight:var(--weight-strong);color:var(--text-3);font-variant-numeric:tabular-nums;margin-bottom:8px}.cs-blocks{flex-direction:column;gap:28px;display:flex}.cs-blocks+.cs-project,.prose+.cs-blocks{margin-top:28px}.prose strong{color:var(--text);font-weight:var(--weight-strong)}.cs-list{color:var(--text-2);flex-direction:column;gap:10px;padding-left:20px;font-size:17px;line-height:28px;display:flex}.cs-list li::marker{color:var(--text-3)}.cs-list strong{color:var(--text);font-weight:var(--weight-strong)}.cs-callout{background:var(--surface);color:var(--text);border-left:2px solid #ffffff4d;border-radius:0;padding:20px 24px;font-size:18px;line-height:30px}.cs-subheading{font-size:19px;line-height:1.35;font-weight:var(--weight-strong);margin-top:16px}.cs-blocks>.cs-subheading:first-child{margin-top:0}.cs-embed__frame{border-radius:var(--radius-media);background:var(--surface);overflow:hidden}.cs-embed__frame iframe{border:0;width:100%;height:100%;display:block}.cs-cards{grid-template-columns:repeat(var(--cols,2), minmax(0, 1fr));gap:10px;list-style:none;display:grid}.cs-card{flex-direction:column;display:flex;overflow:hidden}.cs-card .media__frame{border-radius:0}.cs-card .media__frame img{aspect-ratio:6/5;object-fit:contain;background:#fff}.cs-card__text{flex-direction:column;gap:4px;padding:16px 20px 18px;display:flex}.cs-card__meta{font-size:13px;line-height:18px;font-weight:var(--weight-strong);color:var(--text-3);font-variant-numeric:tabular-nums}.cs-card__title{font-size:16px;line-height:24px;font-weight:var(--weight-strong)}.cs-card__body{color:var(--text-2);font-size:15px;line-height:22px}.cs-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;list-style:none;display:grid}.cs-stats li{flex-direction:column;gap:4px;padding:18px 20px 20px;display:flex}.cs-stats__value{font-size:28px;line-height:1.15;font-weight:var(--weight-strong);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.cs-stats--negative .cs-stats__value{color:var(--negative)}.cs-stats__label{color:var(--text-2);font-size:15px;line-height:22px}.cs-stats__note{color:var(--text-3);border-top:1px solid #ffffff14;margin-top:8px;padding-top:10px;font-size:13px;line-height:18px}.cs-pills__label{font-size:14px;line-height:20px;font-weight:var(--weight-strong);color:var(--text-3);margin-bottom:12px}.cs-pills ul{flex-wrap:wrap;gap:8px;list-style:none;display:flex}.cs-pills li{font-size:14px;line-height:20px;font-weight:var(--weight-strong);color:var(--text);background:#ffffff14;border-radius:0;padding:6px 14px}.cs-compare__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;display:grid}.cs-compare--wide .cs-compare__grid{grid-template-columns:minmax(0,1fr);gap:24px}.cs-compare__side{flex-direction:column;gap:10px;display:flex}.cs-compare__label{font-size:13px;line-height:18px;font-weight:var(--weight-strong);border-radius:0;align-self:flex-start;padding:3px 10px}.cs-compare__label--before{color:var(--text-2);background:#ffffff14}.cs-compare__label--after{background:var(--positive-bg);color:var(--positive)}.cs-compare__text{color:var(--text-2);font-size:15px;line-height:24px}.cs-blocks>.cs-feature{margin-top:0}.cs-feature .cs-project__inner>.media__frame,.cs-feature .cs-project__inner>.media{margin-top:20px}.cs-feature .cs-list{margin-top:16px}.ctas{flex-wrap:wrap;gap:10px;list-style:none;display:flex}.cta{height:44px;box-shadow:inset 0 0 0 1px var(--stroke);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text);white-space:nowrap;transition:background-color .3s var(--hover-ease), box-shadow .3s var(--hover-ease), color .3s var(--hover-ease);background:0 0;border-radius:0;align-items:center;gap:8px;padding:0 18px 0 20px;font-size:13px;font-weight:500;display:inline-flex}.cta:hover{box-shadow:inset 0 0 0 1px var(--text-2);background:#ecebe60f}.cta--primary{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent);background:#c8ff0014}.cta--primary:hover{background:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--bg)}.cta__icon{width:16px;height:16px;transition:transform var(--hover-duration) var(--ease-out);flex-shrink:0}.cta:hover .cta__icon{transform:translate(2px,-2px)}.cta--internal:hover .cta__icon{transform:translate(3px)}.cs-hero__links{margin-top:24px}.cs-contents__item{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;transition:color .35s var(--hover-ease);align-items:baseline;gap:10px;font-size:12px;font-weight:500;line-height:28px;display:flex}.cs-contents__item:hover{color:var(--text-2)}.cs-contents__item.is-active{color:var(--text)}@media (width>=1200px){.cs-contents{top:112px;left:var(--pad);z-index:4;width:168px;position:fixed}.cs-contents__title{font-size:16px;font-weight:var(--weight-strong);margin-bottom:18px;display:block}.cs-contents__list{flex-direction:column;align-items:flex-start;gap:6px;display:flex}}@media (width<=1199.98px){.cs-contents{z-index:11;height:60px;padding-left:var(--pad);padding-top:env(safe-area-inset-top,0px);background:var(--bg);box-shadow:var(--glass-bar-shadow);visibility:hidden;opacity:0;transition:transform .45s var(--ease-out), opacity .3s var(--hover-ease), visibility 0s linear .45s;border-bottom:1px solid #ffffff24;align-items:center;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.has-bar .cs-contents{visibility:visible;opacity:1;transition:transform .45s var(--ease-out), opacity .3s var(--hover-ease);transform:none}.back{transition-property:background-color,color,transform,opacity,visibility}.has-bar .back{visibility:hidden;opacity:0}.cs-contents__title{display:none}.cs-contents__list{min-width:0;padding-right:var(--pad);overscroll-behavior-x:contain;scrollbar-width:none;gap:22px;display:flex;overflow-x:auto}.cs-contents__list::-webkit-scrollbar{display:none}.cs-contents__list.swipe-fade{--swipe-fade-left:32px;--swipe-fade-right:48px}.cs-contents__item{flex-shrink:0;gap:8px}.cs-section{scroll-margin-top:76px}}.media{flex-direction:column;gap:24px;display:flex}.media--row{flex-direction:row;align-items:flex-start;gap:12px}.media__item{min-width:0}.media__frame{border-radius:var(--radius-media);background:var(--surface);width:100%;display:block;overflow:hidden}.media__frame img,.media__frame video{width:100%;height:auto;display:block}.media__zoom{cursor:zoom-in;border:0;padding:0}.media__zoom img,.media__zoom video{transition:transform .6s var(--ease-out);pointer-events:none}.media__zoom:hover img,.media__zoom:hover video{transform:scale(1.015)}.media__caption{color:var(--text-3);margin-top:10px;font-size:14px;line-height:20px}.media--gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;display:grid}.media--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.media--gallery .media__frame{aspect-ratio:var(--tile-ratio);border-radius:0}.media--gallery .media__frame img,.media--gallery .media__frame video{object-fit:contain;height:100%}.media--gallery .media__caption{margin-top:8px;font-size:13px;line-height:18px}.lightbox{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:zoom-out;animation:lightbox-in .35s var(--ease-out) both;background:#0c0c0beb;place-items:center;padding:32px;display:grid;position:fixed;inset:0}.lightbox__media{object-fit:contain;border-radius:0;max-width:100%;max-height:calc(100svh - 64px)}.lightbox video.lightbox__media{cursor:default;background:#000;width:min(100%,960px)}.lightbox__close{width:40px;height:40px;color:var(--text);cursor:pointer;background:#ffffff1a;border:0;border-radius:0;place-items:center;padding:0;display:grid;position:absolute;top:16px;right:16px}.lightbox__close svg{width:18px;height:18px}.lightbox__arrow{width:44px;height:44px;color:var(--text);cursor:pointer;transition:background-color .3s var(--hover-ease);background:#ffffff1a;border:0;border-radius:0;place-items:center;margin-top:-22px;padding:0;display:grid;position:absolute;top:50%}.lightbox__arrow:hover{background:#ffffff2e}.lightbox__arrow--prev{left:16px}.lightbox__arrow--next{right:16px}.lightbox__arrow svg{width:20px;height:20px}.lightbox__count{color:var(--text-2);font-variant-numeric:tabular-nums;pointer-events:none;font-size:14px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}@keyframes lightbox-in{0%{opacity:0}}.contact{border-top:1px solid #ffffff14;margin-top:48px;list-style:none}.contact__row{border-bottom:1px solid #ffffff14;align-items:baseline;gap:24px;padding:20px 0;display:flex}.contact__label{color:var(--text-3);flex:0 0 96px;font-size:15px}.contact__value{flex-wrap:wrap;align-items:baseline;gap:8px 36px;min-width:0;display:flex}.contact__email{overflow-wrap:anywhere;max-width:100%}.contact__copy{color:var(--text-2);font:inherit;font-size:13px;font-weight:var(--weight-strong);cursor:pointer;transition:background-color .3s var(--hover-ease), color .3s var(--hover-ease), box-shadow .3s var(--hover-ease);background:#ffffff14;border:0;border-radius:0;padding:4px 12px}.contact__copy-tail{white-space:nowrap}.contact__copy-icon{--icon-size:.85em;width:0;height:var(--icon-size);vertical-align:calc(.34em - var(--icon-size) / 2);-webkit-mask:var(--icon-clipboard) no-repeat left center / var(--icon-size) var(--icon-size);-webkit-mask:var(--icon-clipboard) no-repeat left center / var(--icon-size) var(--icon-size);mask:var(--icon-clipboard) no-repeat left center / var(--icon-size) var(--icon-size);opacity:0;transition:width var(--hover-duration) var(--ease-out), margin-left var(--hover-duration) var(--ease-out), opacity var(--hover-duration) var(--hover-ease);background-color:currentColor;margin-left:0;display:inline-block}.contact__copy:hover .contact__copy-icon,.contact__copy:focus-visible .contact__copy-icon{width:var(--icon-size);opacity:1;margin-left:.22em}.contact__copy:hover,.contact__copy:focus-visible{color:var(--accent-2);background:#ff3b3b1a;box-shadow:inset 0 0 0 1px #ff3b3bbf,0 0 10px #ff3b3b40}.to-top{right:var(--pad);bottom:var(--pad);z-index:10;background:var(--glass-control);width:44px;height:44px;color:var(--text-2);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge), var(--glass-shadow);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .4s var(--hover-ease), transform .5s var(--ease-out), background-color .3s var(--hover-ease), color .3s var(--hover-ease), box-shadow .3s var(--hover-ease);border:0;border-radius:0;place-items:center;padding:0;display:grid;position:fixed;transform:translateY(12px)}.to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.to-top:hover,.to-top:focus-visible{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--accent-2);background-color:#160a0a;box-shadow:inset 0 0 0 1px #ff3b3bbf,0 0 14px #ff3b3b47,0 8px 26px #0000007a}.to-top.is-visible:hover{transform:translateY(-2px)}.to-top svg{width:18px;height:18px;animation:2.6s ease-in-out infinite bob-up}.back svg{animation:2.6s ease-in-out infinite bob-left}.to-top:hover svg,.back:hover svg{animation-play-state:paused}@keyframes bob-up{0%,45%,to{translate:0}20%{translate:0 -3px}}@keyframes bob-left{0%,45%,to{translate:0}20%{translate:-3px}}.toast-region{left:50%;bottom:var(--pad);z-index:20;pointer-events:none;position:fixed;translate:-50%}.toast{color:var(--bg);font-size:15px;font-weight:var(--weight-strong);white-space:nowrap;animation:toast 2.2s var(--ease-out) both;background:#ffffffeb;border-radius:0;padding:10px 18px;box-shadow:0 8px 30px #00000059}@keyframes toast{0%{opacity:0;translate:0 12px;scale:.96}12%,85%{opacity:1;translate:0;scale:1}to{opacity:0;translate:0 6px}}.article__study-footer{border-top:1px solid #ffffff14;flex-direction:column;gap:32px;margin-top:96px;padding-top:24px;display:flex}.article__related,.article__next{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.article__related-list{flex-direction:column;align-items:flex-start;gap:8px;list-style:none;display:flex}.article__next-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:12px;line-height:20px;font-weight:var(--weight-strong);color:var(--text-3)}@media (width>=901px) and (width<=1599.98px){.grid:not(.grid--featured)>.card:last-child:nth-child(odd):not(:only-child){width:calc((100% - var(--gap)) / 2);max-width:calc((100% - var(--gap)) / 2);grid-column:1/-1}}@media (width>=1600px){:root{--reveal:156px}.grid:not(.grid--featured){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=2400px){.grid:not(.grid--featured){grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1200px){:root{--sidebar:calc(var(--pad) + var(--gap) + 250px);--reveal:128px;--card-pad-top:20px}.title__sub{min-height:56px;font-size:17px;line-height:28px}.card__reveal{inset:0 22px auto}.card__title{font-size:18px}}@media (pointer:fine) and (width<=1200px){.card__reveal{padding:56px 20px 18px;inset:auto 0 0}}@media (width<=1200px){.card__description{font-size:13px;line-height:19px}}@media (width<=900px){:root{--pad:20px;--gap:16px}html,body{overscroll-behavior-y:none}.home{display:block}.sidebar{height:auto;margin:0 var(--pad);border-bottom:1px solid var(--hairline);padding:48px 0 28px;position:static}.sidebar__nav{flex-flow:wrap;gap:12px 28px}.sidebar__socials{display:none}.work__footer{padding:28px 0 calc(8px + env(safe-area-inset-bottom));border-top:1px solid #ffffff1a;flex-wrap:wrap;gap:12px 28px;margin-top:8px;display:flex}.work{padding:0 var(--pad) var(--pad);padding-top:24px}.categories-anchor{pointer-events:none;height:1px;margin-bottom:-1px}.categories{z-index:25;padding:14px var(--pad);margin:0 calc(-1 * var(--pad));box-shadow:none;background:0 0;border-bottom:1px solid #0000;position:relative}.categories.is-pinned{padding-top:calc(14px + env(safe-area-inset-top,0px));background:var(--glass-panel);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-bar-shadow);border-bottom-color:#ffffff24;margin:0;position:fixed;top:0;left:0;right:0}.categories.is-pinned:before{content:"";height:calc(env(safe-area-inset-top,0px) + 14px);background:var(--bg);pointer-events:none;position:absolute;inset:0 0 auto}.categories.is-pinned .categories__list{z-index:1;position:relative}.categories-spacer{flex-shrink:0}.categories:after{display:none}.categories__list{margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad);overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;gap:22px;overflow-x:auto}.categories__list::-webkit-scrollbar{display:none}.categories__list.swipe-fade{--swipe-fade-left:40px;--swipe-fade-right:56px}.categories__item{flex-shrink:0;font-size:12px;line-height:30px}.to-top,.toast-region{bottom:calc(var(--pad) + env(safe-area-inset-bottom))}.article__hero{margin-inline:0}.page{padding-top:88px}}@media (width<=740px){.grid{grid-template-columns:minmax(0,1fr)}.cs-hero .article__title{font-size:28px}.cs-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-highlights,.cs-notes,.cs-cards{grid-template-columns:minmax(0,1fr)}.cs-callout{padding:16px 20px;font-size:17px;line-height:28px}.cs-highlights li{padding:18px 20px 20px}.cs-highlights__value{font-size:28px}.cs-section{margin-top:88px}.cs-project{border-left:0;padding-left:0}.cs-spec__row{grid-template-columns:minmax(0,1fr);gap:4px}.cs-cover,.media__frame{border-radius:var(--radius-media)}.media--row{flex-direction:column;gap:24px}.media--row .media__item{width:100%;flex:none!important}.media--cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.lightbox{padding:12px}}@media (width<=560px){.tiles{grid-template-columns:minmax(0,1fr)}.contact__row{flex-direction:column;gap:6px}.contact__label{flex:none}.contact__email{font-size:18px}.contact__value{justify-content:space-between;align-items:center;width:100%}}@media (width<=900px) and (pointer:coarse){.dot-field{display:none}.grid{row-gap:40px}.card{aspect-ratio:auto;clip-path:none;background:0 0;flex-direction:column-reverse;display:flex;overflow:visible}.card:before,.card:after{display:none}.card__media{aspect-ratio:32/25;position:relative}.card:hover .card__media,.card:focus-visible .card__media{transform:none}.card__reveal{padding:14px 4px 0;position:static}.card__icon{display:none}.card__description{-webkit-line-clamp:2;line-clamp:2}}.swipe-fade{--edge-fade-left:0;--edge-fade-right:0;--swipe-fade-left:40px;--swipe-fade-right:56px;transition:--edge-fade-left .18s var(--hover-ease), --edge-fade-right .18s var(--hover-ease);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 calc(var(--edge-fade-left) * var(--swipe-fade-left)), #000 calc(100% - var(--edge-fade-right) * var(--swipe-fade-right)), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 calc(var(--edge-fade-left) * var(--swipe-fade-left)), #000 calc(100% - var(--edge-fade-right) * var(--swipe-fade-right)), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 calc(var(--edge-fade-left) * var(--swipe-fade-left)), #000 calc(100% - var(--edge-fade-right) * var(--swipe-fade-right)), transparent 100%);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.strip-wrap{position:relative}.strip__btn{width:40px;height:40px;color:var(--text-2);background:var(--glass-control);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge), var(--glass-shadow);cursor:pointer;transition:background-color .3s var(--hover-ease), color .3s var(--hover-ease), transform .4s var(--ease-out), box-shadow .3s var(--hover-ease);border:0;border-radius:0;place-items:center;padding:0;display:none}.strip__btn svg{width:16px;height:16px}.strip__btn--prev svg{transform:scaleX(-1)}.strip__btn:hover,.strip__btn:focus-visible{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--accent-2);background-color:#160a0a;box-shadow:inset 0 0 0 1px #ff3b3bbf,0 0 14px #ff3b3b47,0 8px 26px #0000007a}.strip__btn--prev:hover,.strip__btn--prev:focus-visible{transform:translate(-2px)}.strip__btn--next:hover,.strip__btn--next:focus-visible{transform:translate(2px)}@media (pointer:fine){.strip-controls{top:0;bottom:0;left:var(--pad);right:var(--pad);z-index:12;pointer-events:none;position:absolute}.strip-wrap--controls .strip__btn{pointer-events:auto;display:grid}.strip-wrap--controls .strip__btn--prev{position:absolute;top:50%;left:10px;translate:0 -50%}.strip-wrap--controls .strip__btn--next{position:absolute;top:50%;right:10px;translate:0 -50%}}.strip-wrap{margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad);background:var(--bg)}.grid.grid--featured{--featured-strip-gap:14px;gap:var(--featured-strip-gap);scroll-padding-inline:var(--pad);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:0;padding-inline:0;display:flex;overflow-x:auto}.grid.grid--featured::-webkit-scrollbar{display:none}.grid--featured>.card{scroll-snap-align:start}@media (pointer:fine){.grid.grid--featured.has-strip-overflow .card{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.grid.grid--featured.has-strip-overflow{cursor:grab;-webkit-user-select:none;user-select:none}.grid.grid--featured.has-strip-overflow.is-dragging{cursor:grabbing;scroll-snap-type:none}.grid.grid--featured.is-dragging a{pointer-events:none}}@media (width>=900px){.grid--featured>.card{flex:0 0 calc((100% - 2 * var(--featured-strip-gap,14px)) / 3);max-width:calc((100% - 2 * var(--featured-strip-gap,14px)) / 3)}}@media (width<=899.98px){.grid.grid--featured>.card{flex:0 0 min(78%,340px);max-width:none}}.media__frame,.cs-cover,.article__hero{position:relative}.skeleton-frame{width:100%;display:block;position:relative}.skeleton-frame--fill{width:100%;height:100%;position:absolute;inset:0}.media--gallery .media__frame>.skeleton-frame{height:100%}.media--gallery .skeleton-frame img{object-fit:contain;height:100%}.skeleton-frame__overlay{z-index:1;background:var(--surface);pointer-events:none;transition:opacity .35s var(--hover-ease);position:absolute;inset:0;overflow:hidden}.skeleton-frame__ascii{--ascii-skeleton:#ecebe638;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.toast{animation:none!important}}
