@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.p.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");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}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_9b9db241-module__sLJoNW__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_9b9db241-module__sLJoNW__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.3zvkfbs08rnj_.woff2)format("woff2");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:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.3strvg7o-g5v2.woff2)format("woff2");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}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.1wwzpfhzaj2r0.woff2)format("woff2");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:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.2rlzm4mj5kw8e.woff2)format("woff2");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}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_267e791-module__2oylma__className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.instrument_serif_267e791-module__2oylma__variable{--font-instrument:"Instrument Serif", "Instrument Serif Fallback"}
@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/bf3d68eadbb8311f-s.3jvzo2c0t7p6o.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/ffa2fa3f6b86124c-s.p.128y1dthn8_iu.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/38b643e4e9d4ba05-s.2i8jbaimnomq9.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/1325eec9b9b70547-s.2rstu_qvj67-t.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ddfdad46ec59d70-s.18m9t92wdvi9f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/a42a42bd7d27e1ac-s.331h_qhi40y_r.woff2)format("woff2");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:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(../media/1904c30335c1760b-s.p.1dtija5an3gn9.woff2)format("woff2");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}@font-face{font-family:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/bf3d68eadbb8311f-s.3jvzo2c0t7p6o.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/ffa2fa3f6b86124c-s.p.128y1dthn8_iu.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/38b643e4e9d4ba05-s.2i8jbaimnomq9.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/1325eec9b9b70547-s.2rstu_qvj67-t.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/7ddfdad46ec59d70-s.18m9t92wdvi9f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/a42a42bd7d27e1ac-s.331h_qhi40y_r.woff2)format("woff2");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:Literata;font-style:italic;font-weight:500;font-display:swap;src:url(../media/1904c30335c1760b-s.p.1dtija5an3gn9.woff2)format("woff2");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}@font-face{font-family:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/868062ac78521d52-s.14431vc-xa-c3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/377df069955803a2-s.p.0h-psfoa0y7cs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c306ca90d80e6fbb-s.0s35yern3pzv4.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/80458c63f2f84a49-s.0mv4uq-3d3px-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/38c395c92be4c12a-s.2_fvequ36livx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4822b6e373c28622-s.1-55dqm2ab3uu.woff2)format("woff2");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:Literata;font-style:normal;font-weight:400;font-display:swap;src:url(../media/20a72cd0c9704d06-s.p.2iy5w5j4pvfpr.woff2)format("woff2");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}@font-face{font-family:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/868062ac78521d52-s.14431vc-xa-c3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/377df069955803a2-s.p.0h-psfoa0y7cs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c306ca90d80e6fbb-s.0s35yern3pzv4.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/80458c63f2f84a49-s.0mv4uq-3d3px-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/38c395c92be4c12a-s.2_fvequ36livx.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/4822b6e373c28622-s.1-55dqm2ab3uu.woff2)format("woff2");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:Literata;font-style:normal;font-weight:500;font-display:swap;src:url(../media/20a72cd0c9704d06-s.p.2iy5w5j4pvfpr.woff2)format("woff2");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}@font-face{font-family:Literata Fallback;src:local(Times New Roman);ascent-override:99.62%;descent-override:26.07%;line-gap-override:0.0%;size-adjust:118.15%}.literata_97f116f0-module__sjACNa__className{font-family:Literata,Literata Fallback}.literata_97f116f0-module__sjACNa__variable{--font-quote:"Literata", "Literata Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--paper:#f4f4f4;--paper-2:#ececec;--ink:#141414;--muted:#6a6a6a;--line:#e3e3e3;--accent:#c44b32;--forest:#1e4a3c}*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--font-inter), Inter, ui-sans-serif, system-ui, sans-serif;--font-serif:var(--font-instrument), "Instrument Serif", ui-serif, Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-paper:var(--paper);--color-paper-2:var(--paper-2);--color-ink:var(--ink);--color-muted:var(--muted);--color-line:var(--line);--color-accent:var(--accent)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.top-\[calc\(100\%\+0\.4rem\)\]{top:calc(100% + .4rem)}.left-0{left:0}.z-40{z-index:40}.z-50{z-index:50}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-auto{margin-top:auto}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.h-full{height:100%}.min-h-full{min-height:100%}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\[1080px\]{max-width:1080px}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.min-w-\[10\.5rem\]{min-width:10.5rem}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.scroll-mt-8{scroll-margin-top:calc(var(--spacing) * 8)}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.rounded-2xl{border-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-ink{border-color:var(--color-ink)}.border-line{border-color:var(--color-line)}.bg-line{background-color:var(--color-line)}.bg-paper{background-color:var(--color-paper)}.bg-paper-2\/40{background-color:var(--color-paper-2)}@supports (color:color-mix(in lab, red, red)){.bg-paper-2\/40{background-color:color-mix(in oklab, var(--color-paper-2) 40%, transparent)}}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-left{text-align:left}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.98rem\]{font-size:.98rem}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.22em\]{--tw-tracking:.22em;letter-spacing:.22em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-accent{color:var(--color-accent)}.text-ink{color:var(--color-ink)}.text-line{color:var(--color-line)}.text-muted{color:var(--color-muted)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-line{-webkit-text-decoration-color:var(--color-line);-webkit-text-decoration-color:var(--color-line);-webkit-text-decoration-color:var(--color-line);text-decoration-color:var(--color-line)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:border-ink\/25:hover{border-color:var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.hover\:border-ink\/25:hover{border-color:color-mix(in oklab, var(--color-ink) 25%, transparent)}}.hover\:bg-black\/8:hover{background-color:#00000014}@supports (color:color-mix(in lab, red, red)){.hover\:bg-black\/8:hover{background-color:color-mix(in oklab, var(--color-black) 8%, transparent)}}.hover\:bg-ink:hover{background-color:var(--color-ink)}.hover\:text-\[\#f3eee4\]:hover{color:#f3eee4}.hover\:text-ink:hover{color:var(--color-ink)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:top-3:focus{top:calc(var(--spacing) * 3)}.focus\:left-5:focus{left:calc(var(--spacing) * 5)}.focus\:z-50:focus{z-index:50}.focus\:bg-paper:focus{background-color:var(--color-paper)}.focus\:px-3:focus{padding-inline:calc(var(--spacing) * 3)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:pt-5{padding-top:calc(var(--spacing) * 5)}.sm\:pt-14{padding-top:calc(var(--spacing) * 14)}.sm\:pt-16{padding-top:calc(var(--spacing) * 16)}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-color-scheme:dark){@media (hover:hover){.dark\:hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}}}}@property --paper{syntax:"<color>";inherits:true;initial-value:#f4f4f4}@property --paper-2{syntax:"<color>";inherits:true;initial-value:#ececec}@property --ink{syntax:"<color>";inherits:true;initial-value:#141414}@property --muted{syntax:"<color>";inherits:true;initial-value:#6a6a6a}@property --line{syntax:"<color>";inherits:true;initial-value:#e3e3e3}@property --accent{syntax:"<color>";inherits:true;initial-value:#c44b32}@property --forest{syntax:"<color>";inherits:true;initial-value:#1e4a3c}:root{--paper:#f4f4f4;--paper-2:#ececec;--ink:#141414;--muted:#6a6a6a;--line:#e3e3e3;--accent:#c44b32;--forest:#1e4a3c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html.dark{--paper:#000;--paper-2:#0c0c0c;--ink:#f5f5f5;--muted:#8d8d8d;--line:#1a1a1a;--accent:#e24a32;--forest:#2f6b58;--bleed:#e11d2e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{background:var(--paper);color:var(--ink);scroll-behavior:smooth;transition:--paper .5s,--paper-2 .5s,--ink .5s,--muted .5s,--line .5s,--accent .5s,--forest .5s,background-color .5s,color .5s}html.theme-vt,html.theme-vt body{transition:none}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:1.0625rem;font-weight:400;line-height:1.55;transition:background-color .5s,color .5s}html.dark,html.dark body{background:var(--paper)}::view-transition-old(root){animation-duration:.55s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-new(root){animation-duration:.55s;animation-timing-function:cubic-bezier(.4,0,.2,1)}.aurora{pointer-events:none;z-index:0;height:62vh;display:block;position:fixed;inset:auto 0 0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#0000008c 26%,#000 58% 100%);mask-image:linear-gradient(#0000 0%,#0000008c 26%,#000 58% 100%)}html:not(.dark) .aurora{opacity:.78}.aurora-beam{mix-blend-mode:multiply;transform-origin:50% 100%;will-change:transform, opacity;position:absolute;bottom:-18%}html.dark .aurora-beam{mix-blend-mode:screen}.aurora-beam-1{filter:blur(28px);background:#12dc8cc7;border-radius:70% 40% 60% 30%;width:18vw;height:118%;animation:17.4s ease-in-out infinite aurora-drift-a;left:-4%}.aurora-beam-2{filter:blur(48px);background:#248cffb3;border-radius:40% 80% 30% 70%;width:32vw;height:92%;animation:23.8s cubic-bezier(.45,.05,.55,.95) -6.2s infinite aurora-drift-b;left:16%}.aurora-beam-3{filter:blur(22px);background:#50ffd280;border-radius:999px;width:14vw;height:124%;animation:11.6s linear -2.4s infinite aurora-drift-c;left:41%}.aurora-beam-4{filter:blur(40px);background:#465fffa3;border-radius:55% 25% 80% 40%;width:28vw;height:108%;animation:19.1s ease-in-out -11.7s infinite aurora-drift-d;left:58%}.aurora-beam-5{filter:blur(34px);background:#00c8aaa8;border-radius:30% 60% 50% 90%;width:22vw;height:100%;animation:14.9s cubic-bezier(.2,.7,.3,1) -8.8s infinite aurora-drift-e;left:79%}.aurora-beam-purple{filter:blur(26px);background:#a848ffb3;border-radius:80% 20% 60% 40%;width:9vw;height:78%;animation:21.3s ease-in-out -4.1s infinite aurora-drift-purple;left:34%}.aurora-mesh{mix-blend-mode:multiply;background-image:radial-gradient(circle,#00000024 .7px,#0000 .8px);background-size:10px 10px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#0000001f 22%,#0006 58%,#000000d9 100%);mask-image:linear-gradient(#0000 0%,#0000001f 22%,#0006 58%,#000000d9 100%)}html.dark .aurora-mesh{mix-blend-mode:overlay;background-image:radial-gradient(circle,#ffffff47 .7px,#0000 .8px)}@keyframes aurora-drift-a{0%{opacity:.22;transform:translate(-18%,22%)scale(.62,1.08)rotate(-12deg)}28%{opacity:.88;transform:translate(8%,-6%)scale(1.28,.78)rotate(4deg)}61%{opacity:.4;transform:translate(22%,14%)scale(.84,1.32)rotate(-3deg)}to{opacity:.22;transform:translate(-18%,22%)scale(.62,1.08)rotate(-12deg)}}@keyframes aurora-drift-b{0%{opacity:.55;transform:translate(16%,8%)scale(1.2,.7)rotate(8deg)}40%{opacity:.18;transform:translate(-20%,-12%)scale(.72,1.18)rotate(-6deg)}to{opacity:.55;transform:translate(16%,8%)scale(1.2,.7)rotate(8deg)}}@keyframes aurora-drift-c{0%{opacity:.7;transform:translateY(16%)scale(.9,.85)}50%{opacity:.28;transform:translate(-10%,-18%)scale(1.45,1.2)}to{opacity:.7;transform:translateY(16%)scale(.9,.85)}}@keyframes aurora-drift-d{0%{opacity:.16;transform:translate(-6%,-8%)scale(1.08,1.15)rotate(3deg)}18%{opacity:.82;transform:translate(12%,6%)scale(.8,.92)rotate(-9deg)}72%{opacity:.34;transform:translate(-22%,4%)scale(1.32,.76)rotate(11deg)}to{opacity:.16;transform:translate(-6%,-8%)scale(1.08,1.15)rotate(3deg)}}@keyframes aurora-drift-e{0%{opacity:.42;transform:translate(10%,20%)scale(.75,1.05)}33%{opacity:.9;transform:translate(-8%,2%)scale(1.18,.68)}66%{opacity:.2;transform:translate(18%,-10%)scale(.88,1.28)}to{opacity:.42;transform:translate(10%,20%)scale(.75,1.05)}}@keyframes aurora-drift-purple{0%{opacity:.08;transform:translate(8%,12%)scale(.7,.8)rotate(10deg)}45%{opacity:.55;transform:translate(-14%,-16%)scale(1.35,1.1)rotate(-8deg)}to{opacity:.08;transform:translate(8%,12%)scale(.7,.8)rotate(10deg)}}@media (prefers-reduced-motion:reduce){html,body{transition:none}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}.aurora-beam{opacity:.5;animation:none}.aurora-beam-purple{opacity:.28}.campus-waves:before,.campus-waves span,.home-switcher-mac-float,.home-switcher-phone-float,.home-switcher-studio-float,.home-switcher-laptop-float{animation:none}}main{z-index:1;position:relative}.site-footer{z-index:2;background:var(--paper);color:var(--muted);margin-top:auto;position:relative}h1{font-family:var(--font-serif);font-style:normal;font-weight:400}.section-lead-nowrap{white-space:nowrap;font-size:clamp(.92rem,2.15vw,1.125rem);line-height:1.35}::selection{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--accent) 22%, transparent)}}::selection{color:var(--ink)}a{color:inherit;text-underline-offset:.18em}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.word-ship{color:var(--accent)}.btn-ink{cursor:pointer;font:inherit;background-color:var(--ink);color:var(--paper);border:0}.btn-ink:hover{background-color:var(--accent);color:var(--paper)}.header-bar{box-shadow:none;background:0 0;border:0;grid-template-columns:1fr auto;grid-template-areas:"left right""seg seg";align-items:center;gap:.55rem .75rem;padding:.7rem .85rem .35rem;display:grid;overflow:visible}.header-left{grid-area:left;align-items:center;gap:.4rem;min-width:0;display:flex}.header-fab{--fab-size:2.25rem;--fab-gap:.4rem;--fab-reach:calc(var(--fab-size) + var(--fab-gap));z-index:50;width:var(--fab-size);height:var(--fab-size);flex-shrink:0;position:relative}.header-fab-scrim{z-index:0;-webkit-backdrop-filter:blur(16px)saturate(.8);backdrop-filter:blur(16px)saturate(.8);opacity:0;pointer-events:none;cursor:default;background:#00000047;border:0;padding:0;transition:opacity .22s;position:fixed;inset:0}html.dark .header-fab-scrim{background:#00000094}.header-fab.is-open .header-fab-scrim{opacity:1;pointer-events:auto}.header-fab-trigger{z-index:2;position:relative}.header-fab.is-open .header-fab-trigger{background-color:#00000014;box-shadow:0 10px 24px #0000002e}html.dark .header-fab.is-open .header-fab-trigger{background-color:#ffffff29;box-shadow:0 10px 28px #00000073}.header-fab-panel{z-index:1;pointer-events:none;position:absolute;inset:0}.header-fab-item{opacity:0;pointer-events:none;transition:transform .35s cubic-bezier(.175,.885,.32,1.275),opacity .22s;position:absolute;top:0;left:0;transform:rotate(90deg)scale(.45)}.header-fab-item .icon-btn{background-color:#00000014;box-shadow:0 10px 24px #0000002e}html.dark .header-fab-item .icon-btn:not(.icon-btn-accent){background-color:#ffffff29;box-shadow:0 10px 28px #00000073}.header-fab .glass-menu{z-index:60}.header-fab.is-open .header-fab-item{opacity:1;pointer-events:auto;transform:rotate(0)scale(1)}.header-fab.is-open .header-fab-theme{transform:translate(0, var(--fab-reach));transition-delay:60ms}.header-fab.is-open .header-fab-locale{transform:translate(var(--fab-reach), 0);transition-delay:.12s}.icon-equals{flex-shrink:0;width:1.25rem;height:1.25rem;display:block;position:relative}.icon-equals-bar{background:currentColor;border-radius:1px;width:.875rem;height:2px;margin:-1px 0 0 -.4375rem;transition:transform .25s;position:absolute;top:50%;left:50%}.icon-equals-bar:first-child{transform:translateY(-4px)}.icon-equals-bar:last-child{transform:translateY(4px)}.header-fab.is-open .icon-equals-bar:first-child{transform:rotate(45deg)}.header-fab.is-open .icon-equals-bar:last-child{transform:rotate(-45deg)}@media (prefers-reduced-motion:reduce){.header-fab-item,.header-fab-scrim,.icon-equals-bar{transition:none}}.header-right{grid-area:right;justify-content:flex-end;align-items:center;gap:.4rem;min-width:0;display:flex}.header-seg{grid-area:seg;justify-content:center;justify-self:center;min-width:0;max-width:100%;display:flex}@media (min-width:780px){.header-bar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"left seg right";column-gap:.55rem;padding:.75rem 1.15rem}.header-seg{justify-content:center;justify-self:center}}@media (max-width:779px){header.is-project-page .header-seg{display:none}header.is-project-page .header-bar{grid-template-columns:1fr auto;grid-template-areas:"left right";row-gap:0;padding:.7rem .85rem}.icon-btn-label>svg{display:none}}.logo-chip{height:2.25rem;box-shadow:none;color:var(--ink);font-family:var(--font-serif);letter-spacing:-.015em;white-space:nowrap;background:0 0;border:0;outline:0;align-items:center;padding:0 .15rem;font-size:1.32rem;font-style:normal;font-weight:400;display:inline-flex;position:relative;overflow:hidden}.logo-chip-sizer{visibility:hidden;pointer-events:none}.logo-chip-sizer.is-wide{display:none}.logo-chip-sizer.is-narrow{display:grid}.logo-chip-sizer.is-narrow>span{grid-area:1/1}.logo-chip-window{position:absolute;inset:0;overflow:hidden}.logo-chip-track{flex-direction:column;display:flex}.logo-chip-track.is-wide{display:none}.logo-chip-track.is-narrow.is-on,.logo-chip:hover .logo-chip-track.is-narrow,.logo-chip:focus-visible .logo-chip-track.is-narrow{animation:4.05s cubic-bezier(.45,.05,.2,1) both logo-cycle-narrow}.logo-chip-line{align-items:center;height:2.25rem;display:flex}@keyframes logo-cycle{0%{transform:translate(0)}28%{transform:translateY(-2.25rem)}58%{transform:translateY(-2.25rem)}to{transform:translateY(-4.5rem)}}@keyframes logo-cycle-narrow{0%,8%{transform:translate(0)}24%,38%{transform:translateY(-2.25rem)}54%,68%{transform:translateY(-4.5rem)}84%,to{transform:translateY(-6.75rem)}}@media (min-width:1024px){.logo-chip-sizer.is-wide{display:inline}.logo-chip-sizer.is-narrow,.logo-chip-track.is-narrow{display:none}.logo-chip-track.is-wide{display:flex}.logo-chip-track.is-wide.is-on,.logo-chip:hover .logo-chip-track.is-wide,.logo-chip:focus-visible .logo-chip-track.is-wide{animation:2.15s cubic-bezier(.45,.05,.2,1) both logo-cycle}}@media (prefers-reduced-motion:reduce){.logo-chip-track.is-on,.logo-chip:hover .logo-chip-track,.logo-chip:focus-visible .logo-chip-track{animation:none}}html.dark .gallery-controls,html.dark .gallery-step,html.dark .gallery-toggle{background-color:#ffffff12;background-image:radial-gradient(120% 70% at 50% -28%,#ffffff61,#0000 56%),linear-gradient(#fff3 0%,#ffffff0d 24%,#ffffff08 58%,#ffffff14 100%);box-shadow:inset 0 1px #ffffff6b,inset 0 -1px #ffffff0f,0 12px 28px #00000047}html.dark .seg{-webkit-backdrop-filter:blur(22px)saturate(1.5);backdrop-filter:blur(22px)saturate(1.5);background-color:#ffffff14}.nav-item{height:100%;color:var(--ink);align-items:center;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.nav-item{color:color-mix(in srgb, var(--ink) 70%, transparent)}}.nav-item{white-space:nowrap;transition:color .12s}.nav-item:hover,.nav-item.is-active{color:var(--ink)}.nav-dot{background:var(--ink);opacity:0;pointer-events:none;border-radius:999px;width:.28rem;height:.28rem;position:absolute;bottom:.35rem;left:50%;transform:translate(-50%)}.nav-dot-square{border-radius:1px}.seg{scrollbar-width:none;width:max-content;max-width:100%;box-shadow:none;background-color:#00000014;border:0;border-radius:999px;align-items:center;padding:3px;display:flex;position:relative;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg-thumb{z-index:0;box-shadow:none;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(12px)saturate(1.4);backdrop-filter:blur(12px)saturate(1.4);background:#ffffffd1;border-radius:999px;transition:transform .28s cubic-bezier(.22,1,.36,1),width .28s cubic-bezier(.22,1,.36,1),opacity .18s;position:absolute;top:3px;bottom:3px;left:0}.seg-thumb.is-on{opacity:1}.seg-item{z-index:1;height:1.85rem;color:var(--ink);border-radius:999px;align-items:center;padding:0 .72rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.seg-item{color:color-mix(in srgb, var(--ink) 62%, transparent)}}.seg-item{letter-spacing:-.02em;white-space:nowrap;font-size:.8125rem;font-weight:500;transition:color .16s}.seg-item:first-of-type{padding-left:.62rem}.seg-item:last-of-type{padding-right:.62rem}@media (max-width:430px){.seg-item{padding:0 .55rem;font-size:.78rem}}.seg-item:hover,.seg-item.is-active{color:var(--ink)}html.dark .seg-thumb{box-shadow:none;background:#ffffff29}.icon-btn{cursor:pointer;width:2.25rem;min-width:2.25rem;height:2.25rem;font:inherit;box-shadow:none;color:var(--ink);background-color:#0000000f;border:0;border-radius:999px;outline:0;justify-content:center;align-items:center;padding:0;transition:background-color .12s,color .12s;display:inline-flex}.icon-btn:hover{color:var(--ink);background-color:#0000001a}html.dark .icon-btn:not(.icon-btn-accent){background-color:#ffffff14}html.dark .icon-btn:not(.icon-btn-accent):hover{background-color:#ffffff24}.icon-btn-label{letter-spacing:-.02em;text-transform:none;gap:.4rem;width:auto;min-width:0;padding-inline:.85rem;font-size:.8125rem;font-weight:500}.icon-btn-accent{color:#141414;background:#fff;box-shadow:0 8px 20px #0000001f}.icon-btn-accent:hover{color:#141414;background:#f3f3f3}html.dark .icon-btn-accent,html.dark .icon-btn-accent:hover{color:#141414;background:#fff}html.dark .icon-btn-accent:hover{background:#f3f3f3}.glass-menu{background:var(--paper-2);box-shadow:0 18px 40px #00000029}html.dark .glass-menu{background:#161616}.home-hero{height:100dvh;margin-top:calc(var(--header-h,5.5rem) * -1);pointer-events:none;flex-direction:column;display:flex}html:has(.home-hero){overscroll-behavior:none;height:100dvh;max-height:100dvh;overflow:hidden}html:has(.home-hero) body{overscroll-behavior:none;height:100dvh;max-height:100dvh;overflow:hidden}html:has(.home-hero) body{min-height:0}html:has(.home-hero) main{min-height:0;overflow:hidden}html:has(.home-hero) .site-footer{display:none}.home-switcher{pointer-events:none;flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.home-switcher-scroller{isolation:isolate;overflow-anchor:none;scroll-snap-type:none;scroll-behavior:auto;overscroll-behavior:none;touch-action:pan-x;scrollbar-width:none;min-height:0;padding-inline:var(--side-pad,14vw);padding-top:var(--card-pad-top,calc(var(--header-h,5.5rem) + 2.25rem));padding-bottom:var(--card-pad-bottom,6rem);pointer-events:none;flex:1;align-items:center;display:flex;overflow:auto hidden}.home-switcher-scroller::-webkit-scrollbar{display:none}.home-switcher-card{flex:0 0 var(--card-w,72vw);width:var(--card-w,72vw);margin-right:calc(var(--peek,18vw) * -1);pointer-events:auto;isolation:isolate;color:inherit;scroll-snap-align:center;transform:perspective(1180px) translateX(var(--shift,0px)) rotateY(var(--ry,0deg)) translateZ(var(--tz,0px)) scale(var(--scale,.86));transform-origin:50%;will-change:transform;background:0 0;border-radius:2rem;text-decoration:none;position:relative;overflow:hidden;box-shadow:0 22px 48px #0000002e}.home-switcher-card:after{content:"";z-index:4;border-radius:inherit;background:rgb(0 0 0/calc(1 - var(--opacity,1)));pointer-events:none;position:absolute;inset:0}.home-switcher-card:last-child{margin-right:0}.home-switcher-card.is-openable{cursor:pointer}@media (prefers-reduced-motion:reduce){.home-switcher-card{transform:scale(var(--scale,.86));transform-origin:50%}}.home-switcher-shot{z-index:1;width:100%;height:var(--card-h,58vw);backface-visibility:hidden;border-radius:2rem;flex-direction:column;justify-content:flex-end;padding:1.35rem 1.2rem;display:flex;position:relative;overflow:hidden}.home-switcher-shot.is-statement{color:#f5f5f5;background:#0a0a0a;justify-content:flex-end;align-items:stretch;padding:1.35rem 1.2rem}.home-switcher-shot.is-statement .home-switcher-quote{flex-direction:column;flex:auto;justify-content:flex-start;min-height:0;padding-top:1.15rem;display:flex}.home-switcher-shot.is-statement .home-switcher-view{padding-inline:1.1rem}.home-switcher-shot.is-profile{color:#f5f5f5;background:#0a0a0a;justify-content:stretch;align-items:stretch;padding:1.45rem 1.3rem 1.4rem}.home-switcher-shot.is-profile.is-product{background:#10151d}.home-switcher-shot.is-profile.is-design{background:#17130f}.home-switcher-shot.is-profile:after,.home-switcher-shot.is-statement:after{display:none}.gallery-profile{flex-direction:column;gap:.85rem;width:100%;height:100%;min-height:0;display:flex}.gallery-profile-head{flex-direction:column;gap:.35rem;display:flex}.gallery-profile-title{letter-spacing:-.045em;margin:0;font-size:clamp(1.35rem,3.1vw,1.95rem);font-weight:650;line-height:1.12}.gallery-profile-kicker{color:#f5f5f594;letter-spacing:-.02em;margin:0;font-size:.9rem}.gallery-profile-body{flex-direction:column;flex:1;gap:.7rem;min-height:0;display:flex}.gallery-profile-note{letter-spacing:-.02em;text-wrap:pretty;margin:0;font-size:clamp(.94rem,1.9vw,1.12rem);line-height:1.4}.gallery-profile-note.is-muted{color:#f5f5f5ad}.gallery-profile-points{flex-direction:column;flex:1;gap:.45rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.gallery-profile-point{letter-spacing:-.02em;background:#ffffff14;border-radius:.95rem;margin:0;padding:.7rem .82rem;font-size:clamp(.86rem,1.7vw,.98rem);line-height:1.35}.gallery-profile-tools{background:#ffffff14;border-radius:1.05rem;align-items:center;margin-top:auto;padding:.58rem .7rem;display:flex}.home-switcher-shot.is-profile,.home-switcher-shot.is-profile .teaching-logo-row.is-mini{--teaching-logo:2.35rem}.home-switcher-shot.is-profile .education-media{font-size:.58rem}.gallery-profile-write{align-self:flex-start;margin-top:auto}.gallery-bento{flex:1;grid-template-rows:minmax(0,1.45fr) minmax(0,1fr);grid-template-columns:1fr 1fr;gap:.55rem;min-height:0;display:grid}.gallery-bento.is-product{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.gallery-bento.is-product .gallery-bento-tile{justify-content:flex-end;padding:.85rem .9rem .92rem}.gallery-bento.is-product .gallery-bento-value{font-size:clamp(2.2rem,6.4vw,3.05rem)}.gallery-bento.is-product .gallery-bento-label,.gallery-bento.is-product .gallery-bento-heading{font-size:clamp(.78rem,1.7vw,.94rem);line-height:1.28}.gallery-bento.is-product .gallery-bento-note{margin-top:.28rem;font-size:.7rem;line-height:1.3}.gallery-bento.is-copy{grid-template-rows:none;grid-template-columns:1fr;gap:.55rem}.home-switcher-facts{flex-direction:column;gap:.38rem;margin:.95rem 0 0;padding:0 0 0 1.15rem;list-style:none;display:flex}.home-switcher-facts li{color:#f5f5f5c7;letter-spacing:-.02em;font-size:.86rem;font-style:normal;font-weight:400;line-height:1.35;position:relative}.home-switcher-facts li:before{content:"";background:currentColor;width:.36rem;height:.36rem;position:absolute;top:.42em;left:-1.05rem}.gallery-bento.is-overlay{flex-wrap:wrap;flex:none;grid-template-rows:none;grid-template-columns:none;justify-content:center;align-items:stretch;gap:.32rem;width:100%;margin-bottom:.2rem;display:flex}.gallery-bento.is-overlay.is-single,.gallery-bento.is-overlay .gallery-bento-tile:only-child{grid-template-columns:none}.gallery-bento.is-overlay .gallery-bento-tile{corner-shape:superellipse(1.6);color:#2ec27a;letter-spacing:-.01em;text-align:center;background:#000000db;border-radius:1.35rem;flex:none;justify-content:center;align-items:center;width:max-content;max-width:none;min-height:auto;padding:.28rem .72rem .3rem;font-size:.68rem;font-weight:500;line-height:1.2;overflow:hidden;box-shadow:0 6px 16px #00000047}.gallery-bento.is-overlay.is-single .gallery-bento-tile,.gallery-bento.is-overlay .gallery-bento-tile:only-child{max-width:100%}.home-switcher-copy.is-center .gallery-bento.is-overlay{justify-items:stretch}.gallery-bento-tile{min-height:0;box-shadow:none;background:#ffffff14;border-radius:1.35rem;flex-direction:column;justify-content:flex-end;padding:.95rem 1rem 1.02rem;display:flex}.gallery-bento-tile.is-hero{grid-column:1/-1;justify-content:flex-end;padding:1.2rem 1.15rem 1.15rem}.gallery-bento-tile.is-copy{letter-spacing:-.03em;text-wrap:pretty;justify-content:center;padding:1.15rem 1.1rem;font-size:clamp(.98rem,2vw,1.12rem);line-height:1.38}.gallery-bento-eyebrow{color:#f5f5f580;letter-spacing:-.02em;margin:0;font-size:.82rem;font-weight:500}.gallery-bento-value{letter-spacing:-.08em;margin:.08rem 0 0;font-size:clamp(3.4rem,9vw,4.6rem);font-weight:650;line-height:.86}.gallery-bento-label,.gallery-bento-heading,.gallery-bento-note{margin:0}.gallery-bento-label{color:#f5f5f59e;letter-spacing:-.03em;margin-top:.45rem;font-size:.98rem;line-height:1.3}.gallery-bento-heading{letter-spacing:-.04em;font-size:clamp(.98rem,2vw,1.12rem);font-weight:600;line-height:1.2}.gallery-bento-note{color:#f5f5f580;letter-spacing:-.02em;margin-top:.28rem;font-size:.78rem;line-height:1.3}.home-switcher-quote{border:0;width:100%;max-width:none;margin:0;padding:0}.home-switcher-statement{font-family:var(--font-serif);letter-spacing:-.02em;text-align:left;text-wrap:pretty;margin:0;font-size:clamp(1.22rem,2.6vw,1.85rem);font-style:italic;font-weight:400;line-height:1.28}.home-switcher-statement-list{flex-direction:column;gap:.5rem;display:flex}.home-switcher-statement-list .home-switcher-statement{font-size:clamp(1.18rem,2.5vw,1.72rem)}.home-switcher-learn{z-index:2;color:inherit;pointer-events:auto;text-underline-offset:.16em;text-decoration:underline;text-decoration-thickness:1px;position:relative}.home-switcher-learn:hover{opacity:.72}.home-switcher-statement-sub{color:#f5f5f594;letter-spacing:-.02em;margin:.9rem 0 0;font-family:inherit;font-size:.95rem;font-style:normal;font-weight:400;line-height:1.4}.home-switcher-copy .home-switcher-statement-sub{text-align:center;max-width:16.5rem;margin:.55rem 0 0}.home-switcher-copy.is-about-cta{text-align:left;background:#ffffff14;border-radius:1.15rem;flex-direction:row;justify-content:space-between;align-items:center;gap:.7rem;width:100%;margin-top:.85rem;padding:.62rem .62rem .62rem .85rem}.home-switcher-copy.is-about-cta .home-switcher-statement-sub{text-align:left;flex:auto;max-width:none;margin:0;font-size:.8rem;line-height:1.3}.home-switcher-copy.is-about-cta .home-switcher-view{flex:none;margin-top:0}.home-switcher-media{object-fit:cover;object-position:center 42%;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.project-page-bento-tile.is-impact{color:#062015;background:#2ec27a;font-weight:550}.gallery-bento.is-overlay .gallery-bento-tile.is-impact{color:#2ec27a;background:#000000db;font-weight:500}.gallery-bento.is-overlay .gallery-bento-metric{letter-spacing:-.01em;text-align:center;white-space:normal;font-size:.82rem;font-weight:550;line-height:1.2}.gallery-bento.is-overlay .gallery-bento-metric-note{letter-spacing:-.02em;opacity:.78;text-align:center;white-space:normal;margin-top:.08rem;font-size:.7rem;font-weight:500;line-height:1.25}.gallery-bento-metric{letter-spacing:-.04em;white-space:nowrap;margin:0;font-size:.9rem;font-weight:700;line-height:1.15}.gallery-bento-metric-note{letter-spacing:-.02em;opacity:.78;margin:.16rem 0 0;font-size:.64rem;font-weight:500;line-height:1.25}.home-switcher-shot.has-devices{background-image:radial-gradient(88% 68% at 40% 30%,#388cff80,#164eb438 42%,#0000 70%)}.home-switcher-shot.has-devices.is-security{background-image:none}.home-switcher-shot.is-security:after{background:linear-gradient(#0000,#061c186b);inset:62% 0 0}.campus-waves{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.campus-waves:before{content:"";background-image:radial-gradient(circle,#96c8ff61 1.05px,#0000 1.2px);background-size:15px 15px;animation:11s ease-in-out infinite campus-dot-field;position:absolute;inset:-24%;-webkit-mask-image:radial-gradient(circle at 40% 36%,#00000014 6%,#0000008c 24%,#00000038 48%,#0000 70%);mask-image:radial-gradient(circle at 40% 36%,#00000014 6%,#0000008c 24%,#00000038 48%,#0000 70%)}.campus-waves span{border:1.5px dotted #82beff52;border-radius:50%;width:5rem;height:5rem;margin:-2.5rem 0 0 -2.5rem;animation:7.8s ease-out infinite campus-ripple;position:absolute;top:34%;left:40%}.campus-waves span:nth-child(2){animation-delay:-2.6s}.campus-waves span:nth-child(3){animation-delay:-5.2s}.line-waves{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.line-waves canvas{width:100%;height:100%;display:block}.home-switcher-devices{z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;height:64%;position:absolute;top:4%;left:-10%;right:-8%;overflow:visible}.home-switcher-mac-float,.home-switcher-phone-float,.home-switcher-studio-float,.home-switcher-laptop-float{will-change:transform;position:absolute}.home-switcher-mac-float{width:84%;height:100%;animation:6.6s ease-in-out infinite campus-float-mac;top:2%;left:2%}.home-switcher-phone-float{z-index:1;width:38%;height:88%;animation:7.4s ease-in-out -2.8s infinite campus-float-phone;top:18%;right:5%}.home-switcher-mac{object-fit:contain;object-position:left center;filter:drop-shadow(0 22px 36px #00000080);width:100%;height:100%;display:block;transform:rotate(-10deg)scale(1.06)}.home-switcher-phone{object-fit:contain;object-position:right center;filter:drop-shadow(0 20px 28px #00000085);width:100%;height:100%;display:block;transform:rotate(8deg)}.home-switcher-devices.has-studio{height:68%;top:2%;left:-2%;right:0}.home-switcher-studio-float{width:70%;height:100%;top:0;left:0}.home-switcher-laptop-float{z-index:1;width:50%;height:68%;top:auto;bottom:0;right:0}.home-switcher-studio{object-fit:contain;object-position:center center;filter:drop-shadow(0 22px 36px #00000080);width:100%;height:100%;display:block}.home-switcher-laptop{object-fit:contain;object-position:right bottom;filter:drop-shadow(0 20px 28px #00000085);width:100%;height:100%;display:block}.home-switcher-shot.is-security .home-switcher-devices.has-studio{height:58%;top:8%;left:0;right:0}.home-switcher-shot.is-security .home-switcher-studio-float{width:88%;height:100%;animation:9.6s ease-in-out infinite security-idle;top:0;left:2%}.home-switcher-shot.is-security .home-switcher-laptop-float{width:60%;height:78%;animation:8.4s ease-in-out -2.8s infinite security-idle}.home-switcher-shot.is-security .home-switcher-studio{object-position:center center;transform:none}.home-switcher-shot.is-security .home-switcher-laptop{transform-origin:100% 100%;transform:translateY(4%)scale(1.05)}@keyframes security-idle{0%,to{transform:translate(0)}50%{transform:translateY(-5px)}}.home-switcher-shot.is-other{justify-content:flex-end}.home-switcher-shot.is-other:after{background:linear-gradient(#0000,#0c0206d1)}.logo-burst{z-index:1;pointer-events:none;flex:auto;width:calc(100% + 2.4rem);min-height:0;margin:-1.35rem -1.2rem 0;position:relative;overflow:visible}.logo-burst-slot{opacity:0;width:4.5rem;height:4.5rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.18)}.logo-burst.is-bursting .logo-burst-slot{animation:1.05s cubic-bezier(.16,1,.3,1) both logo-burst-out;animation-delay:var(--delay,0s)}.logo-burst.is-held .logo-burst-slot{opacity:1;transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(1)}.logo-burst-chip{place-items:center;width:100%;height:100%;display:grid;position:relative}.home-switcher-card.is-focused .logo-burst.is-bursting .logo-burst-chip,.home-switcher-card.is-focused .logo-burst.is-held .logo-burst-chip{animation:logo-burst-idle var(--idle-dur,3.1s) ease-in-out var(--delay,0s) infinite}.logo-burst-blob{z-index:0;filter:blur(14px);pointer-events:none;background:radial-gradient(circle,#ff2d78c7 0%,#be145a6b 40%,#0000 70%);border-radius:50%;position:absolute;inset:-28%}.home-switcher-card.is-focused .logo-burst.is-bursting .logo-burst-blob,.home-switcher-card.is-focused .logo-burst.is-held .logo-burst-blob{animation:logo-burst-blob-idle var(--idle-dur,3.1s) ease-in-out var(--delay,0s) infinite}.logo-burst-mark{z-index:1;filter:drop-shadow(0 14px 20px #0000006b);border-radius:1.25rem;width:4.5rem;height:4.5rem;display:block;position:relative;overflow:hidden}.logo-burst-mark img{object-fit:cover;width:100%;height:100%;display:block}@keyframes logo-burst-out{to{opacity:1;transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(1)}}@keyframes logo-burst-idle{0%,to{transform:translate3d(0, 0, 0) rotate(calc(var(--rot,3deg) * -.25)) scale(1)}50%{transform:translate3d(var(--dx,4px), var(--dy,-11px), 0) rotate(var(--rot,3deg)) scale(var(--pop,1.05))}}@keyframes logo-burst-blob-idle{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.logo-burst-slot,.logo-burst.is-bursting .logo-burst-slot,.logo-burst.is-held .logo-burst-slot,.home-switcher-card.is-focused .logo-burst-chip,.home-switcher-card.is-focused .logo-burst-blob{opacity:1;transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(1);animation:none}}@keyframes campus-dot-field{0%,to{background-position:0 0;transform:scale(1)}50%{background-position:9px 14px;transform:scale(1.07)}}@keyframes campus-ripple{0%{opacity:.5;transform:scale(.42)}72%{opacity:.12}to{opacity:0;transform:scale(3.5)}}@keyframes campus-float-mac{0%,to{transform:translate(0)rotate(-.5deg)}40%{transform:translate(5px,-11px)rotate(.45deg)}72%{transform:translate(-4px,-4px)rotate(-.2deg)}}@keyframes campus-float-phone{0%,to{transform:translate(0)rotate(.35deg)}50%{transform:translate(-7px,-13px)rotate(-.45deg)}}.home-switcher-shot:after{z-index:2;content:"";pointer-events:none;background:linear-gradient(#0000,#000000b8);position:absolute;inset:48% 0 0}@supports (corner-shape:squircle){.home-switcher-card,.home-switcher-shot,.home-switcher-card:after{corner-shape:squircle;border-radius:2.2rem}.gallery-bento-tile{corner-shape:squircle;border-radius:1.55rem}}.home-switcher-top{z-index:5;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:.45rem;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.project-page-role-tag{background:var(--ink);color:var(--paper);letter-spacing:-.02em;border-radius:999px;margin:-.85rem 0 1.15rem;padding:.32rem .72rem;font-size:.78rem;font-weight:550;display:inline-flex}.home-switcher-kicker,.home-switcher-year{color:#fff;letter-spacing:-.01em;text-align:center;background:#000000db;border-radius:.7rem;margin:0;padding:.22rem .58rem;font-size:.68rem;font-weight:500;line-height:1.25;box-shadow:0 6px 16px #00000047}.home-switcher-kickers{flex-flow:wrap;align-items:flex-start;gap:.28rem;min-width:0;display:flex}.home-switcher-kicker{min-width:0}.home-switcher-year{z-index:5;font-variant-numeric:tabular-nums;flex-shrink:0;position:absolute;top:1rem;left:1rem}.home-switcher-top .home-switcher-year{position:static}.home-switcher-chips{flex-wrap:wrap;justify-content:center;gap:.28rem;margin-bottom:.12rem;display:flex}.home-switcher-chips.is-start{justify-content:flex-start;margin:.15rem 0 0}.home-switcher-chip{color:#ffffff94;letter-spacing:-.01em;text-align:center;background:0 0;border:1px solid #ffffff52;border-radius:.62rem;padding:.16rem .52rem;font-size:.62rem;font-weight:500;line-height:1.25}.home-switcher-shot.has-glow .home-switcher-chip{color:#fff;border-color:#fff}.home-switcher-copy.is-center .home-switcher-chips{margin-bottom:.42rem}.home-switcher-shot.is-center:after{display:none}.home-switcher-copy.is-center{justify-content:center;padding:1.35rem 1.2rem;position:absolute;inset:0}.home-switcher-copy.is-center .home-switcher-view{margin-top:0;position:absolute;bottom:1.35rem}.hobby-page{max-width:46rem}.hobby-board{grid-template-columns:1fr;gap:.75rem;margin-top:2rem;padding:0;list-style:none;display:grid}.hobby-card{--hobby-pad-x:1rem;--hobby-pad-y-top:1.05rem;--hobby-pad-y-bottom:1.15rem;padding:var(--hobby-pad-y-top) var(--hobby-pad-x) var(--hobby-pad-y-bottom);background:var(--paper-2);color:inherit;border-radius:1.55rem;text-decoration:none;display:block;position:relative;overflow:hidden;box-shadow:0 10px 28px #00000014}.hobby-card.is-link{transition:transform .22s}.hobby-card.is-link:hover{transform:translateY(-2px)}.hobby-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.hobby-card-badges{flex-shrink:0;align-items:center;gap:.42rem;display:flex}.hobby-card-badge{background:currentColor;flex-shrink:0;width:1.15rem;height:1.15rem;display:block}.hobby-card-badge.is-cursor{-webkit-mask:url(/icons/cursor.svg) 50%/contain no-repeat;mask:url(/icons/cursor.svg) 50%/contain no-repeat}.hobby-card-badge.is-claude{background:#d97757;-webkit-mask:url(/icons/claude.svg) 50%/contain no-repeat;mask:url(/icons/claude.svg) 50%/contain no-repeat}.hobby-card.is-cover .hobby-card-badge.is-cursor{background:#fff}.hobby-card.is-stalker{color:#efe6d4;background:#1a1712;box-shadow:0 12px 32px #00000059}.hobby-card.is-stalker:before{content:"";z-index:0;opacity:.22;pointer-events:none;background:#c4a35a;width:88%;height:88%;position:absolute;bottom:-28%;right:-22%;-webkit-mask:url(/icons/radiation.svg) 50%/contain no-repeat;mask:url(/icons/radiation.svg) 50%/contain no-repeat}.hobby-card.is-stalker .hobby-card-top,.hobby-card.is-stalker .hobby-card-title,.hobby-card.is-stalker .hobby-card-tags,.hobby-card.is-stalker .hobby-card-body{z-index:1;position:relative}.hobby-card.is-stalker .hobby-card-title{letter-spacing:-.03em;font-weight:500}.hobby-card.is-stalker .hobby-card-body{color:#a8987e;opacity:1}.hobby-card.is-stalker .hobby-card-tag{color:#c4a35a;border-color:#c4a35a6b}.hobby-card.is-vaultguard{color:#ffb000;background:#0b0600;box-shadow:0 0 28px #ffb00014}.hobby-card.is-vaultguard .hobby-card-title{letter-spacing:-.03em;font-weight:500}.hobby-card.is-vaultguard .hobby-card-body{color:#ffb000b8;opacity:1}.hobby-card.is-vaultguard .hobby-card-tag{color:#ffb000e0;border-color:#ffb00061}html.dark .hobby-card{background:#141414;box-shadow:0 12px 32px #00000073}html.dark .hobby-card.is-stalker{background:#1a1712}html.dark .hobby-card.is-vaultguard{background:#0b0600}.hobby-card.is-cover{color:#f5f5f5;flex-direction:column;display:flex}.hobby-card-tags{flex-wrap:wrap;align-items:center;gap:.28rem;min-width:0;display:flex}.hobby-card-tag{color:#ffffffc7;letter-spacing:-.01em;border:1px solid #ffffff52;border-radius:999px;padding:.16rem .5rem;font-family:inherit;font-size:.68rem;font-weight:500;line-height:1.25}.hobby-card:not(.is-cover) .hobby-card-tag{border-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.hobby-card:not(.is-cover) .hobby-card-tag{border-color:color-mix(in srgb, var(--ink) 16%, transparent)}}.hobby-card:not(.is-cover) .hobby-card-tag{color:var(--muted)}.hobby-card-title{letter-spacing:-.04em;margin:.45rem 0 0;font-size:1.12rem;font-weight:650;line-height:1.15}.hobby-card-body{color:inherit;opacity:.78;margin:.45rem 0 0;font-size:.86rem;line-height:1.4}.hobby-card:not(.is-cover) .hobby-card-body{color:var(--muted);opacity:1}.hobby-card-media{border-radius:1.05rem;height:7.2rem;margin-top:.85rem}@supports (corner-shape:squircle){.hobby-card{corner-shape:squircle;border-radius:1.75rem}.hobby-card-media{corner-shape:squircle;border-radius:1.2rem}}@media (min-width:640px){.hobby-page{max-width:52rem}.hobby-board{gap:1rem}.hobby-card{--hobby-pad-x:1.15rem;--hobby-pad-y-top:1.2rem;--hobby-pad-y-bottom:1.3rem;padding:var(--hobby-pad-y-top) var(--hobby-pad-x) var(--hobby-pad-y-bottom);border-radius:1.75rem}.hobby-card-title{font-size:1.28rem}.hobby-card-media{height:8.5rem}}.teaching-list{gap:.85rem;margin-top:2.25rem;display:grid}.about-bento-list{margin-top:0}.experience-page{min-height:calc(100dvh - var(--header-h,5.5rem));flex-direction:column;display:flex}.experience-board{flex-direction:column;flex:1;min-height:0;display:flex}.experience-toolbar{align-items:center;gap:.85rem;min-width:0;display:flex}.experience-heading-row{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.experience-kicker{max-width:38rem;color:var(--muted);letter-spacing:-.02em;margin:0 0 .65rem;font-size:.95rem;font-weight:500;line-height:1.35}.experience-title{letter-spacing:-.03em;flex-shrink:0;margin:0;font-size:2.25rem;line-height:1}@media (min-width:640px){.experience-title{font-size:3rem}}.experience-mode{background:#ffffff1a;border-radius:999px;flex-shrink:0;align-items:center;margin-left:auto;padding:3px;display:flex}.experience-board:not(.is-list) .experience-mode{margin-left:0}.experience-mode-btn{width:1.85rem;height:1.85rem;color:inherit;opacity:.55;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.experience-mode-btn.is-on{color:#141414;opacity:1;background:#fff}.experience-scale-col{flex:1;min-width:0;margin-top:0;position:relative}.experience-scale-col:after{content:"";z-index:2;pointer-events:none;background:currentColor;width:1.5px;position:absolute;top:1.05rem;bottom:1.05rem;left:50%;transform:translate(-50%)}.experience-scale{scrollbar-width:none;touch-action:pan-x;position:relative;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 2.75rem calc(100% - 2.75rem),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 2.75rem calc(100% - 2.75rem),#0000 100%)}.experience-needle{pointer-events:none;flex-direction:column;align-items:center;display:flex}.experience-needle-label{color:#fff;letter-spacing:-.03em;white-space:nowrap;margin:0;font-size:.78rem;font-weight:650;line-height:1.1}.experience-needle-arrow{border-top:.26rem solid #fff;border-left:.2rem solid #0000;border-right:.2rem solid #0000;width:0;height:0;margin-top:.08rem;display:block}.experience-scale::-webkit-scrollbar{display:none}.experience-scale-inner{width:max-content;display:flex}.experience-scale-track{cursor:pointer;width:68rem;padding:.2rem 0 1.2rem;position:relative}.experience-gantt-grid{pointer-events:none;position:absolute;inset:.2rem 0 1.2rem}.experience-gantt-grid span{background:#ffffff2e;width:1px;position:absolute;top:0;bottom:0;transform:translate(-50%)}.experience-gantt{z-index:1;gap:.32rem;display:grid;position:relative}.experience-gantt-lane{height:.82rem;position:relative}.experience-gantt-bar{background:var(--bar-bg,#ffffff2e);height:100%;color:var(--bar-fg,#ffffffc7);box-shadow:inset 0 0 0 1px var(--bar-stroke,transparent);font:inherit;letter-spacing:-.02em;text-align:left;white-space:nowrap;opacity:.62;cursor:pointer;border:0;border-radius:999px;align-items:center;padding:0 .45rem;font-size:.62rem;font-weight:650;line-height:1;display:flex;position:absolute;top:0;overflow:hidden}.experience-gantt-bar:hover,.experience-gantt-bar.is-on,.experience-gantt-bar.is-focused{opacity:1}.experience-gantt-bar.is-focused{box-shadow:inset 0 0 0 1px var(--bar-stroke,transparent), 0 0 0 1.5px #ffffffb3}.experience-axis{border-bottom:1.5px solid #fff;height:0;margin-top:.48rem}.experience-years{height:1.15rem;margin:0;padding:0;list-style:none;position:absolute;bottom:0;left:0;right:0}.experience-years li{color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.02em;opacity:.5;cursor:pointer;font-size:.78rem;font-weight:520;line-height:1;position:absolute;top:.28rem;transform:translate(-50%)}.experience-years li.is-current{opacity:1;font-weight:650}.experience-years li:before{content:"";background:#fff;width:1.5px;height:.42rem;position:absolute;top:-.42rem;left:50%;transform:translate(-50%)}.experience-stage{flex:1;min-height:0;margin-top:.7rem;overflow:auto}.experience-stage .teaching-list{margin-top:0}.experience-board:not(.is-list) .experience-stage .teaching-list{gap:.55rem}.teaching-card.is-collapsed{cursor:pointer;gap:.55rem;padding:.55rem .75rem;position:relative}.teaching-card.is-collapsed .teaching-bento{--teaching-logo:2.35rem;--teaching-tile-pad:.38rem;gap:0}.teaching-card.is-collapsed .teaching-bento>:not(.teaching-bento-head){display:none}.teaching-card.is-collapsed .teaching-card-period{padding-top:.2rem;font-size:.78rem}.teaching-card.is-collapsed .teaching-card-title{font-size:1.02rem}.teaching-card.is-collapsed .teaching-card-role{font-size:.78rem}.experience-card-expand{z-index:2;border-radius:inherit;cursor:pointer;background:0 0;border:0;position:absolute;inset:0}@media (min-width:860px){.teaching-card.is-collapsed{gap:.7rem;padding:.55rem .8rem}}.experience-bucket{gap:.42rem;display:grid}.experience-bucket-title{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:.15rem 0 0;padding:0 .2rem;font-size:.72rem;font-weight:650}html:not(.dark) .experience-mode{background:#00000014}html:not(.dark) .experience-mode-btn.is-on{color:#141414;background:#fff}html:not(.dark) .experience-needle-label,html:not(.dark) .experience-years li{color:var(--ink)}html:not(.dark) .experience-needle-arrow{border-top-color:var(--ink)}html:not(.dark) .experience-axis,html:not(.dark) .experience-years li:before{border-bottom-color:var(--ink);background:var(--ink)}html:not(.dark) .experience-gantt-grid span{background:#14141424}@media (max-width:760px){.experience-heading-row{flex-wrap:wrap}.experience-scale-track{width:52rem}.experience-kicker{white-space:normal}}.teaching-card{-webkit-backdrop-filter:blur(22px)saturate(1.2);backdrop-filter:blur(22px)saturate(1.2);background:#ffffffa3;border-radius:1.55rem;gap:.85rem;padding:1.05rem 1.05rem 1.1rem;scroll-margin-top:5.2rem;display:grid;box-shadow:0 12px 32px #0000000f,inset 0 1px #ffffffb3}.teaching-card-period{color:var(--muted);align-self:start;margin:0;padding-top:.35rem;font-size:.86rem}.teaching-bento{--teaching-logo:3.35rem;--teaching-tile-pad:.7rem;--teaching-tile-h:calc(var(--teaching-logo) + var(--teaching-tile-pad) * 2);gap:.5rem;min-width:0;display:grid}.teaching-bento-head{min-height:var(--teaching-tile-h);height:auto;padding:var(--teaching-tile-pad) .75rem var(--teaching-tile-pad) .95rem;background:#ffffff73;border-radius:1.15rem;justify-content:space-between;align-items:center;gap:.9rem;display:flex}.teaching-card-title{letter-spacing:-.04em;margin:0;font-size:1.28rem;font-weight:650;line-height:1.15}.experience-company-link{color:inherit;align-items:center;gap:.3rem;text-decoration:none;display:inline-flex}.experience-company-link span{text-underline-offset:.16em;text-decoration:underline;text-decoration-thickness:from-font}@supports (color:color-mix(in lab, red, red)){.experience-company-link span{-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}}.experience-company-link:hover span{text-decoration-color:currentColor}.experience-company-arrow{opacity:.42;flex-shrink:0;width:.85rem;height:.85rem}.experience-company-link:hover .experience-company-arrow{opacity:1}.teaching-card-role{color:var(--muted);margin:.18rem 0 0;font-size:.86rem}.teaching-card-sep{color:var(--muted);margin:0 .4rem}@supports (color:color-mix(in lab, red, red)){.teaching-card-sep{color:color-mix(in srgb, var(--muted) 55%, transparent)}}.teaching-logo-wrap{width:var(--teaching-logo);height:var(--teaching-logo);filter:drop-shadow(0 1px 2px #00000061)drop-shadow(0 5px 10px #00000047);flex-shrink:0;display:block;position:relative}.teaching-logo{border-radius:26.14%;width:100%;height:100%;display:block;position:relative;overflow:hidden}.teaching-logo img{object-fit:cover;width:100%;height:100%;box-shadow:none;border-radius:0;display:block}.teaching-logo-row{isolation:isolate;flex-shrink:0;align-items:center;display:flex}.teaching-logo-row .teaching-logo-wrap+.teaching-logo-wrap{margin-left:-.55rem}.teaching-logo-row .teaching-logo-wrap:first-child{z-index:1}.teaching-logo-row .teaching-logo-wrap:nth-child(2){z-index:2}.teaching-logo-row .teaching-logo-wrap:nth-child(3){z-index:3}.teaching-logo-row .teaching-logo-wrap:nth-child(4){z-index:4}.teaching-logo-row .teaching-logo-wrap:nth-child(5){z-index:5}.teaching-logo-row .teaching-logo-wrap:nth-child(6){z-index:6}.teaching-logo-row .teaching-logo-wrap:nth-child(7){z-index:7}.teaching-logo-row .teaching-logo-wrap:nth-child(8){z-index:8}.teaching-logo-row .teaching-logo-wrap:nth-child(9){z-index:9}.teaching-logo-row.is-mini{--teaching-logo:2.15rem}.teaching-logo-row.is-mini .teaching-logo-wrap+.teaching-logo-wrap{margin-left:-.42rem}.teaching-logo-row.is-mini .education-media{letter-spacing:-.06em;font-size:.62rem}.about-tools{align-items:center;min-height:0;display:flex}.about-write-btn{letter-spacing:-.02em;cursor:pointer;border:0;border-radius:999px;justify-self:start;padding:.7rem 1.15rem;font-size:.9rem;font-weight:650}.teaching-bento-stats{grid-template-columns:1fr;align-items:stretch;gap:.5rem;min-height:0;display:grid}@media (min-width:640px){.teaching-bento-stats.is-compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr))}}@media (min-width:1080px){.teaching-bento-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr))}}.teaching-stat{height:var(--teaching-tile-h);min-height:0;padding:var(--teaching-tile-pad) .85rem;background:#ffffff73;border-radius:1.05rem;flex-direction:column;justify-content:center;display:flex}.teaching-stat-value,.teaching-stat-label{margin:0}.teaching-stat-value{letter-spacing:-.03em;font-size:1.18rem;font-weight:650;line-height:1.1}.teaching-stat-label{color:var(--muted);margin-top:.18rem;font-size:.86rem}.teaching-note{padding:var(--teaching-tile-pad) .85rem;background:#ffffff73;border-radius:1.05rem;margin:0;font-size:.9rem;line-height:1.45}.teaching-star{padding:var(--teaching-tile-pad) .85rem var(--teaching-tile-pad) 1.2rem;background:#ffffff73;border-radius:1.05rem;margin:0;font-size:.9rem;line-height:1.45}.teaching-star li+li{margin-top:.55rem}.teaching-star-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.12rem;font-size:.72rem;font-weight:650;display:block}.teaching-note-body{margin:.18rem 0 0}.education-tile{align-items:center;gap:.75rem;display:flex;position:relative;overflow:visible}.education-tile-copy{flex:1;min-width:0}.education-tile .teaching-stat-value{font-size:1rem}.education-media{color:#fff;letter-spacing:-.04em;background:#1e3a8a;place-items:center;font-size:1.05rem;font-weight:750;display:grid}.teaching-card-stack{flex-direction:column;gap:.75rem;display:flex}.teaching-card-stack .teaching-card-title{padding:.15rem .2rem 0}.teaching-list-split{margin-top:.85rem}@media (min-width:640px){.teaching-list-split{grid-template-columns:1fr 1fr;margin-top:1rem}}html.dark .teaching-card{background:#161616b8;box-shadow:0 16px 40px #00000047,inset 0 1px #ffffff14}html:not(.dark) .teaching-bento-head,html:not(.dark) .teaching-stat,html:not(.dark) .teaching-note,html:not(.dark) .teaching-star{background:#ffffffb8;border:1px solid #14141414}html.dark .teaching-bento-head,html.dark .teaching-stat,html.dark .teaching-note,html.dark .teaching-star{background:#ffffff0f}@supports (corner-shape:squircle){.teaching-card{corner-shape:squircle;border-radius:1.75rem}.teaching-bento-head,.teaching-stat,.teaching-note{corner-shape:squircle;border-radius:1.25rem}}@media (min-width:640px){.teaching-list{gap:1rem}.teaching-card-title{font-size:1.42rem}.teaching-bento{--teaching-logo:3.55rem}}@media (min-width:860px){.teaching-card{grid-template-columns:minmax(0,10.5rem) 1fr;gap:1.15rem;padding:1.1rem 1.1rem 1.15rem}}.home-switcher-copy{z-index:3;text-align:center;color:#fff;flex-direction:column;align-items:center;gap:.28rem;display:flex;position:relative}.home-switcher-view{color:#141414;height:2.05rem;font:inherit;letter-spacing:-.02em;pointer-events:auto;cursor:pointer;background:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.38rem;margin-top:.7rem;padding:0 .95rem 0 .72rem;font-size:.9rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex;box-shadow:0 8px 20px #0000002e}.home-switcher-view:hover{background:#f4f4f4}.teaching-cta{width:fit-content;margin-top:.15rem}.home-switcher-view-icon{color:#007aff;width:1.25rem;height:1.25rem}.home-switcher-shot.has-glow:before{content:"";z-index:0;filter:blur(32px);opacity:.2;pointer-events:none;background:conic-gradient(from 180deg,#ffd24a,#ff9a1a,#ff5c00,#ffb020,#ffe38a,#ffd24a);border-radius:50%;transition:opacity .32s;animation:7.5s linear infinite hobby-title-glow;position:absolute;inset:-28%}.home-switcher-card.is-focused .home-switcher-shot.has-glow:before{opacity:.84}.home-switcher-shot.has-glow .home-switcher-title{text-shadow:0 1px 18px #00000047}.home-switcher-shot.has-glow.is-tests:before{background:conic-gradient(from 180deg,#e8c37a,#c4843a,#8f5a22,#f0d7a0,#d4a056,#e8c37a)}@keyframes hobby-title-glow{0%{transform:rotate(0)scale(1.12)}50%{transform:rotate(180deg)scale(1.22)}to{transform:rotate(360deg)scale(1.12)}}@media (prefers-reduced-motion:reduce){.home-switcher-shot.has-glow:before{animation:none}}.home-switcher-title{letter-spacing:-.04em;margin:0;font-size:clamp(1.35rem,2.8vw,2.15rem);font-weight:650;line-height:1.05}.home-switcher-label{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.02em;color:#ffffffb8;max-width:100%;margin:0;font-size:.78rem;font-weight:500;overflow:hidden}.gallery-bar{z-index:6;pointer-events:none;inset-inline:0;justify-content:center;align-items:center;gap:.55rem;padding:0;display:flex;position:absolute;bottom:1.15rem}.gallery-bar>*{pointer-events:auto}.gallery-step,.gallery-toggle{width:32px;height:32px;color:var(--ink);background-color:#ffffff24;background-image:radial-gradient(120% 70% at 50% -28%,#ffffff80,#0000 56%),linear-gradient(#ffffff52 0%,#ffffff12 22%,#ffffff0a 55%,#ffffff1a 100%);border:0;border-radius:100px;outline:0;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff8c,inset 0 -1px #ffffff14}@supports (color:color-mix(in lab, red, red)){.gallery-step,.gallery-toggle{color:color-mix(in srgb, var(--ink) 88%, transparent)}}.gallery-step,.gallery-toggle{cursor:pointer;-webkit-backdrop-filter:blur(22px)saturate(1.8);backdrop-filter:blur(22px)saturate(1.8);font-size:13.6px;line-height:1}.gallery-toggle{width:30px;height:30px;font-size:10.4px}.gallery-angle{width:16px;height:16px;display:block}.gallery-step:hover,.gallery-toggle:hover{background-color:#ffffff47}.gallery-controls{-webkit-backdrop-filter:blur(22px)saturate(1.8);backdrop-filter:blur(22px)saturate(1.8);background-color:#ffffff24;background-image:radial-gradient(120% 70% at 50% -28%,#ffffff80,#0000 56%),linear-gradient(#ffffff52 0%,#ffffff12 22%,#ffffff0a 55%,#ffffff1a 100%);border:0;border-radius:999px;outline:0;align-items:center;gap:7px;height:41px;padding:5px 6px 5px 11px;display:flex;box-shadow:inset 0 1px #ffffff8c,inset 0 -1px #ffffff14}.gallery-dots{align-items:center;gap:6px;display:flex}.gallery-dot{background:var(--ink);border:0;border-radius:999px;width:.42rem;height:.42rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.gallery-dot{background:color-mix(in srgb, var(--ink) 28%, transparent)}}.gallery-dot{cursor:pointer;transition:width .35s cubic-bezier(.22,1,.36,1)}.gallery-dot.is-active{width:1.7rem}.gallery-dot-fill{background:var(--ink);transform-origin:0;animation:4.5s linear forwards gallery-dot-fill;position:absolute;inset:0;transform:scaleX(0)}.gallery-bar.is-paused .gallery-dot-fill{animation-play-state:paused}@keyframes gallery-dot-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.gallery-dot-fill{animation:none;transform:scaleX(1)}}.project-sheet-root{z-index:80;pointer-events:none;position:fixed;inset:0}.project-sheet-root.is-open{pointer-events:auto}.project-sheet-scrim{-webkit-backdrop-filter:blur(16px)saturate(.8);backdrop-filter:blur(16px)saturate(.8);opacity:0;cursor:default;background:#00000047;border:0;padding:0;transition:opacity .4s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}html.dark .project-sheet-scrim{background:#00000094}.project-sheet-root.is-open .project-sheet-scrim{opacity:1}.project-sheet{--sheet-inset:.85rem;left:var(--sheet-inset);right:var(--sheet-inset);background:var(--paper);max-height:min(94dvh,62rem);color:var(--ink);border-radius:1.65rem 1.65rem 0 0;flex-direction:column;transition:transform .42s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;bottom:0;overflow:hidden;transform:translateY(110%);box-shadow:0 -18px 48px #0000002e}.project-sheet-root.is-open .project-sheet{transform:translateY(0)}@media (min-width:640px){.project-sheet{--sheet-inset:1.15rem}}@supports (corner-shape:squircle){.project-sheet{corner-shape:squircle;border-radius:1.85rem 1.85rem 0 0}}.project-sheet-head{flex-shrink:0;grid-template-columns:minmax(6.5rem,auto) minmax(0,1fr) minmax(6.5rem,auto);align-items:center;gap:.55rem;padding:.85rem .9rem .7rem;display:grid}.project-sheet-close{justify-self:start}.project-sheet-titles{text-align:center;min-width:0}.project-sheet-title{letter-spacing:-.04em;margin:0;font-size:1.05rem;font-weight:650;line-height:1.15}.project-sheet-domain{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);letter-spacing:-.02em;margin:.12rem 0 0;font-size:.72rem;font-weight:500;overflow:hidden}.project-sheet-be{flex-shrink:0;justify-self:end;height:2.25rem;margin-top:0}.project-sheet-body{overscroll-behavior:contain;min-height:0;padding:0 1.15rem 2.2rem;overflow-y:auto}.project-sheet-body.has-chapters{grid-template-columns:minmax(8.2rem,11rem) 1px minmax(0,1fr);align-items:start;gap:0 1.15rem;display:grid;overflow:hidden}.project-sheet-nav{flex-direction:column;align-items:flex-end;gap:.95rem;padding:.2rem 0 1.6rem;display:flex;overflow-y:auto}.project-sheet-nav-item{max-width:100%;color:var(--muted);font-family:var(--font-serif);letter-spacing:-.02em;text-align:right;cursor:pointer;background:0 0;border:0;padding:0;font-size:1.05rem;font-style:italic;font-weight:400;line-height:1.2}.project-sheet-nav-item.is-active{color:var(--ink);font-style:normal}.project-sheet-rule{background:var(--line);align-self:stretch;width:1px}.project-sheet-body.has-chapters.has-infobox{grid-template-columns:minmax(7.4rem,10.5rem) 1px minmax(0,1fr) minmax(12.4rem,16rem);grid-template-areas:"nav rule main box"}.project-sheet-body.has-chapters.has-infobox .project-sheet-nav{grid-area:nav}.project-sheet-body.has-chapters.has-infobox .project-sheet-rule{grid-area:rule}.project-sheet-body.has-chapters.has-infobox .project-sheet-main{grid-area:main}.project-sheet-infobox-wrap{grid-area:box;padding:.15rem 0 1.6rem;position:sticky;top:0}.project-sheet-infobox{border:1px solid var(--line);background:var(--paper);border-radius:.28rem;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.project-sheet-infobox{background:color-mix(in srgb, var(--paper) 82%, var(--muted) 18%)}}html.dark .project-sheet-infobox{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){html.dark .project-sheet-infobox{background:color-mix(in srgb, var(--paper) 88%, white 6%)}}.project-sheet-infobox-title{border-bottom:1px solid var(--line);text-align:center;letter-spacing:-.03em;margin:0;padding:.58rem .7rem .5rem;font-size:.78rem;font-weight:650;line-height:1.25}.project-sheet-infobox table{border-collapse:collapse;width:100%}.project-sheet-infobox th,.project-sheet-infobox td{border-top:1px solid var(--line);vertical-align:top;text-align:left;letter-spacing:-.015em;padding:.4rem .65rem;font-size:.68rem;line-height:1.35}.project-sheet-infobox th{width:34%;color:var(--muted);font-weight:650}.project-sheet-infobox td{font-weight:500}.project-sheet-prose p+p{margin-top:.78rem}.project-sheet-main{min-height:0;padding-bottom:1.6rem;overflow-y:auto}@media (max-width:639px){.project-sheet-body.has-chapters{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:1fr;gap:.85rem 0;overflow-y:auto}.project-sheet-body.has-chapters.has-infobox{grid-template:"nav""rule""box""main"minmax(0,1fr)/1fr}.project-sheet-infobox-wrap{padding:0;position:static}.project-sheet-nav{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:.7rem 1rem;padding-bottom:.15rem}.project-sheet-nav-item{text-align:left}.project-sheet-rule{width:100%;height:1px}}.project-sheet-media{aspect-ratio:4/3;background:#1a1a1a;border-radius:1.15rem;max-height:min(34vh,20rem);margin:0 0 1.15rem;overflow:hidden}.project-sheet-devices{aspect-ratio:16/10;background:#1c1c1c;border-radius:1.15rem;max-height:min(34vh,20rem);margin:0 0 1.15rem;position:relative;overflow:hidden}.project-sheet-mac,.project-sheet-phone{object-fit:contain;pointer-events:none;position:absolute}.project-sheet-mac{object-position:left center;width:72%;height:86%;top:10%;left:2%}.project-sheet-phone{object-position:right top;z-index:1;width:32%;height:92%;top:4%;right:3%}.project-sheet-studio,.project-sheet-laptop{object-fit:contain;pointer-events:none;position:absolute}.project-sheet-studio{object-position:left bottom;transform-origin:0 100%;width:66%;height:94%;top:-2%;left:2%;transform:scale(1.2)}.project-sheet-laptop{object-position:right bottom;z-index:1;transform-origin:100% 100%;width:48%;height:70%;top:auto;bottom:8%;right:1%;transform:scale(1.2)}.project-sheet-media img{object-fit:cover;object-position:center 42%;width:100%;height:100%;display:block}.project-sheet-years{color:var(--ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums;background:#00000014;border-radius:999px;margin:0 0 .7rem;padding:.22rem .58rem;font-size:.68rem;font-weight:500;display:inline-flex}html.dark .project-sheet-years{background:#ffffff1a}.project-sheet-lead{color:var(--ink);letter-spacing:-.02em;margin:0 0 1.35rem;font-size:.98rem;line-height:1.45}.project-quote{background:var(--paper-2);border:0;border-radius:1.2rem;align-items:center;gap:.7rem;margin:.45rem 0 1.55rem;padding:1.05rem 1.2rem 1.05rem 1rem;display:flex;position:relative;overflow:hidden}.project-quote:before{content:"“";color:var(--ink);flex-shrink:0;margin:0;position:static}@supports (color:color-mix(in lab, red, red)){.project-quote:before{color:color-mix(in srgb, var(--ink) 22%, transparent)}}.project-quote:before{font-family:var(--font-serif);letter-spacing:-.08em;pointer-events:none;font-size:4.1rem;font-style:italic;font-weight:400;line-height:.7}.project-quote p{min-width:0;color:var(--ink);font-family:var(--font-serif);letter-spacing:-.02em;text-wrap:pretty;margin:0;font-size:clamp(1.22rem,2.6vw,1.85rem);font-style:italic;font-weight:400;line-height:1.28}.project-notes{gap:.7rem;margin:0 0 1.5rem;display:grid}.project-note{color:#3a1f1c;background:#f4d7d2;border-radius:1.05rem;padding:.95rem 1.05rem 1.05rem}.project-note h3{letter-spacing:.04em;text-transform:uppercase;margin:0 0 .38rem;font-size:.78rem;font-weight:650}.project-note p{letter-spacing:-.02em;margin:0;font-size:.95rem;line-height:1.45}.project-note.is-aside{color:#2c2a24;background:#e7e2d6}html.dark .project-note{color:#f3e4e0;background:#4a2c28}html.dark .project-note.is-aside{color:#e8e4d8;background:#2c2a24}.project-flow{margin:0 0 1.7rem}.project-flow-title{font-family:var(--font-serif);letter-spacing:-.04em;margin:0 0 .75rem;font-size:clamp(2.15rem,5.2vw,3.1rem);font-weight:400;line-height:1.1}.project-flow-steps{margin:0 0 .85rem;padding:0 0 0 1.4rem;list-style:outside}.project-flow-steps li::marker{color:var(--ink)}.project-flow-steps li{letter-spacing:-.02em;margin:0;font-size:.98rem;line-height:1.45}.project-flow-steps li+li{margin-top:.45rem}.project-flow-steps ul{margin:.45rem 0 0;padding:0 0 0 1.25rem;list-style:outside}.project-flow-steps ul li+li{margin-top:.4rem}.project-ideas{margin:0 0 1.7rem}.project-flow-closing{letter-spacing:-.02em;margin:0;font-size:.98rem;line-height:1.45}.project-value{color:#1c3a22;letter-spacing:-.02em;background:#d5ead6;border-radius:1.15rem;margin:0 0 1.4rem;padding:1.1rem 1.15rem;font-size:1.02rem;line-height:1.45}html.dark .project-value{color:#dff3e2;background:#1c3a28}.hobby-card-shot{aspect-ratio:16/10;background:#100c0e;border-radius:.9rem;margin:1.2rem 0 0;overflow:hidden;box-shadow:0 0 0 1px #ffffff38}.hobby-card.is-cover .hobby-card-shot{margin-top:1.2rem}.hobby-card.is-stalker .hobby-card-shot{z-index:1;position:relative}.hobby-card:not(.is-cover):not(.is-stalker):not(.is-vaultguard) .hobby-card-shot{box-shadow:0 0 0 1px #14141424}.hobby-card-shot img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.hobby-card-shot.is-fit{aspect-ratio:auto;background:0 0;height:auto}.hobby-card-shot.is-fit img{object-fit:unset;object-position:center;width:100%;height:auto}.project-page .project-sheet-media.is-fit{aspect-ratio:auto;background:0 0;height:auto;max-height:none}.project-page .project-sheet-media.is-fit img{object-fit:unset;object-position:center;width:100%;height:auto}.project-sheet-block{margin:0 0 1.25rem}.project-sheet-block h3{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .45rem;font-size:.72rem;font-weight:600}.project-sheet-block p,.project-sheet-block li{letter-spacing:-.02em;margin:0;font-size:.95rem;line-height:1.5}.project-sheet-block ul{margin:0;padding-left:1.1rem}.project-sheet-block li+li{margin-top:.42rem}.project-page{padding-top:.35rem;overflow-x:clip}.project-page .project-sheet-devices{max-height:min(42vh,26rem)}.project-page .project-hero-shot{aspect-ratio:1;border-radius:2rem;width:100%;height:auto;max-height:none;margin:.35rem 0 1.35rem;padding:0}.project-page .project-hero-shot:after{display:none}.project-page .project-hero-shot.is-security .home-switcher-devices.has-studio{width:90%;height:78%;top:50%;left:50%;right:auto;transform:translate(-50%,-50%)}.project-page .project-hero-shot.is-security .home-switcher-studio-float{width:62%;height:82%;top:8%;left:5%}.project-page .project-hero-shot.is-security .home-switcher-laptop-float{width:48%;height:62%;bottom:6%;right:3%}.project-page .project-hero-shot.is-security .home-switcher-studio,.project-page .project-hero-shot.is-security .home-switcher-laptop{transform-origin:50%;object-position:center center;transform:none}.project-page .project-hero-shot.is-campus .home-switcher-devices{height:70%;top:10%;left:-6%;right:-4%}.project-page-bar{z-index:16;background:var(--paper);justify-content:space-between;align-items:center;gap:.75rem;min-height:3.15rem;margin:0 -.35rem 1.15rem;padding:.45rem .35rem;display:flex;position:sticky;top:0}.project-back{color:var(--ink);letter-spacing:-.03em;cursor:pointer;background:0 0;border:1px solid #14141424;border-radius:999px;align-items:center;gap:.28rem;padding:.38rem .78rem .38rem .5rem;font-size:.92rem;font-weight:560;display:inline-flex}.project-back:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.project-back:hover{background:color-mix(in srgb, var(--ink) 7%, transparent)}}html.dark .project-back{border-color:#ffffff29}.project-page-cta{height:2.15rem;margin-top:0}.project-page-body{align-items:start;gap:1.6rem 1.25rem;display:grid}.project-page-body.has-chapters{grid-template-columns:minmax(8.4rem,11.5rem) minmax(0,1fr)}.project-page-body.has-chapters.has-infobox{grid-template-columns:minmax(8.4rem,11.5rem) minmax(0,1fr) minmax(13rem,16.5rem)}.project-page-nav{flex-direction:column;align-items:flex-start;gap:.85rem;padding:.15rem 0 2rem;display:flex;position:sticky;top:3.35rem}.project-page-nav-item{max-width:100%;color:var(--muted);font-family:var(--font-serif);letter-spacing:-.02em;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:1.38rem;font-style:normal;font-weight:400;line-height:1.25}.project-page-nav-item.is-active{color:var(--ink);font-style:italic}.project-page-title{font-family:var(--font-serif);letter-spacing:-.045em;margin:0 0 1.15rem;font-size:clamp(2.7rem,7vw,4.7rem);font-weight:400;line-height:.95}.project-page-kicker{color:var(--muted);letter-spacing:-.02em;margin:0 0 1.35rem;font-size:.92rem;font-weight:500}.project-page-bento{grid-template-columns:1fr;gap:.55rem;margin:-.35rem 0 1.5rem;display:grid}@media (min-width:720px){.project-page-bento:not(.is-single){grid-template-columns:1fr 1fr}}.project-page-bento-tile{background:var(--ink);border-radius:1.15rem;flex-direction:column;justify-content:flex-start;margin:0;padding:.95rem 1.05rem;display:flex}@supports (color:color-mix(in lab, red, red)){.project-page-bento-tile{background:color-mix(in srgb, var(--ink) 7%, var(--paper))}}.project-page-bento-tile{letter-spacing:-.025em;font-size:1.02rem;line-height:1.4}.project-page-bento-tile .gallery-bento-metric{white-space:normal;font-size:clamp(1.05rem,2vw,1.45rem)}.project-page-bento-tile .gallery-bento-metric-note{font-size:.88rem}.project-chapter{scroll-margin-top:4.1rem}.project-chapter+.project-chapter{margin-top:2.6rem;padding-top:.2rem}.project-chapter-tags{flex-wrap:wrap;align-items:center;gap:.28rem;margin:0 0 .55rem;display:flex}.project-page-kicker+.project-chapter-tags{margin-top:2.2rem}.project-chapter-tag{color:var(--ink);letter-spacing:-.01em;background:#00000014;border-radius:999px;margin:0;padding:.22rem .58rem;font-size:.68rem;font-weight:500;line-height:1.25;display:inline-flex}html.dark .project-chapter-tag{background:#ffffff1a}.project-chapter-title{font-family:var(--font-serif);letter-spacing:-.04em;margin:0 0 .95rem;font-size:clamp(2.15rem,5.2vw,3.1rem);font-weight:400;line-height:1.1}.project-chapter-title:has(+.project-chapter-rating){margin-bottom:.28rem}.project-chapter-rating{color:#f5c518;letter-spacing:.12em;margin:0 0 .95rem;font-size:1.05rem;line-height:1}.project-chapter-link{margin:-.15rem 0 1.35rem}.project-chapter-more{color:inherit;letter-spacing:-.02em;text-underline-offset:.16em;align-items:center;gap:.28rem;font-weight:550;text-decoration:underline;text-decoration-thickness:from-font;display:inline-flex}.project-chapter-more:hover{color:var(--ink)}.project-chapter-more .home-switcher-view-icon{flex-shrink:0}.project-page-infobox-wrap{position:sticky;top:3.35rem}.project-infobox-value{align-items:center;gap:.4rem;display:inline-flex}.project-infobox-link,.project-inline-link{color:inherit;text-underline-offset:.12em}.project-infobox-link:hover,.project-inline-link:hover{color:var(--ink)}.project-flag{border-radius:1px;flex-shrink:0;width:1.15rem;height:.62rem;display:inline-block;box-shadow:0 0 0 1px #0000002e}.project-tools{margin:0;padding:0;list-style:none}.project-tools li{align-items:center;gap:.42rem;font-weight:550;display:flex}.project-tools li+li{margin-top:.38rem}.project-tools img,.project-tool-mark{object-fit:contain;border-radius:.22rem;flex-shrink:0;width:1.15rem;height:1.15rem}.project-tool-mark{background:#00000012;justify-content:center;align-items:center;font-size:.72rem;line-height:1;display:inline-flex}html.dark .project-tool-mark{background:#ffffff1f}@media (max-width:860px){.project-page-body.has-chapters,.project-page-body.has-chapters.has-infobox{grid-template-columns:1fr}.project-page-bar{isolation:isolate}.project-page-bar:before{content:"";z-index:-1;background:var(--paper);position:absolute;inset:0 calc(50% - 50vw)}.project-page-nav{display:none}.project-page-infobox-wrap{order:2;position:static}.project-page-main{order:3}.project-chapter{scroll-margin-top:4.1rem}.project-page .project-hero-shot,.project-page .project-sheet-devices{aspect-ratio:1;border-radius:0;width:100vw;max-width:100vw;height:auto;max-height:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.project-page .project-sheet-media.is-fit{aspect-ratio:auto;border-radius:1.15rem;width:100%;max-width:100%;height:auto;margin-left:0;margin-right:0}}@media (prefers-reduced-motion:reduce){.project-sheet-scrim,.project-sheet{transition:none}}.write-layer{z-index:80;place-items:center;padding:1.25rem 1rem 1.75rem;display:grid;position:fixed;inset:0}.write-scrim{-webkit-backdrop-filter:blur(18px)saturate(.85);backdrop-filter:blur(18px)saturate(.85);cursor:default;background:#0812206b;border:0;position:absolute;inset:0}.write-stack{z-index:1;flex-direction:column;align-items:center;gap:.7rem;width:min(20.5rem,100%);display:flex;position:relative}.write-card{border-radius:1.45rem;width:100%;box-shadow:0 22px 50px #00000038}.write-card-tg{aspect-ratio:1;color:#fff;background:#2aabee;flex-direction:column;align-items:center;padding:1.7rem 1.2rem 1.15rem;display:flex;position:relative}.write-tg-mark{filter:drop-shadow(0 8px 16px #0000002e);place-items:center;width:3.15rem;height:3.15rem;display:grid;position:absolute;top:0;left:50%;transform:translate(-50%,-48%)}.write-tg-icon{width:3.15rem;height:3.15rem;animation:2.4s ease-in-out infinite write-tg-bob}.write-tg-title{letter-spacing:.14em;text-transform:uppercase;opacity:.78;margin:.35rem 0 0;font-size:.72rem;font-weight:600}.write-qr{flex:1;place-items:center;width:100%;min-height:0;margin-top:.35rem;display:grid}.write-qr img{background:#fff;border-radius:.85rem;width:min(100%,13.5rem);height:auto}.write-handle{letter-spacing:-.03em;margin:.35rem 0 .7rem;font-size:.92rem;font-weight:550}.write-tg-btn{color:#141414;letter-spacing:-.03em;background:#fff;border-radius:999px;justify-content:center;align-items:center;width:100%;min-height:2.55rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 8px 18px #0000001f}.write-tg-btn:hover{background:#f4f7fa}.write-card-more{color:#141414;background:#fff;gap:.15rem;padding:.55rem;display:grid}.write-more-link{color:inherit;border-radius:1rem;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.7rem .8rem;text-decoration:none;display:flex}.write-more-link:hover{background:#0000000d}.write-more-label{color:#1414148c;letter-spacing:-.02em;align-items:center;gap:.4rem;font-size:.78rem;font-weight:550;display:inline-flex}.write-more-value{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.03em;min-width:0;font-size:.84rem;font-weight:550;overflow:hidden}html.dark .write-card-more{color:#f3f3f3;background:#161616}html.dark .write-more-link:hover{background:#ffffff0f}html.dark .write-more-label{color:#f3f3f38c}@keyframes write-tg-bob{0%,to{transform:translateY(0)rotate(-8deg)}50%{transform:translateY(-5px)rotate(10deg)}}@media (prefers-reduced-motion:reduce){.write-tg-icon{animation:none}}@supports (corner-shape:squircle){.write-card{corner-shape:squircle;border-radius:1.7rem}.write-qr img{corner-shape:squircle;border-radius:1rem}}@media print{html,body{color:#111;background:#fff}.no-print{display:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
