@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-ext-500-normal-1Z8Q-7rh.woff2) format("woff2"),url(/assets/cinzel-latin-ext-500-normal-BxIh9iwm.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-500-normal-B-2dbOfA.woff2) format("woff2"),url(/assets/cinzel-latin-500-normal-DMNTwV-V.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-ext-600-normal-BEFdM_VE.woff2) format("woff2"),url(/assets/cinzel-latin-ext-600-normal-BY9Mq9iK.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2) format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-ext-500-normal-Yta7XZ9C.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-500-normal-lsPpqi9g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-500-normal-CyAY5ZLS.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-500-normal-DkJXBcIH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-vietnamese-500-normal-BZGLGj12.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-500-normal-DqXqCC0q.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-normal-DYeaGGzO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-ext-600-normal-BMhMHfrj.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-600-normal-CsIYWmWK.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-600-normal-C2atO-64.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-600-normal-FNmA3REe.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-vietnamese-600-normal-BoXdMtcr.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-600-normal-C4HEjEaf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-ext-500-italic-ClXnudBg.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-500-italic-DakTmaFY.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-500-italic-DVnfXoMy.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-500-italic-C9gO-8KC.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-vietnamese-500-italic-D3igDnAQ.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-500-italic-C-296ow0.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-italic-CE7zdTnu.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-italic-CalKM9tT.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-italic-Y14P-dkT.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-italic-DhNIfkTX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent: #ff8a1f;--accent-light: #ffe7b8;--jarvis: #d8785a;--jarvis-light: #ffe28a;--jarvis-deep: #ff1212;--jarvis-think: #fff4d6;--jarvis-achtergrond-start: .9;--jarvis-achtergrond: .38;--jarvis-achtergrond-denkt: .48;--jarvis-achtergrond-spreekt: .6;--void: #050b14;--bg: var(--void);--panel: rgba(12, 24, 40, .62);--panel-solid: #0b1828;--ink: #ecf0f4;--muted: #8b9aab;--amber: #ffb547;--line: color-mix(in srgb, var(--accent) 18%, transparent);--line-strong: color-mix(in srgb, var(--accent) 38%, transparent);--accent-ink: #120700;--accent-soft: color-mix(in srgb, var(--accent) 11%, transparent);--glow: 0 0 18px color-mix(in srgb, var(--accent) 38%, transparent);--think: var(--accent-light);--warn: var(--amber);--user-bubble: color-mix(in srgb, var(--accent) 10%, transparent);--user-ink: var(--ink);--font-display: "Sora", "Segoe UI", system-ui, sans-serif;--font-body: "Sora", "Segoe UI", system-ui, sans-serif;--font-hud: "Chakra Petch", "Sora", "Segoe UI", system-ui, sans-serif;--font-mono: var(--font-hud);--radius: 12px;--sidebar: 300px;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:radial-gradient(1200px 700px at 70% -10%,rgba(40,120,190,.18),transparent 60%),radial-gradient(900px 600px at -10% 110%,rgba(30,90,150,.14),transparent 60%),var(--void);background-attachment:fixed;color:var(--ink);font:300 15px/1.65 var(--font-body);-webkit-font-smoothing:antialiased}#app{height:100%}a{color:var(--accent)}strong{font-weight:600}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.01em;text-wrap:balance;margin:0}::selection{background:color-mix(in srgb,var(--accent) 35%,transparent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.eyebrow{font:500 12.5px/1.2 var(--font-hud);letter-spacing:.06em;color:var(--accent);opacity:.85}.tag{font:500 12.5px/1 var(--font-hud);letter-spacing:.02em;padding:5px 9px;border-radius:6px;background:var(--accent-soft);color:var(--ink);border:1px solid var(--line)}.placeholder{color:var(--warn)}.hud{position:relative}.hud:before,.hud:after{content:"";position:absolute;width:14px;height:14px;pointer-events:none;border-color:var(--accent);border-style:solid;opacity:.7}.hud:before{top:-1px;left:-1px;border-width:1.5px 0 0 1.5px;border-top-left-radius:4px}.hud:after{bottom:-1px;right:-1px;border-width:0 1.5px 1.5px 0;border-bottom-right-radius:4px}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 30%,transparent) transparent}.pane :is(h2,h3,h4,p,li,dd,dt,summary,.eyebrow,.year,.when){text-shadow:0 0 2px var(--void),0 0 6px var(--void),0 0 12px rgba(5,11,20,.7)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.fatal{padding:2rem;color:var(--muted)}.shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100%}.shell .work{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%}.shell .stage{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.shell .pane{position:relative;z-index:1;flex:1;min-height:0;overflow-y:auto}@media(max-width:820px){.shell{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:auto;min-height:100%}.shell .work{height:auto}.shell .stage{display:block}.shell .pane{overflow:visible}}.shell .id{padding:22px 0 22px 22px;display:flex;flex-direction:column;gap:14px;min-height:0;overflow:hidden}.shell .id-card{flex:0 1 auto;min-height:0;display:flex;flex-direction:column;gap:22px;padding:26px 22px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shell .id-top{display:flex;gap:14px;align-items:center}.shell .avatar{flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;position:relative;border:1px solid var(--line-strong);box-shadow:inset 0 0 18px var(--accent-soft),var(--glow)}.shell .avatar:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;border:1.5px solid transparent;border-top-color:var(--accent);border-right-color:var(--accent);animation:spin 9s linear infinite}.shell .avatar span{font:600 17px var(--font-hud);letter-spacing:.04em;color:var(--accent)}.shell .avatar.photo{width:72px;height:72px}.shell .avatar img{width:calc(100% - 12px);height:calc(100% - 12px);border-radius:50%;object-fit:cover;display:block;box-shadow:0 0 0 1px var(--line-strong)}@keyframes spin{to{transform:rotate(360deg)}}.shell h1{font-size:21px}.shell .role{margin:3px 0 0;color:var(--muted);font-size:13.5px}.shell .tagline{margin:0;font-size:14.5px;color:var(--ink)}.shell .facts{margin:0;display:grid;gap:12px}.shell .fact{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:11px;align-items:center}.shell .fact-icon{grid-row:span 2;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--accent);border:1px solid var(--line-strong);background:color-mix(in srgb,var(--accent) 8%,transparent);box-shadow:inset 0 0 8px color-mix(in srgb,var(--accent) 14%,transparent)}.shell .fact-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.shell .fact dt{font-size:11.5px;color:var(--muted);letter-spacing:.02em;align-self:end}.shell .fact dd{margin:1px 0 0;font-size:13.5px;line-height:1.35;align-self:start}.shell .fact.now .fact-icon{position:relative}.shell .fact.now .fact-icon:after{content:"";position:absolute;top:1px;right:1px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);animation:fact-pulse 2.4s ease-in-out infinite}@keyframes fact-pulse{50%{opacity:.35}}.shell .links{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13.5px}.shell .links a{text-decoration:none;overflow-wrap:anywhere;color:var(--accent)}.shell .links a:hover{text-shadow:var(--glow)}.shell .notice{margin:auto 0 0;font-size:12.5px;color:var(--muted);border:1px dashed rgba(255,181,71,.35);border-radius:10px;padding:10px 12px}.shell .notice code{font-family:var(--font-hud);font-size:12.5px;color:var(--amber)}.shell .skills{display:flex;flex-direction:column;gap:10px;min-height:0;flex:0 1 auto;overflow:hidden}.shell .skills .eyebrow{margin:0;display:flex;align-items:baseline;justify-content:space-between;gap:8px}.shell .skills-hint{font:400 11px var(--font-body);letter-spacing:0;color:var(--muted)}.shell .skill-list{display:grid;gap:10px}.shell .skill-group{display:grid;gap:6px}.shell .skill-group-name{font-size:12px;color:var(--muted)}.shell .skill-accordion{position:relative;display:grid;align-content:start;justify-items:start;gap:6px;min-height:0;overflow-y:auto;scrollbar-width:none;padding:2px}.shell .skill-accordion::-webkit-scrollbar{display:none}.shell .skill-cat{position:relative;overflow:hidden;width:calc(var(--head-w, 140) * 1px + 2px);max-width:100%;border-radius:15px;border:1px solid var(--line-strong);background:color-mix(in srgb,var(--accent) 6%,transparent);transition:width .34s cubic-bezier(.5,0,.2,1) .26s,border-radius .34s ease .26s,border-color .25s,background .3s,box-shadow .3s}.shell .skill-cat:hover{border-color:var(--accent)}.shell .skill-cat.open{width:100%;border-radius:16px;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);box-shadow:inset 0 0 18px color-mix(in srgb,var(--accent) 12%,transparent),0 0 14px color-mix(in srgb,var(--accent) 18%,transparent);transition:width .34s cubic-bezier(.34,1.3,.64,1),border-radius .34s ease,border-color .25s,background .3s,box-shadow .3s}.shell .skill-cat:not(.open):active{transform:scale(.95)}.shell .skill-cat-head{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:5px 12px;background:none;border:0;white-space:nowrap;font:500 12.5px/1.2 var(--font-body);color:var(--ink);transition:color .2s,padding .3s ease}.shell .skill-cat:hover .skill-cat-head{color:#fff}.shell .skill-cat.open .skill-cat-head{color:var(--accent);padding-top:8px}.shell .skill-count{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;font:600 10px var(--font-hud);color:var(--muted);background:#ffffff0f;transition:color .2s,background .2s}.shell .skill-cat.open .skill-count{color:#1a0d00;background:var(--accent)}.shell .skill-cat-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease .06s}.shell .skill-cat.open .skill-cat-body{grid-template-rows:1fr;transition-delay:.22s}.shell .skill-cat-body>.skill-bubbles{min-height:0;overflow:hidden;padding:0 10px;transition:padding .28s ease .06s}.shell .skill-cat.open .skill-cat-body>.skill-bubbles{padding:4px 10px 12px;transition-delay:.22s}.shell .skill-cat .skill-bubble{opacity:0;transform:translateY(-8px) scale(.4);transition:opacity .14s ease calc((6 - var(--i, 0)) * 15ms),transform .18s ease calc((6 - var(--i, 0)) * 15ms),border-color .15s,box-shadow .15s,color .15s}.shell .skill-cat.open .skill-bubble{opacity:1;transform:none;transition:opacity .25s ease calc(.3s + var(--i, 0) * 45ms),transform .42s cubic-bezier(.34,1.56,.64,1) calc(.3s + var(--i, 0) * 45ms),border-color .15s,box-shadow .15s,color .15s}.shell .skill-cat.open .skill-bubble:hover{transform:translateY(-1px);transition-delay:0s}.shell .skill-cat.open .skill-bubble:active{transform:scale(.96)}.shell .skill-cat.hud:before,.shell .skill-cat.hud:after{width:18px;height:18px;opacity:0;transition:opacity .3s ease .3s}.shell .skill-cat.hud:before{top:0;left:0;border-width:2px 0 0 2px;border-top-left-radius:15px}.shell .skill-cat.hud:after{bottom:0;right:0;border-width:0 2px 2px 0;border-bottom-right-radius:15px}.shell .skill-cat.open.hud:before,.shell .skill-cat.open.hud:after{opacity:1}.shell .skills>.eyebrow,.shell .id-top,.shell .facts,.shell .links,.shell .tagline{flex:none}@media(min-width:821px)and (max-height:780px){.shell .id{padding-top:16px;padding-bottom:16px}.shell .id-card{gap:14px;padding:18px}.shell .facts{gap:8px}.shell .links{gap:4px 16px}.shell .skills{gap:6px}.shell .skill-cat-head{padding:3px 10px;font-size:12px}.shell .skill-accordion{gap:4px}}@media(min-width:821px)and (max-height:700px){.shell .id-card{gap:11px;padding:14px 16px}.shell .avatar,.shell .avatar.photo{width:48px;height:48px}.shell h1{font-size:18px}.shell .role{font-size:12.5px}.shell .fact{grid-template-columns:24px minmax(0,1fr);column-gap:9px}.shell .fact-icon{width:24px;height:24px;grid-row:auto}.shell .fact-icon svg{width:13px;height:13px}.shell .fact dt{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.shell .fact dd{margin:0;font-size:12.5px;align-self:center}.shell .links{display:flex;flex-wrap:wrap;gap:2px 14px;font-size:12.5px}.shell .notice{padding:7px 10px;font-size:11.5px}.shell .skill-bubble{padding:5px 9px;font-size:12px}}.shell .skill-bubbles{display:flex;flex-wrap:wrap;gap:6px}.shell .skill-bubble{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font:500 12.5px/1 var(--font-body);color:var(--ink);padding:6px 11px;border-radius:999px;background:color-mix(in srgb,var(--accent) 9%,transparent);border:1px solid var(--line);box-shadow:inset 0 0 8px color-mix(in srgb,var(--accent) 10%,transparent);transition:border-color .15s,box-shadow .15s,transform .15s,color .15s}.shell .skill-bubble:hover{border-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:inset 0 0 10px color-mix(in srgb,var(--accent) 20%,transparent),var(--glow)}.shell .skill-bubble:active{transform:scale(.96)}@media(max-width:820px){.shell .id{padding:16px 16px 6px;gap:10px;overflow:visible}.shell .id-card{padding:18px 16px;gap:14px}.shell .facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.shell .links{display:flex;flex-wrap:wrap;gap:6px 16px}.shell .notice{margin:0}}.shell .tabs{position:relative;display:flex;gap:6px;padding:22px 28px 0;overflow-x:auto;scrollbar-width:none}.shell .tabs::-webkit-scrollbar{display:none}.shell .tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;position:relative;z-index:1;font:500 13.5px var(--font-body);color:var(--muted);background:transparent;border:1px solid transparent;border-radius:999px;padding:9px 16px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:color .25s}.shell .tabs button:hover,.shell .tabs button.on{color:var(--ink)}.shell .tab-bubble{position:absolute;z-index:0;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid var(--line-strong);box-shadow:inset 0 0 12px color-mix(in srgb,var(--accent) 18%,transparent),0 0 18px -4px color-mix(in srgb,var(--accent) 55%,transparent);opacity:0;transition-property:left,right;transition-duration:.5s,.5s;transition-timing-function:cubic-bezier(.34,1.45,.5,1),cubic-bezier(.34,1.45,.5,1)}.shell .tab-bubble.ready{opacity:1}.shell .tab-bubble:not(.ready){transition:none}.shell .tab-bubble:after{content:"";position:absolute;top:4px;left:14px;width:30%;height:30%;border-radius:999px;background:linear-gradient(rgba(255,255,255,.16),transparent)}.shell .pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}@media(max-width:820px){.shell .tabs{padding:10px 16px;position:sticky;top:env(safe-area-inset-top,0px);z-index:4;background:#050b14e0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}}.shell .tabs .theme-switch{display:none;margin-left:auto;flex:none;gap:7px;padding:7px 14px;border:1px solid var(--line-strong);border-radius:999px;background:color-mix(in srgb,var(--panel-solid) 70%,transparent);color:var(--accent);font:500 12.5px var(--font-hud);letter-spacing:.05em;transition:border-color .2s,box-shadow .2s,color .2s}.shell .tabs .theme-switch:hover{border-color:var(--accent);box-shadow:var(--glow);color:var(--ink)}.shell .tabs .theme-switch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}@media(max-width:820px){.shell .tabs .theme-switch{position:sticky;right:0;z-index:2;padding:7px 10px;background:var(--panel-solid)}.shell .tabs .theme-switch span{display:none}}.shell .backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.shell .core-wrap{position:absolute;left:50%;top:41%;width:min(640px,84%,74vh);aspect-ratio:1;max-width:92%;transform:translate(-50%,-50%);opacity:var(--jarvis-achtergrond, .38);transition:opacity .6s ease}.shell .backdrop.thinking .core-wrap{opacity:var(--jarvis-achtergrond-denkt, .48)}.shell .backdrop.speaking .core-wrap{opacity:var(--jarvis-achtergrond-spreekt, .6)}.shell .backdrop.hero .core-wrap{opacity:var(--jarvis-achtergrond-start, .9)}.shell .backdrop.hero.typing .core-wrap{opacity:var(--jarvis-achtergrond, .38)}@media(max-width:820px){.shell .backdrop{position:fixed;z-index:-1}.shell .core-wrap{top:52%;width:min(92vw,60vh)}}.core.magic{-webkit-mask-image:radial-gradient(closest-side,#000 72%,transparent 100%);mask-image:radial-gradient(closest-side,#000 72%,transparent 100%)}.core{display:block;width:100%;height:100%}.chat{position:relative;display:flex;flex-direction:column;height:100%}.chat .log,.chat .composer{position:relative;z-index:1}.chat .readout{max-width:720px;margin:0 auto 8px;padding:0 4px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.chat .readout .voice{margin-left:auto}.chat .status{margin:0;display:inline-flex;align-items:center;gap:8px;font:500 13px var(--font-hud);letter-spacing:.08em;color:var(--accent)}.chat .status.thinking{color:var(--think)}.chat .led{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}.chat .status.thinking .led,.chat .status.speaking .led{animation:blink .9s ease-in-out infinite}@keyframes blink{50%{opacity:.3}}.chat .voice{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:500 12.5px var(--font-hud);letter-spacing:.04em;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:999px;padding:4px 11px 4px 9px}.chat .voice:hover{color:var(--ink);border-color:var(--line-strong)}.chat .voice[aria-pressed=true]{color:var(--accent);border-color:var(--line-strong)}.chat .voice-name{font:500 12px var(--font-hud);letter-spacing:.04em;color:var(--muted)}.chat .voice-name.browser{color:var(--amber);opacity:.85}.chat .log{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 18px,#000 calc(100% - 22px),transparent);mask-image:linear-gradient(to bottom,transparent 0,#000 18px,#000 calc(100% - 22px),transparent)}.chat .inner{flex:1 0 auto;width:100%;max-width:720px;margin:0 auto;padding:14px 24px 24px;display:flex;flex-direction:column;gap:20px}.chat .hello{display:grid;gap:12px;justify-items:center;text-align:center;margin-top:auto}.chat .hello h2{font-size:clamp(24px,3.2vw,32px)}.chat .hello h2 .intro{display:block;margin-top:6px;font-size:.62em;font-weight:400;color:var(--muted)}.chat .sub{margin:0;color:var(--muted);max-width:54ch}.chat .chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}.chat .chips button{font:400 14px var(--font-body);color:var(--ink);cursor:pointer;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:8px 15px;transition:border-color .15s,box-shadow .15s,color .15s}.chat .chips button:hover{border-color:var(--accent);color:#fff;box-shadow:var(--glow)}.chat .row{display:flex;animation:rise .25s ease-out}@keyframes rise{0%{transform:translateY(6px);opacity:.4}}.chat .user{justify-content:flex-end}.chat .bubble{margin:0;max-width:80%;padding:10px 15px;border-radius:16px 16px 4px;background:var(--user-bubble);border:1px solid var(--line);color:var(--user-ink);white-space:pre-wrap;overflow-wrap:anywhere}.chat .bot{flex-direction:column;gap:4px;min-width:0;padding:2px 0 2px 16px;border-left:2px solid var(--line-strong)}.chat .bot.live{border-left-color:var(--accent);box-shadow:-8px 0 16px -14px var(--accent)}.chat .who{font:500 12.5px var(--font-hud);letter-spacing:.06em;color:var(--accent);opacity:.8}.chat .bot p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15.5px}.chat .bot p,.chat .bubble,.chat .hello h2,.chat .sub{text-shadow:0 0 2px var(--void),0 0 4px var(--void),0 0 12px var(--void),0 0 22px var(--void)}.chat .bot{background:radial-gradient(120% 140% at 0% 50%,#050b148c,#050b1400 75%);border-radius:0 10px 10px 0;padding-right:10px}.chat .bubble{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.chat .bot.err{border-left-color:var(--amber)}.chat .bot.err p{color:var(--amber)}.chat .dots{display:inline-flex;gap:5px;padding-top:8px}.chat .dots i{width:6px;height:6px;border-radius:50%;background:var(--think);animation:blink 1.2s infinite}.chat .dots i:nth-child(2){animation-delay:.2s}.chat .dots i:nth-child(3){animation-delay:.4s}.chat .composer{flex:none;padding:0 24px 18px}.chat .box{max-width:720px;margin:0 auto;display:flex;align-items:flex-end;gap:8px;background:var(--panel-solid);border:1px solid var(--line-strong);border-radius:var(--radius);padding:8px 8px 8px 16px;box-shadow:0 10px 30px -18px color-mix(in srgb,var(--accent) 50%,transparent);transition:border-color .15s,box-shadow .15s}.chat .box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft),0 10px 30px -14px color-mix(in srgb,var(--accent) 60%,transparent)}.chat textarea{flex:1;min-width:0;resize:none;border:0;outline:0;background:transparent;font:400 15px/1.5 var(--font-body);color:var(--ink);padding:7px 0;max-height:160px}.chat textarea::placeholder{color:var(--muted)}.chat .send{flex:none;width:38px;height:38px;border-radius:10px;border:0;cursor:pointer;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;box-shadow:var(--glow)}.chat .send:disabled{opacity:.3;cursor:default;box-shadow:none}.chat .fine{max-width:720px;margin:9px auto 0;font-size:12px;color:var(--muted);text-align:center}.chat .fine a{color:var(--muted)}.chat .link{background:none;border:0;color:var(--accent);cursor:pointer;font:inherit;text-decoration:underline;margin-left:6px}.chat .privacy{display:block;margin-top:2px;opacity:.8}.chat .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media(max-width:820px){.chat{height:auto;min-height:70vh}.chat .log{overflow:visible;-webkit-mask-image:none;mask-image:none}.chat .inner{padding:8px 16px 200px}.chat .composer{position:fixed;left:0;right:0;bottom:0;z-index:3;background:#050b14e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:8px 16px calc(10px + env(safe-area-inset-bottom,0px))}.chat .readout{margin-bottom:6px;gap:8px}.chat .fine{font-size:11px;margin-top:6px}}.projects.page{max-width:1040px;margin:0 auto;padding:36px 24px 56px;display:grid;gap:20px;scroll-margin-top:56px}.projects header{display:grid;gap:8px}.projects h2{font-size:32px}.projects .empty{color:var(--muted)}.projects .year{font:500 12px var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums}.projects .stack{display:flex;flex-wrap:wrap;gap:6px}.projects .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:14px}@media(min-width:1100px){.projects .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.projects .card{display:flex;flex-direction:column;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;color:var(--ink);text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}.projects .card:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:0 0 0 1px var(--accent-soft),0 14px 34px -20px var(--accent)}.projects .thumb-wrap{position:relative;aspect-ratio:16 / 10;background:var(--accent-soft);overflow:hidden}.projects .thumb-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.projects .card:hover .thumb-wrap img{transform:scale(1.03)}.projects .initial{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:700 48px var(--font-display);color:var(--accent);opacity:.55}.projects .card-body{display:grid;gap:5px;padding:12px 14px 2px}.projects .card h3{font-size:16px;font-weight:600}.projects .card .summary{margin:0;color:var(--muted);font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.projects .stack .team{flex-basis:100%;margin-top:4px;font-size:13px;color:var(--muted)}.projects .stack.small{margin-top:4px}.projects .stack.small .tag{font-size:11.5px;padding:4px 7px}.projects .more-tags{background:transparent;border:1px solid var(--line)}.projects .open{margin-top:auto;padding:10px 14px 12px;font-size:12.5px;font-weight:600;color:var(--accent)}.projects .badge{position:absolute;right:10px;bottom:10px;font:500 12px var(--font-mono);padding:5px 9px;border-radius:999px;background:var(--panel);color:var(--ink)}.projects .detail{display:grid;gap:20px;max-width:760px;grid-template-areas:"back" "head" "media" "text" "foot" "pager"}.projects .detail>.back{grid-area:back}.projects .detail>.detail-head{grid-area:head;display:grid;gap:8px}.projects .detail>.detail-media{grid-area:media;min-width:0}.projects .detail>.prose{grid-area:text}.projects .detail>.foot{grid-area:foot}.projects .detail>.pager{grid-area:pager}@media(min-width:1100px){.projects.page:has(>.detail.has-media){max-width:1680px}.projects .detail.has-media{max-width:1600px;grid-template-columns:minmax(320px,.8fr) minmax(0,1.45fr);grid-template-rows:auto auto auto 1fr auto;grid-template-areas:"back  back" "head  media" "text  media" "foot  media" "pager pager";column-gap:40px;align-items:start}.projects .detail.has-media>.detail-media{position:sticky;top:16px}}.projects .back{justify-self:start;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;cursor:pointer;font:500 14px var(--font-body);color:var(--accent);padding:4px 0}.projects .back:hover{text-decoration:underline}.projects .lead{margin:0;font-size:17px;max-width:62ch}.projects .carousel{display:grid;gap:10px;outline:none}.projects .carousel:focus-visible .frame{outline:2px solid var(--accent);outline-offset:3px}.projects .carousel .frame{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--panel-solid);box-shadow:0 18px 50px #00000073}.projects .carousel .track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.projects .carousel .track::-webkit-scrollbar{display:none}.projects .carousel .slide{position:relative;flex:0 0 100%;margin:0;aspect-ratio:16 / 10;scroll-snap-align:center;scroll-snap-stop:always;overflow:hidden}.projects .carousel .blur{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;object-fit:cover;filter:blur(24px) saturate(1.2) brightness(.7)}.projects .carousel .zoom{position:absolute;top:0;right:0;bottom:0;left:0;padding:0;border:0;background:none;cursor:zoom-in}.projects .carousel .photo{width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(1.015);transition:opacity .5s ease,transform .8s ease}.projects .carousel .photo.in{opacity:1;transform:none}.projects .carousel .nav{position:absolute;top:50%;translate:0 -50%;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--panel-solid) 72%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);cursor:pointer;opacity:0;transition:opacity .2s,background .2s,border-color .2s}.projects .carousel .nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.projects .carousel .nav.prev{left:12px}.projects .carousel .nav.next{right:12px}.projects .carousel .frame:hover .nav,.projects .carousel .nav:focus-visible{opacity:1}.projects .carousel .nav:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 22%,var(--panel-solid))}@media(hover:none){.projects .carousel .nav{opacity:.85;width:34px;height:34px}}.projects .carousel .count{position:absolute;right:12px;bottom:12px;padding:3px 9px;border-radius:999px;font:500 12px var(--font-hud);color:var(--ink);background:color-mix(in srgb,var(--panel-solid) 70%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.projects .carousel .progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:color-mix(in srgb,var(--accent) 15%,transparent);pointer-events:none}.projects .carousel .progress i{display:block;height:100%;background:var(--accent);box-shadow:0 0 8px var(--accent);transform-origin:left}.projects .carousel .caption{margin:0;min-height:1.4em;font-size:14px;color:var(--muted)}.projects .carousel .strip{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px;scroll-behavior:smooth}.projects .carousel .strip::-webkit-scrollbar{display:none}.projects .carousel .mini{flex:0 0 auto;width:112px;aspect-ratio:16 / 10;padding:0;border-radius:7px;overflow:hidden;border:1px solid var(--line);background:var(--panel-solid);cursor:pointer;opacity:.55;transition:opacity .2s,border-color .2s,transform .2s}.projects .carousel .mini img{display:block;width:100%;height:100%;object-fit:cover;background-size:cover}.projects .carousel .mini:hover{opacity:.85}.projects .carousel .mini.on{opacity:1;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--glow)}.projects .prose{display:grid;gap:12px;max-width:65ch}.projects .prose p{margin:0}.projects .prose ul{margin:0;padding-left:1.2em}.projects .prose h4{margin:8px 0 0;font:700 17px var(--font-display)}.projects .foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.projects .actions{display:flex;gap:14px;align-items:center;font-size:14px}.projects .actions a{text-decoration:none}.projects .ask{font:500 13px var(--font-body);cursor:pointer;color:var(--accent);background:none;border:1px solid var(--accent);border-radius:999px;padding:6px 12px}.projects .ask:hover{background:var(--accent-soft)}.projects .pager{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:8px}.projects .pager a{display:grid;gap:4px;text-decoration:none;color:var(--ink);font-weight:600;min-width:0}.projects .pager a:hover{color:var(--accent)}.projects .pager .next{text-align:right}@media(max-width:600px){.projects.page{padding:24px 16px 40px}.projects .pager{grid-template-columns:1fr}.projects .pager .next{text-align:left}}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#080e0df7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:calc(56px + env(safe-area-inset-top,0px)) 64px calc(24px + env(safe-area-inset-bottom,0px));animation:fade .18s ease-out}@keyframes fade{0%{opacity:0}}.viewer figure{margin:0;display:grid;gap:12px;justify-items:center;max-width:100%;max-height:100%;min-height:0}.viewer img{max-width:min(100%,1600px);max-height:calc(100vh - 160px);width:auto;height:auto;object-fit:contain;border-radius:6px;background:#1a2523}.viewer figcaption{color:#e3ece9;font-size:14px;text-align:center;max-width:60ch}.viewer .count{font:500 12px var(--font-mono);color:#92a5a1;margin-right:10px;font-variant-numeric:tabular-nums}.viewer button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;color:#e3ece9;background:#ffffff14;border-radius:999px;display:grid;place-items:center}.viewer button:hover{background:#ffffff2e}.viewer .close{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:14px;width:40px;height:40px;font-size:16px}.viewer .nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;font-size:28px;line-height:1;padding-bottom:3px}.viewer .prev{left:12px}.viewer .next{right:12px}@media(max-width:600px){.viewer{padding-inline:8px}.viewer .nav{top:auto;bottom:calc(14px + env(safe-area-inset-bottom,0px));transform:none}.viewer figure{padding-bottom:48px}}.about.page{max-width:760px;margin:0 auto;padding:36px 24px 56px;display:grid;gap:36px}.about header{display:grid;gap:8px}.about h2{font-size:32px}.about .prose{display:grid;gap:14px;font-size:17px;max-width:62ch}.about .prose p{margin:0}.about .prose ul{margin:0;padding-left:1.2em}.about .prose.small{font-size:15.5px}.about section{display:grid;gap:14px}.about dl{margin:0;display:grid}.about .skill-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--line)}.about dt{font-weight:600;font-size:14px}.about dd{margin:0;display:flex;flex-wrap:wrap;gap:6px}.about details{border-top:1px solid var(--line);padding:12px 0}.about summary{cursor:pointer;font-weight:600}.about details p{margin:8px 0 0;color:var(--muted);max-width:62ch}@media(max-width:600px){.about.page{padding:24px 16px 40px}.about .skill-row{grid-template-columns:1fr;gap:6px}}.journey.page{max-width:760px;margin:0 auto;padding:36px 24px 56px;display:grid;gap:28px}.journey header{display:grid;gap:8px}.journey h2{font-size:32px}.journey .timeline{list-style:none;margin:0;padding:0;display:grid}.journey .phase{display:grid;gap:14px}.journey .phase-title{color:var(--accent)}.journey li{display:grid;grid-template-columns:96px 22px minmax(0,1fr);gap:14px;position:relative;padding-bottom:26px}.journey li:before{content:"";position:absolute;left:120px;top:14px;bottom:-4px;width:2px;background:var(--line)}.journey li:last-child:before{display:none}.journey .when{font:500 13px var(--font-mono);color:var(--muted);padding-top:3px;font-variant-numeric:tabular-nums}.journey .node{width:14px;height:14px;margin:5px 4px 0;border-radius:50%;background:var(--bg);border:2px solid var(--accent);position:relative;z-index:1}.journey .now .node{background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.journey h4{margin:0;font:700 18px/1.2 var(--font-display)}.journey .text p{margin:6px 0 0;color:var(--muted);max-width:60ch}@media(max-width:600px){.journey.page{padding:24px 16px 40px}.journey li{grid-template-columns:22px minmax(0,1fr)}.journey .when{grid-column:2;grid-row:1}.journey .node{grid-column:1;grid-row:1 / span 2}.journey .card{grid-column:2}.journey li:before{left:10px}}:root{--magie-vuur: #6fb8ff;--magie-vuur-licht: #eef8ff;--magie-vuur-diep: #1e3fbf;--magie-nevel: #7aa8ff;--magie-kaars: #efe3c8;--magie-kaarsvlam: #ffb347;--magie-steen: #807c88}:root[data-theme=magie]{--accent: #d9a441;--accent-light: #f6e3a8;--void: #0c0912;--bg: var(--void);--panel: rgba(30, 18, 24, .72);--panel-solid: #1d1218;--ink: #f1e6cf;--muted: #b8a688;--amber: #e9b44c;--accent-ink: #1a1004;--user-bubble: rgba(122, 28, 40, .42);--font-display: "Cinzel", "Cormorant Garamond", Georgia, serif;--font-body: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-hud: "Cinzel", Georgia, serif;--radius: 10px;--jarvis-achtergrond-start: 1;--jarvis-achtergrond: .5;--jarvis-achtergrond-denkt: .68;--jarvis-achtergrond-spreekt: .82}:root[data-theme=magie] body{background:radial-gradient(1100px 700px at 50% 115%,rgba(150,50,30,.22),transparent 60%),radial-gradient(900px 600px at 85% -10%,rgba(70,40,110,.25),transparent 60%),radial-gradient(800px 600px at -10% 20%,rgba(25,30,70,.35),transparent 60%),var(--void);background-attachment:fixed;font-weight:500;font-size:16.5px;line-height:1.6}:root[data-theme=magie] :is(h1,h2,h3,h4){font-weight:600;letter-spacing:.02em}:root[data-theme=magie] .eyebrow{font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase}:root[data-theme=magie] .tag{font-family:var(--font-body);font-size:14px;font-weight:600}:root[data-theme=magie] .pane :is(h2,h3,h4,p,li,dd,dt,summary,.eyebrow,.year,.when){text-shadow:0 0 2px var(--void),0 0 8px var(--void),0 0 16px rgba(12,9,18,.8)}:root[data-theme=magie] .hud:not(.skill-cat):before,:root[data-theme=magie] .hud:not(.skill-cat):after{width:22px;height:22px;border-style:double;border-color:var(--accent);opacity:.9;border-radius:0}:root[data-theme=magie] .hud:not(.skill-cat):before{top:5px;left:5px;border-width:3px 0 0 3px}:root[data-theme=magie] .hud:not(.skill-cat):after{bottom:5px;right:5px;border-width:0 3px 3px 0}:root[data-theme=magie] :is(.shell .id-card,.projects .card,.journey .card){box-shadow:inset 0 0 0 4px var(--panel-solid),inset 0 0 0 5px color-mix(in srgb,var(--accent) 22%,transparent),0 10px 40px #00000059}:root[data-theme=magie] .shell h1{font-size:19px}:root[data-theme=magie] .shell .role,:root[data-theme=magie] .shell .fact dd,:root[data-theme=magie] .shell .links{font-size:15px}:root[data-theme=magie] .shell .fact dt{font:600 10.5px var(--font-hud);letter-spacing:.12em;text-transform:uppercase}:root[data-theme=magie] .shell .skill-cat-head,:root[data-theme=magie] .shell .skill-bubble{font-family:var(--font-body);font-size:14px;font-weight:600}:root[data-theme=magie] .shell .skills-hint{font:italic 500 13px var(--font-body);text-transform:none;letter-spacing:0}:root[data-theme=magie] .shell .tabs button{font-family:var(--font-hud);font-size:13px;letter-spacing:.06em}:root[data-theme=magie] .chat .hello h2{font-weight:500}:root[data-theme=magie] .chat :is(.row p,.sub,textarea){font-size:17.5px}:root[data-theme=magie] .chat .who{letter-spacing:.12em}:root[data-theme=magie] .chat .row.user .bubble{border-color:#be465073}
