*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-primary),system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:SF Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.isolate{isolation:isolate}.z-50{z-index:50}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[500px\]{height:500px}.h-full{height:100%}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-full{width:100%}.shrink{flex-shrink:1}.origin-center{transform-origin:center}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-\[inherit\]{gap:inherit}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[20px\]{border-radius:20px}.rounded-\[inherit\]{border-radius:inherit}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-border{--tw-border-opacity:1;border-color:rgb(242 242 242/var(--tw-border-opacity,1))}.bg-accent{background-color:rgba(0,0,0,.05)}.bg-foreground{--tw-bg-opacity:1;background-color:rgb(17 17 17/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-2{padding:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.pl-\[10px\]{padding-left:10px}.pl-\[14px\]{padding-left:14px}.pl-\[6px\]{padding-left:6px}.pr-\[10px\]{padding-right:10px}.pr-\[14px\]{padding-right:14px}.pr-\[6px\]{padding-right:6px}.font-sans{font-family:var(--font-primary),system-ui,sans-serif}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.italic{font-style:italic}.text-background{color:var(--body-bg)}.text-foreground{--tw-text-opacity:1;color:rgb(17 17 17/var(--tw-text-opacity,1))}.text-muted-foreground{color:rgba(0,0,0,.4)}.opacity-0{opacity:0}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[background-color\2c transform\]{transition-property:background-color,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[stroke-width\]{transition-property:stroke-width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--page-padding:1rem;--line-height:1.6;--transition-speed:0.3s;--spacing-xxs:4px;--spacing-xs:8px;--spacing-sm:16px;--spacing-md:24px;--spacing-lg:32px;--spacing-xl:48px;--spacing-xxl:64px;--spacing-3xl:80px;--spacing-4xl:96px;--spacing-10:10px;--spacing-12:12px;--spacing-20:20px;--spacing-28:28px;--spacing-30:30px;--spacing-50:50px;--spacing-60:60px;--spacing-100:100px;--year-col:120px;--font-primary:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,system-ui,sans-serif;--background:#fff;--grey1:#1A1A1A;--grey2:#333;--grey3:#9A9A9A;--wash1:#e5e5e5;--wash2:#f2f2f2;--transparentBorder:rgba(0,0,0,.05);--body-bg:var(--background);--body-color:var(--grey1);--text1:var(--grey1);--text2:var(--grey2);--text-muted:var(--grey3);--text-subtitle:var(--grey3);--border:var(--wash1);--border-rule:var(--wash1);--selection-color:var(--grey1);--selection-bg:#e5e5e5;--focus-color:rgba(0,0,0,0.5);--color-gray-background:var(--background);--color-gray-1200:var(--grey1);--color-gray-1000:var(--grey2);--color-gray-900:var(--grey3);--color-gray-400:var(--wash1);--color-text-paragraph:var(--grey1);--primary:#3e9fff;--secondary:#f09637;--ease:cubic-bezier(0.23,1,0.32,1);--dur-color:200ms;--dur-move:160ms;--dock-bg:rgba(255,255,255,0.75);--dock-hover:rgba(0,0,0,0.03);--dock-active:rgba(0,0,0,0.04);--dock-ring:rgba(0,0,0,0.08);--foreground:var(--grey1);--accent:rgba(0,0,0,0.04);--muted-foreground:var(--grey2);--radius:8px;--radius-thumb:6px;--btn-contact-bg:#181818;--btn-contact-bg-hover:#2d2d2d;--btn-contact-text:#ffffff;--dock-icon:#555555;--dock-icon-hover:#111111;--tooltip-bg:rgba(12,12,12,0.82);--tooltip-fg:#fff;--overlay-bg:rgba(255,255,255,0.82);--badge-new:rgb(255,0,170)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:14px;background:var(--body-bg);color:var(--body-color);scroll-behavior:smooth;scroll-padding-top:6rem;transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease}body{overflow-y:scroll;line-height:var(--line-height);font-weight:400;font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;font-feature-settings:"kern" 1,"liga" 1,"calt" 1;font-family:var(--font-primary);min-height:100%}::-moz-selection{color:var(--selection-color);background:var(--selection-bg)}::selection{color:var(--selection-color);background:var(--selection-bg)}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:transparent;border-radius:100px}:hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15)}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.25)}[data-theme=dark] :hover::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.25)}[data-theme=dark]{--background:#111;--grey1:#F5F5F5;--grey2:#A0A0A0;--grey3:#707070;--wash1:#2a2a2a;--wash2:#1a1a1a;--selection-bg:#333;--focus-color:rgba(255,255,255,0.5);--accent:rgba(255,255,255,0.06);--transparentBorder:rgba(255,255,255,0.07);--dock-bg:rgba(24,24,24,0.75);--dock-hover:rgba(255,255,255,0.06);--dock-active:rgba(255,255,255,0.08);--dock-ring:rgba(255,255,255,0.10);--btn-contact-bg:#eeeeee;--btn-contact-bg-hover:#ffffff;--btn-contact-text:#111111;--dock-icon:#bbbbbb;--dock-icon-hover:#ffffff;--tooltip-bg:rgba(255,255,255,0.9);--tooltip-fg:#111;--overlay-bg:rgba(15,15,15,0.85)}[data-color=blue]{--background:#f5f9ff;--grey1:#16243a;--grey2:#35507a;--grey3:#8a9cba;--wash1:#dce7f7;--wash2:#eaf1fc;--transparentBorder:rgba(22,36,58,.06)}[data-color=green]{--background:#f4fbf6;--grey1:#12301f;--grey2:#2f5c42;--grey3:#8aa596;--wash1:#d9ecdf;--wash2:#e9f5ed;--transparentBorder:rgba(18,48,31,.06)}[data-color=purple]{--background:#faf6ff;--grey1:#281a3a;--grey2:#4d3a70;--grey3:#9d8fb5;--wash1:#e7dcf6;--wash2:#f1ebfa;--transparentBorder:rgba(40,26,58,.06)}[data-color=warm]{--background:#fffaf2;--grey1:#33240f;--grey2:#5e462a;--grey3:#a68f6f;--wash1:#f2e4cf;--wash2:#f9efe0;--transparentBorder:rgba(51,36,15,.06)}[data-theme=dark][data-color=blue]{--background:#0b1220;--grey1:#e6edfb;--grey2:#93a6c8;--grey3:#5f739a;--wash1:#1e2c45;--wash2:#162034;--transparentBorder:rgba(230,237,251,.07)}[data-theme=dark][data-color=green]{--background:#0a1710;--grey1:#e2f5e9;--grey2:#8fbca1;--grey3:#5d8570;--wash1:#1c3327;--wash2:#14251b;--transparentBorder:rgba(226,245,233,.07)}[data-theme=dark][data-color=purple]{--background:#150e21;--grey1:#efe6fb;--grey2:#ac95cc;--grey3:#7a6796;--wash1:#2c2140;--wash2:#1f1730;--transparentBorder:rgba(239,230,251,.07)}[data-theme=dark][data-color=warm]{--background:#171009;--grey1:#f8eeda;--grey2:#c2a882;--grey3:#8d7a5c;--wash1:#33271a;--wash2:#241b12;--transparentBorder:rgba(248,238,218,.07)}[data-font=sentient]{--font-primary:var(--font-sentient),Georgia,"Times New Roman",serif}[data-color=blue]{--primary:#3e9fff}[data-color=green]{--primary:#35b87a}[data-color=purple]{--primary:#9269e8}[data-color=warm]{--primary:#d99340}[data-color]{--dock-bg:color-mix(in srgb,var(--background) 78%,transparent);--dock-ring:color-mix(in srgb,var(--grey1) 8%,transparent);--dock-hover:color-mix(in srgb,var(--grey1) 4%,transparent);--dock-active:color-mix(in srgb,var(--grey1) 6%,transparent);--dock-icon:var(--grey2);--dock-icon-hover:var(--grey1);--btn-contact-bg:var(--grey1);--btn-contact-bg-hover:color-mix(in srgb,var(--grey1) 86%,var(--background));--btn-contact-text:var(--background);--selection-bg:var(--wash1);--accent:color-mix(in srgb,var(--grey1) 5%,transparent);--focus-color:color-mix(in srgb,var(--grey1) 50%,transparent);--tooltip-bg:color-mix(in srgb,var(--grey1) 88%,transparent);--tooltip-fg:var(--background);--overlay-bg:color-mix(in srgb,var(--background) 85%,transparent);--badge-new:var(--primary)}.dock-pill,.odin-carousel-img,.odin-carousel-img:after,.odin-filmstrip-slide,.odin-filmstrip-slide:after,.work-card,.work-card:after{transition:background-color var(--transition-speed) ease,border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease}@media (prefers-reduced-motion:reduce){.dock-pill,.odin-carousel-img,.odin-carousel-img:after,.odin-filmstrip-slide,.odin-filmstrip-slide:after,.work-card,.work-card:after,html{transition:none}html{scroll-behavior:auto}}.page-shell:before{content:"";pointer-events:none;position:fixed;top:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,var(--background) 10%,transparent);backdrop-filter:blur(14px);-webkit-mask:linear-gradient(180deg,black 10%,transparent);mask:linear-gradient(180deg,black 10%,transparent);z-index:20}.page-shell{position:relative;max-width:min(600px,92vw);margin:0 auto;padding:var(--spacing-100) 0}.social-links{position:absolute;top:var(--spacing-100);right:0;display:flex;gap:var(--spacing-sm)}.social-link{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--grey3);transition:color var(--dur-color) var(--ease),transform var(--dur-move) var(--ease)}.social-link:hover{color:var(--grey1)}.social-link:active{transform:scale(.96)}@media (max-width:640px){.social-links{top:var(--spacing-4xl)}.page-shell{padding:var(--spacing-4xl) 0 var(--spacing-3xl)}}@media (max-width:580px){.article li,.article p{hyphens:auto}}.homepage{display:flex;flex-direction:column;gap:64px}.homepage .article{gap:16px}.homepage .article p{color:var(--grey1);font-size:14px;line-height:1.6}.btn-row{display:flex;align-items:center;gap:8px;margin-top:var(--spacing-12)}.btn-contact{display:inline-flex;align-items:center;justify-content:center;padding:5px var(--spacing-12);border-radius:9999px;background:var(--btn-contact-bg);color:var(--btn-contact-text);font-size:12px;font-weight:500;line-height:1.5;text-decoration:none;transition:background-color var(--dur-color) var(--ease),transform var(--dur-move) var(--ease)}.btn-contact:hover{background:var(--btn-contact-bg-hover)}.btn-contact:active{transform:scale(.96)}.btn-copy-mail{display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:5px var(--spacing-12);border-radius:9999px;background:transparent;border:.5px solid var(--border);color:var(--grey2);font-size:12px;font-weight:500;line-height:1.5;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.02),0 0 0 .5px var(--dock-ring);transition:background var(--dur-color) var(--ease),color var(--dur-color) var(--ease),box-shadow var(--dur-color) var(--ease),transform var(--dur-move) var(--ease)}.btn-copy-mail:hover{background:var(--dock-hover);color:var(--grey1)}.btn-copy-mail:active{transform:scale(.96)}.btn-copy-mail__stack{display:grid}.btn-copy-mail__stack>*{grid-area:1/1;justify-self:center}.btn-copy-mail__sizer{visibility:hidden}.about-layout .article{gap:64px}.article-long{max-width:100%}.article-long code{font-family:var(--font-mono,"SF Mono",SFMono-Regular,Consolas,Menlo,monospace);font-size:14px;background:var(--wash2);border-radius:var(--radius);padding:.05em .3em;color:var(--grey1)}.article-layout{display:contents}.article-aside{position:fixed;top:calc(var(--spacing-100) - var(--spacing-xs));left:72px;z-index:10;margin:0;padding:0;transition:opacity var(--dur-color) var(--ease)}@media (max-width:900px){.article-aside{display:none}}.article-aside-inner{padding:8px 0 0}.article-aside-inner ul{display:flex;flex-direction:column;gap:var(--spacing-12);list-style:none;margin:0;padding:0}.article-aside-inner li{display:block;margin:0;padding:0}.article-aside-inner nav a{display:block;font-size:14px;line-height:1.2;font-weight:400;color:var(--grey3);text-decoration:none;transition:color var(--dur-color) var(--ease)}.article-aside-inner nav a:hover,.article-aside-inner nav a[data-active=true]{color:var(--color-gray-1200)}.article-video-wrapper{border-radius:var(--radius);overflow:hidden}.article-section>:is(.article-video-wrapper,.article-figure,.odin-filmstrip-container,.odin-carousel-img,.article-image-clickable)+:is(p,ul,ol),.article-section>:is(p,ul,ol)+:is(.article-video-wrapper,.article-figure,.odin-filmstrip-container,.odin-carousel-img,.article-image-clickable){margin-top:16px}.article-video,.article-video-player{width:100%;display:block}.about-photo{position:relative;width:100%;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background-color:var(--wash2)}.about-photo:after{content:"";position:absolute;inset:0;border:.5px solid var(--transparentBorder);border-radius:inherit;z-index:1;pointer-events:none}.about-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;display:block}.article-figure{margin:0;display:flex;flex-direction:column;gap:16px}.article-figure figcaption{text-align:center;color:var(--color-gray-900);font-size:14px;font-weight:400;line-height:1.5;letter-spacing:.00063rem}.chart-demo{width:100%;height:280px;background:transparent}.chart-demo canvas{width:100%;height:100%;display:block}.codeblock{position:relative;margin:1rem 0 0;background:#f8f8f8;border-radius:var(--radius);overflow:hidden;font-family:SF Mono,SFMono-Regular,Consolas,Menlo,monospace;font-size:14px;line-height:1.5;color:#333}[data-theme=dark] .codeblock{background:#1e1e1e;color:#d4d4d4}.codeblock pre{margin:0;padding:.875rem .5rem .875rem 0;overflow-x:auto}.codeblock code{display:block}.codeblock-line{display:grid;grid-template-columns:2.5rem 1fr;white-space:pre}.codeblock-gutter{color:var(--grey3);text-align:right;padding-right:.75rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-variant-numeric:tabular-nums}[data-theme=dark] .codeblock-gutter{color:rgba(255,255,255,.3)}.codeblock-text{white-space:pre}.codeblock .tok-kw{color:#cf222e}.codeblock .tok-fn{color:#0969da}.codeblock .tok-str{color:#0a3069}.codeblock .tok-num{color:#0550ae}.codeblock .tok-type{color:#953800}.codeblock .tok-com{color:#6e7781;font-style:italic}[data-theme=dark] .codeblock .tok-kw{color:#f47067}[data-theme=dark] .codeblock .tok-fn{color:#79b8ff}[data-theme=dark] .codeblock .tok-str{color:#9ecbff}[data-theme=dark] .codeblock .tok-num{color:#79b8ff}[data-theme=dark] .codeblock .tok-type{color:#ffab70}[data-theme=dark] .codeblock .tok-com{color:#6a737d;font-style:italic}.codeblock-copy{position:absolute;top:8px;right:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--grey3);border:none;border-radius:var(--radius);cursor:pointer;transition:background-color var(--dur-color) var(--ease),color var(--dur-color) var(--ease)}[data-theme=dark] .codeblock-copy{color:rgba(255,255,255,.4)}.codeblock-copy:hover{background:var(--accent);color:var(--grey1)}[data-theme=dark] .codeblock-copy:hover{background:rgba(255,255,255,.08)}.codeblock-copy:after{content:"";position:absolute;inset:-6px}.codeblock-copy:active{transform:scale(.96);transition:transform var(--dur-move) var(--ease)}.article-cta{--border:var(--color-gray-400);--bg:transparent;--color:var(--color-gray-1200);display:flex;align-items:center;gap:.5rem;padding:8px 16px;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--border);background:var(--bg);color:var(--color);font-size:14px;font-weight:400;line-height:1;text-decoration:none;transition:background-color var(--dur-color) var(--ease),color var(--dur-color) var(--ease),box-shadow var(--dur-color) var(--ease)}.article-cta:hover{--bg:var(--wash1);--border:transparent}.article-cta:active{transform:scale(.96);transition:transform var(--dur-move) var(--ease)}.article-cta[data-type=orange]{--color:#f09637;--border:#fce6cf;--bg:rgba(240,150,55,0.05)}.article-cta[data-type=blue]{--color:#3d67ff;--border:#dbe3ff;--bg:rgba(61,103,255,0.05)}.article-cta .external-arrow{margin-left:auto;transform:translateY(-1px);color:currentColor;opacity:.55}.footnotes{padding:0}.footnotes:before{content:"";display:block;width:3.125rem;height:1px;background:var(--border)}.footnotes ol{list-style:none;counter-reset:list;display:block;position:relative;padding:32px 0 0 4px}.footnotes ol li{position:relative;counter-increment:list;color:var(--grey3);font-size:14px;font-weight:400;letter-spacing:.00063rem;line-height:1.5;padding:0 0 8px 4px;scroll-margin-top:2rem;transition:color var(--dur-color) var(--ease)}.footnotes ol li:hover{color:var(--grey2)}.footnotes ol li:before{position:absolute;right:100%;top:0;content:counter(list);font-size:.45rem;font-weight:400;letter-spacing:.00063rem}.footnotes ol li p{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}.footnotes .data-footnote-backref{z-index:1;position:absolute;inset:0;bottom:.5em;overflow:hidden;display:inline-block;text-indent:-9999px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.article sup{display:inline-block;padding:0 0 0 .35em;color:var(--color-gray-900);font-size:.6em;font-weight:400;line-height:1}.article sup a:before{display:none}.article sup a:hover{color:var(--color-gray-1200)}.chip-link{color:inherit;white-space:nowrap;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:2px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.chip-link:hover{text-decoration-style:solid}.chip-link--accent{color:#0788f5}.chip-link:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.article{gap:32px}.article,.article-section{display:flex;flex-direction:column}.article-section{gap:16px}.article .article-section h2,.article .article-section h3{margin-bottom:0}.article-section{counter-reset:subsection}.article-subsection{display:flex;flex-direction:column;gap:8px;counter-increment:subsection}.article-subsection h3:before{content:counter(subsection) ". "}.article-section>.article-subsection+.article-subsection{margin-top:16px}.article>header{display:flex;flex-direction:column;gap:var(--spacing-12)}.homepage .article>header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xxs);margin-bottom:var(--spacing-12)}.profile-avatar{width:80px;height:80px;border-radius:var(--spacing-xs);flex-shrink:0;position:relative;margin-bottom:var(--spacing-20);padding:0;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;perspective:600px}.profile-avatar[aria-pressed=true]{border-radius:50%}.profile-avatar:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.profile-avatar-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .25s var(--ease)}.profile-avatar-inner[data-flipped]{transform:rotateY(180deg)}.profile-avatar-face{position:absolute;inset:0;border-radius:var(--spacing-xs);overflow:hidden;backface-visibility:hidden}.profile-avatar-face--back{transform:rotateY(180deg);border-radius:50%;outline:.5px solid var(--border);outline-offset:-.5px;box-shadow:0 1px 2px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.02),0 0 0 .5px var(--dock-ring)}.profile-avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}@media (max-width:768px){.page-header :not(.profile-avatar-inner):not(.profile-avatar-face){opacity:1!important;transform:none!important;will-change:auto!important}}@media (prefers-reduced-motion:reduce){.profile-avatar-inner{transition:none}}.profile-info{display:flex;flex-direction:column;gap:var(--spacing-xxs);min-width:0;position:relative}.signature-name{position:absolute;top:50%;left:0;transform:translateY(-50%);pointer-events:none;color:var(--color-gray-1200);overflow:visible}.signature-name svg{overflow:visible;display:block}@keyframes sigReveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.sig-p1{animation:sigReveal .55s cubic-bezier(.25,1,.5,1) .1s forwards}.sig-p1,.sig-p2{clip-path:inset(0 100% 0 0)}.sig-p2{animation:sigReveal .5s cubic-bezier(.25,1,.5,1) .45s forwards}.sig-p3{animation:sigReveal .45s cubic-bezier(.25,1,.5,1) .8s forwards}.sig-p3,.sig-p4{clip-path:inset(0 100% 0 0)}.sig-p4{animation:sigReveal .4s cubic-bezier(.25,1,.5,1) 1s forwards}@media (prefers-reduced-motion:reduce){.sig-p1,.sig-p2,.sig-p3,.sig-p4{animation:none;clip-path:none}}.article>header h1{color:var(--color-gray-1200);font-weight:400;font-size:14px;line-height:1.2}.homepage .article>header h1{font-size:14px;font-weight:500;line-height:1.2;color:var(--grey1)}.hand-circle{white-space:nowrap;display:inline-block;position:relative}.hand-circle__ring{color:var(--primary);pointer-events:none;width:calc(100% + 1.44em);height:2.5em;position:absolute;top:calc(50% - 1.25em);left:-.72em;right:-.72em;overflow:visible}.hand-circle__ring path{stroke-width:var(--pass-weight,1);stroke-dasharray:1;stroke-dashoffset:1px;animation:hand-circle-draw .9s var(--ease) 0s 1 normal forwards running}@keyframes hand-circle-draw{0%{stroke-dashoffset:1px}14%{stroke-dashoffset:.87px}32%{stroke-dashoffset:.53px}47%{stroke-dashoffset:.43px}72%{stroke-dashoffset:.13px}88%{stroke-dashoffset:.04px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.hand-circle__ring path{stroke-dashoffset:0;animation:none}}.article>header time{color:var(--grey3);font-weight:400;font-size:14px;line-height:1.8}.homepage .article>header time{font-size:14px;line-height:1.2}.article-meta{display:grid;grid-template-columns:auto 1fr;gap:var(--spacing-12) 32px}.article-meta dd{min-width:0}.article-meta dt{color:var(--grey3);white-space:nowrap}.article-meta dd,.article-meta dt{font-size:14px;font-weight:400;line-height:1.2}.article-meta dd{color:var(--grey2)}.article-meta dd time{color:inherit;font-size:inherit;line-height:inherit}.article h2{font-family:var(--font-primary),system-ui,sans-serif;font-size:14px;font-weight:400;line-height:1.4;color:var(--color-gray-1200);margin:0;scroll-margin-top:6rem;text-wrap:balance}.article>h2{scroll-margin-top:5.5rem}.article dl,.article li,.article p{font-size:14px;font-weight:400;line-height:1.6;color:var(--grey2);margin:0;text-wrap:pretty}.article dl strong,.article li strong,.article p strong{font-weight:600}.article em,.article em strong,.article strong em{color:var(--color-gray-1200);font-family:var(--font-sentient),Georgia,serif;font-size:14px;font-style:italic;font-weight:430;letter-spacing:.01rem}.article h3{font-size:14px;font-weight:400;line-height:1.4;text-wrap:balance;color:var(--color-gray-1200)}.article ol,.article ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.article ol li,.article ul li{position:relative;padding:0 0 0 8px}.article ul li:before{content:"·";position:absolute;left:0;top:0;color:var(--color-gray-1000)}.article ol{counter-reset:list}.article ol li:before{counter-increment:list;content:counter(list) ".";position:absolute;left:0;top:0;color:var(--color-gray-1000)}.timeline{display:grid;grid-template-columns:var(--year-col) 1fr;row-gap:var(--spacing-lg);-moz-column-gap:var(--spacing-20);column-gap:var(--spacing-20);margin-top:var(--spacing-lg)}.timeline-item{display:contents}.timeline-item>time{color:var(--grey3);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.timeline-item>time,.timeline-role{font-size:14px;font-weight:400;line-height:1.8}.timeline-role{color:var(--grey1);margin:0 0 var(--spacing-xxs) 0}.timeline-meta{font-size:14px;font-weight:400;color:var(--grey2)}.article>footer{display:flex;flex-direction:column;gap:16px}.article>footer h1,.article>footer p{color:var(--color-gray-900);font-size:14px;font-weight:400;letter-spacing:.00063rem;line-height:1.4}.post-list{display:flex;flex-direction:column;gap:0}.post-list-title{font-size:14px;font-weight:400;color:var(--color-gray-1200)}.work-link{display:block;margin-bottom:16px;font-size:14px;color:var(--grey3);text-decoration:none;transition:color var(--dur-color) var(--ease)}.work-link:hover{color:var(--grey1)}.project-list{display:flex;flex-direction:column;row-gap:var(--spacing-lg);margin-top:var(--spacing-lg);list-style:none;padding:0;margin-left:0}.project-item{display:grid;grid-template-columns:var(--year-col) 1fr;-moz-column-gap:var(--spacing-20);column-gap:var(--spacing-20);align-items:start;position:relative}.project-thumb{display:block;width:160px;height:90px;margin-top:var(--spacing-xxs);border-radius:var(--radius-thumb);border:1px solid var(--border);overflow:hidden;background:var(--wash2);padding:0;cursor:zoom-in;position:relative;z-index:1;transition:transform var(--dur-move) var(--ease)}.project-thumb:active{transform:scale(.97)}.project-body{display:flex;flex-direction:column;gap:4px;position:relative}.project-year{color:var(--grey3);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.project-title,.project-year{font-size:14px;font-weight:400;line-height:1.8}.project-title{display:flex;align-items:baseline;gap:8px;color:var(--grey1);white-space:nowrap}.project-title-link{color:inherit}.project-title-link:after{content:"";position:absolute;inset:0}.project-description{font-size:14px;color:var(--grey2);line-height:1.6;margin:0}.post-list .post-new{position:relative;display:inline-block;color:var(--badge-new);font-weight:400;font-size:14px;line-height:1;padding:0 .25rem}.post-list .post-new>span{position:relative;z-index:1}.post-list .post-new-ring{position:absolute;inset:-5px -6px -5px -6px;width:calc(100% + 12px);height:calc(100% + 10px);pointer-events:none;overflow:visible;z-index:0}.eagle{image-rendering:pixelated;background-image:url(/eagle-light.png);background-repeat:no-repeat;background-size:384px 128px;pointer-events:none}[data-theme=dark] .eagle{background-image:url(/eagle-dark.png)}.eagle-awake{position:absolute;left:-8px;bottom:0;width:56px;height:40px;background-position:-4px -24px}.eagle-asleep{position:absolute;left:0;bottom:0;width:40px;height:24px;background-position:-12px -104px;animation:eagle-frames 1.8s steps(4) infinite}.eagle-wrap:hover .eagle-awake{background-position-x:-68px}.eagle-flying{animation:eagle-takeoff .8s step-end}@keyframes eagle-frames{to{background-position-x:-268px}}@keyframes eagle-takeoff{0%{background-position-x:-68px}10%{background-position-x:-132px}21%{background-position-x:-196px}32%{background-position-x:-260px}43%{background-position-x:-196px}54%{background-position-x:-260px}65%{background-position-x:-196px}76%{background-position-x:-132px}86%{background-position-x:-324px}}.eagle-wrap{position:relative;display:inline-block;width:40px;height:24px}.eagle-wrap:has(.eagle-awake){cursor:pointer}.eagle-zzz{position:absolute;bottom:16px;left:27px;pointer-events:none}.eagle-z{position:absolute;font-size:11px;font-weight:600;line-height:1;color:var(--grey2);opacity:0;animation:eagle-z 3.2s ease-out infinite;animation-delay:calc(var(--rang) * 1.05s)}@keyframes eagle-z{0%{opacity:0;transform:translate(0) scale(.6)}22%{opacity:1}68%{opacity:1}to{opacity:0;transform:translate(8px,-14px) scale(1.15)}}@media (prefers-reduced-motion:reduce){.eagle-asleep,.eagle-awake,.eagle-flying,.eagle-z{animation:none}.eagle-z{opacity:0}}.site-footer{padding:0;margin-top:var(--spacing-60);font-size:13px;line-height:1.5}.site-footer p{display:inline-flex;align-items:baseline;gap:var(--spacing-xs);font-size:14px;font-weight:400;line-height:1.5;color:var(--color-gray-900);font-variant-numeric:tabular-nums}.clock-icon-swap{position:relative;display:inline-block;width:14px;height:14px;vertical-align:-2px}.clock-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--dur-color) var(--ease)}.clock-icon[data-show=true]{opacity:1}@media (prefers-reduced-motion:reduce){.clock-icon{transition:none}}@keyframes entranceFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-header{animation:entranceFadeUp .65s var(--ease) 50ms backwards}.social-links{animation:entranceFadeUp .65s var(--ease) 90ms backwards}.homepage .article>p{animation:entranceFadeUp .65s var(--ease) .13s backwards}.homepage .article>.btn-row{animation:entranceFadeUp .65s var(--ease) .17s backwards}#projects{animation:entranceFadeUp .65s var(--ease) .21s backwards}#experience{animation:entranceFadeUp .65s var(--ease) .25s backwards}#thoughts{animation:entranceFadeUp .65s var(--ease) .29s backwards}#photography.photo-scroller-section{animation:entranceFadeUp .65s var(--ease) .33s backwards}#toolbox{animation:entranceFadeUp .65s var(--ease) .37s backwards}.site-footer{animation:entranceFadeUp .65s var(--ease) .41s backwards}@media (prefers-reduced-motion:reduce){#experience,#photography.photo-scroller-section,#projects,#thoughts,#toolbox,.homepage .article>.btn-row,.homepage .article>p,.page-header,.site-footer,.social-links{animation:none}}.article-aside{animation:entranceFadeUp .65s var(--ease) 50ms backwards}.article-long>header{animation:entranceFadeUp .65s var(--ease) 90ms backwards}.article-long>.article-section:first-of-type:not(.action-produces-information){animation:entranceFadeUp .65s var(--ease) .13s backwards}.article-long>.article-section:nth-of-type(2){animation:entranceFadeUp .65s var(--ease) .17s backwards}.article-long>.article-section:nth-of-type(3){animation:entranceFadeUp .65s var(--ease) .21s backwards}.article-long>.article-section:nth-of-type(4){animation:entranceFadeUp .65s var(--ease) .25s backwards}.article-long>.article-section:nth-of-type(5){animation:entranceFadeUp .65s var(--ease) .29s backwards}.article-long>.article-section:nth-of-type(6){animation:entranceFadeUp .65s var(--ease) .33s backwards}.article-long>.article-section:nth-of-type(7){animation:entranceFadeUp .65s var(--ease) .37s backwards}.article-long>.article-section:nth-of-type(n+8){animation:entranceFadeUp .65s var(--ease) .41s backwards}.article-long .action-produces-information p:first-of-type{animation:entranceFadeUp .65s var(--ease) .13s backwards}.article-long .action-produces-information p:nth-of-type(2){animation:entranceFadeUp .65s var(--ease) .16s backwards}.article-long .action-produces-information p:nth-of-type(3){animation:entranceFadeUp .65s var(--ease) .19s backwards}.article-long .action-produces-information p:nth-of-type(4){animation:entranceFadeUp .65s var(--ease) .22s backwards}.article-long .action-produces-information p:nth-of-type(5){animation:entranceFadeUp .65s var(--ease) .25s backwards}.curated-finds>header{animation:entranceFadeUp .65s var(--ease) 50ms backwards}.curated-finds .log-entry-list{animation:entranceFadeUp .65s var(--ease) 90ms backwards}@media (prefers-reduced-motion:reduce){.action-produces-information p,.article-aside,.article-long>.article-section,.article-long>header,.curated-finds .log-entry-list,.curated-finds>header{animation:none}}.odin-filmstrip{display:flex;overflow-x:auto;gap:8px;padding:0;scrollbar-width:none}.odin-filmstrip::-webkit-scrollbar{display:none}.odin-filmstrip-slide{flex:0 0 auto;width:min(calc((100vw - 32px) * .8),454px);aspect-ratio:4/3;cursor:pointer;position:relative;box-sizing:border-box;border-radius:8px;overflow:hidden;background-color:var(--wash2)}.odin-filmstrip-slide:after{content:"";position:absolute;inset:0;border:.5px solid var(--transparentBorder);border-radius:inherit;z-index:10;pointer-events:none}.odin-filmstrip-slide img,.odin-filmstrip-slide video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}@media (max-width:768px){.odin-filmstrip{flex-direction:column;overflow-x:visible;gap:8px}.odin-filmstrip-slide{width:100%;flex:none}.filmstrip-dots{display:none}}.filmstrip-dots{display:flex;justify-content:center;gap:6px;margin-top:12px}.filmstrip-dot{width:4px;height:4px;border-radius:50%;background-color:var(--color-gray-400);transition:background-color .2s var(--ease)}.filmstrip-dot[data-active=true]{background-color:var(--color-gray-1000)}.article-image-clickable{cursor:pointer}.article-image-clickable:focus{outline:none}.article-image-clickable:focus-visible{outline:none}.odin-carousel-img{position:relative;box-sizing:border-box;aspect-ratio:4/3;border-radius:8px;background-color:var(--wash2);overflow:hidden}.odin-carousel-img:after{content:"";position:absolute;inset:0;border:.5px solid var(--transparentBorder);border-radius:inherit;z-index:10;pointer-events:none}.odin-carousel-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}html.lightbox-open .theme-toggle{right:calc(16px + var(--scrollbar-compensation, 0px))}.lightbox-overlay{position:fixed;inset:0;z-index:1000;background:var(--overlay-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:grid;place-items:center;cursor:pointer;overscroll-behavior:none;opacity:0;will-change:opacity}.lightbox-content{will-change:opacity,transform}.lightbox-close,.lightbox-content{display:flex;align-items:center;justify-content:center}.lightbox-close{position:absolute;z-index:2;width:32px;height:32px;border-radius:50%;background:var(--dock-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 2px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.02),0 0 0 .5px var(--dock-ring);border:none;top:12px;right:12px;cursor:pointer;color:var(--grey2);padding:0;transition:color var(--dur-color) var(--ease)}.lightbox-close:hover{color:var(--grey1);background:var(--dock-hover)}.lightbox-close:active{transform:scale(.96)}.lightbox-close:after{content:"";position:absolute;inset:-8px}.lightbox-lens-btn{position:absolute;z-index:2;width:32px;height:32px;border-radius:50%;background:var(--dock-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 2px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.02),0 0 0 .5px var(--dock-ring);border:none;bottom:12px;right:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--grey2);padding:0;transition:background var(--dur-color) var(--ease),color var(--dur-color) var(--ease)}.lightbox-lens-btn:hover{color:var(--grey1);background:var(--dock-hover)}.lightbox-lens-btn:active{transform:scale(.96)}.lightbox-lens-btn:after{content:"";position:absolute;inset:-8px}.lightbox-lens-btn[data-active=true]{background:var(--dock-active);color:var(--grey1);box-shadow:0 1px 2px rgba(0,0,0,.05),0 0 0 .5px var(--dock-ring)}.lightbox-lens{position:fixed;width:184px;height:184px;border-radius:50%;overflow:hidden;border:1.5px solid rgba(0,0,0,.1);box-shadow:0 2px 12px rgba(0,0,0,.12);z-index:2000}.lightbox-lens,.lightbox-lens img{top:0;left:0;pointer-events:none;will-change:transform}.lightbox-lens img{position:absolute;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lightbox-img--lens-active{cursor:crosshair}[data-theme=dark] .lightbox-lens{border-color:rgba(255,255,255,.12);box-shadow:0 2px 12px rgba(0,0,0,.5)}.lightbox-nav{position:absolute;inset:0;display:flex;z-index:1;pointer-events:none}.lightbox-nav-btn{width:50%;background:transparent;border:none;outline:none;pointer-events:all}.lightbox-nav-btn--prev{cursor:w-resize}.lightbox-nav-btn--next{cursor:e-resize}.lightbox-dots{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:48px;display:flex;align-items:center;-moz-column-gap:6px;column-gap:6px;z-index:10;pointer-events:none}.lightbox-dot{width:8px;height:8px;border-radius:50%;background:var(--color-gray-400);transition:background var(--dur-color) var(--ease),transform var(--dur-color) var(--ease)}.lightbox-dot[data-active=true]{background:var(--color-gray-1000);transform:scale(1.15)}.lightbox-img,.lightbox-main{max-width:min(92vw,1080px);max-height:88dvh}.lightbox-img{display:block;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:12px;background:transparent;outline:.5px solid var(--transparentBorder);outline-offset:-.5px}.lightbox-img--closable{cursor:zoom-out}.mascot-ear-left,.mascot-ear-right{transform-origin:bottom center;transform-box:fill-box}@keyframes leftEarTwitch{0%,9%{transform:rotate(0deg)}12%{transform:rotate(-8deg)}16%,34%{transform:rotate(0deg)}38%{transform:rotate(-12deg)}42%{transform:rotate(-6deg)}48%,58%{transform:rotate(0deg)}62%{transform:rotate(-30deg)}70%{transform:rotate(-28deg)}78%,to{transform:rotate(0deg)}}@keyframes rightEarTwitch{0%,9%{transform:rotate(0deg)}12%{transform:rotate(6deg)}16%,34%{transform:rotate(0deg)}38%{transform:rotate(10deg)}42%{transform:rotate(4deg)}48%,58%{transform:rotate(0deg)}62%{transform:rotate(-30deg)}70%{transform:rotate(-28deg)}78%,to{transform:rotate(0deg)}}.mascot-ear-left{animation:leftEarTwitch 12s ease-in-out infinite}.mascot-ear-right{animation:rightEarTwitch 12s ease-in-out infinite}@view-transition{navigation:auto}::view-transition-old(root){animation:vt-fade-out .12s ease-in forwards}::view-transition-new(root){animation:vt-fade-in .2s ease-out forwards}@keyframes vt-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(0)}}@keyframes vt-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}::view-transition-new(root),::view-transition-old(root){animation:none!important}}.project-title-link{text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:2px}.project-title-link:hover{text-decoration-style:solid}.project-title-text{color:var(--grey1)}.project-coming-soon{font-size:14px;color:var(--grey3)}.contact-list{display:flex;flex-direction:column;row-gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.contact-item{display:flex;flex-direction:row;-moz-column-gap:32px;column-gap:32px;align-items:baseline}.contact-label{color:var(--grey3);font-size:14px;flex-shrink:0;position:relative;white-space:nowrap}.contact-label:before{content:"0000 — 0000";visibility:hidden;display:block;height:0}.contact-label span{position:absolute;left:0;top:0}.about-section-header{display:flex;align-items:baseline;justify-content:space-between}.about-mode-toggle{display:flex;align-items:center;gap:6px;flex-shrink:0}.about-mode-btn{font-size:13px;font-family:var(--font-primary);color:var(--grey3);background:none;border:none;padding:0;cursor:pointer;transition:color var(--dur-color) var(--ease)}.about-mode-btn[data-active=true]{color:var(--grey1)}.about-mode-sep{color:var(--grey3);font-size:13px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.about-content{display:flex;flex-direction:column;gap:16px}@keyframes spinner-move{to{stroke-dashoffset:-100}}@keyframes spinner-dash{0%,to{stroke-dasharray:15 85}50%{stroke-dasharray:40 60}}.github-hover-item{position:relative;display:inline-block}.github-card{position:absolute;bottom:calc(100% + 8px);left:0;z-index:50;width:256px;background:var(--background);border:1px solid var(--border);border-radius:8px;padding:10px;box-shadow:0 4px 24px rgba(0,0,0,.08),0 1px 4px rgba(0,0,0,.04)}.github-grid-outer{overflow-x:auto;scrollbar-width:none}.github-grid-outer::-webkit-scrollbar{display:none}.github-grid{display:grid;grid-template-rows:repeat(7,9px);grid-auto-flow:column;grid-auto-columns:9px;gap:3px}.github-cell{width:9px;height:9px;border-radius:2px}.github-cell--skeleton{background-color:#fafafa;animation:github-pulse 1.5s ease-in-out infinite}@keyframes github-pulse{0%,to{opacity:1}50%{opacity:.4}}.github-card-meta{margin-top:10px;display:flex;align-items:center;gap:8px}.github-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0}.github-login{font-weight:400;color:var(--grey1)}.github-bio,.github-login{font-size:12px;margin:0;line-height:1.3}.github-bio{color:var(--grey3)}.photo-scroller-label{font-size:14px;font-weight:400;color:var(--color-gray-1200);margin:0 0 16px}.photo-scroller{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin-top:var(--spacing-lg);margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);-webkit-overflow-scrolling:touch;scrollbar-width:none}.photo-scroller::-webkit-scrollbar{display:none}.photo-scroller a{display:block;flex-shrink:0}.photo-scroller img{height:260px;width:195px;-o-object-fit:cover;object-fit:cover;max-width:none;margin:0;border-radius:8px;flex-shrink:0}.photo-scroller-loading{justify-content:center;min-width:60px;flex-shrink:0;font-family:var(--font-mono,ui-monospace,monospace);font-size:.8em;color:var(--grey3)}.dock,.photo-scroller-loading{display:flex;align-items:center}.dock{position:fixed;bottom:var(--spacing-md);left:50%;transform:translateX(-50%);z-index:100;gap:var(--spacing-10)}.dock-bubble,.dock-pill{display:flex;align-items:center;background:var(--dock-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 2px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.02),0 0 0 .5px var(--dock-ring);animation:dockItemFadeUp .65s var(--ease) .45s backwards}.dock-pill{height:40px;padding:4px 6px;border-radius:9999px;gap:2px}.dock-bubble{width:40px;height:40px;border-radius:50%;justify-content:center;cursor:pointer;transition:color var(--dur-color) var(--ease),background-color var(--dur-color) var(--ease),transform var(--dur-move) var(--ease)}.dock-bubble:hover{background:var(--dock-hover)}.dock-bubble:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){.dock-bubble{transition:none}}.dock-back-pill{height:40px;padding:0 var(--spacing-sm);gap:6px;font-size:13px;font-weight:500;color:var(--dock-icon);text-decoration:none;transition:color var(--dur-color) var(--ease),background-color var(--dur-color) var(--ease)}.dock-back-pill:hover{color:var(--dock-icon-hover);background:var(--dock-hover)}.dock-bubble-top button{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:none;border:none;cursor:pointer;color:var(--dock-icon);transition:color var(--dur-color) var(--ease)}.dock-bubble-top button:hover{color:var(--dock-icon-hover)}.dock-item{display:flex;align-items:center;padding:6px var(--spacing-sm);border-radius:9999px;font-size:13px;font-weight:500;line-height:1.5;text-decoration:none;color:var(--grey2);white-space:nowrap;transition:color var(--dur-color) var(--ease),background-color var(--dur-color) var(--ease)}.dock-item:hover{color:var(--grey1);background:var(--dock-hover)}.dock-item[aria-current=page]{color:var(--grey1);background:var(--dock-active)}.dock-item-icon{display:none}.dock-item-label{display:inline}@media (max-width:480px){.dock-item{padding:8px}.dock-item-icon{display:inline-flex}.dock-bubble-top,.dock-item-label{display:none}}@keyframes dockItemFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.dock-bubble,.dock-pill{animation:none}}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;padding:0;cursor:pointer;color:var(--dock-icon);transition:color var(--dur-color) var(--ease)}.theme-toggle-btn:hover,.theme-toggle-btn[data-active=true]{color:var(--dock-icon-hover)}.theme-toggle-icons{position:relative;width:16px;height:16px}.theme-icon{opacity:0;transition:opacity var(--dur-color) var(--ease)}.color-icon,.theme-icon{position:absolute;inset:0;transform-origin:center}.theme-icon--monitor,[data-theme-choice=light] .theme-icon--sun{opacity:1}[data-theme-choice=light] .theme-icon--monitor{opacity:0}[data-theme-choice=dark] .theme-icon--moon{opacity:1}[data-theme-choice=dark] .theme-icon--monitor{opacity:0}@keyframes themeIconMoon{0%{transform:rotate(-45deg) scale(.5);opacity:0}70%{transform:rotate(8deg) scale(1.1);opacity:1}to{transform:rotate(0deg) scale(1);opacity:1}}@keyframes dockIconPop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.06);opacity:1}to{transform:scale(1);opacity:1}}@keyframes dockIconBloom{0%{transform:scale(.2);opacity:0}70%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}[data-theme-choice=dark] .theme-icon--moon{animation:themeIconMoon .55s var(--ease)}[data-theme-choice=light] .theme-icon--sun,[data-theme-choice=system] .theme-icon--monitor{animation:dockIconPop .4s var(--ease)}[data-theme-choice=light] .theme-icon--sun path{transform-origin:12px 12px;animation:dockIconBloom .42s cubic-bezier(.34,1.56,.64,1) 60ms backwards}.dock-bubble-top svg{animation:dockIconPop .4s var(--ease)}.dock-bubble-top svg path{transform-origin:12px 12px;animation:dockIconBloom .42s cubic-bezier(.34,1.56,.64,1) 60ms backwards}.dock [data-entrance],.dock [data-entrance] .theme-icon{animation-delay:.45s}.dock [data-entrance] path{animation-delay:.51s}@media (prefers-reduced-motion:reduce){.theme-icon{transition:none}.dock-bubble-top svg,.dock-bubble-top svg path,.theme-icon--monitor,.theme-icon--moon,.theme-icon--sun,.theme-icon--sun path{animation:none}}.stack-categories{gap:16px;margin-top:16px}.stack-categories,.stack-category{display:flex;flex-direction:column}.stack-category{gap:10px}.stack-category-label{font-size:12px;color:var(--grey3);letter-spacing:.04em;text-transform:uppercase}.stack-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.stack-item{position:relative;width:20px;height:20px;color:var(--grey3);transition:color var(--dur-color) var(--ease);cursor:pointer}.stack-item:after{content:attr(aria-label);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(3px);white-space:nowrap;font-family:var(--font-primary);font-size:11.5px;line-height:1;color:var(--tooltip-fg);background:var(--tooltip-bg);backdrop-filter:blur(10px);border-radius:7px;padding:4px 8px;box-shadow:0 4px 12px rgba(0,0,0,.18);pointer-events:none;opacity:0;filter:blur(4px);transition:opacity .18s,transform .18s,filter .18s;z-index:50}.stack-item:hover:after{opacity:1;transform:translateX(-50%) translateY(0);filter:blur(0)}.stack-item svg{width:100%;height:100%}.stack-item--local img,.stack-mask{position:absolute;inset:0;width:100%;height:100%;transition:opacity var(--dur-color) var(--ease)}.stack-mask{background-color:currentColor;mask-image:var(--icon-src);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:var(--icon-src);-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}.stack-item--local img{opacity:0}.stack-item--local:hover img{opacity:1}.stack-item--local:hover .stack-mask,[data-theme=dark] .stack-item--local:hover img{opacity:0}[data-theme=dark] .stack-item--local:hover .stack-mask{opacity:1}.stack-item:hover{color:var(--icon-color,var(--grey1))}[data-theme=dark] .stack-item{color:var(--grey3)}[data-theme=dark] .stack-item:hover{color:var(--grey1)}[data-theme=dark] .stack-item:after{box-shadow:0 4px 12px rgba(0,0,0,.3)}.toolbox-item--center{align-items:center}.log-view-all{font-size:14px;color:var(--grey3);text-decoration:none;margin-top:12px;display:inline-block;transition:color var(--dur-color) var(--ease)}.log-view-all:hover{color:var(--grey1)}.log-entry-list{display:flex;flex-direction:column;gap:64px;list-style:none;padding:0;margin:0}.log-entry-list li{padding:0}.article .log-entry-list{gap:24px}.article .log-entry-list li:before{content:none}.article .log-entry-list li{padding:0}.log-entry-link{display:inline-flex;align-items:baseline;gap:3px;color:var(--grey1);font-weight:400;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:2px}.log-entry-link:hover{text-decoration-style:solid}.log-entry-desc{margin-top:4px;color:var(--grey2);font-size:14px}.work-grid{display:grid;gap:var(--spacing-sm);margin-top:var(--spacing-lg);width:100vw;margin-left:calc(50% - 50vw);padding:0 24px;box-sizing:border-box;grid-template-columns:repeat(2,1fr)}@media (max-width:640px){.work-grid{grid-template-columns:1fr}}.listening-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-top:var(--spacing-lg)}@media (max-width:500px){.listening-grid{grid-template-columns:1fr}}.listening-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:10px;background:var(--wash2);border:none;border-radius:var(--radius);cursor:pointer;position:relative;text-align:left;font:inherit;color:inherit}.listening-card:after{content:"";position:absolute;inset:0;border:.5px solid var(--transparentBorder);border-radius:inherit;pointer-events:none}.listening-card[data-active=true]:after{border-color:var(--grey3)}.listening-art{display:block;width:48px;height:48px;border-radius:var(--radius-thumb);overflow:hidden;flex-shrink:0;background:var(--wash2)}.listening-art img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.listening-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.listening-title{font-size:14px;font-weight:500;color:var(--text1)}.listening-artist,.listening-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.listening-artist{font-size:13px;color:var(--text2)}.listening-player{margin-top:var(--spacing-sm);border-radius:var(--radius);overflow:hidden}.listening-player iframe{display:block;border:none}.work-card{border-radius:8px;overflow:hidden;background:var(--wash2);cursor:pointer;position:relative;aspect-ratio:4/3}.work-card:after{content:"";position:absolute;inset:0;border:.5px solid var(--transparentBorder);border-radius:inherit;z-index:10;pointer-events:none}.work-card img,.work-card video{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}@media (max-width:500px){.timeline{grid-template-columns:1fr;row-gap:var(--spacing-md)}.timeline-item>time{margin-bottom:-18px}.project-list{row-gap:var(--spacing-md)}.project-item{grid-template-columns:1fr;row-gap:6px}}.solitude{--ink:#000;--mid:#666;--faint:#999;--hairline:#ddd;width:100vw;margin-left:calc(50% - 50vw);min-height:100vh;padding:40px 20px 80px;background:#fff;color:var(--ink);font-family:Courier New,Courier,monospace;text-align:center}.page-shell:has(.solitude):before{display:none}.page-shell:has(.solitude){padding:0}html:has(.solitude){background:#fff}.sol-col{max-width:756px;margin:0 auto}.sol-title{font-size:24px;line-height:38.4px;font-weight:400;letter-spacing:-.5px;margin:0 0 10px}.sol-subtitle{font-size:13px;line-height:20.8px;color:var(--mid);margin:0 0 20px}.sol-rule{border:0;border-top:1px solid var(--ink);margin:80px 0}.sol-wave{font-size:12px;line-height:19.2px;color:var(--hairline);margin:0;overflow:hidden;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sol-wave-open{margin:80px 0 0}.sol-wave-close{margin:20px 0 0}.sol-wave-open+.sol-section{margin-top:20px}.sol-quote+.sol-quote{margin-top:40px}.sol-frame{font-family:Courier New,Courier,monospace;font-size:20px;line-height:32px;margin:0;white-space:pre;display:inline-block;text-align:left}.sol-stack{position:relative;display:inline-block}.sol-stack-sm{display:none}.sol-stack .sol-frame{position:absolute;top:0;left:0;animation:sol-pulse 8s ease-in-out infinite;will-change:opacity}.sol-stack .sol-frame:first-child{position:static;visibility:hidden;animation:none}.sol-frame.sol-layer-1{-webkit-mask-image:linear-gradient(120deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(120deg,transparent,#000 30%,#000 70%,transparent);opacity:.9;animation-delay:1s}.sol-frame.sol-layer-2{-webkit-mask-image:linear-gradient(100deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(100deg,transparent,#000 20%,#000 80%,transparent);filter:blur(.4px);opacity:.85;animation-delay:2s}.sol-frame.sol-layer-3{-webkit-mask-image:radial-gradient(circle at 70% 30%,#000 60%,transparent 100%);mask-image:radial-gradient(circle at 70% 30%,#000 60%,transparent 100%);filter:blur(.6px);opacity:.8;animation-delay:3s}.sol-frame.sol-layer-4{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 15%,#000 85%,transparent);mask-image:linear-gradient(90deg,transparent 0,#000 15%,#000 85%,transparent);filter:blur(1.2px);opacity:.75;animation-delay:4s}@keyframes sol-pulse{0%,to{opacity:.35}50%{opacity:1}}@keyframes sol-print{0%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}.sol-stack-lg,.sol-stack-sm{animation:sol-print .9s both}.sol-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.sol-section{margin:80px 0 0}.sol-label{font-size:14px;line-height:22.4px;font-weight:400;letter-spacing:.3px;color:var(--mid);margin:0 0 15px}.sol-body,.sol-muted{font-size:15px;line-height:24px;margin:0 0 10px}.sol-muted{color:var(--mid)}.sol-small{font-size:12px;line-height:19.2px;color:var(--faint);margin:20px 0 0}.sol-foot{margin-top:20px}.sol-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.sol-list li{font-size:15px;line-height:24px}.sol-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.sol-plan-name{font-size:15px;line-height:24px;margin:0}.sol-plan-price{font-size:24px;line-height:38.4px;letter-spacing:-.5px;margin:0}.sol-plan-term{font-size:14px;line-height:22.4px;color:var(--mid);margin:0}.sol-gap{height:20px}.solitude ::-moz-selection{background:var(--ink);color:#fff}.solitude ::selection{background:var(--ink);color:#fff}.solitude a:after,.solitude a:before{color:transparent}.solitude a:before{content:"["}.solitude a:after{content:"]"}.solitude a:focus-visible{outline:none}.solitude a:focus-visible:after,.solitude a:focus-visible:before{color:var(--ink)}.solitude a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.solitude a:hover{color:var(--mid)}.sol-plan-cta{display:inline-block;font-size:14px;line-height:22.4px;margin:10px 0 0}@media (max-width:560px){.sol-stack-lg{display:none}.sol-stack-sm{display:inline-block}.sol-plans{grid-template-columns:minmax(0,1fr);gap:40px}.sol-section{margin-top:60px}.sol-rule{margin:60px 0}}@media (prefers-reduced-motion:reduce){.sol-stack .sol-frame,.sol-stack-lg,.sol-stack-sm{animation:none}}@media print{.dock{display:none!important}html:has(.solitude){background:#fff}.solitude{background:#fff;color:#000;padding:0;width:auto;margin:0}.solitude .sol-label,.solitude .sol-muted,.solitude .sol-plan-term,.solitude .sol-subtitle{color:#333}.sol-stack-lg{display:inline-block;animation:none}.sol-stack-sm,.sol-wave{display:none}.sol-stack .sol-frame:first-child{visibility:visible}.sol-stack .sol-frame:not(:first-child){display:none}.sol-plans>*,.sol-section,.sol-stack{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.sol-foot:after{content:" · 1on1.hamzaalabou.com"}}.hover\:text-foreground:hover{--tw-text-opacity:1;color:rgb(17 17 17/var(--tw-text-opacity,1))}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-\[\#6B97FF\]:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(107 151 255/var(--tw-ring-opacity,1))}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:bg-accent\/80{background-color:rgba(0,0,0,.8)}.group:hover .group-hover\:bg-foreground\/90{background-color:rgb(17 17 17/.9)}.group:hover .group-hover\:bg-hover{background-color:rgba(0,0,0,.04)}.group:hover .group-hover\:stroke-\[2\]{stroke-width:2}.group:active .group-active\:scale-\[0\.98\]{--tw-scale-x:0.98;--tw-scale-y:0.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:active .group-active\:bg-accent{background-color:rgba(0,0,0,.05)}.group:active .group-active\:bg-active{background-color:rgba(0,0,0,.08)}.group:active .group-active\:bg-foreground\/80{background-color:rgb(17 17 17/.8)}@media (min-width:768px){.md\:h-20{height:5rem}}.\[\&_svg\]\:h-3\.5 svg{height:.875rem}.\[\&_svg\]\:h-4 svg{height:1rem}.\[\&_svg\]\:h-5 svg{height:1.25rem}.\[\&_svg\]\:w-3\.5 svg{width:.875rem}.\[\&_svg\]\:w-4 svg{width:1rem}.\[\&_svg\]\:w-5 svg{width:1.25rem}.\[\&_svg\]\:stroke-\[1\.5\] svg{stroke-width:1.5}.\[\&_svg\]\:transition-\[stroke-width\] svg{transition-property:stroke-width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.group:hover .group-hover\:\[\&_svg\]\:stroke-\[2\] svg{stroke-width:2}