@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_astro/bricolage-grotesque-variable.DLoelf7F.woff2)format("woff2")}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_astro/geist-variable.BgDaEnEv.woff2)format("woff2")}:root{--bg:#f7f8fa;--surface:#fff;--text:#14171c;--text-2:#2b3138;--muted:#5a626c;--border:#e4e7ec;--border-strong:#d6dae0;--rule:#eceef2;--accent:#2f5bff;--cobalt:#2f5bff;--pink:#ff4f79;--sun:#ffc531;--tag-bg:#f1f3f6;--tag-text:#2b3138;--nav-active:#f4f6fa;--on-text:#fff;--banner-bg:#14171c;color-scheme:light;--font-display:"Bricolage Grotesque", "Geist", system-ui, sans-serif;--font:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-name:42px;--fs-name-mobile:38px;--fs-h2:28px;--fs-h3:18px;--fs-body:16px;--fs-small:14px;--fs-button:15px;--fs-tag:13px;--fs-label:13px;--lh-body:1.55;--radius-card:18px;--radius-status:16px;--radius-pill:999px;--radius-nav:10px;--space-section:64px;--content-max:860px;--prose-max:70ch;--space-card:24px;--space-grid:16px;--button-height:44px;--button-px:22px;--panel-width:380px;--anchor-offset:84px}@media (width>=1024px){:root{--anchor-offset:24px;--space-section:96px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#111418;--surface:#181c21;--text:#e8ebef;--text-2:#c9d0d8;--muted:#9aa3ae;--border:#262b33;--border-strong:#3a424d;--rule:#20252c;--accent:#8fa8ff;--cobalt:#2f5bff;--pink:#ff4f79;--sun:#ffc531;--tag-bg:#222831;--tag-text:#c9d0d8;--nav-active:#1f242b;--on-text:#111418;--banner-bg:#14171c;color-scheme:dark}}:root[data-theme=dark]{--bg:#111418;--surface:#181c21;--text:#e8ebef;--text-2:#c9d0d8;--muted:#9aa3ae;--border:#262b33;--border-strong:#3a424d;--rule:#20252c;--accent:#8fa8ff;--cobalt:#2f5bff;--pink:#ff4f79;--sun:#ffc531;--tag-bg:#222831;--tag-text:#c9d0d8;--nav-active:#1f242b;--on-text:#111418;--banner-bg:#14171c;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,dl,dd,ul{margin:0}ul{padding:0;list-style:none}img,svg{max-width:100%;display:block}h1,h2,h3,.role{text-wrap:balance}h1,h2,h3{font-family:var(--font-display)}p{text-wrap:pretty}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}a{color:var(--accent)}a:hover{color:var(--text)}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}main{position:relative;overflow:clip}main>:not(.splash){z-index:1;max-width:var(--content-max);position:relative}.splash{z-index:0;pointer-events:none;fill:currentColor;position:absolute}.splash-cobalt{color:var(--cobalt)}.splash-pink{color:var(--pink)}.splash-sun{color:var(--sun)}.splash-page-a{width:220px;top:-120px;right:-80px;transform:rotate(18deg)}.splash-page-b{width:44px;top:70px;right:120px;transform:rotate(-30deg)}@media (width>=1024px){.splash-page-a{width:320px;top:-190px;right:-110px}.splash-page-b{width:64px;top:22px;right:330px}}.splash-panel{width:150px;top:-70px;right:-60px;transform:rotate(-20deg)}.status-bg{width:calc(100% + 8px);height:calc(100% + 8px);inset:-4px}.status-drip{width:26px;bottom:-14px;right:-8px}.splash-closing{width:150px;top:-70px;right:-60px;transform:rotate(25deg)}@media (width>=768px){.splash-closing{width:240px;top:-90px;right:-40px}}@media print{.splash{display:none!important}}.btn{--splat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 80' preserveAspectRatio='none'%3E%3Cpath d='M30 30 C26 22 38 14 52 16 C60 6 80 8 88 14 C100 6 124 8 132 16 C146 8 168 16 166 28 C182 30 192 44 182 54 C190 66 172 74 158 68 C150 78 126 74 118 68 C106 76 84 74 76 68 C62 76 40 70 40 60 C24 62 12 50 20 42 C12 36 20 28 30 30 Z'/%3E%3Ccircle cx='6' cy='22' r='4'/%3E%3Ccircle cx='195' cy='26' r='3.5'/%3E%3Ccircle cx='190' cy='72' r='4'/%3E%3Ccircle cx='10' cy='68' r='3'/%3E%3Ccircle cx='112' cy='3' r='3'/%3E%3C/svg%3E");--splash:var(--sun);--btn-bg:var(--surface);--btn-border:var(--border-strong);isolation:isolate;position:relative;background:0 0!important}.btn:nth-of-type(3n+2){--splat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 80' preserveAspectRatio='none'%3E%3Cpath d='M14 36 C10 22 30 6 52 8 C70 4 84 12 100 14 C120 12 140 10 160 16 C182 14 194 30 186 44 C192 56 176 64 164 64 C160 72 158 80 150 80 C142 80 142 70 138 66 C118 70 96 66 80 68 C60 72 34 70 24 60 C8 56 8 44 14 36 Z'/%3E%3Ccircle cx='4' cy='24' r='3.5'/%3E%3Ccircle cx='196' cy='18' r='3'/%3E%3Ccircle cx='188' cy='70' r='3.5'/%3E%3Ccircle cx='34' cy='76' r='3'/%3E%3C/svg%3E")}.btn:nth-of-type(3n),.secondary .btn:first-child{--splat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 80' preserveAspectRatio='none'%3E%3Cpath d='M20 26 C16 12 44 2 62 10 C76 14 90 8 104 12 C122 16 140 12 156 20 C176 22 190 34 184 46 C196 58 180 76 160 70 C146 68 130 74 114 70 C96 66 80 72 64 68 C44 72 26 66 24 54 C10 50 8 34 20 26 Z'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='26' cy='4' r='2.5'/%3E%3Ccircle cx='196' cy='72' r='4'/%3E%3Ccircle cx='172' cy='78' r='2.5'/%3E%3Ccircle cx='100' cy='2' r='3'/%3E%3C/svg%3E")}.btn-primary{--splash:var(--cobalt);--btn-bg:var(--text);--btn-border:var(--text)}.closing .btn{--splash:var(--pink);--btn-bg:var(--banner-bg);--btn-border:#5b636e}.closing .btn-primary{--btn-bg:#fff;--btn-border:#fff}.btn:after{content:"";z-index:-1;border:1px solid var(--btn-border);border-radius:inherit;background:var(--btn-bg);position:absolute;inset:-1px}.btn:before{content:"";z-index:-2;background:var(--splash);-webkit-mask:var(--splat) center / 100% 100% no-repeat;mask:var(--splat) center / 100% 100% no-repeat;opacity:0;transition:transform .22s cubic-bezier(.2,1.15,.4,1),opacity .12s ease-out;position:absolute;inset:-12px -7px;transform:scale(.7)}.btn:hover:before,.btn:focus-visible:before{opacity:1;transform:scale(1)}@media print{.btn:before{display:none}}.skip-link{z-index:100;border-radius:var(--radius-pill);background:var(--text);color:var(--on-text);font-size:var(--fs-small);padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus,.skip-link:focus-visible{color:var(--on-text);transform:none}@media (width<=1023.98px){.desktop-only{display:none!important}}@media (width>=1024px){.mobile-only{display:none!important}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media print{:root,:root[data-theme],:root:not([data-theme=light]){--bg:#fff;--surface:#fff;--text:#14171c;--text-2:#2b3138;--muted:#5a626c;--border:#d6dae0;--border-strong:#d6dae0;--rule:#d6dae0;--accent:#2f5bff;--on-text:#fff;color-scheme:light}@page{margin:14mm}body{font-size:12pt}.skip-link,.mobile-nav,.bar,.theme-toggle,.lang-switch,.panel nav,.back{display:none!important}.panel,.mobile-nav{height:auto!important;position:static!important;overflow:visible!important}.status{animation:none!important}.contact a[data-print]:after{content:" : " attr(data-print);font-weight:400}article,.skill-row,.about,.diagram,.card,.contact{break-inside:avoid}h2{break-after:avoid}main{padding-bottom:0!important}}
