@property --glass-outer-stroke{syntax:"<length>";inherits:true;initial-value:0}.glass-arrow-button{--glass-artboard:1024;--glass-frame:512;--glass-origin:256;--glass-render-size:280px;--glass-scale:calc(var(--glass-render-size)/var(--glass-artboard));--glass-btn-size:calc(var(--glass-frame)*var(--glass-scale));--glass-outer-stroke:calc(4*var(--glass-scale));--glass-outer-stroke-pressed:calc(1*var(--glass-scale));--glass-spring-duration:.45s;--glass-spring-easing:cubic-bezier(.32,.72,0,1);width:var(--glass-btn-size);height:var(--glass-btn-size);cursor:pointer;transition:transform var(--glass-spring-duration)var(--glass-spring-easing),--glass-outer-stroke var(--glass-spring-duration)var(--glass-spring-easing);background:0 0;border:none;flex-shrink:0;padding:0;display:inline-flex;position:relative;overflow:visible}.glass-arrow-button--sm{--glass-render-size:96px}.glass-arrow-button--md{--glass-render-size:280px}.glass-arrow-button--lg{--glass-render-size:360px}.glass-arrow-button:hover:not(:disabled):not(.is-pressed){transform:scale(1.04)}.glass-arrow-button.is-pressed:not(:disabled){--glass-outer-stroke:var(--glass-outer-stroke-pressed);transform:scale(.96)}.glass-arrow-button.is-pressed:not(:disabled) .glass-arrow-button__outer{--glass-lift-y:calc(28.73*var(--glass-scale));--glass-lift-blur:calc(25.6513*var(--glass-scale));--glass-lift-opacity:.2}.glass-arrow-button.is-pressed:not(:disabled) .glass-arrow-button__inner{filter:brightness(.94);transition:filter var(--glass-spring-duration)var(--glass-spring-easing)}.glass-arrow-button:active:not(:disabled):not(.is-pressed){transform:scale(.98)}.glass-arrow-button:disabled{opacity:.35;cursor:default;transform:none}.glass-arrow-button__outer{--glass-lift-y:calc(57.459*var(--glass-scale));--glass-lift-blur:calc(51.3025*var(--glass-scale));--glass-lift-opacity:.25;border-radius:calc(297.555*var(--glass-scale));box-shadow:0 0 0 var(--glass-outer-stroke)#5f6a6f,0 var(--glass-lift-y)var(--glass-lift-blur)0 rgba(0,0,0,var(--glass-lift-opacity));transition:box-shadow var(--glass-spring-duration)var(--glass-spring-easing);position:absolute;inset:0;overflow:visible}.glass-arrow-button__inner{box-sizing:border-box;border-radius:inherit;z-index:1;isolation:isolate;background:#78848c;position:absolute;inset:0;overflow:visible}.glass-arrow-button__strokes{border-radius:inherit;transform-origin:50%;pointer-events:none;transition:transform .35s cubic-bezier(.34,1.2,.64,1);position:absolute;inset:0}.glass-arrow-button--follow-cursor .glass-arrow-button__strokes{transition:none}.glass-arrow-button__blur-clip{border-radius:inherit;pointer-events:none;z-index:5;position:absolute;inset:0;overflow:hidden}.glass-arrow-button__blur-wrap{left:calc(30.35*var(--glass-scale));top:calc(115.52*var(--glass-scale));width:calc(454.37*var(--glass-scale));height:calc(466.68*var(--glass-scale));pointer-events:none;position:absolute;overflow:visible}.glass-arrow-button__blur{inset:calc(23*var(--glass-scale));border-radius:calc(237*var(--glass-scale));filter:blur(calc(23*var(--glass-scale)));background:linear-gradient(#79858b 0%,#a2acb3 100%);position:absolute}.glass-arrow-button__stroke--1{z-index:1;border-radius:inherit;padding:calc(8*var(--glass-scale));pointer-events:none;-webkit-mask-composite:xor;mix-blend-mode:overlay;background:linear-gradient(45deg,#0000 0%,#535c65 100%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-arrow-button__stroke--2{z-index:2;border-radius:inherit;padding:calc(8*var(--glass-scale));pointer-events:none;-webkit-mask-composite:xor;mix-blend-mode:overlay;background:linear-gradient(#535c65 0%,#0000 100%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-arrow-button__stroke--3{z-index:3;border-radius:inherit;padding:calc(8*var(--glass-scale));pointer-events:none;-webkit-mask-composite:xor;mix-blend-mode:overlay;background:linear-gradient(#fdfdfc 0%,#0000 100%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-arrow-button__stroke--4{z-index:4;border-radius:inherit;padding:calc(8*var(--glass-scale));pointer-events:none;-webkit-mask-composite:xor;mix-blend-mode:overlay;background:linear-gradient(#fbfcfe 0%,#6660 100%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-arrow-button__vector{transform-origin:50%;z-index:2;pointer-events:none;transition:transform .35s cubic-bezier(.34,1.2,.64,1);position:absolute;inset:0}.glass-arrow-button--follow-cursor .glass-arrow-button__vector{transition:none}.glass-arrow-button__vector-wrap{width:calc(127.23*var(--glass-scale));height:calc(150.83*var(--glass-scale));left:calc(192*var(--glass-scale));top:calc(181*var(--glass-scale));filter:drop-shadow(0 calc(8*var(--glass-scale))calc(25*var(--glass-scale))#00000040);position:absolute}.glass-arrow-button__vector-wrap svg{width:100%;height:100%;display:block;overflow:visible}.ah{--ah-canvas:#f5f5f7;--ah-tile:#fff;--ah-text:#1d1d1f;--ah-muted:#6e6e73;--ah-accent:#06c;--ah-hairline:#0000001a;--ah-status:#0000000f;background:var(--ah-canvas);min-height:100vh;color:var(--ah-text);letter-spacing:-.01em;line-height:1.47}body.dark-mode .ah{--ah-canvas:#000;--ah-tile:#1d1d1f;--ah-text:#f5f5f7;--ah-muted:#a1a1a6;--ah-accent:#2997ff;--ah-hairline:#ffffff1f;--ah-status:#ffffff1f}html:has(.ah){background:#f5f5f7}body:has(.ah){overflow-x:clip}html:has(body.dark-mode .ah){background:#000}@keyframes ah-rise{0%{opacity:0;transform:translateY(14px)}}.ah-edge{z-index:99;pointer-events:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:5rem;position:fixed;top:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 30%,#0000);mask-image:linear-gradient(#000 30%,#0000)}@media (prefers-reduced-transparency:reduce){.ah-edge{display:none}}.ah-island-dock{z-index:100;pointer-events:none;justify-content:center;display:flex;position:fixed;top:.75rem;left:0;right:0}.ah-island{--island-w:min(20.5rem,calc(100vw - 1.5rem));--island-h:2.375rem;--island-r:1.1875rem;width:var(--island-w);height:var(--island-h);border-radius:var(--island-r);color:#fff;pointer-events:auto;background:#000;transition:width .42s cubic-bezier(.28,.11,.32,1),height .42s cubic-bezier(.28,.11,.32,1),border-radius .42s cubic-bezier(.28,.11,.32,1);position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px -8px #00000073}@supports (transition-timing-function:linear(0, 1)){.ah-island{transition-timing-function:linear(0,.146,.405,.638,.805,.908,.965,.993,1.003,1.006,1.006,1.004,1.003,1.001,1)}}.ah-island[data-open]{--island-w:min(23rem,calc(100vw - 1.5rem));--island-h:12.75rem;--island-r:2rem;transition-duration:.62s}@supports (transition-timing-function:linear(0, 1)){.ah-island[data-open]{transition-timing-function:linear(0,.088,.285,.51,.716,.877,.988,1.052,1.08,1.082,1.071,1.053,1.034,1.018,1.006,.999,.994,.993,.993,.995,.996,.998,.999,1)}}.ah-island__compact{width:min(20.5rem,100vw - 1.5rem);height:2.375rem;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:0 .875rem 0 .75rem;text-decoration:none;transition:width .62s cubic-bezier(.28,.11,.32,1),gap .4s cubic-bezier(.28,.11,.32,1),padding .4s cubic-bezier(.28,.11,.32,1);display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}@supports (transition-timing-function:linear(0, 1)){.ah-island__compact{transition-timing-function:linear(0,.088,.285,.51,.716,.877,.988,1.052,1.08,1.082,1.071,1.053,1.034,1.018,1.006,.999,.994,.993,.993,.995,.996,.998,.999,1),ease,ease}}.ah-island[data-open] .ah-island__compact{pointer-events:none}.ah-island[data-open] .ah-island__compact .ah-island__label{opacity:0;filter:blur(4px);transition-duration:.4s,.15s,.15s,.3s;transition-delay:0s}.ah-island[data-open] .ah-island__compact .ah-island__label[data-idle]{filter:none;transform:translate(.625rem)}.ah-island__compact:focus-visible{outline:none}.ah-island__compact:focus-visible .ah-island__label{text-underline-offset:.2em;text-decoration:underline}.ah-island__brand{color:#fff;letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;line-height:1;text-decoration:none;transition:gap .4s cubic-bezier(.28,.11,.32,1);display:inline-flex}.ah-island__brand svg{flex-shrink:0}.ah-island{--brand-dx:calc((min(20.5rem,100vw - 1.5rem) - min(23rem,100vw - 1.5rem))/2 + .25rem);--brand-dy:calc(.5rem + 2.75rem/2 - 2.375rem/2)}.ah-island__compact .ah-island__brand{transition:gap .4s cubic-bezier(.28,.11,.32,1),transform .42s cubic-bezier(.28,.11,.32,1)}@supports (transition-timing-function:linear(0, 1)){.ah-island__compact .ah-island__brand{transition-timing-function:cubic-bezier(.28,.11,.32,1),linear(0,.146,.405,.638,.805,.908,.965,.993,1.003,1.006,1.006,1.004,1.003,1.001,1)}}.ah-island[data-open] .ah-island__compact .ah-island__brand{transform:translate(var(--brand-dx),var(--brand-dy));transition-duration:.4s,.62s}@supports (transition-timing-function:linear(0, 1)){.ah-island[data-open] .ah-island__compact .ah-island__brand{transition-timing-function:cubic-bezier(.28,.11,.32,1),linear(0,.088,.285,.51,.716,.877,.988,1.052,1.08,1.082,1.071,1.053,1.034,1.018,1.006,.999,.994,.993,.993,.995,.996,.998,.999,1)}}.ah-island__menu-head .ah-island__brand{opacity:0}.ui-numeric{font-variant-numeric:tabular-nums;display:inline-flex}.ui-numeric__slot{--numeric-from:-.7em;--numeric-to:.7em;display:inline-block;position:relative}.ui-numeric__slot[data-direction=up]{--numeric-from:.7em;--numeric-to:-.7em}.ui-numeric__in,.ui-numeric__out{will-change:transform,opacity,filter;display:inline-block}.ui-numeric__in{animation:.42s cubic-bezier(.2,.9,.3,1.15) both ui-numeric-in}.ui-numeric__out{animation:.3s cubic-bezier(.4,0,.8,.4) both ui-numeric-out;position:absolute;inset:0}@keyframes ui-numeric-in{0%{opacity:0;filter:blur(3px);transform:translateY(var(--numeric-from))scale(.8)}}@keyframes ui-numeric-out{to{opacity:0;filter:blur(3px);transform:translateY(var(--numeric-to))scale(.8)}}.ah-island[data-min]{--island-w:4.75rem;transition-duration:.62s}@supports (transition-timing-function:linear(0, 1)){.ah-island[data-min]{transition-timing-function:linear(0,.088,.285,.51,.716,.877,.988,1.052,1.08,1.082,1.071,1.053,1.034,1.018,1.006,.999,.994,.993,.993,.995,.996,.998,.999,1)}}.ah-island[data-min] .ah-island__compact{width:4.75rem}.ah-island[data-min] .ah-island__brand{gap:0}.ah-island[data-min] .ah-island__name{opacity:0;max-width:0}.ah-island__mark{flex-shrink:0;width:14px;height:14px;transition:width .45s cubic-bezier(.28,.11,.32,1),opacity .25s,transform .45s cubic-bezier(.28,.11,.32,1);display:inline-flex;overflow:visible}.ah-island__morph{fill:none;stroke:#fff;stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .15s}.ah-island__progress-track,.ah-island__progress-fill{transition:opacity .15s}@keyframes ah-island-top-nudge{0%,to{transform:none}45%{transform:translateY(-2px)}}.ah-island[data-done]{--island-w:2.375rem}.ah-island[data-done],.ah-island[data-done] .ah-island__compact{transition-timing-function:cubic-bezier(.28,.11,.32,1)}.ah-island[data-done] .ah-island__mark{opacity:0;width:0;transform:scale(.6)}.ah-island[data-done] .ah-island__progress-track,.ah-island[data-done] .ah-island__progress-fill{opacity:0}.ah-island[data-done] .ah-island__morph{opacity:1}.ah-island[data-done] .ah-island__progress{animation:1.4s ease-in-out 1.2s 3 ah-island-top-nudge}.ah-island[data-done] .ah-island__compact{gap:0;width:2.375rem;padding:0 .625rem}.ah-island[data-done] .ah-island__label{opacity:0;max-width:0}.ah-island__name{vertical-align:bottom;white-space:pre;max-width:10rem;line-height:1.25;transition:max-width .4s cubic-bezier(.28,.11,.32,1),opacity .2s;display:inline-block;overflow:hidden}.ah-island__progress{flex-shrink:0;transition:width .4s cubic-bezier(.28,.11,.32,1),opacity .3s,transform .4s cubic-bezier(.28,.11,.32,1);overflow:visible}.ah-island__progress-track,.ah-island__progress-fill{fill:none;stroke-width:2.25px}.ah-island__progress-track{stroke:#fff3}.ah-island__progress-fill{stroke:#fff;stroke-linecap:round;stroke-dasharray:var(--island-progress,0)1;transition:stroke-dasharray .25s linear}.ah-island__label{color:#ffffff9e;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:12rem;font-size:.8125rem;line-height:1.25;transition:max-width .4s cubic-bezier(.28,.11,.32,1),opacity .2s .1s,filter .2s .1s,transform .4s cubic-bezier(.28,.11,.32,1) 50ms;animation:.45s cubic-bezier(.28,.11,.32,1) backwards ah-island-label;overflow:hidden}.ah-island__label[data-idle]{animation-name:ah-island-chevron-in}@keyframes ah-island-chevron-in{0%{opacity:0;transform:translate(.625rem)}}.ah-island__chevron{margin:.125rem 0;display:block}@keyframes ah-island-label{0%{opacity:0;filter:blur(4px);transform:translateY(.375rem)}}.ah-island__menu{opacity:0;filter:blur(8px);transform-origin:top;width:min(23rem,100vw - 1.5rem);padding:.5rem .625rem .625rem;transition:opacity .16s,filter .16s,transform .3s cubic-bezier(.28,.11,.32,1);position:absolute;top:0;left:50%;transform:translate(-50%)scale(.94)}.ah-island[data-open] .ah-island__menu{opacity:1;filter:none;transition:opacity .28s .1s,filter .28s .1s,transform .5s cubic-bezier(.28,.11,.32,1) 40ms;transform:translate(-50%)}.ah-island__menu-head{justify-content:space-between;align-items:center;height:2.75rem;padding:0 .125rem 0 .375rem;display:flex}.ah-island__links{margin:.125rem 0 0;padding:0;list-style:none}.ah-island__link{color:#fff;letter-spacing:-.015em;border-radius:1.375rem;justify-content:space-between;align-items:center;height:2.75rem;padding:0 .75rem;font-size:1.0625rem;font-weight:500;line-height:1;text-decoration:none;transition:background-color .2s;display:flex}.ah-island__link span{color:#fff6;font-size:1.125rem;transition:transform .25s cubic-bezier(.28,.11,.32,1)}.ah-island__link:hover{background:#ffffff1a}.ah-island__link:hover span{transform:translate(3px)}.ah-island__link[aria-current]{background:#ffffff24}.ah-island__brand:focus-visible,.ah-island__link:focus-visible{outline-offset:-2px;outline:2px solid #fff}.ah-link:focus-visible,.ah-footer a:focus-visible{outline:2px solid var(--ah-accent);outline-offset:3px;border-radius:.375rem}.ah-toolbar{top:.75rem;right:max(1rem,env(safe-area-inset-right));z-index:100;transition:opacity .25s,transform .45s cubic-bezier(.28,.11,.32,1);display:flex;position:fixed}.ah-toolbar[data-on-dark]{--ah-canvas:#000;--ah-tile:#1d1d1f;--ah-text:#f5f5f7;--ah-muted:#a1a1a6;--ah-accent:#2997ff;--ah-hairline:#ffffff1f;--ah-status:#ffffff1f}.ah-toolbar[data-hidden]:not(:focus-within){opacity:0;pointer-events:none;transform:translateY(-.75rem)scale(.9)}@media (max-width:734px){.ah-toolbar[data-hidden]:not(:focus-within){transform:translateY(.75rem)scale(.9)}.ah-toolbar{top:auto;bottom:max(1rem,env(safe-area-inset-bottom))}}.ah-toolbar .theme-toggle{width:2.375rem;height:2.375rem;color:var(--ah-muted);background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:color .2s,transform .5s ease-out;display:inline-flex}@supports (transition-timing-function:linear(0, 1)){.ah-toolbar .theme-toggle{transition-timing-function:ease,linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1)}}.ah-toolbar .theme-toggle:hover{color:var(--ah-text)}.ah-toolbar .theme-toggle:active{transition-duration:.2s,.15s;transform:scale(.88)}.ah-toolbar .theme-toggle:focus-visible{outline:2px solid var(--ah-accent);outline-offset:1px}.ah-toolbar .theme-icon{color:inherit}.ah-hero{max-width:1080px;margin:0 auto;padding:9rem 1.375rem 1rem}@media (max-width:734px){.ah-hero{padding-top:6.5rem}}.ah-hero__title{letter-spacing:-.05em;margin:0;font-size:min(17vw,11rem);font-weight:700;line-height:.9;animation:1.1s cubic-bezier(.28,.11,.32,1) both ah-focus}.ah-hero__line{white-space:nowrap;display:block}@keyframes ah-focus{0%{opacity:0;filter:blur(14px);transform-origin:0;transform:scale(1.03)}}.ah-glass-word{--word-ring:.016em;vertical-align:baseline;isolation:isolate;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:#0000;background:#78848c;border-radius:999px;align-items:center;margin-left:.04em;padding:.16em .42em .2em .4em;transition:transform .45s cubic-bezier(.32,.72,0,1),box-shadow .45s cubic-bezier(.32,.72,0,1);animation:.9s cubic-bezier(.28,.11,.32,1) .55s both ah-glass-word-in;display:inline-flex;position:relative;box-shadow:0 0 0 .008em #5f6a6f,0 .1em .12em -.03em #00000040}@supports (animation-timing-function:linear(0, 1)){.ah-glass-word{animation-timing-function:linear(0,.088,.285,.51,.716,.877,.988,1.052,1.08,1.082,1.071,1.053,1.034,1.018,1.006,.999,.994,.993,.993,.995,.996,.998,.999,1)}}.ah-glass-word:before,.ah-glass-word:after{content:"";z-index:2;padding:var(--word-ring);border-radius:inherit;mix-blend-mode:overlay;pointer-events:none;-webkit-mask-composite:xor;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.ah-glass-word:before{background:linear-gradient(#fbfcfe 0%,#6660 100%)}.ah-glass-word:after{background:linear-gradient(#0000 30%,#fdfdfc 100%),linear-gradient(45deg,#0000 0%,#535c65 100%)}@media (hover:hover){.ah-glass-word:hover{transform:scale(1.02)}}.ah-glass-word:active{transform:scale(.97);box-shadow:0 0 0 .006em #5f6a6f,0 .055em .05em -.02em #0003}.ah-glass-word__face{z-index:1;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.ah-glass-word__face:before{content:"";filter:blur(.06em);background:linear-gradient(#79858b 0%,#a2acb3 100%);border-radius:999px;position:absolute;inset:22% 6% -12%}.ah-glass-word__text{z-index:3;letter-spacing:-.03em;color:#0000;filter:drop-shadow(0 .03em .06em #0000004d);background:linear-gradient(#b1b8bc 0%,#fefefd 100%);-webkit-background-clip:text;background-clip:text;font-size:.56em;position:relative}@keyframes ah-glass-word-in{0%{opacity:0;transform:translateY(.12em)scale(.92)}}.ah-hero__line:last-child{margin-top:.1em}.ah-hero__foot{justify-content:space-between;align-items:flex-end;gap:1.5rem 3rem;margin-top:3rem;animation:.9s cubic-bezier(.28,.11,.32,1) .3s both ah-rise;display:flex}@media (max-width:734px){.ah-hero__foot{flex-direction:column;align-items:flex-start;margin-top:2.25rem}}.ah-hero__lede{max-width:30rem;color:var(--ah-muted);letter-spacing:-.012em;text-wrap:pretty;margin:0;font-size:clamp(1.1875rem,2vw,1.375rem);font-weight:500;line-height:1.32}.ah-hero__actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:1rem 1.75rem;display:flex}.ah-link{color:var(--ah-accent);font-size:1.0625rem;line-height:1.3;text-decoration:none}.ah-link:hover{text-underline-offset:.18em;text-decoration:underline}.ah-section{max-width:1080px;margin:0 auto;padding:6.5rem 1.375rem 0;scroll-margin-top:1rem}@media (max-width:734px){.ah-section{padding-top:4.5rem}}.ah-section--dark{--ah-canvas:#000;--ah-tile:#1d1d1f;--ah-text:#f5f5f7;--ah-muted:#a1a1a6;--ah-accent:#2997ff;--ah-hairline:#ffffff1f;--ah-status:#ffffff1f;background:var(--ah-canvas);max-width:none;color:var(--ah-text);margin-top:6.5rem;padding:6.5rem 0}@media (max-width:734px){.ah-section--dark{margin-top:4.5rem;padding:4.5rem 0}}body.dark-mode .ah-section--dark{--ah-canvas:#101010}.ah-section__inner{max-width:1080px;margin:0 auto;padding:0 1.375rem}.ah-section__title{letter-spacing:-.025em;text-wrap:balance;max-width:22ch;margin:0 0 2.5rem;font-size:clamp(1.75rem,4.6vw,3rem);font-weight:600;line-height:1.1}.ah-section__title span{color:var(--ah-muted)}@media (max-width:734px){.ah-section__title{margin-bottom:1.75rem}}.ah-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}@media (max-width:734px){.ah-grid{grid-template-columns:minmax(0,1fr);gap:1rem}}.ah-tile{background:var(--ah-tile);border-radius:1.75rem;flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}@media (max-width:734px){.ah-tile{border-radius:1.25rem}}.ah-tile:focus-within{outline:2px solid var(--ah-accent);outline-offset:3px}.ah-tile__text{padding:1.75rem 2.25rem 2.25rem}@media (max-width:734px){.ah-tile__text{padding:1.5rem 1.5rem 1.75rem}}.ah-tile__eyebrow{color:var(--ah-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.875rem;font-weight:600;line-height:1.3;display:flex}.ah-tile__status{background:var(--ah-status);height:1.375rem;color:var(--ah-text);border-radius:999px;align-items:center;padding:0 .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.ah-tile__title{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.375rem,2.4vw,1.75rem);font-weight:600;line-height:1.14}.ah-tile__stretch{color:inherit;outline:none;text-decoration:none}.ah-tile__stretch:after{z-index:1;content:"";position:absolute;inset:0}.ah-tile__blurb{max-width:34rem;color:var(--ah-muted);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:.625rem 0 0;font-size:1.0625rem;line-height:1.4;display:-webkit-box;overflow:hidden}.ah-tile__media{aspect-ratio:16/10;background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%);position:relative;overflow:hidden}.ah-tile__media img,.ah-tile__media video{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.28,.11,.32,1);display:block;position:absolute;inset:0}.ah-tile:hover .ah-tile__media img,.ah-tile:hover .ah-tile__media video{transform:scale(1.03)}.ah-statement{text-align:center;padding-bottom:7rem}@media (max-width:734px){.ah-statement{padding-bottom:5rem}}.ah-statement__eyebrow{color:var(--ah-muted);margin:0 0 1rem;font-size:1.0625rem;font-weight:600;line-height:1.2}.ah-statement__text{letter-spacing:-.022em;text-wrap:balance;max-width:48rem;margin:0 auto 1.5rem;font-size:clamp(1.5rem,3.4vw,2.5rem);font-weight:600;line-height:1.16}.ah-statement__copy{max-width:38rem;color:var(--ah-muted);text-wrap:pretty;margin:0 auto 1.75rem;font-size:1.0625rem;line-height:1.5}.ah-statement__copy a{color:var(--ah-text);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.2em}.ah-statement__copy a:hover{text-decoration-color:currentColor}.ah-footer{--ah-canvas:#000;--ah-tile:#1d1d1f;--ah-text:#f5f5f7;--ah-muted:#a1a1a6;--ah-accent:#2997ff;--ah-hairline:#ffffff1f;--ah-status:#ffffff1f;color:var(--ah-text);background:#0f0f0f}.ah-tribute{text-align:center;flex-direction:column;align-items:center;max-width:1080px;margin:0 auto;padding:7rem 1.375rem 5.5rem;display:flex;position:relative}@media (max-width:734px){.ah-tribute{padding:4.5rem 1.375rem 4rem}}.ah-tribute__portrait{width:100%;max-width:60rem;height:auto;margin-top:3rem;display:block}@media (max-width:734px){.ah-tribute__portrait{object-fit:cover;width:calc(100% + 2.75rem);max-width:none;height:13rem;margin-top:2rem}}.ah-tribute:has(.ah-tribute__portrait){padding-bottom:0}.ah-tribute__eyebrow{color:var(--ah-muted);letter-spacing:.02em;margin:0;font-size:.875rem;font-weight:600;line-height:1.3}.ah-tribute__name{letter-spacing:-.02em;margin:.5rem 0 0;font-family:ui-serif,New York,Iowan Old Style,Georgia,serif;font-size:clamp(2.75rem,8vw,5rem);font-weight:400;line-height:1.05}.ah-tribute__years{color:var(--ah-muted);font-variant-numeric:tabular-nums;letter-spacing:.04em;margin:.75rem 0 0;font-size:1.0625rem;line-height:1.3}.ah-footer__inner{border-top:1px solid var(--ah-hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;max-width:1080px;margin:0 auto;padding:1.25rem 1.375rem 2rem;display:flex}.ah-footer__inner:first-child{border-top:0;padding-top:1.75rem}@media (max-width:734px){.ah-footer__inner{padding-bottom:4.5rem}}.ah-footer__inner{color:var(--ah-muted);font-size:.75rem;line-height:1.4}.ah-footer__inner p{align-items:center;gap:.5rem;margin:0;display:inline-flex}.ah-footer__inner a{color:var(--ah-accent);text-decoration:none}.ah-footer__inner a:hover{text-decoration:underline}.ah .tutorial-detail-page{background:0 0;min-height:0}body.dark-mode .ah .tutorial-detail-page{background:0 0}.ah .tutorial-article{padding-top:7.5rem}@media (max-width:734px){.ah .tutorial-article{padding-top:6rem}}.ah .tutorial-article-title{color:var(--ah-text);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.5rem,6.4vw,4rem);line-height:1.05}.ah .tutorial-article-byline,.ah .tutorial-share-btn{color:var(--ah-muted)}.ah .tutorial-share-btn:hover{color:var(--ah-text)}.ah .tutorial-detail-video-wrap{background:var(--ah-tile);border-radius:1.75rem}@media (max-width:734px){.ah .tutorial-detail-video-wrap{border-radius:1.25rem}}.ah .tutorial-article-footer{color:var(--ah-text)}.ah .tutorial-article-footer__inner{max-width:1080px;margin:0 auto;padding:7rem 1.375rem;display:block}@media (max-width:734px){.ah .tutorial-article-footer__inner{padding:5rem 1.375rem}}.ah .tutorial-article-footer__title{letter-spacing:-.025em;text-wrap:balance;max-width:22ch;margin:0 0 2rem;font-size:clamp(1.75rem,4.6vw,3rem);font-weight:600;line-height:1.1}.ah .tutorial-article-footer__title span{color:var(--ah-muted)}.ah .tutorial-article-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (max-width:1068px){.ah .tutorial-article-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:734px){.ah .tutorial-article-footer__grid{grid-template-columns:minmax(0,1fr)}}.ah .ta{gap:0;max-width:none;padding:0 0 2rem}.ta-hero{text-align:center;max-width:68rem;margin:0 auto;padding:10rem 1.375rem 0}@media (max-width:734px){.ta-hero{padding-top:7rem}}.ta-hero>*{animation:.9s cubic-bezier(.28,.11,.32,1) both ah-rise}.ta-hero>:nth-child(2){animation:1.1s cubic-bezier(.28,.11,.32,1) 50ms both ah-focus}.ta-hero>:nth-child(n+3){animation-delay:.15s}.ta-hero__eyebrow{color:var(--ah-muted);align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.0625rem;font-weight:600;display:inline-flex}.ah .ta-hero__title{letter-spacing:-.04em;white-space:normal;text-wrap:balance;margin:0;font-size:clamp(2.75rem,7vw,5rem);font-weight:700;line-height:1.02}.ta-hero__lede{max-width:46rem;color:var(--ah-muted);letter-spacing:-.012em;text-wrap:balance;margin:1.75rem auto 0;font-size:clamp(1.1875rem,2vw,1.375rem);font-weight:500;line-height:1.4}.ta-hero__meta{color:var(--ah-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1.25rem;margin-top:1.5rem;font-size:.9375rem;display:flex}.ta-hero__actions{align-items:center;gap:.75rem;display:inline-flex}.ta-hero__actions .tutorial-share-btn{color:var(--ah-muted)}.ta-hero__actions .tutorial-share-btn:hover{color:var(--ah-text)}.ah .ta-hero__media{background:var(--ah-tile);border-radius:1.75rem;width:min(64rem,100% - 2.75rem);max-width:none;max-height:none;margin:3.5rem auto 0;animation:1s cubic-bezier(.28,.11,.32,1) .25s both ah-rise}@media (max-width:734px){.ah .ta-hero__media{border-radius:1.25rem;margin-top:2.5rem}}.ta-layout{grid-template-columns:minmax(0,46rem);justify-content:center;gap:4rem;padding:5rem 1.375rem 0;display:grid}@media (min-width:75rem){.ta[data-layers] .ta-layout{grid-template-columns:minmax(0,46rem) 13rem}}@media (max-width:734px){.ta-layout{padding-top:3.5rem}}.ah .ta .tutorial-article-body{color:var(--ah-text);letter-spacing:-.006em;font-size:1.1875rem;line-height:1.6}.ah .ta .tutorial-article-body h2{color:var(--ah-text)}.ah .ta .tutorial-article-body .tutorial-heading-chapter{letter-spacing:-.035em;margin-top:5rem;scroll-margin-top:5rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.08}.ah .ta .tutorial-article-body .tutorial-heading-section{letter-spacing:-.025em;margin-top:4rem;scroll-margin-top:5rem;font-size:clamp(1.5rem,3vw,1.875rem);font-weight:700;line-height:1.15}.ah .ta .tutorial-article-body .tutorial-heading-step{letter-spacing:-.015em;margin-top:3rem;scroll-margin-top:5rem;font-size:1.3125rem;font-weight:600;line-height:1.25}.ah .ta .tutorial-article-body .tutorial-image,.ah .ta .tutorial-article-body .tutorial-content-image{border-radius:1.25rem}.ah .ta .tutorial-article-body .tutorial-image-caption{color:var(--ah-muted);opacity:1;text-align:center;margin-top:.875rem}.ah .ta .tutorial-article-body .tutorial-figure-split{background:var(--ah-tile);border-radius:1.75rem;padding:1rem}.ah .ta .tutorial-article-body .tutorial-figure-split .tutorial-content-image{border-radius:.875rem}.ah .ta .tutorial-article-body ol,.ah .ta .tutorial-article-body ul{padding-left:1.4em}.ah .ta .tutorial-article-body li::marker{color:var(--ah-muted)}.ah .ta .tutorial-article-body a{color:var(--ah-accent)}.ta-layers{display:none}@media (min-width:75rem){.ta-layers{scrollbar-width:none;align-self:start;max-height:calc(100vh - 8rem);display:block;position:sticky;top:6rem;overflow-y:auto}}.ta-layers__title{color:var(--ah-muted);margin:0 0 .75rem .625rem;font-size:.75rem;font-weight:600}.ta-layers__list{margin:0;padding:0;list-style:none}.ta-layers__list li[data-level=step] .ta-layers__item{padding-left:1.75rem}.ta-layers__item{color:var(--ah-muted);border-radius:.5rem;align-items:center;gap:.5rem;padding:.375rem .625rem;font-size:.8125rem;line-height:1.3;text-decoration:none;transition:background-color .35s ease-out,color .2s;display:flex}@supports (transition-timing-function:linear(0, 1)){.ta-layers__item{transition-timing-function:linear(0,.011,.041,.084,.138,.198,.261,.326,.391,.454,.514,.572,.625,.675,.72,.761,.798,.831,.86,.885,.908,.927,.943,.957,.969,.979,.987,.993,.998,1.002,1.005,1.007,1.007,1.006,1.004,1.002,1),ease}}.ta-layers__item svg{opacity:.7;flex-shrink:0}.ta-layers__item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ta-layers__item:hover{color:var(--ah-text)}.ta-layers__item[aria-current]{background:color-mix(in srgb,var(--ah-accent)14%,transparent);color:var(--ah-text);font-weight:500}.ta-layers__item[aria-current] svg{color:var(--ah-accent);opacity:1}.ta-layers__item:focus-visible{outline:2px solid var(--ah-accent);outline-offset:1px}.ta-next{width:min(46rem,100% - 2.75rem);margin:7rem auto 0}@media (min-width:75rem){.ta[data-layers] .ta-next{width:46rem;transform:translate(-8.5rem)}}.ta-next__card{color:#fff;transition:transform .6s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%);border-radius:1.75rem;flex-direction:column;gap:.375rem;padding:2rem 4rem 2rem 2rem;text-decoration:none;display:flex;position:relative}.ta-next__card:hover{transform:translateY(-4px)}.ta-next__card:active{transition-duration:.2s;transform:scale(.98)}.ta-next__card:focus-visible{outline:2px solid var(--ah-accent);outline-offset:3px}.ta-next__label{color:#ffffffb3;font-size:.8125rem;font-weight:600}.ta-next__eyebrow{color:#ffffffbf;margin-top:1.25rem;font-size:.9375rem;font-weight:600}.ta-next__title{letter-spacing:-.025em;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.12}.ta-next__arrow{font-size:1.75rem;line-height:1;position:absolute;bottom:2rem;right:2rem}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (max-width:1068px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:734px){.people-grid{grid-template-columns:minmax(0,1fr)}}.people-grid>li{display:flex}.person-card{background:var(--ah-tile);border-radius:1.75rem;flex-direction:column;width:100%;padding:1.75rem;display:flex}@media (max-width:734px){.person-card{border-radius:1.25rem;padding:1.5rem}}.person-card__avatar{color:#fff;letter-spacing:.02em;background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%);border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;margin-bottom:1.5rem;font-size:1.125rem;font-weight:600;display:grid;box-shadow:inset 0 1px 1px #ffffff59,0 4px 12px -4px #00000059}.person-card__city{color:var(--ah-muted);margin:0 0 .375rem;font-size:.875rem;font-weight:600}.person-card__name{letter-spacing:-.02em;margin:0;font-size:1.3125rem;font-weight:600;line-height:1.2}.person-card__note{color:var(--ah-muted);margin:.5rem 0 0;font-size:1rem;line-height:1.45}.person-card__links{flex-wrap:wrap;gap:.25rem 1rem;margin:auto 0 0;padding:1.25rem 0 0;list-style:none;display:flex}.person-card__links a{color:var(--ah-accent);font-size:.9375rem;text-decoration:none}.person-card__links a:hover{text-underline-offset:.18em;text-decoration:underline}.people-section__more{text-align:right;margin:2rem 0 0}.people-page{padding-bottom:6rem}.people-section{padding-top:4rem}.people-filter{flex-wrap:wrap;gap:.5rem;display:flex}@media (max-width:734px){.people-filter{scrollbar-width:none;flex-wrap:nowrap;margin:0 -1.375rem;padding:0 1.375rem;overflow-x:auto}}.people-filter__chip{background:var(--ah-tile);box-shadow:0 0 0 1px var(--ah-hairline);color:var(--ah-text);font:inherit;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .5s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);border:0;border-radius:999px;flex-shrink:0;padding:.5rem 1rem;font-size:.9375rem}.people-filter__chip:hover{background:var(--ah-status)}.people-filter__chip:active{transition-duration:.2s,.2s,.15s;transform:scale(.94)}.people-filter__chip[aria-pressed=true]{background:var(--ah-text);box-shadow:none;color:var(--ah-canvas)}.people-filter__chip:focus-visible{outline:2px solid var(--ah-accent);outline-offset:2px}.people-grid{align-content:start}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-group(*){animation-duration:.5s;animation-timing-function:cubic-bezier(.28,.11,.32,1)}@supports (animation-timing-function:linear(0, 1)){::view-transition-group(*){animation-timing-function:linear(0,.011,.041,.084,.138,.198,.261,.326,.391,.454,.514,.572,.625,.675,.72,.761,.798,.831,.86,.885,.908,.927,.943,.957,.969,.979,.987,.993,.998,1.002,1.005,1.007,1.007,1.006,1.004,1.002,1)}}::view-transition-old(*){animation-duration:.25s}::view-transition-new(*){animation-duration:.25s}.people-directory__count{color:var(--ah-muted);margin:1.5rem 0 1.25rem;font-size:.9375rem}.wtf-page{padding-bottom:7rem}.wtf-hero{text-align:center;max-width:68rem;margin:0 auto;padding:10rem 1.375rem 0}@media (max-width:734px){.wtf-hero{padding-top:7rem}}.wtf-hero>*{animation:.9s cubic-bezier(.28,.11,.32,1) both ah-rise}.wtf-hero>:nth-child(2){animation:1.1s cubic-bezier(.28,.11,.32,1) 50ms both ah-focus}.wtf-hero>:nth-child(n+3){animation-delay:.2s}.wtf-hero__eyebrow{color:var(--ah-muted);margin:0 0 1.25rem;font-size:1.0625rem;font-weight:600}.wtf-hero__title{letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:min(11vw,7rem);font-weight:700;line-height:1.05}.wtf-hero__title .ah-glass-word{margin:0 .06em 0 0;padding:.08em .3em .12em .28em}.wtf-hero__title .ah-glass-word__text{letter-spacing:-.035em;font-size:.74em}.wtf-hero__subtitle{letter-spacing:-.02em;margin:1.5rem 0 0;font-size:clamp(1.375rem,2.8vw,2rem);font-weight:600}.wtf-hero__lede{max-width:40rem;color:var(--ah-muted);text-wrap:balance;margin:1rem auto 0;font-size:clamp(1.1875rem,2.2vw,1.4375rem);font-weight:500;line-height:1.4}.wtf-hero__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem 1.5rem;margin-top:2.25rem;display:flex}.wtf-countdown{color:var(--ah-text);font-size:1.0625rem;font-weight:600}.wtf-rsvp{background:var(--ah-text);height:2.75rem;color:var(--ah-canvas);transition:transform .5s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);border-radius:999px;align-items:center;padding:0 1.5rem;font-size:1.0625rem;font-weight:500;text-decoration:none;display:inline-flex}.wtf-rsvp:active{transition-duration:.15s;transform:scale(.96)}.wtf-rsvp--soon{background:var(--ah-tile);box-shadow:0 0 0 1px var(--ah-hairline);color:var(--ah-muted)}.wtf-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0;display:grid}@media (max-width:734px){.wtf-details{grid-template-columns:minmax(0,1fr)}}.wtf-details dd{margin-left:0}.wtf-details .de-card__title{margin-top:.25rem}.wtf-video{max-width:52rem;margin:3.5rem auto 0}.wtf-video__frame{aspect-ratio:16/9;background:#000;border-radius:1.75rem;position:relative;overflow:hidden;box-shadow:0 24px 48px -24px #00000073}.wtf-video__frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.wtf-video__caption{color:var(--ah-muted);text-align:center;margin-top:1rem;font-size:.9375rem;line-height:1.45}.wtf-video__caption a{color:var(--ah-text);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.2em}.wtf-video__views{color:var(--ah-text);font-weight:600}.wtf-why{text-align:center;max-width:46rem;margin:0 auto}.wtf-why__eyebrow{color:var(--ah-muted);margin:0 0 1.25rem;font-size:1.0625rem;font-weight:600}.wtf-why__quote{margin:0}.wtf-why__quote p{letter-spacing:-.022em;text-wrap:balance;margin:0;font-size:clamp(1.5rem,3.2vw,2.125rem);font-weight:600;line-height:1.25}.wtf-why__by{color:var(--ah-muted);margin-top:1.5rem;font-size:1.0625rem;font-weight:500}.wtf-topics{max-width:46rem}.wtf-is{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}@media (max-width:734px){.wtf-is{grid-template-columns:minmax(0,1fr)}}.wtf-is__col{background:var(--ah-tile);border-radius:1.75rem;padding:2rem}@media (max-width:734px){.wtf-is__col{border-radius:1.25rem;padding:1.5rem}}.wtf-is__col--not{box-shadow:inset 0 0 0 1px var(--ah-hairline);background:0 0}.wtf-is__head{letter-spacing:-.02em;margin:0 0 1.25rem;font-size:1.375rem;font-weight:700}.wtf-is__list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.wtf-is__item{grid-template-columns:1.375rem minmax(0,1fr);gap:.75rem;font-size:1.0625rem;line-height:1.45;display:grid}.wtf-is__item:before{border-radius:50%;place-items:center;width:1.375rem;height:1.375rem;margin-top:.05rem;font-size:.75rem;font-weight:700;display:grid}.wtf-is__item--yes:before{content:"✓";background:var(--ah-text);color:var(--ah-canvas)}.wtf-is__item--no{color:var(--ah-muted)}.wtf-is__item--no:before{content:"✕";box-shadow:inset 0 0 0 1px var(--ah-hairline);color:var(--ah-muted)}.wtf-host{background:var(--ah-tile);border-radius:1.75rem;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2rem 2.5rem;padding:2.5rem;display:grid}@media (max-width:734px){.wtf-host{border-radius:1.25rem;grid-template-columns:minmax(0,1fr);padding:1.75rem}}.wtf-host__photo{object-fit:cover;border-radius:50%;width:8.5rem;height:8.5rem}@media (max-width:734px){.wtf-host__photo{width:5.5rem;height:5.5rem}}.wtf-host__monogram{color:#fff;letter-spacing:.02em;background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%);place-items:center;font-size:2.5rem;font-weight:600;display:grid;box-shadow:inset 0 1px 1px #ffffff59,0 12px 28px -12px #00000073}@media (max-width:734px){.wtf-host__monogram{font-size:1.75rem}}.wtf-host__name{letter-spacing:-.03em;margin:0;font-size:clamp(1.75rem,3.4vw,2.25rem);font-weight:700}.wtf-host__role{color:var(--ah-muted);margin:.25rem 0 1rem;font-size:1rem;font-weight:500}.wtf-host__bio{max-width:38rem;margin:0 0 .75rem;font-size:1.125rem;line-height:1.5}.wtf-host__links{gap:1.5rem;margin:1rem 0 0;display:flex}.wtf-stats{border-top:1px solid var(--ah-hairline);grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));margin:.5rem 0 0;padding-top:2rem;display:grid}@media (max-width:734px){.wtf-stats{grid-template-columns:minmax(0,1fr);gap:1.25rem;padding-top:1.5rem}}.wtf-stat{flex-direction:column-reverse;justify-content:flex-end;gap:.375rem;padding:0 1.5rem;display:flex}.wtf-stat:first-child{padding-left:0}.wtf-stat+.wtf-stat{border-left:1px solid var(--ah-hairline)}@media (max-width:734px){.wtf-stat{padding:0}.wtf-stat+.wtf-stat{border-left:0}}.wtf-stat__value{letter-spacing:-.035em;margin:0;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1}.wtf-stat__label{color:var(--ah-muted);font-size:.9375rem;line-height:1.35}.event-card{color:#fff;transition:transform .6s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%);border-radius:1.75rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.75rem 2rem;padding:2rem 2.25rem;text-decoration:none;display:grid}.event-card:hover{transform:translateY(-4px)}.event-card:active{transition-duration:.2s;transform:scale(.985)}.event-card:focus-visible{outline:2px solid var(--ah-accent);outline-offset:3px}@media (max-width:734px){.event-card{border-radius:1.25rem;grid-template-columns:auto minmax(0,1fr);padding:1.5rem}}.event-card__date{color:#1d1d1f;background:#fff;border-radius:1.25rem;flex-direction:column;justify-content:center;align-items:center;width:5.5rem;height:5.5rem;display:flex;box-shadow:0 10px 24px -10px #00000073}@media (max-width:734px){.event-card__date{border-radius:1rem;width:4.25rem;height:4.25rem}}.event-card__month{color:#ff3b30;letter-spacing:.04em;text-transform:uppercase;font-size:.8125rem;font-weight:700}.event-card__day{letter-spacing:-.03em;font-size:2.5rem;font-weight:600;line-height:1}@media (max-width:734px){.event-card__day{font-size:1.875rem}}.event-card__body{flex-direction:column;gap:.375rem;min-width:0;display:flex}.event-card__meta{color:#ffffffbf;font-size:.9375rem;font-weight:500}.event-card__title{letter-spacing:-.03em;font-size:clamp(1.625rem,3.4vw,2.5rem);font-weight:700;line-height:1.05}.event-card__subtitle{color:#ffffffd9;font-size:1.125rem;font-weight:500}.event-card__aside{flex-direction:column;align-items:flex-end;gap:.75rem;display:flex}.event-card__aside .wtf-countdown{color:#fff}@media (max-width:734px){.event-card__aside{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center}}.event-card__cta{color:#1d1d1f;background:#fffffff2;border-radius:999px;align-items:center;gap:.25rem;height:2.5rem;padding:0 1.125rem;font-size:.9375rem;font-weight:600;display:inline-flex}html.reveal-ready [data-reveal]:not([data-revealed]){opacity:0;transform:translateY(2.5rem)scale(.97)}html.reveal-ready [data-reveal]{--reveal-delay:calc(var(--reveal-i,0)*80ms);transition:opacity .6s ease var(--reveal-delay),transform 1.1s ease-out var(--reveal-delay)}@supports (transition-timing-function:linear(0, 1)){html.reveal-ready [data-reveal]{transition-timing-function:ease,linear(0,.011,.041,.084,.138,.198,.261,.326,.391,.454,.514,.572,.625,.675,.72,.761,.798,.831,.86,.885,.908,.927,.943,.957,.969,.979,.987,.993,.998,1.002,1.005,1.007,1.007,1.006,1.004,1.002,1)}}.de{padding-bottom:7rem}@media (max-width:734px){.de{padding-bottom:5rem}}.de-hero{text-align:center;max-width:52rem;margin:0 auto;padding:10rem 1.375rem 0}@media (max-width:734px){.de-hero{padding-top:7rem}}.de-hero>*{animation:.9s cubic-bezier(.28,.11,.32,1) both ah-rise}.de-hero>:nth-child(2){animation:1.1s cubic-bezier(.28,.11,.32,1) 50ms both ah-focus}.de-hero>:nth-child(3){animation-delay:.15s}.de-hero>:nth-child(n+4){animation-delay:.25s}.de-hero__eyebrow{color:var(--ah-muted);margin:0 0 1rem;font-size:1.0625rem;font-weight:600}.de-hero__title{letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(3rem,9vw,6.5rem);font-weight:700;line-height:.98}.de-hero__lede{letter-spacing:-.02em;text-wrap:balance;max-width:40rem;margin:2rem auto 0;font-size:clamp(1.375rem,2.6vw,1.875rem);font-weight:600;line-height:1.25}.de-hero__note{max-width:36rem;color:var(--ah-muted);margin:1rem auto 0;font-size:1rem;line-height:1.5}.de-hero__meta{color:var(--ah-muted);margin:1.25rem 0 0;font-size:.9375rem}.de-contents{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:3rem;display:flex}@media (max-width:734px){.de-contents{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;margin-left:-1.375rem;margin-right:-1.375rem;padding:0 1.375rem;overflow-x:auto}}.de-contents a{background:var(--ah-tile);color:var(--ah-text);box-shadow:0 0 0 1px var(--ah-hairline);transition:background-color .2s ease,transform .5s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);border-radius:999px;flex-shrink:0;padding:.5rem 1rem;font-size:.9375rem;text-decoration:none}.de-contents a:hover{background:var(--ah-status)}.de-contents a:active{transition-duration:.2s,.15s;transform:scale(.94)}.de-contents a:focus-visible{outline:2px solid var(--ah-accent);outline-offset:2px}.de .ah-section{padding-top:9rem;scroll-margin-top:4rem}@media (max-width:734px){.de .ah-section{padding-top:6rem}}.de .ah-section .ah-section__title{margin-bottom:2rem}.de .ah-section--dark{margin-top:9rem;padding:8rem 0}@media (max-width:734px){.de .ah-section--dark{margin-top:6rem;padding:5.5rem 0}}.de .ah-section--dark+.ah-section{padding-top:8rem}@media (max-width:734px){.de .ah-section--dark+.ah-section{padding-top:5.5rem}}.de-prose{max-width:40rem;margin:0 0 3.5rem}@media (max-width:734px){.de-prose{margin-bottom:2.5rem}}.de-prose p{color:var(--ah-muted);letter-spacing:-.008em;margin:0 0 1rem;font-size:1.1875rem;line-height:1.55}.de-prose a{color:var(--ah-text);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.2em}.de-card{background:var(--ah-tile);border-radius:1.75rem;padding:2rem}@media (max-width:734px){.de-card{border-radius:1.25rem;padding:1.5rem}}.de-card__index{color:var(--ah-muted);font-variant-numeric:tabular-nums;margin-bottom:3rem;font-size:.875rem;font-weight:600;display:block}.de-card__eyebrow{color:var(--ah-muted);margin:0 0 .5rem;font-size:.875rem;font-weight:600;display:block}.de-card__title{letter-spacing:-.02em;margin:0;font-size:1.3125rem;font-weight:600;line-height:1.2}.de-card__text{color:var(--ah-muted);margin:.625rem 0 0;font-size:1.0625rem;line-height:1.45}.de-duties{grid-template-columns:repeat(6,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.de-duties>li{grid-column:span 2}.de-duties>li:nth-child(n+4){grid-column:span 3}@media (max-width:734px){.de-duties{grid-template-columns:minmax(0,1fr)}.de-duties>li,.de-duties>li:nth-child(n+4){grid-column:auto}}.de-note{max-width:40rem;color:var(--ah-muted);margin:3rem 0 0;font-size:1.0625rem;line-height:1.55}.de-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}@media (max-width:734px){.de-roles{grid-template-columns:minmax(0,1fr)}}.de-role{background:var(--ah-tile);border-radius:1.75rem;flex-direction:column;padding:2rem;display:flex}.de-role[data-featured]{color:#fff;background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%)}.de-role[data-featured] .de-role__facts dt{color:#ffffffb3}.de-role[data-featured] .de-role__facts dd{color:#fff}@media (max-width:734px){.de-role{border-radius:1.25rem}}.de-role__name{letter-spacing:-.02em;margin:0 0 2.75rem;font-size:1.5rem;font-weight:600}.de-role__facts{gap:1.5rem;margin:auto 0 0;display:grid}.de-role__facts dt{color:var(--ah-muted);font-size:.8125rem;font-weight:600}.de-role__facts dd{margin:.25rem 0 0;font-size:1.0625rem;line-height:1.4}.de-statement{max-width:44rem;margin:6.5rem auto 0}@media (max-width:734px){.de-statement{margin-top:4.5rem}}.de-statement{letter-spacing:-.022em;text-align:center;text-wrap:balance;font-size:clamp(1.5rem,3.2vw,2.25rem);font-weight:600;line-height:1.2}.de-apis{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (max-width:1068px){.de-apis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:734px){.de-apis{grid-template-columns:minmax(0,1fr)}}.de-api{background:var(--ah-tile);border-radius:1.75rem;flex-direction:column;min-height:17rem;padding:2rem;display:flex}@media (max-width:734px){.de-api{border-radius:1.25rem;min-height:0}}.de-api--note{box-shadow:inset 0 0 0 1px var(--ah-hairline);background:0 0}.de-api--note .ah-link{margin-top:auto;padding-top:1.25rem}.de-api__code{color:#0000;background:linear-gradient(#fefefd 0%,#b1b8bc 100%);-webkit-background-clip:text;background-clip:text;align-self:flex-start;margin-bottom:auto;padding-bottom:2.5rem;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.0625rem;font-weight:600}.de-workflow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:3rem 4rem;display:grid}@media (max-width:1068px){.de-workflow{grid-template-columns:minmax(0,1fr)}}.de-steps{counter-reset:none;gap:0;margin:0;padding:0;list-style:none;display:grid}.de-step{border-top:1px solid var(--ah-hairline);grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;padding:1.75rem 0;display:grid}.de-step:first-child{border-top:0;padding-top:0}.de-step__index{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--ah-muted);font-size:1.75rem;font-weight:700;line-height:1}.de-step__title{letter-spacing:-.015em;margin:0;font-size:1.1875rem;font-weight:600}.de-step__text{color:var(--ah-muted);margin:.375rem 0 0;font-size:1.0625rem;line-height:1.45}.de-example{margin:0;position:sticky;top:5rem}@media (max-width:1068px){.de-example{position:static}}.de-example__stage{aspect-ratio:1;background:linear-gradient(230deg,#435059 10%,#5d6a72 36%,#78858d 63%,#747b81 100%);border-radius:1.75rem;place-items:center;display:grid;position:relative;overflow:hidden}@media (max-width:1068px){.de-example__stage{aspect-ratio:4/3}}@media (max-width:734px){.de-example__stage{border-radius:1.25rem}}.de-example__stage:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 46%,#ffffff38,#0000 60%);position:absolute;inset:0}.de-example__caption{color:var(--ah-muted);margin-top:1.25rem;font-size:1rem;line-height:1.5}.de-example__caption strong{color:var(--ah-text);font-weight:600}.de-example__caption a{color:var(--ah-text);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.2em}.de-reasons{border-top:1px solid var(--ah-hairline);grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin:0;padding:2.5rem 0 0;list-style:none;display:grid}@media (max-width:734px){.de-reasons{grid-template-columns:minmax(0,1fr);gap:1.5rem}}.de-paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}@media (max-width:734px){.de-paths{grid-template-columns:minmax(0,1fr)}}.de-paths .de-card__title{font-size:1.5rem}.de-subtitle{margin:6rem 0 1.75rem}@media (max-width:734px){.de-subtitle{margin-top:4.5rem}}.de-subtitle{letter-spacing:-.02em;font-size:1.5rem;font-weight:600}.de-exercises{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (max-width:1068px){.de-exercises{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:734px){.de-exercises{grid-template-columns:minmax(0,1fr)}}.de-exercise{background:var(--ah-tile);height:100%;min-height:9rem;color:var(--ah-text);transition:transform .6s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);border-radius:1.25rem;flex-direction:column;padding:1.5rem 3rem 1.5rem 1.5rem;text-decoration:none;display:flex;position:relative}.de-exercise:hover{transform:translateY(-4px)}.de-exercise:active{transition-duration:.2s;transform:scale(.97)}.de-exercise:focus-visible{outline:2px solid var(--ah-accent);outline-offset:3px}.de-exercise__title{letter-spacing:-.015em;margin-top:auto;font-size:1.1875rem;font-weight:600;line-height:1.25}.de-exercise__arrow{color:var(--ah-accent);font-size:1.5rem;line-height:1;position:absolute;bottom:1.375rem;right:1.5rem}.de-faq__list{border-top:1px solid var(--ah-hairline);interpolate-size:allow-keywords}.de-faq__item{border-bottom:1px solid var(--ah-hairline)}.de-faq__item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.75rem 0;list-style:none;display:flex}.de-faq__item summary::-webkit-details-marker{display:none}.de-faq__item summary:focus-visible{outline:2px solid var(--ah-accent);outline-offset:4px;border-radius:.5rem}.de-faq__item h3{letter-spacing:-.015em;margin:0;font-size:1.25rem;font-weight:600}.de-faq__item::details-content{block-size:0;transition:block-size .7s linear(0,.011,.041,.084,.138,.198,.261,.326,.391,.454,.514,.572,.625,.675,.72,.761,.798,.831,.86,.885,.908,.927,.943,.957,.969,.979,.987,.993,.998,1.002,1.005,1.007,1.007,1.006,1.004,1.002,1),content-visibility .7s allow-discrete;overflow:clip}.de-faq__item[open]::details-content{block-size:auto}.de-faq__item[open] p{animation:.6s ease-out both de-answer-in}.de-faq__item p{max-width:46rem;color:var(--ah-muted);margin:-.25rem 0 1.75rem;font-size:1.0625rem;line-height:1.55}@keyframes de-answer-in{0%{opacity:0;filter:blur(4px);transform:translateY(-.5rem)}}.de-faq__icon{background:var(--ah-tile);border-radius:50%;flex-shrink:0;width:1.75rem;height:1.75rem;position:relative}.de-faq__icon:before,.de-faq__icon:after{content:"";background:var(--ah-text);width:.75rem;height:2px;transition:transform .6s linear(0,.017,.063,.13,.211,.302,.397,.492,.584,.671,.751,.822,.885,.939,.983,1.019,1.047,1.068,1.082,1.09,1.094,1.094,1.091,1.086,1.079,1.07,1.062,1.053,1.044,1.035,1.027,1.02,1.014,1.008,1.004,1,.998,.997,.998,.999,1);border-radius:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.de-faq__icon:after{transform:translate(-50%,-50%)rotate(90deg)}[open]>summary .de-faq__icon:after{transform:translate(-50%,-50%)rotate(0)}@media (prefers-reduced-motion:reduce){html.reveal-ready [data-reveal]{transition:none}.de-faq__item::details-content{transition:none}.ah-hero__title,.de-hero>*,.wtf-hero>*,.ta-hero>*,.ah .ta-hero__media,.de-faq__item[open] p,.ah-glass-word,.ah-hero__foot{animation:none}.ah-tile__media img,.ah-tile__media video{transition:none}.ah-island[data-done] .ah-island__progress{animation:none}.ah-island,.ah-island[data-open],.ah-island[data-min],.ah-island__compact,.ah-island__name{transition-duration:.01ms}.ah-toolbar{transition:opacity .2s}.ah-toolbar[data-hidden]:not(:focus-within){transform:none}.ah-island__label,.ui-numeric__in{animation:none}.ui-numeric__out{display:none}.ah-tile:hover .ah-tile__media img,.ah-tile:hover .ah-tile__media video{transform:none}}*{box-sizing:border-box;margin:0;padding:0}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#00000024 #0000;background-color:#dad9da;background-image:linear-gradient(#bfc3c8 17.31%,#dad9da 100%);background-repeat:no-repeat;background-size:100% 100%;background-attachment:fixed;min-height:100%;overflow-y:auto}html::-webkit-scrollbar{width:5px}html::-webkit-scrollbar-track{background:0 0}html::-webkit-scrollbar-thumb{background-color:#00000024;background-clip:padding-box;border:1px solid #0000;border-radius:999px}html::-webkit-scrollbar-thumb:hover{background-color:#0000003d}body{color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:0 0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.7;overflow-x:hidden}.site-container{flex-direction:column;width:100%;min-height:100vh;display:flex}body.dark-mode{color:#e5e5e5}html:has(body.dark-mode){scrollbar-color:#ffffff29 #0000;background-color:#1a1a1a;background-image:linear-gradient(#0a0a0a 0%,#1a1a1a 100%)}html:has(body.dark-mode)::-webkit-scrollbar-thumb{background-color:#ffffff29}html:has(body.dark-mode)::-webkit-scrollbar-track{background:0 0}html:has(body.dark-mode)::-webkit-scrollbar-thumb:hover{background-color:#ffffff47}@media (min-width:768px){.sidebar-shell{display:contents}}@media (max-width:768px){.sidebar-shell{flex-shrink:0;width:100%}}.sidebar-mobile-bar{display:none}.sidebar{background:unset;background-color:unset;box-sizing:border-box;background-image:none;border-right:0 #0000;border-image:;flex-direction:column;flex-shrink:0;align-self:flex-start;width:240px;height:100vh;padding:2rem 1.5rem;display:flex;position:sticky;top:0}body.dark-mode .sidebar{background:unset;background-image:none;border-right:0 #0000}@media (max-width:768px){.sidebar{border-bottom:1px solid var(--de-skeleton-border);width:100%;height:auto;min-height:0;max-height:none;padding:1.5rem 1rem 1rem;position:relative;top:0}}.sidebar-logo{margin-bottom:0}.sidebar-brand{flex-direction:column;gap:1rem;max-width:100%;display:flex}.site-logo,.home-portfolio-section__heading{font-size:var(--de-nav-size);margin:0;padding:0;font-weight:600;line-height:1.2}.site-logo{color:#000;white-space:nowrap;text-decoration:none;transition:opacity .2s}body.dark-mode .site-logo{color:#e5e5e5}.site-logo:hover{opacity:.7}.sidebar-nav{flex-direction:column;flex-shrink:0;gap:.5rem;display:flex}.sidebar-link{color:#404040;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.sidebar-link:hover{color:#000}.sidebar-link.active{color:#000;font-weight:600}body.dark-mode .sidebar-link{color:#a0a0a0}body.dark-mode .sidebar-link:hover{color:#e5e5e5}body.dark-mode .sidebar-link.active{color:#e5e5e5;font-weight:600}.sidebar-link--wip{opacity:.5;cursor:pointer}.sidebar-link--wip:hover{color:#404040}.sidebar-link--wip.active{color:#404040;font-weight:500}body.dark-mode .sidebar-link--wip:hover{color:#a0a0a0}body.dark-mode .sidebar-link--wip.active{color:#a0a0a0;font-weight:500}.sidebar-link-wip{letter-spacing:.04em;color:#404040;background:#4040401f;border-radius:999px;flex-shrink:0;align-items:center;padding:.125rem .375rem;font-size:.625rem;font-weight:600;line-height:1;display:inline-flex}body.dark-mode .sidebar-link-wip{color:#a0a0a0;background:#e5e5e51f}.sidebar-link-badge{color:#404040;background:#4040401f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;font-size:.6875rem;font-weight:600;line-height:1;display:inline-flex}.sidebar-link.active .sidebar-link-badge{color:#000;background:#00000014}body.dark-mode .sidebar-link-badge{color:#a0a0a0;background:#e5e5e51f}.sidebar-link.active body.dark-mode .sidebar-link-badge{color:#e5e5e5;background:#e5e5e52e}.sidebar-quote-text{color:#404040;flex-shrink:0;margin:0;font-size:.8125rem;font-style:normal;line-height:1.5}body.dark-mode .sidebar-quote-text{color:#a0a0a0}.sidebar-social-x{color:#404040;opacity:.55;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;text-decoration:none;transition:opacity .15s;display:inline-flex}.sidebar-social-x:hover{opacity:.9}body.dark-mode .sidebar-social-x{color:#a0a0a0}.sidebar-social-x-icon{display:block}.sidebar-quote-author{color:#757575;font-style:normal}body.dark-mode .sidebar-quote-author{color:#a0a0a0}.sidebar-theme{color:#404040;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.875rem}body.dark-mode .sidebar-theme{color:#a0a0a0}.sidebar-theme:hover{opacity:.7}.right-sidebar{flex-direction:column;flex-shrink:0;align-self:flex-start;width:240px;height:100vh;padding:2rem 1.5rem;display:flex;position:sticky;top:0}@media (max-width:768px){.right-sidebar{width:200px;padding:1.5rem 1rem}}.right-sidebar-content{flex-direction:column;gap:2rem;display:flex}.right-sidebar-section{flex-direction:column;display:flex}.right-sidebar-title{color:#000;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:.875rem;font-weight:600}body.dark-mode .right-sidebar-title{color:#e5e5e5}.right-sidebar-nav{flex-direction:column;gap:.5rem;display:flex}.right-sidebar-link{color:#404040;font-size:.875rem;font-weight:400;text-decoration:none;transition:color .2s}.right-sidebar-link:hover{color:#000}body.dark-mode .right-sidebar-link{color:#a0a0a0}body.dark-mode .right-sidebar-link:hover{color:#e5e5e5}.header{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;border-bottom:1px solid #00000014;flex-shrink:0;width:100%;padding:1rem 1.5rem;position:sticky;top:0}@media (max-width:768px){.header{padding:.75rem 1rem}}body.dark-mode .header{background:#0a0a0ab8;border-bottom-color:#2a2a2a}.header-right{align-items:center;gap:2rem;display:flex}.header-nav{justify-content:space-between;align-items:center;width:100%;max-width:600px;margin:0 auto;padding:0;display:flex}@media (max-width:768px){.header-nav{padding:0}}.header-links{gap:2rem;display:flex}@media (max-width:768px){.header-links{display:none}}.header-link{color:#404040;font-size:.875rem;text-decoration:none;transition:color .2s}.header-link:hover{color:#000}body.dark-mode .header-link{color:#a0a0a0}body.dark-mode .header-link:hover{color:#e5e5e5}.theme-toggle{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .2s;display:flex}.theme-toggle .theme-icon{stroke-width:1.5px;width:18px;height:18px}.theme-toggle:hover{background-color:#f5f5f5}body.dark-mode .theme-toggle:hover{background-color:#1a1a1a}.theme-icon{color:#5d6a72;transition:transform .3s}body.dark-mode .theme-icon{color:#a0a0a0}.main{background:0 0;width:100%;height:100vh;min-height:100vh;padding:0;display:flex}@media (max-width:768px){.main{flex-direction:column;height:auto;min-height:100vh}}.main-content{flex-direction:column;flex:1;width:100%;min-width:0;height:100%;min-height:0;margin:0;padding:1.5rem;display:flex;overflow:visible}@media (max-width:768px){.main-content{height:auto;min-height:auto;margin:0;padding:1rem}}.main-content.home-feed{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#00000024 #0000;padding:2rem 1.5rem 2rem 0;overflow:hidden auto}.main-content.home-feed::-webkit-scrollbar{width:5px}.main-content.home-feed::-webkit-scrollbar-track{background:0 0}.main-content.home-feed::-webkit-scrollbar-thumb{background-color:#00000024;background-clip:padding-box;border:1px solid #0000;border-radius:999px}.main-content.home-feed::-webkit-scrollbar-thumb:hover{background-color:#0000003d}body.dark-mode .main-content.home-feed{scrollbar-color:#ffffff29 #0000}body.dark-mode .main-content.home-feed::-webkit-scrollbar-thumb{background-color:#ffffff29}body.dark-mode .main-content.home-feed::-webkit-scrollbar-thumb:hover{background-color:#ffffff47}@media (min-width:1024px){.main-content.home-feed{padding-right:1.25rem}}@media (min-width:1280px){.main-content.home-feed{padding-right:1rem}}@media (max-width:768px){.main-content.home-feed{width:100%;height:auto;padding:.5rem 1rem 1rem;overflow:visible}}@media (prefers-reduced-motion:reduce){.main-content.home-feed *{transition-duration:.01ms!important;animation-duration:.01ms!important}}.main-content-grid{overflow:hidden}.card-grid-two-cols{grid-template-columns:1fr;align-content:start;gap:1.25rem;width:100%;margin:0 auto;padding:.25rem 0;display:grid}@media (min-width:1024px){.card-grid-two-cols{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.card-grid-two-cols .grid-empty{color:#404040;grid-column:1/-1;font-size:1rem}body.dark-mode .card-grid-two-cols .grid-empty{color:#a0a0a0}.thumb-card-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.thumb-card-link:hover .thumb-card:not(.thumb-card--fit-image){border-color:#0000001f;transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.thumb-card-link:focus-visible{outline-offset:4px;border-radius:12px;outline:2px solid #78858d}body.dark-mode .thumb-card-link:hover .thumb-card:not(.thumb-card--fit-image){border-color:#ffffff26;box-shadow:0 8px 24px #00000059}.thumb-card-link--wip{cursor:default;opacity:.55}.thumb-card-link--wip:hover .thumb-card{border-color:#00000014;transform:none;box-shadow:0 2px 8px #0000000f}body.dark-mode .thumb-card-link--wip:hover .thumb-card{border-color:#ffffff1a;box-shadow:0 2px 8px #00000040}.thumb-card-entry{color:inherit;cursor:pointer;text-decoration:none;display:block;position:relative}.thumb-card-entry:hover .thumb-card:not(.thumb-card--fit-image),.thumb-card-entry:focus-within .thumb-card:not(.thumb-card--fit-image){border-color:#0000001f;transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}body.dark-mode .thumb-card-entry:hover .thumb-card:not(.thumb-card--fit-image),body.dark-mode .thumb-card-entry:focus-within .thumb-card:not(.thumb-card--fit-image){border-color:#ffffff26;box-shadow:0 8px 24px #00000059}.thumb-card-stretch-link{z-index:1;border-radius:inherit;text-decoration:none;position:absolute;inset:0}.thumb-card-stretch-link:focus-visible{outline-offset:4px;border-radius:12px;outline:2px solid #78858d}.thumb-card-caption{z-index:2;pointer-events:none;letter-spacing:normal;color:#000;margin:.75rem 0 0;padding:0;font-size:.875rem;font-weight:500;line-height:1.5;position:relative}body.dark-mode .thumb-card-caption{color:#e5e5e5}.tutorial-view-count-badge{color:#404040;pointer-events:none;border-radius:999px;align-items:center;gap:.3rem;width:fit-content;padding:.2rem .5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.6875rem;font-weight:500;line-height:1;display:inline-flex}body.dark-mode .tutorial-view-count-badge{color:#a0a0a0}.tutorial-view-count-badge__icon{opacity:.72;flex-shrink:0}.tutorial-view-count-badge__value{font-variant-numeric:tabular-nums}.tutorial-view-count-badge--thumb{z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:none;background:#ffffff6b;position:absolute;bottom:.625rem;right:.625rem}body.dark-mode .tutorial-view-count-badge--thumb{background:#0a0a0a61}.tutorial-view-count-badge--hero{padding:0}.tutorial-view-count-badge--hero:before{content:"·";color:inherit;margin:0 .35rem}.tutorial-view-count{color:#404040;font-size:.8125rem;font-weight:400;line-height:1.4}body.dark-mode .tutorial-view-count{color:#a0a0a0}.tutorial-view-count--hero:before{content:"·";color:inherit;margin:0 .35rem}.tutorial-article-byline-group{flex-wrap:wrap;align-items:center;gap:0;min-width:0;display:inline-flex}.thumb-card{aspect-ratio:16/9;background:#ffffff59;border:1px solid #00000014;border-radius:10px;width:100%;transition:transform .2s,border-color .2s,box-shadow .2s;display:block;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000f}body.dark-mode .thumb-card{background:#ffffff14;border-color:#ffffff1a;box-shadow:0 2px 8px #00000040}.thumb-card-media{background:#f5f5f5;width:100%;height:100%;display:block;position:relative;overflow:hidden}.thumb-card-media:has(.thumb-card-video){background:0 0}body.dark-mode .thumb-card-media{background:#1a1a1a}body.dark-mode .thumb-card-media:has(.thumb-card-video){background:0 0}.thumb-card-media--placeholder{background:#0000000f}body.dark-mode .thumb-card-media--placeholder{background:#ffffff0f}.thumb-card-video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;top:0;left:0;opacity:1!important}.thumb-card-video--fit{object-fit:contain;background:#f5f5f5}body.dark-mode .thumb-card-video--fit{background:#1a1a1a}.thumb-card--fit-image,.thumb-card.thumb-card--fit-image{aspect-ratio:unset;height:auto;box-shadow:none;background:0 0;border:none;overflow:visible}body.dark-mode .thumb-card--fit-image,body.dark-mode .thumb-card.thumb-card--fit-image{box-shadow:none;background:0 0;border:none}.thumb-card--fit-image .thumb-card-image,.thumb-card.thumb-card--fit-image .thumb-card-image{border:1px solid #00000014;border-radius:10px;width:100%;max-width:100%;height:auto;transition:transform .2s,box-shadow .2s;display:block;box-shadow:0 2px 8px #0000000f}body.dark-mode .thumb-card--fit-image .thumb-card-image,body.dark-mode .thumb-card.thumb-card--fit-image .thumb-card-image{border-color:#ffffff1a;box-shadow:0 2px 8px #00000040}.thumb-card-link:hover .thumb-card--fit-image .thumb-card-image,.thumb-card-link:hover .thumb-card.thumb-card--fit-image .thumb-card-image{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}body.dark-mode .thumb-card-link:hover .thumb-card--fit-image .thumb-card-image,body.dark-mode .thumb-card-link:hover .thumb-card.thumb-card--fit-image .thumb-card-image{box-shadow:0 8px 24px #00000059}.main-content-carousel{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scroll-snap-type:y mandatory;scrollbar-width:thin;scrollbar-color:#757575 #f5f5f5;height:100%;overflow:hidden auto}.main-content-carousel::-webkit-scrollbar{width:8px}.main-content-carousel::-webkit-scrollbar-track{background:#f5f5f5;border-radius:4px}.main-content-carousel::-webkit-scrollbar-thumb{background:#757575;border-radius:4px}.main-content-carousel::-webkit-scrollbar-thumb:hover{background:#404040}body.dark-mode .main-content-carousel{scrollbar-color:#2a2a2a #0a0a0a}body.dark-mode .main-content-carousel::-webkit-scrollbar-track{background:#0a0a0a}body.dark-mode .main-content-carousel::-webkit-scrollbar-thumb{background:#2a2a2a}body.dark-mode .main-content-carousel::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.card-carousel{flex-direction:column;min-height:100%;display:flex}.card-carousel .card-slide-snap{scroll-snap-align:start;scroll-snap-stop:always;box-sizing:border-box;flex:none;justify-content:center;align-items:stretch;min-height:100dvh;padding:1.5rem;display:flex}.card-carousel .card-slide-link{color:inherit;justify-content:center;align-items:stretch;width:100%;min-width:0;text-decoration:none;display:flex}.card-carousel .card-slide{background:0 0;border:none;flex-direction:column;flex:1;width:100%;max-width:none;min-height:100%;padding:2rem;display:flex}.card-carousel .card-slide .card-video-wrapper{flex:1;min-height:0;display:flex}.card-carousel .card-slide .card-video{aspect-ratio:16/9;flex:1;min-height:200px}.card-carousel .card-slide .card-heading{font-size:clamp(1.25rem,2.5vw,2rem);font-weight:700}.card-carousel .card-slide .card-subtitle,.card-carousel .card-slide .card-author{font-size:clamp(.9375rem,1.5vw,1.125rem)}.card-carousel .card-slide-empty{color:#404040;font-size:1rem}body.dark-mode .card-carousel .card-slide-empty{color:#a0a0a0}.tutorial-detail-page{background-color:#dad9da;background-image:linear-gradient(151.91deg,#bfc3c8 3.24%,#dad9da 18.73%);background-repeat:no-repeat;background-size:100% 100%;width:100%;min-height:100vh}body.dark-mode .tutorial-detail-page{background-color:#0a0a0a;background-image:linear-gradient(#0a0a0a 0%,#1a1a1a 100%)}.tutorial-article{box-sizing:border-box;flex-direction:column;gap:3rem;width:100%;max-width:820px;margin:0 auto;padding:2rem 1.5rem 3rem;display:flex}@media (min-width:768px){.tutorial-article{padding:2rem 1.5rem 3rem}}.tutorial-article-layout{width:100%}.tutorial-toc--float{z-index:110;pointer-events:none;width:min(20rem,100vw - 3rem);max-width:20rem;position:fixed;bottom:3px;left:1.5rem}@media (min-width:1024px){.tutorial-toc--float{left:max(1.5rem,50vw - 410px - 22.5rem)}}.tutorial-toc__toggle{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#000;cursor:pointer;pointer-events:auto;background:#ffffffe0;border:1px solid #4040402e;border-radius:999px;justify-content:center;align-items:center;width:100%;min-height:2.5rem;padding:.5rem .875rem;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1.3;display:flex;box-shadow:0 4px 20px #00000014}body.dark-mode .tutorial-toc__toggle{color:#e5e5e5;background:#0a0a0ae6;border-color:#e5e5e533;box-shadow:0 4px 20px #00000040}@media (min-width:1024px){.tutorial-toc__toggle{display:none}}.tutorial-toc__panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;background:#ffffffe0;border-radius:10px 10px 0 0;max-height:min(50vh,24rem);margin-top:.5rem;padding:.75rem .5rem .75rem 0;display:none;overflow-y:auto;box-shadow:0 4px 20px #00000014}body.dark-mode .tutorial-toc__panel{background:#0a0a0ae6;box-shadow:0 4px 20px #00000040}@media (min-width:1024px){.tutorial-toc__panel{border-radius:10px 10px 0 0;margin-top:0;display:block}}.tutorial-toc.is-open .tutorial-toc__panel{display:block}@media (min-width:1024px){.tutorial-toc.is-open .tutorial-toc__toggle,.tutorial-toc__toggle{display:none}}.tutorial-toc__label{letter-spacing:.04em;text-transform:uppercase;color:#404040;margin:0 0 .75rem;font-size:.75rem;font-weight:600;line-height:1.3}body.dark-mode .tutorial-toc__label{color:#a0a0a0}.tutorial-toc__list{margin:0;padding:0;list-style:none}.tutorial-toc__item{margin:0}.tutorial-toc__item--section{padding-left:.625rem}.tutorial-toc__item--step{padding-left:1.25rem}.tutorial-toc__link{color:#404040;border-left:2px solid #0000;margin-left:-.625rem;padding:.3rem 0 .3rem .625rem;font-size:.8125rem;line-height:1.35;text-decoration:none;transition:color .15s,border-color .15s;display:block}.tutorial-toc__link:hover{color:#000}.tutorial-toc__link.is-active{color:#000;border-left-color:#000;font-weight:600}body.dark-mode .tutorial-toc__link{color:#a0a0a0}body.dark-mode .tutorial-toc__link:hover{color:#e5e5e5}body.dark-mode .tutorial-toc__link.is-active{color:#e5e5e5;border-left-color:#e5e5e5}.tutorial-reading-progress{pointer-events:none;opacity:0;background:#0000000d;height:2px;transition:opacity .2s}body.dark-mode .tutorial-reading-progress{background:#e5e5e51a}.tutorial-reading-progress--bottom{z-index:120;position:fixed;inset:auto 0 0}.tutorial-reading-progress--header{z-index:1;background:#0000000f;position:absolute;bottom:0;left:0;right:0}body.dark-mode .tutorial-reading-progress--header{background:#e5e5e51a}.tutorial-reading-progress.is-visible{opacity:1}@media (prefers-reduced-motion:reduce){.tutorial-reading-progress,.tutorial-reading-progress .tutorial-reading-progress__fill{transition:none}}.tutorial-reading-progress__fill{transform-origin:0;background:#000;width:100%;height:100%;transform:scaleX(0)}body.dark-mode .tutorial-reading-progress__fill{background:#e5e5e5}@media (prefers-reduced-motion:no-preference){.tutorial-reading-progress__fill{transition:transform .15s ease-out}}.tutorial-detail-header{justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.tutorial-detail-header-bar{z-index:100;isolation:isolate;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s;position:fixed;top:0;left:0;right:0}.tutorial-detail-header-bar:before{content:"";z-index:0;pointer-events:none;-webkit-backdrop-filter:blur(100px)saturate(1.3);background:#dad9dae0;position:absolute;inset:0}body.dark-mode .tutorial-detail-header-bar:before{-webkit-backdrop-filter:blur(100px)saturate(1.15);background:#0a0a0ae6}.tutorial-detail-header-bar:after{content:"";z-index:0;pointer-events:none;-webkit-backdrop-filter:blur(40px);background:#ffffff47;position:absolute;inset:0}body.dark-mode .tutorial-detail-header-bar:after{background:#ffffff0a}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.tutorial-detail-header-bar:before{-webkit-backdrop-filter:none;background:#dad9daeb}body.dark-mode .tutorial-detail-header-bar:before{background:#0a0a0aeb}}.tutorial-detail-header-bar.is-visible{opacity:1;visibility:visible;pointer-events:auto}@media (prefers-reduced-motion:reduce){.tutorial-detail-header-bar{transition:none}.tutorial-detail-header-bar:not(.is-visible){display:none}}.tutorial-detail-header-bar__shell{z-index:1;width:100%;position:relative}.tutorial-detail-header-bar__inner{box-sizing:border-box;justify-content:space-between;align-items:center;gap:1rem;max-width:820px;margin:0 auto;padding:.875rem 1.5rem;display:flex}.tutorial-detail-header__actions{flex-shrink:0;align-items:center;gap:1.5rem;display:inline-flex}.tutorial-detail-header__remaining{font-variant-numeric:tabular-nums;color:#404040;white-space:nowrap;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.875rem;font-weight:500;line-height:normal}body.dark-mode .tutorial-detail-header__remaining{color:#a0a0a0}.tutorial-detail-twitter{color:#000;justify-content:center;align-items:center;text-decoration:none;transition:opacity .2s;display:inline-flex}.tutorial-detail-twitter:hover{opacity:.7}body.dark-mode .tutorial-detail-twitter{color:#e5e5e5}.tutorial-detail-x-icon{display:block}.tutorial-status-tag{letter-spacing:.06em;text-transform:uppercase;color:#404040;pointer-events:none;background:#4040401f;border-radius:999px;align-items:center;width:fit-content;padding:.2rem .5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.625rem;font-weight:600;line-height:1;display:inline-flex}body.dark-mode .tutorial-status-tag{color:#a0a0a0;background:#e5e5e524}.tutorial-status-tag--hero{align-self:flex-end;margin-bottom:-.5rem}.tutorial-status-tag--thumb{z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff6b;position:absolute;inset:auto auto .625rem .625rem}body.dark-mode .tutorial-status-tag--thumb{color:#a0a0a0;background:#0a0a0a61}.tutorial-detail-hero{flex-direction:column;gap:1.5rem;width:100%;display:flex}.tutorial-article-title{color:#000;letter-spacing:-.07em;white-space:pre-line;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:clamp(2rem,6vw,3rem);font-weight:600;line-height:1.1}body.dark-mode .tutorial-article-title{color:#e5e5e5}.tutorial-article-byline-row{justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.tutorial-article-byline-actions{flex-shrink:0;align-items:center;gap:1.5rem;margin-left:auto;display:inline-flex}.tutorial-article-byline{color:#404040;align-items:center;gap:.25rem;font-size:.875rem;font-weight:400;line-height:normal;display:inline-flex}body.dark-mode .tutorial-article-byline{color:#a0a0a0}.tutorial-article-byline-icon{color:inherit;flex-shrink:0}.tutorial-share-btn{color:#404040;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;gap:.35rem;padding:0;font-family:inherit;font-size:.875rem;font-weight:400;line-height:normal;transition:color .15s;display:inline-flex}.tutorial-share-btn:hover{color:#000}body.dark-mode .tutorial-share-btn{color:#a0a0a0}body.dark-mode .tutorial-share-btn:hover{color:#e5e5e5}.tutorial-share-btn__icon{flex-shrink:0}.tutorial-detail-video-wrap{width:100%;max-width:756px;height:auto;min-height:0;aspect-ratio:calc(756px/377px);background:#f5f5f5;align-self:center;max-height:377px;margin:0 auto;overflow:hidden}body.dark-mode .tutorial-detail-video-wrap{background:#1a1a1a}.tutorial-detail-video-wrap:has(.tutorial-detail-hero-image){aspect-ratio:auto;background:0 0;max-height:none;overflow:visible}.tutorial-detail-video-wrap--thumb{aspect-ratio:16/9;background:#1e1e1e;max-height:none}.tutorial-detail-video-wrap--thumb .tutorial-detail-video{object-position:center;transform-origin:50%;transform:scale(1.12)}@media (max-width:768px){.tutorial-detail-video-wrap{max-height:none}}.tutorial-detail-video{object-fit:cover;width:100%;height:100%;display:block}.tutorial-detail-video.tutorial-detail-hero-image{object-fit:initial;width:100%;max-width:100%;height:auto;display:block}.tutorial-writing-soon{flex-direction:column;gap:1.25rem;width:100%;margin:0;padding:.25rem 0 0;display:flex}.tutorial-writing-soon__lead{color:#000;margin:0;font-size:1.125rem;line-height:1.75}body.dark-mode .tutorial-writing-soon__lead{color:#e5e5e5}.playground-detail-body{flex-direction:column;gap:2rem;width:100%;margin:0;padding:.25rem 0 0;display:flex}.playground-learned{flex-direction:column;gap:1rem;display:flex}.playground-learned__heading{color:#000;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.375rem;font-weight:600;line-height:1.3}body.dark-mode .playground-learned__heading{color:#e5e5e5}.playground-learned__list{color:#000;flex-direction:column;gap:.75rem;margin:0;padding-left:1.25rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.125rem;line-height:1.75;display:flex}body.dark-mode .playground-learned__list{color:#e5e5e5}.playground-learned__list li::marker{color:#757575}.tutorial-github-repo{box-sizing:border-box;background:#f6f8fa;border:1px solid #d0d7de;border-radius:6px;width:100%;padding:1rem}body.dark-mode .tutorial-github-repo{background:#1a1a1a;border-color:#2a2a2a}.tutorial-github-repo__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.tutorial-github-repo__title{color:#0969da;align-items:center;gap:.35rem;min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.875rem;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.tutorial-github-repo__title:hover{text-decoration:underline}body.dark-mode .tutorial-github-repo__title{color:#4493f8}.tutorial-github-repo__repo-icon{color:#57606a;flex-shrink:0;width:1rem;height:1rem}body.dark-mode .tutorial-github-repo__repo-icon{color:#a0a0a0}.tutorial-github-repo__owner{color:#0969da;font-weight:600}body.dark-mode .tutorial-github-repo__owner{color:#4493f8}.tutorial-github-repo__sep,.tutorial-github-repo__name{color:#0969da}body.dark-mode .tutorial-github-repo__sep,body.dark-mode .tutorial-github-repo__name{color:#4493f8}.tutorial-github-repo__actions{flex-shrink:0;align-items:center;gap:.5rem;display:inline-flex}.tutorial-github-repo__btn{color:#24292f;white-space:nowrap;background:#f6f8fa;border:1px solid #1f232826;border-radius:6px;align-items:center;gap:.35rem;padding:.3125rem .75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.75rem;font-weight:600;line-height:1.25;text-decoration:none;transition:background .12s;display:inline-flex}.tutorial-github-repo__btn:hover{background:#eef1f4}body.dark-mode .tutorial-github-repo__btn{color:#e5e5e5;background:#ffffff0f;border-color:#2a2a2a}body.dark-mode .tutorial-github-repo__btn:hover{background:#ffffff1a}.tutorial-github-repo__btn-icon{flex-shrink:0;width:1rem;height:1rem}.tutorial-github-repo__btn-count{border-left:1px solid #1f232826;margin-left:.15rem;padding-left:.35rem;font-weight:600}body.dark-mode .tutorial-github-repo__btn-count{border-left-color:#2a2a2a}.tutorial-github-repo__description{color:#57606a;margin:.75rem 0 0;font-size:.875rem;line-height:1.5}body.dark-mode .tutorial-github-repo__description{color:#a0a0a0}.tutorial-github-repo__meta{color:#57606a;align-items:center;gap:1rem;margin-top:1rem;font-size:.75rem;line-height:1.25;display:flex}body.dark-mode .tutorial-github-repo__meta{color:#a0a0a0}.tutorial-github-repo__language{align-items:center;gap:.35rem;display:inline-flex}.tutorial-github-repo__language-dot{background:#f05138;border-radius:50%;width:.75rem;height:.75rem}.tutorial-github-repo__meta-stars{align-items:center;gap:.25rem;display:inline-flex}.tutorial-github-repo__meta-stars .tutorial-github-repo__btn-icon{opacity:.85;width:.875rem;height:.875rem}.tutorial-writing-soon+.tutorial-article-body{margin-top:3rem}.tutorial-article-body{color:#000;flex-direction:column;gap:3rem;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.125rem;line-height:1.75;display:flex}body.dark-mode .tutorial-article-body{color:#e5e5e5}.tutorial-article-body p{margin:0}.tutorial-article-body .tutorial-prose-paragraph+.tutorial-prose-paragraph{margin-top:-2.25rem}.tutorial-article-body .tutorial-figure-split+.tutorial-ordered-list,.tutorial-article-body .tutorial-figure-split+.tutorial-unordered-list,.tutorial-article-body .tutorial-figure-split+.tutorial-prose-paragraph{margin-top:-2rem}.tutorial-article-body h2{color:#000;letter-spacing:-.02em;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.5rem;font-weight:600}body.dark-mode .tutorial-article-body h2{color:#e5e5e5}.tutorial-article-body .tutorial-heading-chapter{letter-spacing:-.07em;margin-top:3.75rem;scroll-margin-top:1.5rem;font-size:2rem;font-weight:600}.tutorial-article-body .tutorial-heading-section{letter-spacing:0;margin-top:3rem;scroll-margin-top:1.5rem;font-size:1.5rem;font-weight:700;line-height:1.75}.tutorial-article-body .tutorial-heading-section+*{margin-top:-2.25rem}.tutorial-article-body .tutorial-heading-step{letter-spacing:0;margin-top:3rem;scroll-margin-top:1.5rem;font-size:1.125rem;font-weight:700;line-height:1.75}.tutorial-article-body .tutorial-heading-step+*{margin-top:-2.25rem}.tutorial-article-body .tutorial-heading-section+.tutorial-heading-step{margin-top:1.5rem}.tutorial-article-body .tutorial-unordered-list+.tutorial-heading-step,.tutorial-article-body .tutorial-ordered-list+.tutorial-heading-step{margin-top:3rem}.tutorial-article-body .tutorial-heading-step+.tutorial-figure-split{margin-top:-1.75rem}.tutorial-article-body .tutorial-heading-step+.tutorial-prose-paragraph{margin-top:-1.5rem}.tutorial-article-body .tutorial-ordered-list,.tutorial-article-body .tutorial-unordered-list{margin:0;padding-left:1.6875rem}.tutorial-article-body .tutorial-ordered-list li,.tutorial-article-body .tutorial-unordered-list li{margin-bottom:1.25rem;line-height:1.75}.tutorial-article-body .tutorial-ordered-list li:last-child,.tutorial-article-body .tutorial-unordered-list li:last-child{margin-bottom:0}.tutorial-article-body .tutorial-ordered-list li.tutorial-list-item--gap-tight,.tutorial-article-body .tutorial-unordered-list li.tutorial-list-item--gap-tight{margin-bottom:.5rem}.tutorial-article-body .tutorial-ordered-list li.tutorial-list-item--gap-relaxed,.tutorial-article-body .tutorial-unordered-list li.tutorial-list-item--gap-relaxed{margin-bottom:2.5rem}.tutorial-article-body .tutorial-ordered-list li ul,.tutorial-article-body .tutorial-unordered-list li ul{margin:.75rem 0 0;padding-left:1.6875rem;list-style:outside}.tutorial-article-body .tutorial-ordered-list li ul li,.tutorial-article-body .tutorial-unordered-list li ul li{margin-bottom:.5rem}.tutorial-article-body .tutorial-ordered-list li ul li:last-child,.tutorial-article-body .tutorial-unordered-list li ul li:last-child{margin-bottom:0}.tutorial-article-body .tutorial-color-stops{white-space:normal;margin:0;padding:0;display:inline}.tutorial-article-body .tutorial-color-stop{vertical-align:middle;box-sizing:border-box;background:#0000000a;border-radius:.5rem;align-items:center;gap:.5rem;margin:.125rem .375rem .125rem 0;padding:.25rem .4375rem;font-size:.875rem;line-height:1.3;display:inline-flex}body.dark-mode .tutorial-article-body .tutorial-color-stop{background:#e5e5e514}.tutorial-article-body .tutorial-color-stop__swatch{border:1px solid #0000001f;border-radius:.25rem;flex-shrink:0;width:1.125rem;height:1.125rem}body.dark-mode .tutorial-article-body .tutorial-color-stop__swatch{border-color:#e5e5e533}.tutorial-article-body .tutorial-color-stop__stop{color:#404040;flex-shrink:0;min-width:2.5rem}body.dark-mode .tutorial-article-body .tutorial-color-stop__stop{color:#a0a0a0}.tutorial-article-body .tutorial-color-stop__hex{letter-spacing:.02em;-webkit-user-select:all;user-select:all;color:#000;flex:none;min-width:4.75rem;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;font-weight:500}body.dark-mode .tutorial-article-body .tutorial-color-stop__hex{color:#e5e5e5}.tutorial-article-body .tutorial-color-stop__copy{color:#404040;cursor:pointer;background:#0000000f;border:none;border-radius:.375rem;flex-shrink:0;padding:.25rem .5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.75rem;font-weight:500;line-height:1;transition:background .15s,color .15s}.tutorial-article-body .tutorial-color-stop__copy:hover{color:#000;background:#0000001a}body.dark-mode .tutorial-article-body .tutorial-color-stop__copy{color:#a0a0a0;background:#e5e5e51f}body.dark-mode .tutorial-article-body .tutorial-color-stop__copy:hover{color:#e5e5e5;background:#e5e5e52e}.tutorial-article-body .tutorial-figure-split{flex-direction:column;gap:1rem;width:100%;margin:0;display:flex}@media (min-width:768px){.tutorial-article-body .tutorial-figure-split{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:1rem}}.tutorial-article-body .tutorial-figure-split img,.tutorial-article-body .tutorial-figure-split .tutorial-content-image{width:100%;height:auto;display:block}.tutorial-article-body .tutorial-figure-split__main{flex:auto;min-width:0}@media (min-width:768px){.tutorial-article-body .tutorial-figure-split__main{max-width:487px}}.tutorial-article-body .tutorial-figure-split__side{flex-direction:column;flex-shrink:0;align-self:flex-start;gap:0;display:flex}@media (min-width:768px){.tutorial-article-body .tutorial-figure-split__side{width:257px}}.tutorial-article-body ul{margin:0;padding-left:1.5rem}.tutorial-article-body ul li{margin-bottom:.5rem;line-height:1.75}.tutorial-article-body ul li:last-child{margin-bottom:0}.tutorial-article-body .tutorial-image-block{text-align:left;width:100%;margin:0;padding:0}.tutorial-article-body .tutorial-image-link{width:100%;color:inherit;border-radius:0;text-decoration:none;transition:opacity .2s;display:block}.tutorial-article-body .tutorial-image-link:hover,.tutorial-article-body .tutorial-image-link:focus-visible{opacity:.88}.tutorial-article-body .tutorial-image-link:focus-visible{outline-offset:4px;outline:2px solid #00000059}body.dark-mode .tutorial-article-body .tutorial-image-link:focus-visible{outline-color:#e5e5e573}.tutorial-article-body .tutorial-image,.tutorial-article-body .tutorial-content-image{border:none;border-radius:0;width:100%;max-width:100%;height:auto;display:block}.tutorial-article-body .tutorial-image-caption{color:#000;opacity:.4;text-align:left;width:100%;margin-top:.625rem;font-size:.875rem;font-style:normal;font-weight:400;line-height:normal}body.dark-mode .tutorial-article-body .tutorial-image-caption{color:#e5e5e5;opacity:.4}.tutorial-article-body .tutorial-build-progression{flex-direction:column;gap:.875rem;width:100%;margin:0;padding:0;display:flex}.tutorial-article-body .tutorial-unordered-list+.tutorial-build-progression,.tutorial-article-body .tutorial-ordered-list+.tutorial-build-progression{margin-top:3rem}.tutorial-article-body .tutorial-build-progression__stage{aspect-ratio:1;background:linear-gradient(230.65deg,#435059 10.81%,#5d6a72 36.39%,#78858d 63.45%,#747b81 100%);border-radius:.75rem;width:100%;max-height:420px;position:relative;overflow:hidden}.tutorial-article-body .tutorial-build-progression__stage-bg{z-index:0;pointer-events:none;background:linear-gradient(230.65deg,#435059 10.81%,#5d6a72 36.39%,#78858d 63.45%,#747b81 100%);position:absolute;inset:0}.tutorial-article-body .tutorial-build-progression__preview,.tutorial-article-body .tutorial-build-progression__preview.tutorial-content-image{z-index:1;object-fit:contain;width:100%;height:100%;display:block;position:relative}.tutorial-article-body .tutorial-build-progression__meta{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;border-radius:999px;align-items:baseline;gap:.5rem;padding:.375rem .625rem;display:inline-flex;position:absolute;bottom:.875rem;left:.875rem}body.dark-mode .tutorial-article-body .tutorial-build-progression__meta{background:#0a0a0ad1}.tutorial-article-body .tutorial-build-progression__step-index{letter-spacing:-.02em;color:#000;font-size:.75rem;font-weight:700}body.dark-mode .tutorial-article-body .tutorial-build-progression__step-index{color:#e5e5e5}.tutorial-article-body .tutorial-build-progression__step-label{color:#404040;font-size:.75rem;font-weight:500}body.dark-mode .tutorial-article-body .tutorial-build-progression__step-label{color:#a0a0a0}.tutorial-article-body .tutorial-build-progression__nav{z-index:2;gap:.375rem;display:flex;position:absolute;bottom:.875rem;right:.875rem}.tutorial-article-body .tutorial-build-progression__nav-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#000;cursor:pointer;background:#ffffffd1;border:none;border-radius:999px;width:2rem;height:2rem;font-size:.875rem;line-height:1;transition:opacity .15s}.tutorial-article-body .tutorial-build-progression__nav-btn:hover:not(:disabled){opacity:.75}.tutorial-article-body .tutorial-build-progression__nav-btn:disabled{opacity:.35;cursor:default}body.dark-mode .tutorial-article-body .tutorial-build-progression__nav-btn{color:#e5e5e5;background:#0a0a0ad1}.tutorial-article-body .tutorial-build-progression__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;width:100%;display:grid}@media (max-width:767px){.tutorial-article-body .tutorial-build-progression__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.375rem}}.tutorial-article-body .tutorial-build-progression__thumb{aspect-ratio:1;cursor:pointer;background:linear-gradient(230.65deg,#435059 10.81%,#5d6a72 36.39%,#78858d 63.45%,#747b81 100%);border:2px solid #0000;border-radius:.5rem;padding:0;transition:border-color .15s,transform .15s;position:relative;overflow:hidden}.tutorial-article-body .tutorial-build-progression__thumb img,.tutorial-article-body .tutorial-build-progression__thumb .tutorial-build-progression__thumb-image{z-index:1;object-fit:contain;width:100%;height:100%;display:block;position:relative}.tutorial-article-body .tutorial-build-progression__thumb:hover{transform:translateY(-1px)}.tutorial-article-body .tutorial-build-progression__thumb.is-active{border-color:#000}body.dark-mode .tutorial-article-body .tutorial-build-progression__thumb.is-active{border-color:#e5e5e5}.tutorial-article-body .tutorial-build-progression__thumb-bg{z-index:0;background:linear-gradient(230.65deg,#435059 10.81%,#5d6a72 36.39%,#78858d 63.45%,#747b81 100%);position:absolute;inset:0}.tutorial-article-body .tutorial-build-progression__thumb-index{z-index:2;color:#000;text-align:center;background:#ffffffe0;border-radius:999px;min-width:1.125rem;height:1.125rem;padding:0 .25rem;font-size:.625rem;font-weight:700;line-height:1.125rem;position:absolute;top:.25rem;left:.25rem}body.dark-mode .tutorial-article-body .tutorial-build-progression__thumb-index{color:#e5e5e5;background:#0a0a0ae0}.tutorial-article-body .tutorial-link-wrap{margin:0}.tutorial-article-body .tutorial-author-links{flex-wrap:wrap;gap:.75rem 1.5rem;margin:0;display:flex}.tutorial-article-body .tutorial-x-embed{border-top:1px solid #0000000d;border-bottom:1px solid #0000000d;width:100%;max-width:100%;margin:0;padding-top:1.5rem;padding-bottom:1.5rem}body.dark-mode .tutorial-article-body .tutorial-x-embed{border-top-color:#e5e5e50f;border-bottom-color:#e5e5e50f}@media (min-width:1024px){.tutorial-article-body .tutorial-x-embed{max-width:756px}}.tutorial-article-body .tutorial-x-embed__banner{background:linear-gradient(90deg,#b8ead8 0%,#e8e6a8 100%);height:clamp(5.5rem,14vw,7.5rem)}.tutorial-article-body .tutorial-x-embed__card{color:#e7e9ea;background:#000;border:1px solid #0000000f;border-radius:0;display:none;overflow:hidden}body.dark-mode .tutorial-article-body .tutorial-x-embed__card{border-color:#e5e5e51a}.tutorial-article-body .tutorial-x-embed__banner-link{text-decoration:none;display:block}.tutorial-article-body .tutorial-x-embed__body{padding:0 1rem 1rem;position:relative}.tutorial-article-body .tutorial-x-embed__avatar-link{width:fit-content;text-decoration:none;display:block}.tutorial-article-body .tutorial-x-embed__avatar{background:linear-gradient(135deg,#b8ead8 0%,#e8e6a8 100%);border:4px solid #000;border-radius:999px;width:4.25rem;height:4.25rem;margin-top:-2rem;margin-bottom:.625rem}.tutorial-article-body .tutorial-x-embed__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.625rem;display:flex}.tutorial-article-body .tutorial-x-embed__identity{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.tutorial-article-body .tutorial-x-embed__name-link{color:inherit;text-decoration:none}.tutorial-article-body .tutorial-x-embed__name-link:hover .tutorial-x-embed__name{text-decoration:underline}.tutorial-article-body .tutorial-x-embed__name{color:#e7e9ea;font-size:1.0625rem;font-weight:700;line-height:1.3;display:block}.tutorial-article-body .tutorial-x-embed__handle{color:#71767b;font-size:.9375rem;line-height:1.3}.tutorial-article-body .tutorial-x-embed__follow{color:#0f1419;white-space:nowrap;background:#eff3f4;border:1px solid #e7e9ea59;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:5.5rem;height:2rem;margin-top:.125rem;padding:0 1rem;font-size:.875rem;font-weight:700;line-height:1;text-decoration:none;transition:background .15s;display:inline-flex}.tutorial-article-body .tutorial-x-embed__follow:hover{background:#d7dbdc}.tutorial-article-body .tutorial-x-embed__site{color:#1d9bf0;font-size:.9375rem;line-height:1.3;text-decoration:none;display:inline-block}.tutorial-article-body .tutorial-x-embed__site:hover{text-decoration:underline}.tutorial-article-body .tutorial-x-embed__stats{color:#71767b;flex-wrap:wrap;align-items:center;gap:.25rem .375rem;margin:.75rem 0 0;font-size:.9375rem;line-height:1.3;display:flex}.tutorial-article-body .tutorial-x-embed__stats a{color:inherit;text-decoration:none}.tutorial-article-body .tutorial-x-embed__stats a:hover{text-decoration:underline}.tutorial-article-body .tutorial-x-embed__stats strong{color:#e7e9ea;font-weight:700}.tutorial-article-body .tutorial-x-embed__stats-sep{color:#71767b}.tutorial-article-body .tutorial-x-embed__heading{letter-spacing:-.02em;color:#000;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.125rem;font-weight:600;line-height:1.3}body.dark-mode .tutorial-article-body .tutorial-x-embed__heading{color:#e5e5e5}.tutorial-article-body .tutorial-x-embed__previews{flex-direction:column;gap:0;margin-top:1rem;display:flex}.tutorial-article-body .tutorial-x-embed__preview{color:inherit;align-items:flex-start;gap:.875rem;margin:0;padding:1.25rem 0;text-decoration:none;display:flex}.tutorial-article-body .tutorial-x-embed__preview:first-child{padding-top:0}.tutorial-article-body .tutorial-x-embed__preview:last-child{padding-bottom:0}.tutorial-article-body .tutorial-x-embed__preview+.tutorial-article-body .tutorial-x-embed__preview{border-top:1px solid #0000000d}body.dark-mode .tutorial-article-body .tutorial-x-embed__preview+.tutorial-article-body .tutorial-x-embed__preview{border-top-color:#e5e5e50f}.tutorial-article-body .tutorial-x-embed__preview:hover .tutorial-x-embed__preview-cta{color:#000}body.dark-mode .tutorial-article-body .tutorial-x-embed__preview:hover .tutorial-x-embed__preview-cta{color:#e5e5e5}.tutorial-article-body .tutorial-x-embed__preview:focus-visible{outline-offset:4px;border-radius:8px;outline:2px solid #78858d}.tutorial-article-body .tutorial-x-embed__preview-thumb{background:#0000000a;border:1px solid #00000014;border-radius:8px;flex-shrink:0;width:12rem;position:relative;overflow:hidden}body.dark-mode .tutorial-article-body .tutorial-x-embed__preview-thumb{background:#e5e5e50f;border-color:#e5e5e51f}.tutorial-article-body .tutorial-x-embed__preview-video{object-fit:cover;width:100%;height:100%;display:block}.tutorial-article-body .tutorial-x-embed__preview-content{flex-direction:column;flex:1;gap:.25rem;min-width:0;padding-top:.0625rem;display:flex}.tutorial-article-body .tutorial-x-embed__preview-title{letter-spacing:-.02em;color:#000;white-space:nowrap;text-overflow:ellipsis;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.9375rem;font-weight:600;line-height:1.3;overflow:hidden}body.dark-mode .tutorial-article-body .tutorial-x-embed__preview-title{color:#e5e5e5}.tutorial-article-body .tutorial-x-embed__preview-desc{color:#404040;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;min-height:3.53438rem;max-height:3.53438rem;margin:0;font-size:.8125rem;line-height:1.45;display:-webkit-box;overflow:hidden}body.dark-mode .tutorial-article-body .tutorial-x-embed__preview-desc{color:#a0a0a0}.tutorial-article-body .tutorial-x-embed__preview-cta{color:#404040;text-underline-offset:.12em;margin-top:.125rem;font-size:.8125rem;font-weight:400;line-height:1.3;text-decoration:underline}body.dark-mode .tutorial-article-body .tutorial-x-embed__preview-cta{color:#a0a0a0}.tutorial-article-body .tutorial-x-embed .tutorial-author-links{margin-top:.75rem}.tutorial-article-body strong{font-weight:600}.tutorial-article-body .tutorial-code-panel{margin:0}.tutorial-article-body .tutorial-code-panel--xcode{width:min(960px,100%);max-width:100%;margin-left:0;margin-right:0}.tutorial-download-link{color:#404040;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}.tutorial-download-link:hover{color:#000}body.dark-mode .tutorial-download-link{color:#a0a0a0}body.dark-mode .tutorial-download-link:hover{color:#e5e5e5}.tutorial-feedback{width:100%;margin-top:3.75rem}.tutorial-feedback__card{box-shadow:none;background:#00000006;border:1px solid #0000000a;border-radius:14px;flex-direction:column;padding:1.5rem;display:flex}body.dark-mode .tutorial-feedback__card{box-shadow:none;background:#ffffff08;border-color:#e5e5e50d}.tutorial-feedback__body{flex-wrap:wrap;align-items:stretch;gap:1.25rem 2rem;width:100%;display:flex}.tutorial-feedback__left{border-right:1px solid #0000000d;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.85rem;min-width:5.75rem;padding-right:2rem;display:flex}body.dark-mode .tutorial-feedback__left{border-right-color:#e5e5e50f}@media (max-width:767px){.tutorial-feedback__left{border-bottom:1px solid #0000000d;border-right:none;width:100%;padding-bottom:1.25rem;padding-right:0}body.dark-mode .tutorial-feedback__left{border-bottom-color:#e5e5e50f}}.tutorial-feedback__meta{letter-spacing:.01em;color:#404040b8;text-align:center;width:100%;margin:0;font-size:.8125rem;font-weight:500;line-height:1.25}body.dark-mode .tutorial-feedback__meta{color:#a0a0a0c7}.tutorial-feedback__meta-total{font-variant-numeric:tabular-nums;color:#000000c7;font-weight:700}body.dark-mode .tutorial-feedback__meta-total{color:#e5e5e5e6}.tutorial-feedback__intro{text-align:left;color:#404040e0;flex:1 1 0;align-self:center;min-width:min(100%,14rem);max-width:none;margin:0;font-size:.9375rem;line-height:1.6}body.dark-mode .tutorial-feedback__intro{color:#a0a0a0eb}.tutorial-feedback__intro-term{color:#000000d1;font-weight:600}body.dark-mode .tutorial-feedback__intro-term{color:#e5e5e5eb}.tutorial-feedback__error{color:#b42318;margin:0;font-size:.8125rem}body.dark-mode .tutorial-feedback__error{color:#f97066}.tutorial-shout-out__tap{cursor:pointer;isolation:isolate;background:#ffffffeb;border:1px solid #00000014;border-radius:999px;align-items:center;gap:.65rem;min-height:3.25rem;padding:.7rem 1.15rem;transition:background .2s,border-color .2s,box-shadow .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000014}.tutorial-shout-out__tap:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(circle,#00000014,#0000 70%);transition:opacity .25s,transform .25s;position:absolute;inset:0;transform:scale(.6)}.tutorial-shout-out__tap:hover:not(:disabled){background:#ffffffe0;border-color:#00000024;box-shadow:0 4px 14px #00000014}.tutorial-shout-out__tap:active:not(:disabled):after{opacity:1;transform:scale(1.1)}.tutorial-shout-out__tap:focus-visible{outline-offset:3px;outline:2px solid #00000047}.tutorial-shout-out__tap.is-submitting{opacity:.82}.tutorial-shout-out__tap[aria-disabled=true]{cursor:default}.tutorial-shout-out__tap:disabled{cursor:wait}.tutorial-shout-out__tap.is-limit{cursor:pointer}.tutorial-shout-out__tap--card{min-height:2.5rem;box-shadow:none;background:#ffffffb8;border-color:#0000000f;gap:.45rem;padding:.45rem .8rem}.tutorial-shout-out__tap--card:hover:not(:disabled){box-shadow:none;background:#ffffffd1;border-color:#0000001a}.tutorial-shout-out__tap--card .tutorial-shout-out__glyph{font-size:1.2rem}.tutorial-shout-out__tap--card .tutorial-shout-out__count{font-size:.9375rem;font-weight:600}.tutorial-shout-out__tap--card.is-limit{box-shadow:none;background:#ffffff73;border-style:dashed;border-color:#00000014}.tutorial-shout-out__tap--card.is-limit .tutorial-shout-out__glyph{opacity:.65}.tutorial-shout-out__tap--card.is-limit .tutorial-shout-out__count{color:#0000008c}.tutorial-shout-out__tap--card.is-limit:hover:not(:disabled){box-shadow:none;background:#ffffff73;border-color:#0000001a}body.dark-mode .tutorial-shout-out__tap--card.is-limit{background:#0a0a0a61;border-color:#e5e5e524}body.dark-mode .tutorial-shout-out__tap--card.is-limit .tutorial-shout-out__count{color:#e5e5e58c}body.dark-mode .tutorial-shout-out__tap--card.is-limit:hover:not(:disabled){background:#0a0a0a61}body.dark-mode .tutorial-shout-out__tap--card{box-shadow:none;background:#0a0a0a8c;border-color:#e5e5e51a}body.dark-mode .tutorial-shout-out__tap--card:hover:not(:disabled){box-shadow:none;background:#0a0a0aa6}body.dark-mode .tutorial-shout-out__tap{background:#0a0a0ae0;border-color:#e5e5e524;box-shadow:0 4px 14px #00000047}body.dark-mode .tutorial-shout-out__tap:after{background:radial-gradient(circle,#e5e5e51f,#0000 70%)}body.dark-mode .tutorial-shout-out__tap:hover:not(:disabled){background:#0a0a0ab8;border-color:#e5e5e533;box-shadow:0 4px 14px #00000047}body.dark-mode .tutorial-shout-out__tap:focus-visible{outline-color:#e5e5e559}.tutorial-shout-out__tap--hero{min-height:auto;box-shadow:none;color:#404040;background:0 0;border:none;border-radius:0;flex-shrink:0;gap:.35rem;padding:0;font-family:inherit;overflow:visible}.tutorial-shout-out__tap--hero:after{display:none}.tutorial-shout-out__tap--hero:hover:not(:disabled){box-shadow:none;color:#000;background:0 0;border-color:#0000}body.dark-mode .tutorial-shout-out__tap--hero{box-shadow:none;color:#a0a0a0;background:0 0;border-color:#0000}body.dark-mode .tutorial-shout-out__tap--hero:hover:not(:disabled){color:#e5e5e5;background:0 0}.tutorial-shout-out__tap--hero .tutorial-shout-out__glyph{font-size:.875rem}.tutorial-shout-out__tap--hero .tutorial-shout-out__count-wrap{min-width:2ch;height:1em}.tutorial-shout-out__tap--hero .tutorial-shout-out__count{color:inherit;font-size:.875rem;font-weight:400}body.dark-mode .tutorial-shout-out__tap--hero .tutorial-shout-out__count{color:inherit}.tutorial-shout-out__glyph{transform-origin:50%;font-size:1.75rem;line-height:1;display:block}.tutorial-shout-out__count-wrap{justify-content:center;align-items:center;min-width:2ch;height:1.2em;display:inline-flex;position:relative;overflow:hidden}.tutorial-shout-out__count{font-variant-numeric:tabular-nums;color:#000;text-align:center;min-width:1ch;font-size:1.25rem;font-weight:700;line-height:1;display:block}body.dark-mode .tutorial-shout-out__count{color:#e5e5e5}.tutorial-article-footer{color:#000;background:0 0;width:100%}body.dark-mode .tutorial-article-footer{color:#e5e5e5}.tutorial-article-footer__inner{box-sizing:border-box;flex-direction:column;gap:1.25rem;max-width:820px;margin:0 auto;padding:2rem 1.5rem 1.25rem;display:flex}.tutorial-article-footer__explore{flex-direction:column;gap:.625rem;display:flex}.tutorial-article-footer__explore-label{letter-spacing:.04em;text-transform:uppercase;color:#757575;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.8125rem;font-weight:600}body.dark-mode .tutorial-article-footer__explore-label{color:#a0a0a0}.tutorial-article-footer__explore-list{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.tutorial-article-footer__explore-list a{color:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.9375rem;font-weight:500;line-height:1.4;text-decoration:none}.tutorial-article-footer__explore-list a:hover{text-decoration:underline}body.dark-mode .tutorial-article-footer__explore-list a{color:#e5e5e5}.tutorial-article-footer__bottom{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.tutorial-article-footer__contact-line{letter-spacing:0;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.5rem .75rem;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.9375rem;font-weight:500;line-height:1.4;display:flex}.tutorial-article-footer__social{align-items:center;gap:.625rem;display:inline-flex}.tutorial-article-footer__contact-x{color:#000;align-items:center;text-decoration:none;transition:opacity .2s;display:inline-flex}.tutorial-article-footer__contact-x:hover{opacity:.72}body.dark-mode .tutorial-article-footer__contact-x{color:#e5e5e5}.tutorial-article-footer__contact-x-icon{flex-shrink:0;width:1em;height:1em}.tutorial-article-footer__contact-muted{color:#757575;font-weight:500}body.dark-mode .tutorial-article-footer__contact-muted{color:#a0a0a0}.tutorial-article-footer__cta{color:#404040;white-space:nowrap;background:0 0;border:1px solid #40404047;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:2rem;padding:0 .875rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.8125rem;font-weight:500;line-height:1;text-decoration:none;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.tutorial-article-footer__cta:hover{color:#000;background:#ffffff59;border-color:#00000059}body.dark-mode .tutorial-article-footer__cta{color:#a0a0a0;border-color:#e5e5e547}body.dark-mode .tutorial-article-footer__cta:hover{color:#e5e5e5;background:#e5e5e514;border-color:#e5e5e566}.tutorial-article-footer__rule{background:#0000000d;height:1px;margin:.25rem 0 0}body.dark-mode .tutorial-article-footer__rule{background:#e5e5e50f}.tutorial-article-footer__brand{letter-spacing:-.07em;color:#000;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:clamp(3.25rem,13vw,7.25rem);font-weight:600;line-height:.95}body.dark-mode .tutorial-article-footer__brand{color:#e5e5e5}.tutorial-article-footer__copyright{color:#757575;white-space:nowrap;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.75rem;line-height:1.4}body.dark-mode .tutorial-article-footer__copyright{color:#a0a0a0}.tutorial-article-footer__link{color:#757575;white-space:nowrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.75rem;line-height:1.4;text-decoration:none;transition:color .15s}.tutorial-article-footer__link:hover{color:#404040;text-underline-offset:.12em;text-decoration:underline}body.dark-mode .tutorial-article-footer__link{color:#a0a0a0}body.dark-mode .tutorial-article-footer__link:hover{color:#e5e5e5}.tutorial-article-footer__bottom-sep{color:#40404059;font-size:.75rem;line-height:1}body.dark-mode .tutorial-article-footer__bottom-sep{color:#a0a0a066}@media (max-width:768px){.tutorial-article-footer__inner{gap:1rem;padding:1.75rem 1rem 1rem}.tutorial-article-footer__brand{font-size:clamp(2.75rem,18vw,4.5rem)}.tutorial-article-footer__rule{margin-top:.15rem}}.tutorial-code-panel{margin:2.5rem 0}.tutorial-code-panel--xcode{background:#1e1e1e;border:1px solid #3a3a3e;border-radius:10px;font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;overflow:hidden;box-shadow:0 0 0 1px #00000059,0 16px 40px #00000047}.tutorial-code-panel-toolbar{background:#323232;border-bottom:1px solid #1a1a1a;justify-content:space-between;align-items:center;gap:1rem;min-height:36px;padding:0 .75rem;display:flex}.tutorial-code-panel-breadcrumb{align-items:center;gap:.35rem;min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.75rem;line-height:1;display:flex}.tutorial-code-panel-breadcrumb-root{color:#98989d;white-space:nowrap}.tutorial-code-panel-breadcrumb-sep{color:#636366}.tutorial-code-panel-breadcrumb-file{color:#e5e5ea;white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.tutorial-code-panel-toolbar-actions{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.tutorial-code-panel-tool{color:#c7c7cc;cursor:pointer;background:#454545;border:1px solid #555;border-radius:4px;align-items:center;padding:.25rem .55rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.6875rem;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:inline-flex}.tutorial-code-panel-tool:hover{color:#fff;background:#525252}.tutorial-code-panel-editor{background:#1e1e1e;overflow-x:hidden}.tutorial-code-panel-table{border-collapse:collapse;width:100%;font-size:.8125rem;line-height:1.6}.tutorial-code-panel-row--active .tutorial-code-panel-gutter,.tutorial-code-panel-row--active .tutorial-code-panel-code{background:#26354a}.tutorial-code-panel-gutter{text-align:right;vertical-align:top;color:#86868b;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#1e1e1e;border-right:1px solid #2d2d30;width:3.25rem;padding:0 .65rem 0 .85rem}.tutorial-code-panel-code{vertical-align:top;background:#1e1e1e;width:100%;padding:0 1rem 0 .65rem}.tutorial-code-panel-code code{color:#d4d4d4;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-family:inherit;display:block}.tutorial-code-panel-statusbar{color:#98989d;background:#323232;border-top:1px solid #1a1a1a;justify-content:space-between;align-items:center;min-height:22px;padding:0 .75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.6875rem;display:flex}.tutorial-code-panel-statusbar-meta{color:#86868b}.tutorial-code-panel--xcode .code-token--keyword{color:#ff7ab2}.tutorial-code-panel--xcode .code-token--type{color:#6bdfff}.tutorial-code-panel--xcode .code-token--string{color:#fc6a5d}.tutorial-code-panel--xcode .code-token--number{color:#d9c97c}.tutorial-code-panel--xcode .code-token--comment{color:#7f8c98;font-style:normal}.tutorial-code-panel--xcode .code-token--property{color:#acddff}.tutorial-code-panel--xcode .code-token--attribute{color:#ffa14f}.tutorial-code-panel--xcode .code-token--plain{color:#d4d4d4}.engineers-page{height:auto;min-height:100vh;padding:2.5rem 1.5rem 4rem}@media (max-width:768px){.engineers-page{padding:2rem 1rem 3rem}}.engineers-page-content{width:100%;max-width:600px;margin:0 auto}.engineers-page-head{margin-bottom:2.5rem}.engineers-page-title{color:#000;letter-spacing:-.02em;margin:0 0 .5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.2}body.dark-mode .engineers-page-title{color:#e5e5e5}.engineers-page-lede{color:#404040;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.125rem;line-height:1.5}body.dark-mode .engineers-page-lede{color:#a0a0a0}.engineers-page-body{margin-top:2rem}.hero{text-align:center;max-width:800px;margin:0 auto;padding:8rem 0 6rem}@media (max-width:768px){.hero{padding:4rem 0 3rem}}.hero-title{letter-spacing:-.04em;color:#000;margin-bottom:1.5rem;font-size:clamp(3rem,8vw,7rem);font-weight:700;line-height:1.1;transition:color .3s}body.dark-mode .hero-title{color:#e5e5e5}.hero-subtitle{color:#404040;max-width:600px;margin:0 auto;font-size:clamp(1.125rem,2vw,1.5rem);line-height:1.6;transition:color .3s}body.dark-mode .hero-subtitle{color:#a0a0a0}.featured-section{margin-bottom:4rem}@media (max-width:768px){.featured-section{margin-bottom:3rem}}.featured-card{cursor:pointer;color:inherit;background:#fff;border-radius:16px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:block;overflow:hidden}.featured-card:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}body.dark-mode .featured-card{background:#1a1a1a}body.dark-mode .featured-card:hover{box-shadow:0 4px 12px #0000004d}.hero-card{flex-direction:column;display:flex}.hero-card .card-image{background:#f5f5f5;justify-content:center;align-items:center;width:100%;min-height:300px;max-height:500px;display:flex;position:relative;overflow:hidden}.hero-card .card-image .image-icon{stroke-width:1.5px;color:#757575;opacity:.6;width:48px;height:48px}.hero-card .card-image img{object-fit:cover;width:100%;height:100%;display:block}body.dark-mode .hero-card .card-image{background:#2a2a2a}body.dark-mode .hero-card .card-image .image-icon{color:#a0a0a0;opacity:.5}.hero-card .card-content{flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}@media (max-width:768px){.hero-card .card-content{padding:1.25rem}}.section-description{color:#404040;max-width:700px;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.6;transition:color .3s}body.dark-mode .section-description{color:#a0a0a0}.card-image{aspect-ratio:16/9;background:#f5f5f5;border-radius:12px 12px 0 0;flex-shrink:0;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.card-image .image-icon{stroke-width:1.5px;color:#757575;opacity:.6;width:48px;height:48px}.card-image img{object-fit:cover;width:100%;height:100%;display:block}body.dark-mode .card-image{background:#2a2a2a}body.dark-mode .card-image .image-icon{color:#a0a0a0;opacity:.5}.card-title-large{color:#000;letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.2;transition:color .3s}body.dark-mode .card-title-large{color:#e5e5e5}.card-description{color:#404040;flex:1;margin-bottom:1rem;font-size:1rem;line-height:1.6;transition:color .3s}body.dark-mode .card-description{color:#a0a0a0}.card-meta{color:#757575;border-top:1px solid #f5f5f5;align-items:center;gap:1rem;margin-top:auto;padding-top:1.25rem;font-size:.875rem;transition:color .3s,border-color .3s;display:flex}body.dark-mode .card-meta{color:#a0a0a0;border-top-color:#2a2a2a}.card-date,.card-type{color:#757575;font-size:.875rem}.profile-card .card-title{margin-bottom:.5rem;font-size:1.25rem}.profile-card .card-description{margin-bottom:1rem;font-size:.875rem}.social-link{color:#757575;font-size:.875rem;text-decoration:none;transition:color .2s}.social-link:hover{color:#000}.jobs-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}@media (max-width:1024px){.jobs-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:768px){.jobs-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}}.job-card{cursor:pointer;break-inside:avoid;background:#fff;border-radius:16px;flex-direction:column;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex}.job-card:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}body.dark-mode .job-card{background:#1a1a1a}body.dark-mode .job-card:hover{box-shadow:0 4px 12px #0000004d}.job-content{flex-direction:column;gap:.5rem;display:flex}.job-image{display:none}.job-title{color:#000;letter-spacing:-.01em;margin-bottom:.25rem;font-size:1.125rem;font-weight:600}body.dark-mode .job-title{color:#e5e5e5}.job-company{color:#404040;margin-bottom:.125rem;font-size:.9375rem;font-weight:500}body.dark-mode .job-company{color:#a0a0a0}.job-location{color:#757575;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:.8125rem}body.dark-mode .job-location{color:#a0a0a0}.job-description{color:#404040;margin-top:.5rem;font-size:.9375rem;line-height:1.6}body.dark-mode .job-description{color:#a0a0a0}.footer{color:#000;background:0 0;width:100%;margin-top:4rem;padding:3rem 2rem;position:relative}@media (max-width:768px){.footer{padding:2rem 1rem}}body.dark-mode .footer{color:#e5e5e5}.footer-content{width:100%;max-width:1400px;margin:0 auto}.footer-separator{background-color:#e5e5e5;width:100%;height:1px;margin-bottom:3rem}body.dark-mode .footer-separator{background-color:#2a2a2a}.footer-top{justify-content:flex-end;align-items:flex-start;margin-bottom:3rem;display:flex}.scroll-to-top{color:#fff;cursor:pointer;opacity:.9;background-color:#000;border:none;border-radius:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;transition:transform .3s,background-color .3s,opacity .3s;display:flex}.scroll-to-top:hover{opacity:1;background-color:#404040;transform:translateY(-2px)}body.dark-mode .scroll-to-top{color:#0a0a0a;background-color:#e5e5e5}body.dark-mode .scroll-to-top:hover{background-color:#a0a0a0}.footer-columns{grid-template-columns:repeat(3,1fr);gap:3rem;margin-bottom:3rem;display:grid}@media (max-width:768px){.footer-columns{grid-template-columns:1fr;gap:2rem}}.footer-column{flex-direction:column;display:flex}.footer-column-title{text-transform:uppercase;letter-spacing:.1em;color:#000;margin-bottom:1.5rem;font-size:.875rem;font-weight:700}body.dark-mode .footer-column-title{color:#e5e5e5}.footer-quote p{color:#000;margin-bottom:.75rem;font-size:.875rem;font-style:italic;line-height:1.6}body.dark-mode .footer-quote p{color:#e5e5e5}.footer-quote p.footer-quote-author{opacity:.8;margin-top:1rem;margin-bottom:0;font-style:normal}.footer-nav-links{flex-direction:column;gap:.75rem;display:flex}.footer-nav-link{color:#000;font-size:.875rem;text-decoration:none;transition:opacity .2s}.footer-nav-link:hover{opacity:.7}body.dark-mode .footer-nav-link{color:#e5e5e5}.footer-social-links{flex-direction:column;gap:.75rem;display:flex}.footer-social-link{color:#000;font-size:.875rem;text-decoration:none;transition:opacity .2s}.footer-social-link:hover{opacity:.7}body.dark-mode .footer-social-link{color:#e5e5e5}.footer-bottom{margin-top:4rem}.footer-brand-large{color:#000;letter-spacing:-.02em;text-transform:lowercase;margin-bottom:2rem;font-size:clamp(4rem,10vw,8rem);font-weight:700;line-height:1}body.dark-mode .footer-brand-large{color:#e5e5e5}.footer-bottom-line{background-color:#fff;width:100%;height:1px;margin-bottom:2rem}.footer-bottom-content{justify-content:space-between;align-items:center;display:flex}@media (max-width:768px){.footer-bottom-content{flex-direction:column;align-items:flex-start;gap:1rem}}.footer-copyright{color:#000;flex-direction:column;gap:.25rem;font-size:.75rem;display:flex}body.dark-mode .footer-copyright{color:#e5e5e5}.footer-legal{opacity:.8;font-size:.75rem}.footer-legal-links{align-items:center;gap:.5rem;display:flex}.footer-legal-link{color:#000;font-size:.75rem;text-decoration:none;transition:opacity .2s}.footer-legal-link:hover{opacity:.7}body.dark-mode .footer-legal-link{color:#e5e5e5}.footer-legal-separator{color:#000;font-size:.75rem}body.dark-mode .footer-legal-separator{color:#e5e5e5}.card-grid{flex-direction:column;flex:1;align-content:start;gap:1.5rem;min-width:0;min-height:0;padding:.25rem 0;display:flex}.card-grid>a,.card-grid>div{min-width:0;display:block}.card-grid .card{width:100%;max-width:100%}.layout-block{background:#fff;border-radius:10px;flex-shrink:0;width:674px;min-width:674px;min-height:100%}body.dark-mode .layout-block{background:#1a1a1a}.card{cursor:pointer;background:#ffffff1f;border-color:#0000;border-image:;border-radius:10px;flex-direction:column;width:674px;max-width:100%;padding:1.5rem;transition:transform .2s,opacity .2s;display:flex}.card:hover{cursor:progress;opacity:.9;transform:translateY(-2px)}.card .card-video{aspect-ratio:16/9;background:#fefefe3d;border-radius:10px;flex-shrink:0;width:100%;margin-bottom:1rem}.card .card-heading{color:#000;margin:0 0 .5rem;font-size:16px;font-weight:700;line-height:1.4}.card .card-subtitle{color:#404040;margin:0 0 1rem;font-size:14px;font-weight:400;line-height:1.6}.card .card-author{color:#404040;margin-top:auto;margin-bottom:0;font-size:16px;font-weight:400;line-height:1.5}.link-preview-input{color:#000;background:#fff;border:1px solid #e5e5e5;border-radius:4px;flex:1;padding:.75rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem}.link-preview-input:focus{border-color:#78858d;outline:none}body.dark-mode .link-preview-input{color:#e5e5e5;background:#1a1a1a;border-color:#2a2a2a}body.dark-mode .link-preview-input:focus{border-color:#78858d}.link-preview-button{color:#fff;cursor:pointer;background:#435059;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:background-color .2s}.link-preview-button:hover:not(:disabled){background:#2f3a40}.link-preview-button:disabled{cursor:not-allowed}.wip-wrapper{flex:1;width:100%;min-height:0;display:flex;overflow:visible}.wip{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100%;padding:24px;display:flex;overflow:visible}.wip-circles{justify-content:center;align-items:center;gap:.35rem;margin-bottom:1.5rem;display:flex}.wip-circle{background:#757575;border-radius:50%;width:10px;height:10px;animation:2s ease-in-out infinite wip-breathing;display:block}body.dark-mode .wip-circle{background:#a0a0a0}@keyframes wip-breathing{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:.85;transform:scale(1.2)}}.wip-label{letter-spacing:.02em;color:#404040;margin:0;font-size:.875rem;font-weight:500}body.dark-mode .wip-label{color:#a0a0a0}.skeleton-fill{background:#bfc3c861}body.dark-mode .skeleton-fill{background:#ffffff14}.thumb-card-entry--skeleton{pointer-events:none;cursor:default}.thumb-card--skeleton{box-shadow:none;background:#bfc3c861;border:1px solid #bfc3c852;overflow:hidden}body.dark-mode .thumb-card--skeleton{background:#ffffff14;border-color:#ffffff0f}.thumb-card-entry--empty{pointer-events:none;cursor:default}.thumb-card--empty{box-shadow:none;background:#bfc3c861;border:1px solid #bfc3c852}body.dark-mode .thumb-card--empty{background:#ffffff14;border-color:#ffffff0f}.thumb-card-caption--empty{color:#757575;font-weight:400}body.dark-mode .thumb-card-caption--empty{color:#a0a0a0}.thumb-card-skeleton-caption{border-radius:4px;width:min(72%,26rem);height:.875rem;margin-top:.75rem}.home-feed-list .thumb-card-skeleton-caption{margin-top:.5rem}.tutorial-article--skeleton{pointer-events:none}.skeleton-block{border-radius:6px}.skeleton-block--logo{width:8.5rem;height:1rem}.skeleton-block--icon{border-radius:999px;width:1.25rem;height:1.25rem}.skeleton-block--title{border-radius:8px;width:min(100%,34rem);height:clamp(2rem,6vw,3rem)}.skeleton-block--byline{width:10rem;height:.875rem}.skeleton-block--line{width:100%;height:.875rem}.skeleton-block--line-short{width:72%}.tutorial-detail-hero--skeleton{flex-direction:column;gap:1rem;display:flex}.tutorial-detail-video-wrap--skeleton{background:#bfc3c861;border-radius:0}body.dark-mode .tutorial-detail-video-wrap--skeleton{background:#ffffff14}.tutorial-skeleton-body{flex-direction:column;gap:.75rem;width:100%;margin-top:2rem;display:flex}.link-preview-error{color:#c33;background:#cc33331a;border:1px solid #cc33334d;border-radius:4px;padding:1.5rem}body.dark-mode .link-preview-error{background:#c333;border-color:#c336}.link-preview-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}body.dark-mode .link-preview-card{background:#1a1a1a;border-color:#2a2a2a;box-shadow:0 2px 8px #0000004d}.tutorials-hero{max-width:640px;margin:0 auto 2.5rem;padding-top:2.5rem}@media (max-width:768px){.tutorials-hero{margin-bottom:2rem;padding-top:1.75rem}}.tutorials-title{letter-spacing:-.03em;color:#000;margin-bottom:.75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:clamp(2.25rem,4vw,3rem);font-weight:700}body.dark-mode .tutorials-title{color:#e5e5e5}.tutorials-lede{color:#404040;font-size:1.0625rem;line-height:1.6}body.dark-mode .tutorials-lede{color:#a0a0a0}.tutorials-grid{grid-template-columns:1fr;gap:1.5rem;max-width:720px;margin:0 auto;padding-bottom:3rem;display:grid}@media (max-width:768px){.tutorials-grid{gap:1.25rem;padding-bottom:2.5rem}}.tutorial-card{background:#ffffff73;border:1px solid #00000014;border-radius:10px;padding:1.5rem 1.5rem 1.4rem;transition:transform .18s,box-shadow .18s,border-color .18s,background-color .18s;box-shadow:0 2px 10px #0000000f}body.dark-mode .tutorial-card{background:#0d0d0de6;border-color:#2a2a2a;box-shadow:0 12px 28px #000000b3}.tutorial-card:hover{border-color:#00000024;transform:translateY(-2px);box-shadow:0 14px 30px #0000001f}body.dark-mode .tutorial-card:hover{border-color:#a0a0a0;box-shadow:0 18px 40px #000000e6}.tutorial-card-title{margin:0 0 .4rem;font-size:1.125rem;line-height:1.5}.tutorial-card-title a{color:#000;letter-spacing:-.01em;text-decoration:none}.tutorial-card-title a:hover{text-decoration:underline}body.dark-mode .tutorial-card-title a{color:#e5e5e5}.tutorial-card-meta{text-transform:uppercase;letter-spacing:.12em;color:#757575;margin-bottom:.65rem;font-size:.8125rem;font-weight:500}body.dark-mode .tutorial-card-meta{color:#a0a0a0}.tutorial-card-body{color:#404040;font-size:.9375rem;line-height:1.6}body.dark-mode .tutorial-card-body{color:#a0a0a0}.tutorial-card--placeholder{box-shadow:none;background:#ffffffbf;border:1px dashed #00000024}body.dark-mode .tutorial-card--placeholder{background:#0d0d0dd9;border-color:#2a2a2a}.tutorial-card--placeholder .tutorial-card-title{margin-bottom:.6rem}.tutorial-card--placeholder .tutorial-card-body{font-size:.9rem}.glass-button-preview{border-radius:16px;margin:2.5rem -2rem;overflow:hidden}@media (max-width:600px){.glass-button-preview{margin:2rem -1rem}}.glass-button-preview__stage{background:linear-gradient(230.65deg,#435059 10.81%,#5d6a72 36.39%,#78858d 63.45%,#747b81 100%);flex-direction:column;align-items:center;gap:2rem;padding:3rem 2rem 2rem;display:flex;position:relative;overflow:hidden}.glass-button-preview__stage:before{content:"";background:linear-gradient(229.89deg,#435059 10.68%,#5d6a72 34.15%,#78858d 58.97%,#7c848b 92.51%);border-radius:100px;width:280px;height:300px;position:absolute;top:-80px;right:-40px;box-shadow:0 16px 60px 30px #00000026}.glass-button-preview__button{z-index:1}.glass-button-preview__labels{flex-direction:column;gap:.5rem;width:100%;max-width:280px;display:flex}.glass-button-preview__label-row{color:#ffffffb3;letter-spacing:.01em;align-items:center;gap:.6rem;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Fira Code,monospace;font-size:.75rem;display:flex}.glass-button-preview__dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.glass-button-preview__dot--ring{background:linear-gradient(#fffc,#64646480);border:1px solid #ffffff4d}.glass-button-preview__dot--fill{background:#78858d}.glass-button-preview__dot--glow{filter:blur(1px);background:linear-gradient(#7a858ccc,#a3abb3e6)}.glass-button-preview__dot--arrow{background:linear-gradient(#b1b8bc,#fefefd)}.glass-button-exploded{background:linear-gradient(135deg,#435059 0%,#5d6a72 30%,#78858d 59%,#747b81 100%);border-radius:16px;margin:2.5rem -2rem;padding:2.5rem 1.5rem;overflow:hidden}@media (max-width:600px){.glass-button-exploded{margin:2rem -1rem;padding:2rem 1rem}}.glass-button-exploded__layers{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.glass-button-exploded__layer{flex-direction:column;align-items:center;gap:.75rem;display:flex}.glass-button-exploded__circle{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative}.glass-button-exploded__circle--base,.glass-button-exploded__circle--reflection,.glass-button-exploded__circle--arrow{border:1px dashed #fff3}.glass-button-exploded__ring{filter:drop-shadow(0 4px 4px #00000040);border:3px solid #5f6a6f;border-radius:50%;position:absolute;inset:0}.glass-button-exploded__fill{background:#78858d;border-radius:50%;position:absolute;inset:2.5px}.glass-button-exploded__glow{filter:blur(6px);z-index:1;background:linear-gradient(#7a858ccc 0%,#a3abb3e6 100%);border-radius:18px;width:55px;height:55px;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(8px - 50%))}.glass-button-exploded__label{color:#fff9;text-align:center;white-space:nowrap;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Fira Code,monospace;font-size:.6875rem}.glass-button-exploded__plus,.glass-button-exploded__equals{color:#fff6;margin-bottom:1.5rem;font-size:1.25rem;font-weight:300}.steel-palette-preview{background:#1a1a1a;border-radius:16px;margin:2rem -2rem;padding:1.5rem;overflow:hidden}@media (max-width:600px){.steel-palette-preview{margin:1.5rem -1rem;padding:1rem}}.steel-palette-preview__swatches{flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;display:flex}.steel-palette-preview__swatch{flex-direction:column;flex:1;align-items:center;gap:.4rem;min-width:80px;display:flex}.steel-palette-preview__color{aspect-ratio:1;border:1px solid #ffffff0f;border-radius:10px;width:100%}.steel-palette-preview__name{color:#ffffff80;text-align:center;word-break:break-all;font-family:SF Mono,Fira Code,monospace;font-size:.625rem}.steel-palette-preview__hex{color:#fffc;font-family:SF Mono,Fira Code,monospace;font-size:.75rem;font-weight:600}.steel-palette-preview__rgb{color:#fff6;font-family:SF Mono,Fira Code,monospace;font-size:.625rem}.steel-palette-preview__gradient{flex-direction:column;gap:.5rem;display:flex}.steel-palette-preview__gradient-bar{background:linear-gradient(135deg,#435059 0%,#5d6a72 30%,#78858d 59%,#747b81 100%);border:1px solid #ffffff0f;border-radius:8px;height:32px}.steel-palette-preview__gradient-label{color:#fff6;text-align:center;font-family:SF Mono,Fira Code,monospace;font-size:.6875rem}.tutorial-walkthrough{flex-direction:column;gap:1.75rem;width:100%;max-width:720px;margin:0 auto;display:flex}.tutorial-walkthrough__header{flex-direction:column;gap:1rem;display:flex}.tutorial-walkthrough__back{color:#404040;align-self:flex-start;font-size:.875rem;font-weight:600;text-decoration:none}.tutorial-walkthrough__back:hover{color:#000}body.dark-mode .tutorial-walkthrough__back{color:#a0a0a0}body.dark-mode .tutorial-walkthrough__back:hover{color:#e5e5e5}.tutorial-walkthrough__progress-track{background:#0000001a;border-radius:999px;width:100%;height:4px;overflow:hidden}body.dark-mode .tutorial-walkthrough__progress-track{background:#ffffff1f}.tutorial-walkthrough__progress-fill{border-radius:inherit;background:linear-gradient(135deg,#9df6c1 0%,#fcfab0 100%);height:100%;transition:width .25s}.tutorial-walkthrough__progress-label{color:#757575;margin-top:.5rem;font-size:.75rem;font-weight:500;display:block}body.dark-mode .tutorial-walkthrough__progress-label{color:#a0a0a0}.tutorial-walkthrough__nav-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.tutorial-walkthrough__nav-item{color:#404040;background:#ffffff40;border:1px solid #0000000f;border-radius:8px;align-items:center;gap:.65rem;padding:.55rem .75rem;font-size:.8125rem;display:flex}body.dark-mode .tutorial-walkthrough__nav-item{color:#a0a0a0;background:#ffffff0f;border-color:#ffffff14}.tutorial-walkthrough__nav-item--current{color:#000;background:#ffffff8c;border-color:#0000001a;font-weight:600}body.dark-mode .tutorial-walkthrough__nav-item--current{color:#e5e5e5;background:#ffffff1a}.tutorial-walkthrough__nav-item--locked{opacity:.55}.tutorial-walkthrough__nav-index{font-variant-numeric:tabular-nums;color:#757575;flex-shrink:0;width:1.25rem}.tutorial-walkthrough__nav-item--current .tutorial-walkthrough__nav-index{color:#435059;font-weight:700}body.dark-mode .tutorial-walkthrough__nav-item--current .tutorial-walkthrough__nav-index{color:#9df6c1}.tutorial-walkthrough__nav-label{flex:1;min-width:0}.tutorial-walkthrough__nav-badge{text-transform:uppercase;letter-spacing:.06em;color:#757575;flex-shrink:0;font-size:.625rem;font-weight:600}.tutorial-walkthrough__main{flex-direction:column;gap:1.25rem;display:flex}.tutorial-walkthrough__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#757575;margin:0;font-size:.75rem;font-weight:600}body.dark-mode .tutorial-walkthrough__eyebrow{color:#a0a0a0}.tutorial-walkthrough__title{letter-spacing:-.02em;color:#000;margin:0;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;line-height:1.15}body.dark-mode .tutorial-walkthrough__title{color:#e5e5e5}.tutorial-walkthrough__lede{color:#404040;margin:0;font-size:1.125rem;line-height:1.55}body.dark-mode .tutorial-walkthrough__lede{color:#a0a0a0}.tutorial-walkthrough__meta{color:#757575;margin:0;font-size:.875rem}.tutorial-walkthrough__video-wrap{aspect-ratio:16/9;background:#00000014;border-radius:10px;width:100%;overflow:hidden}body.dark-mode .tutorial-walkthrough__video-wrap{background:#1a1a1a}.tutorial-walkthrough__video{object-fit:cover;width:100%;height:100%;display:block}.tutorial-walkthrough__preview{margin:.25rem 0}.tutorial-walkthrough__body{color:#000;font-size:1.0625rem;line-height:1.7}body.dark-mode .tutorial-walkthrough__body{color:#e5e5e5}.tutorial-walkthrough__body p{margin:0 0 1rem}.tutorial-walkthrough__body ul,.tutorial-walkthrough__body ol{margin:0 0 1.25rem;padding-left:1.35rem}.tutorial-walkthrough__body li{margin-bottom:.4rem}.tutorial-walkthrough__h2{letter-spacing:-.01em;margin:1.5rem 0 .75rem;font-size:1.125rem;font-weight:700}.tutorial-walkthrough__path{list-style:decimal}.tutorial-walkthrough__footer{flex-direction:column;align-items:flex-start;gap:.75rem;padding-top:.5rem;display:flex}.tutorial-walkthrough__btn{color:#fff;cursor:pointer;background:#435059;border:none;border-radius:8px;padding:.65rem 1.25rem;font-size:.9375rem;font-weight:600;transition:opacity .15s,background .15s}.tutorial-walkthrough__btn:hover:not(:disabled){background:#2f3a40}.tutorial-walkthrough__btn:disabled{opacity:.45;cursor:not-allowed}.tutorial-walkthrough__footer-note{color:#757575;margin:0;font-size:.8125rem;line-height:1.5}body.dark-mode .tutorial-walkthrough__footer-note{color:#a0a0a0}.home-feed-list{box-sizing:border-box;flex-direction:column;justify-content:flex-start;gap:2.5rem;width:100%;max-width:100%;min-height:100%;margin:0;padding:0 0 2rem;display:flex}@media (max-width:1023px){.home-feed-list{padding-bottom:1.5rem}}@media (min-width:1024px){.home-feed-list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:1.75rem 1.5rem;display:grid}}@media (min-width:1280px){.home-feed-list{gap:2rem 1.75rem}}.home-feed-list .thumb-card-caption{margin-top:.5rem}.home-feed-list--enter{animation:.28s cubic-bezier(.33,1,.68,1) both home-feed-enter}@keyframes home-feed-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.home-feed-card{width:100%;min-width:0;margin:0}.home-feed-detail{box-sizing:border-box;width:100%;max-width:820px;margin:0 auto;padding:.25rem 0 3rem}.home-feed-back{color:#404040;cursor:pointer;background:0 0;border:none;align-items:center;margin-bottom:1.25rem;padding:0;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.home-feed-back:hover{color:#000}body.dark-mode .home-feed-back{color:#a0a0a0}body.dark-mode .home-feed-back:hover{color:#e5e5e5}.thumb-card-link--button{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0}.tutorial-article--embedded{max-width:100%}.tutorial-article--embedded .tutorial-article-head{margin-bottom:1.5rem}.about-page{max-width:42rem;margin:0 auto;padding:1.5rem 1.5rem 4rem}@media (max-width:768px){.about-page{padding:1rem 1rem 3rem}}.about-page-header{margin-bottom:3rem}.about-page-logo{color:#000;letter-spacing:-.07em;font-size:1rem;font-weight:700;text-decoration:none}.about-page-logo:hover{opacity:.7}body.dark-mode .about-page-logo{color:#e5e5e5}.about-page-content{flex-direction:column;gap:2.5rem;display:flex}.about-page-title{letter-spacing:-.03em;margin:0;font-size:clamp(2rem,6vw,3rem);font-weight:600;line-height:1.1}.about-page-section{flex-direction:column;gap:1rem;display:flex}.about-page-section p{color:#000000d9;margin:0;font-size:1.0625rem;line-height:1.65}body.dark-mode .about-page-section p{color:#e5e5e5d9}.about-page-section a{color:inherit;text-underline-offset:.15em}.about-page-heading{letter-spacing:-.02em;margin:0;font-size:1.125rem;font-weight:600}.about-page-lead{font-size:1.125rem;font-weight:500;line-height:1.6}.about-page-list{flex-direction:column;gap:.5rem;margin:0;padding-left:1.25rem;font-size:1.0625rem;line-height:1.5;display:flex}.home-portfolio-section{width:100%;padding-bottom:3.5rem;scroll-margin-top:0}.home-portfolio-section:last-child{padding-bottom:1.5rem}.home-portfolio-section--collapsible{padding-bottom:1.25rem}.home-portfolio-section.is-collapsed{padding-bottom:.75rem}.home-portfolio-section__toggle{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 1.5rem;padding:0;display:flex}.is-collapsed .home-portfolio-section__toggle{margin-bottom:0}.home-portfolio-section__toggle:focus-visible{outline-offset:4px;outline:2px solid #00000059}body.dark-mode .home-portfolio-section__toggle:focus-visible{outline-color:#e5e5e573}.home-portfolio-section__toggle .home-portfolio-section__heading{margin-bottom:0}.home-portfolio-section__heading-group{align-items:baseline;gap:.5rem;min-width:0;display:inline-flex}.home-portfolio-section__status{color:#757575;font-size:.75rem;font-weight:400;line-height:1.2}body.dark-mode .home-portfolio-section__status{color:#a0a0a0}.home-portfolio-section__chevron{font-size:var(--de-nav-size);color:#404040;text-align:right;flex-shrink:0;min-width:.75rem;font-weight:500;line-height:1.2}body.dark-mode .home-portfolio-section__chevron{color:#a0a0a0}.home-portfolio-section.home-about-section{padding-top:3rem;padding-bottom:40vh}@media (max-width:768px){.home-portfolio-section.home-about-section{padding-top:2.5rem}}.home-about-section__body{flex-direction:column;gap:1.25rem;max-width:36rem;display:flex}.home-about-section__lead{letter-spacing:-.01em;color:#000;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:clamp(1.125rem,1.05rem + .35vw,1.375rem);font-weight:500;line-height:1.45}body.dark-mode .home-about-section__lead{color:#e5e5e5}.home-about-section__copy{color:#404040;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.9375rem;font-weight:400;line-height:1.65}.home-about-section__copy strong{color:#000;font-weight:600}.home-about-section__copy a{color:#000;text-underline-offset:.12em;text-decoration:underline}.home-about-section__copy a:hover{opacity:.75}body.dark-mode .home-about-section__copy{color:#a0a0a0}body.dark-mode .home-about-section__copy strong,body.dark-mode .home-about-section__copy a{color:#e5e5e5}.home-portfolio-section__heading{color:#000;margin-bottom:1.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}body.dark-mode .home-portfolio-section__heading{color:#e5e5e5}.home-portfolio-section__heading--skeleton{background:var(--de-skeleton-fill);border-radius:2px;width:6rem;height:.875rem}.thumb-card-meta{z-index:2;margin:.35rem 0 0;font-size:.8125rem;line-height:1.3;position:relative}.thumb-card-meta-link{color:#404040;text-decoration:none}.thumb-card-meta-link:hover{color:#000}body.dark-mode .thumb-card-meta-link{color:#a0a0a0}body.dark-mode .thumb-card-meta-link:hover{color:#e5e5e5}.home-section-chrome{z-index:40;pointer-events:none;opacity:0;visibility:hidden;--home-chrome-migrate:.34s;transition:opacity .16s cubic-bezier(.33,1,.68,1),visibility .16s cubic-bezier(.33,1,.68,1);display:block;position:fixed}.home-section-chrome--top{background:var(--de-bg-top);top:0}.home-section-chrome--bottom{z-index:39;background:var(--de-bg-bottom);bottom:0}.home-section-chrome--visible{opacity:1;visibility:visible}.home-section-chrome__label{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;align-items:center;gap:1rem;margin:0;display:flex;overflow:auto hidden}.home-section-chrome__label::-webkit-scrollbar{display:none}.home-section-chrome__title{pointer-events:auto;min-width:0;color:var(--de-gray-muted);flex:none;grid-template-columns:1fr;text-decoration:none;display:grid;overflow:hidden}.home-section-chrome__title-inner{min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:var(--de-nav-size);white-space:nowrap;align-items:center;font-weight:400;line-height:1.2;display:flex}.home-section-chrome__title[aria-current]{color:var(--de-black)}.home-section-chrome__title[aria-current] .home-section-chrome__title-inner{font-weight:600}.home-section-chrome__title--enter{animation:home-chrome-label-open var(--home-chrome-migrate)cubic-bezier(.33,1,.68,1)both}.home-section-chrome__title--exit{animation:home-chrome-label-close var(--home-chrome-migrate)cubic-bezier(.33,1,.68,1)both;pointer-events:none}.home-section-chrome__title--enter .home-section-chrome__title-inner{animation:home-chrome-slide-in var(--home-chrome-migrate)cubic-bezier(.33,1,.68,1)both}.home-section-chrome__title--exit .home-section-chrome__title-inner{animation:home-chrome-slide-out var(--home-chrome-migrate)cubic-bezier(.33,1,.68,1)both}.home-section-chrome--scroll-up{--home-chrome-migrate:.24s}@keyframes home-chrome-label-open{0%{grid-template-columns:0fr}to{grid-template-columns:1fr}}@keyframes home-chrome-label-close{0%{grid-template-columns:1fr}to{grid-template-columns:0fr}}@keyframes home-chrome-slide-in{0%{opacity:0;transform:translate(-.85em)}to{opacity:1;transform:translate(0)}}@keyframes home-chrome-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-.85em)}}@media (min-width:769px){.home-section-chrome{left:var(--de-sidebar-width);padding:2rem 1.5rem .75rem 0;right:0}.home-section-chrome--top{padding-top:2rem}}@media (max-width:768px){.home-section-chrome{z-index:50;padding:.75rem 1rem;left:0;right:0}.home-section-chrome--top{padding-top:calc(.75rem + env(safe-area-inset-top,0px));background-color:var(--de-bg-top)}.home-section-chrome--bottom{padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){.home-section-chrome{transition:opacity .01ms,visibility .01ms}.home-section-chrome:not(.home-section-chrome--visible){opacity:0;visibility:hidden}.home-section-chrome__title--enter,.home-section-chrome__title--enter .home-section-chrome__title-inner{animation:none}.home-section-chrome__title--exit{display:none}}
