@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff")}:root{--ink:#0a0b09;--ink-soft:#131510;--ink-raised:#1a1c15;--paper:#eeeadf;--paper-dim:#96988c;--paper-faint:#5f6157;--line:#eeeadf21;--line-strong:#eeeadf47;--amber:#d8698c;--amber-dim:#d8698c59;--teal:#6fb8ac;--teal-dim:#6fb8ac59;--font-display:"Space Grotesk", "Inter", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--font-body:"Inter", "Space Grotesk", sans-serif;--fs-hero:clamp(3.4rem, 10vw, 9.5rem);--fs-xxl:clamp(2.4rem, 6vw, 5rem);--fs-xl:clamp(1.6rem, 3.4vw, 2.6rem);--fs-lg:clamp(1.2rem, 2vw, 1.5rem);--fs-md:1.05rem;--fs-sm:.85rem;--fs-xs:.72rem;--edge:clamp(1.25rem, 4vw, 3rem);--radius:2px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--ink);color:var(--paper);scroll-behavior:auto}body{font-family:var(--font-body);font-size:var(--fs-md);background:var(--ink);color:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5;overflow-x:clip}h1,h2,h3,h4,p,figure{margin:0}a{color:inherit}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}a:focus-visible,button:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:1px}::selection{background:var(--amber);color:var(--ink)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--ink)}::-webkit-scrollbar-thumb{background:var(--ink-raised);border:2px solid var(--ink);border-radius:8px}.mono{font-family:var(--font-mono);letter-spacing:.02em}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--paper-dim);align-items:center;gap:.6em;display:inline-flex}.eyebrow:before{content:"";background:var(--amber);width:.9em;height:1px;display:inline-block}.section{width:100%;padding:0 var(--edge);position:relative}.section-inner{max-width:1440px;margin:0 auto;padding:clamp(4.5rem,9vw,7.5rem) 0;position:relative}.section-heading{font-family:var(--font-display);font-size:var(--fs-xxl);letter-spacing:-.01em;margin-top:.75rem;margin-bottom:clamp(3rem,7vw,5.5rem);font-weight:700}.hairline{background:var(--line);width:100%;height:1px}.rule-v{background:var(--line);width:1px}.frame{z-index:40;pointer-events:none;padding:var(--edge);position:fixed;inset:0}.frame__corner{opacity:.55;width:14px;height:14px;position:absolute}.frame__corner svg{width:100%;height:100%;display:block}.frame__corner.tl{top:var(--edge);left:var(--edge)}.frame__corner.tr{top:var(--edge);right:var(--edge)}.frame__corner.bl{bottom:var(--edge);left:var(--edge)}.frame__corner.br{bottom:var(--edge);right:var(--edge)}.frame__brand{top:var(--edge);left:calc(var(--edge) + 26px);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--paper);pointer-events:auto;position:absolute}.frame__index{top:var(--edge);right:calc(var(--edge) + 26px);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.08em;color:var(--paper-dim);text-align:right;position:absolute}.frame__index span{color:var(--amber)}.frame__coords{bottom:var(--edge);left:calc(var(--edge) + 26px);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--paper-faint);letter-spacing:.06em;position:absolute}.frame__progress{bottom:var(--edge);right:calc(var(--edge) + 26px);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--paper-dim);align-items:center;gap:8px;display:flex;position:absolute}.frame__progress-track{background:var(--line-strong);width:90px;height:1px;position:relative}.frame__progress-fill{background:var(--amber);transform-origin:0;width:0%;position:absolute;inset:0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nowrap{white-space:nowrap}@media (width<=720px){.frame__brand,.frame__index,.frame__coords,.frame__progress{display:none}.frame__corner{width:10px;height:10px}}.hero{height:100svh;min-height:560px;padding:0 var(--edge);isolation:isolate;flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:0;position:absolute;inset:0}.hero__grid{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.9;background-size:64px 64px;position:absolute;inset:-1px;-webkit-mask-image:radial-gradient(80% 60% at 50% 45%,#000 10%,#0000 75%);mask-image:radial-gradient(80% 60% at 50% 45%,#000 10%,#0000 75%)}.hero__trace{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hero__trace path{fill:none;stroke:var(--amber);stroke-width:1.4px;opacity:.55}.hero__content{z-index:2;width:100%;max-width:1440px;margin:0 auto;position:relative}.hero__eyebrow{margin-bottom:1.6rem}.hero__name{font-family:var(--font-display);font-weight:700;font-size:var(--fs-hero);letter-spacing:-.015em;text-transform:uppercase;color:var(--paper);line-height:.92}.hero__name-line{padding-bottom:.08em;display:block;overflow:hidden}.hero__name-word{will-change:transform;display:inline-block}.hero__name .char{will-change:transform, opacity;display:inline-block}.hero__tagline{color:var(--paper-dim);font-size:var(--fs-lg);max-width:34ch;margin-top:clamp(1.25rem,3vw,2.25rem);font-weight:400}.hero__scrollcue{left:var(--edge);z-index:2;font-size:var(--fs-xs);letter-spacing:.16em;color:var(--paper-dim);flex-direction:column;align-items:center;gap:.75rem;display:flex;position:absolute;bottom:clamp(1.5rem,4vh,3rem)}.hero__scrollcue-line{background:linear-gradient(var(--amber), transparent);transform-origin:top;width:1px;height:42px;animation:scrollcue 2.2s var(--ease-in-out) infinite}@keyframes scrollcue{0%{opacity:0;transform:scaleY(0)}40%{opacity:1;transform:scaleY(1)}to{opacity:0;transform-origin:bottom;transform:scaleY(1)}}@media (width<=720px){.hero{justify-content:flex-end;padding-bottom:6rem}.hero__name{font-size:clamp(3rem,15vw,5rem)}.hero__scrollcue{left:50%;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.hero__scrollcue-line{opacity:.6;height:24px;animation:none}}.intro{padding-top:0}.intro__inner{flex-direction:column;justify-content:center;gap:clamp(1.75rem,4vw,2.75rem);min-height:100vh;padding:3rem 0;display:flex}.intro__quote{border-left:2px solid var(--amber);max-width:52ch;margin:0;padding-left:clamp(1.1rem,3vw,1.75rem)}.intro__quote p{font-family:var(--font-display);color:var(--paper);margin:0 0 .75rem;font-size:clamp(1.3rem,2.8vw,1.9rem);font-style:italic;font-weight:500;line-height:1.35}.intro__quote cite{font-family:var(--font-mono);font-style:normal;font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--paper-dim);align-items:center;gap:.6em;display:inline-flex}.intro__quote cite:before{content:"";background:var(--paper-faint);width:1.2em;height:1px;display:inline-block}.intro__narrative{flex-direction:column;gap:clamp(.9rem,2.2vw,1.35rem);max-width:54ch;display:flex}.intro__narrative p{font-family:var(--font-display);color:var(--paper-dim);font-size:clamp(1.1rem,2.1vw,1.4rem);font-weight:500;line-height:1.55}.intro__narrative em{color:var(--amber);font-style:normal}.intro__narrative p.intro__thesis{color:var(--paper);font-size:clamp(1.25rem,2.4vw,1.65rem);font-weight:700}.intro__meta{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,3vw,2.5rem);max-width:1000px;padding-top:1.75rem;display:grid}.intro__meta-item{font-size:var(--fs-sm);color:var(--paper);flex-direction:column;gap:.6rem;display:flex}@media (width<=780px){.intro__meta{grid-template-columns:1fr;gap:1.25rem}}.projects{position:relative}.projects__intro{max-width:1440px;margin:0 auto;padding:7rem 0 3.5rem}.projects__heading{font-family:var(--font-display);font-size:var(--fs-xxl);letter-spacing:-.01em;margin-top:.75rem;font-weight:700}.projects__hint{color:var(--paper-dim);font-size:var(--fs-xs);letter-spacing:.1em;margin-top:1rem}.projects__stage{height:100vh;position:relative;overflow:hidden}.projects__track{will-change:transform;height:100%;display:flex}.project{height:100%;padding:0 var(--edge);border-left:1px solid var(--line);flex:0 0 100vw;grid-template-columns:minmax(300px,440px) 1fr;align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.project:first-child{border-left:none}.project__info{flex-direction:column;align-items:flex-start;gap:.9rem;display:flex}.project__index{color:var(--paper-dim);font-size:var(--fs-xs);letter-spacing:.1em}.project__tag{margin-top:.3rem}.project__title{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(1.9rem,3.2vw,2.7rem);font-weight:700;line-height:1.08}.project__desc{color:var(--paper-dim);font-size:var(--fs-md);max-width:42ch;line-height:1.65}.project__stack{flex-wrap:wrap;gap:.5rem;margin-top:.4rem;padding:0;list-style:none;display:flex}.project__stack li{font-size:var(--fs-xs);letter-spacing:.04em;color:var(--paper-dim);border:1px solid var(--line-strong);border-radius:999px;padding:.35rem .7rem}.project__viz{border:1px solid var(--line);background:radial-gradient(120% 140% at 100% 0%, #6fb8ac0f, transparent 55%), var(--ink-soft);height:min(62vh,460px);position:relative;overflow:hidden}.viz-chrome{flex-direction:column;display:flex;position:absolute;inset:0}.viz-chrome__bar{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:.5rem;padding:.7rem .9rem;display:flex}.viz-chrome__dot{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.viz-chrome__title{font-size:var(--fs-xs);color:var(--paper-faint);margin-left:.5rem}.viz-chrome__body{flex:1;min-height:0;position:relative}.viz-label{font-family:var(--font-mono);letter-spacing:.06em;color:var(--paper-faint);text-transform:uppercase;font-size:.62rem;position:absolute}.viz-scheduler{width:100%;height:100%;padding:1.5rem;position:relative}.viz-scheduler__curve{width:calc(100% - 3rem);height:calc(100% - 3rem);position:absolute;inset:1.5rem}.viz-scheduler__curve path{fill:none;stroke:var(--teal);stroke-width:1.5px;opacity:.55}.viz-scheduler__axis{color:var(--paper-faint);font-size:.6rem;font-family:var(--font-mono);letter-spacing:.05em;justify-content:space-between;display:flex;position:absolute;bottom:1.35rem;left:1.5rem;right:1.5rem}.viz-chip{background:var(--ink-raised);border:1px solid var(--line-strong);color:var(--paper);font-family:var(--font-mono);white-space:nowrap;will-change:top, left;border-radius:3px;padding:.35rem .6rem;font-size:.66rem;position:absolute;transform:translate(-50%,-50%)}.viz-chip:before{content:"";background:var(--amber);width:3px;position:absolute;top:-1px;bottom:-1px;left:-1px}.viz-shop{flex-direction:column;gap:.9rem;height:100%;padding:1.1rem;display:flex}.viz-shop__topbar{justify-content:space-between;align-items:center;display:flex}.viz-shop__url{font-family:var(--font-mono);color:var(--paper-faint);border:1px solid var(--line);border-radius:999px;padding:.3rem .7rem;font-size:.66rem}.viz-shop__cart{font-family:var(--font-mono);color:var(--paper-dim);font-size:.7rem;position:relative}.viz-shop__cart-count{background:var(--amber);color:var(--ink);border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;font-size:.58rem;font-weight:600;display:flex;position:absolute;top:-8px;right:-14px}.viz-shop__grid{flex:1;grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.viz-shop__tile{border:1px solid var(--line);background:var(--ink-soft);border-radius:3px;transition:border-color .25s,background .25s;position:relative}.viz-shop__tile:after{content:"";background:var(--line);border-radius:2px;height:6px;position:absolute;bottom:14%;left:10%;right:10%}.viz-shop__tile.is-active{border-color:var(--amber);background:#e2a33f14}.viz-shop__cursor{background:var(--amber);will-change:transform;z-index:5;border-radius:50%;width:10px;height:10px;position:absolute;box-shadow:0 0 0 4px #e2a33f2e}.viz-shop__toast{background:var(--ink-raised);border:1px solid var(--line-strong);color:var(--paper);font-family:var(--font-mono);opacity:0;border-radius:3px;padding:.4rem .8rem;font-size:.62rem;position:absolute;bottom:.8rem;left:50%;transform:translate(-50%,20px)}.viz-shop__checkout{font-family:var(--font-mono);border:1px solid var(--line-strong);color:var(--paper-dim);border-radius:3px;align-self:flex-start;padding:.5rem .9rem;font-size:.66rem;position:relative}.viz-shop__checkout.is-done{border-color:var(--teal);color:var(--teal)}.viz-car{width:100%;height:100%;position:relative}.viz-car__stage{position:absolute;inset:0}.viz-car__signal circle{fill:none;stroke:var(--amber);opacity:0}.viz-car__telemetry{text-align:right;font-family:var(--font-mono);color:var(--paper-dim);font-size:.66rem;line-height:1.7;position:absolute;top:1.1rem;right:1.1rem}.viz-car__telemetry b{color:var(--paper);font-weight:500}.viz-car__rec{font-family:var(--font-mono);color:var(--paper-dim);align-items:center;gap:.4rem;font-size:.62rem;display:flex;position:absolute;top:1.1rem;left:1.1rem}.viz-car__rec-dot{background:#d9603f;border-radius:50%;width:6px;height:6px;animation:1.2s step-end infinite rec-blink}@keyframes rec-blink{50%{opacity:.15}}.viz-car__frame{aspect-ratio:16/10;border:1px solid var(--line-strong);background:#0f110c;width:42%;position:absolute;bottom:1.1rem;right:1.1rem;overflow:hidden}.viz-car__scanline{background:linear-gradient(#6fb8ac29,#0000);height:30%;animation:2.6s linear infinite car-scan;position:absolute;top:-30%;left:0;right:0}@keyframes car-scan{to{top:130%}}.viz-car__body-svg{width:30%;max-width:140px;position:absolute;bottom:8%;left:6%}.viz-car__body-svg .body{fill:var(--ink-raised);stroke:var(--line-strong)}.viz-car__body-svg .wheel{fill:#050604}.viz-car__body-svg .antenna{stroke:var(--paper-dim);stroke-width:1.5px}.viz-er{width:100%;height:100%;padding:1.4rem;position:relative}.viz-er__lines{width:100%;height:100%;position:absolute;inset:0}.viz-er__lines path{fill:none;stroke:var(--line-strong);stroke-width:1.4px}.viz-er__pulse{fill:var(--amber)}.viz-er__table{border:1px solid var(--line-strong);background:var(--ink-raised);z-index:2;border-radius:3px;width:148px;position:absolute;overflow:hidden}.viz-er__table[data-table=patients]{top:8%;left:4%}.viz-er__table[data-table=staff]{top:8%;right:4%}.viz-er__table[data-table=appointments]{bottom:8%;left:50%;transform:translate(-50%)}.viz-er__table-head{font-family:var(--font-mono);letter-spacing:.06em;color:var(--amber);border-bottom:1px solid var(--line-strong);background:#e2a33f1a;padding:.4rem .6rem;font-size:.62rem}.viz-er__table-row{font-family:var(--font-mono);color:var(--paper-dim);border-bottom:1px solid var(--line);padding:.28rem .6rem;font-size:.6rem}.viz-er__table-row:last-child{border-bottom:none}.viz-code{height:100%;padding:0}.viz-code__body{font-family:var(--font-mono);color:var(--paper-dim);white-space:pre;height:100%;padding:1.1rem 1.2rem;font-size:.72rem;line-height:1.75;overflow:hidden}.viz-code__body .kw{color:var(--teal)}.viz-code__body .cls{color:var(--amber)}.viz-code__cursor{background:var(--paper);vertical-align:-.15em;width:6px;height:1em;animation:1s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}.viz-code__tabs{z-index:2;gap:.4rem;display:flex;position:absolute;top:.9rem;right:1.1rem}.viz-code__tab{font-family:var(--font-mono);border:1px solid var(--line);color:var(--paper-faint);border-radius:999px;padding:.25rem .55rem;font-size:.6rem;transition:color .3s,border-color .3s}.viz-code__tab.is-active{color:var(--amber);border-color:var(--amber-dim)}.viz-wasleh{flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:1.5rem;display:flex;position:relative}.viz-wasleh__team{z-index:2;justify-content:space-between;gap:.6rem;display:flex;position:relative}.viz-wasleh__node{text-align:center;font-family:var(--font-mono);letter-spacing:.06em;color:var(--paper-dim);border:1px solid var(--line-strong);background:var(--ink-raised);border-radius:3px;flex:1;padding:.55rem .4rem;font-size:.62rem}.viz-wasleh__lines{height:46%;position:absolute;top:1.5rem;left:1.5rem;right:1.5rem}.viz-wasleh__lines path{fill:none;stroke:var(--line-strong);stroke-width:1.2px}.viz-wasleh__hub{letter-spacing:.08em;color:var(--amber);border:1px solid var(--amber-dim);z-index:2;background:#e2a33f14;border-radius:999px;align-self:center;padding:.5rem 1.1rem;font-size:.72rem;font-weight:500;position:relative}.viz-wasleh__meter{flex-direction:column;gap:.5rem;display:flex}.viz-wasleh__meter-label{color:var(--paper-dim);letter-spacing:.04em;justify-content:space-between;font-size:.62rem;display:flex}.viz-wasleh__meter-label span:last-child{color:var(--paper)}.viz-wasleh__meter-track{background:var(--line);border-radius:999px;height:5px;overflow:hidden}.viz-wasleh__meter-fill{background:var(--teal);border-radius:999px;width:0%;height:100%}@media (width<=900px){.projects__stage{height:auto;overflow:visible}.projects__track{flex-direction:column;height:auto;transform:none!important}.project{width:100%;height:auto;padding:3.5rem var(--edge);border-left:none;border-top:1px solid var(--line);flex:none;grid-template-columns:1fr}.project:first-child{border-top:none}.project__viz{order:-1;height:300px}}.timeline{padding-left:clamp(2rem,6vw,3.2rem);position:relative}.timeline__line{width:2px;height:calc(100% - 12px);position:absolute;top:6px;bottom:6px;left:0;overflow:visible}.timeline__line path{fill:none;stroke-width:2px;vector-effect:non-scaling-stroke}.timeline__line .track{stroke:var(--line-strong)}.timeline__line .fill{stroke:var(--amber)}.timeline__item{padding-bottom:clamp(3rem,7vw,5rem);position:relative}.timeline__item:last-child{padding-bottom:0}.timeline__item:before{content:"";background:var(--ink);border:2px solid var(--line-strong);border-radius:50%;width:10px;height:10px;margin-left:-4px;transition:border-color .4s,background .4s;position:absolute;top:.4em;left:calc(-1*clamp(2rem,6vw,3.2rem))}.timeline__item.is-active:before{border-color:var(--amber);background:var(--amber)}.timeline__date{color:var(--paper-dim);font-size:var(--fs-xs);letter-spacing:.08em}.timeline__role{font-family:var(--font-display);font-size:var(--fs-xl);margin-top:.6rem;font-weight:700}.timeline__org{color:var(--amber);font-size:var(--fs-sm);font-family:var(--font-mono);margin-top:.3rem}.timeline__desc{color:var(--paper-dim);max-width:62ch;margin-top:.9rem;line-height:1.7}@media (width<=720px){.timeline{padding-left:1.6rem}.timeline__item:before{left:-1.6rem}}.stats{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.stat{background:var(--ink);flex-direction:column;gap:1rem;padding:clamp(1.75rem,3vw,2.5rem);transition:background .35s;display:flex}.stat:hover{background:var(--ink-soft)}.stat__num{font-family:var(--font-display);color:var(--paper);font-size:clamp(2.2rem,4.6vw,3.4rem);font-weight:700;line-height:1;transition:color .35s}.stat:hover .stat__num{color:var(--amber)}.stat__num-sub{color:var(--paper-faint);font-size:.5em}.stat__label{color:var(--paper-dim);font-size:var(--fs-sm);line-height:1.6}@media (width<=900px){.stats{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.stats{grid-template-columns:1fr}}.edu-main{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;padding-bottom:clamp(2.5rem,5vw,4rem);display:flex}.edu-main__degree{font-family:var(--font-display);font-size:var(--fs-xl);max-width:20ch;font-weight:700}.edu-main__school{color:var(--paper-dim);font-size:var(--fs-sm);margin-top:.7rem}.edu-main__progress{flex-shrink:0;justify-content:center;align-items:center;width:118px;height:118px;display:flex;position:relative}.edu-main__ring{position:absolute;inset:0;transform:rotate(-90deg)}.edu-main__ring .ring-track{fill:none;stroke:var(--line-strong);stroke-width:3px}.edu-main__ring .ring-fill{fill:none;stroke:var(--amber);stroke-width:3px;stroke-linecap:round}.edu-main__ring-label{font-size:var(--fs-lg);color:var(--paper);align-items:baseline;gap:.15rem;display:flex;position:relative}.edu-main__ring-of{color:var(--paper-dim);font-size:.6em}.edu-route{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:clamp(2.5rem,5vw,4rem) 0;display:grid}.edu-route__point span{font-size:var(--fs-xs);letter-spacing:.06em;color:var(--paper);white-space:nowrap}.edu-route__line{width:100%;height:30px}.edu-route__line path{fill:none;stroke:var(--teal);stroke-width:1.5px;stroke-dasharray:4 5}.edu-route__line circle{fill:var(--amber)}.edu-route__caption{color:var(--paper-dim);font-size:var(--fs-sm);grid-column:1/-1;max-width:68ch;margin-top:.5rem;line-height:1.7}.edu-extra{color:var(--paper-dim);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:1rem;padding-top:clamp(2rem,4vw,3rem);display:flex}@media (width<=720px){.edu-route{text-align:center;grid-template-columns:1fr}.edu-route__line{height:60px;margin:.5rem 0;transform:rotate(90deg)}}.skillsheet{grid-template-columns:repeat(4,1fr);gap:clamp(2rem,4vw,3rem);display:grid}.skillsheet__group{border-top:1px solid var(--line-strong);padding-top:1.25rem}.skillsheet__label{font-size:var(--fs-xs);letter-spacing:.1em;color:var(--amber);text-transform:uppercase;margin-bottom:1.25rem}.skillsheet__list{flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.skillsheet__list li{font-size:var(--fs-sm);color:var(--paper-dim);padding-left:1rem;transition:color .3s,padding-left .3s;position:relative}.skillsheet__list li:before{content:"";background:var(--paper-faint);width:5px;height:1px;transition:width .3s,background .3s;position:absolute;top:.5em;left:0}.skillsheet__list li:hover{color:var(--paper);padding-left:1.25rem}.skillsheet__list li:hover:before{background:var(--amber);width:8px}.skillsheet__list--lang li{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.skillsheet__level{color:var(--paper-faint);font-size:var(--fs-xs)}@media (width<=900px){.skillsheet{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.skillsheet{grid-template-columns:1fr}}.contact{margin-top:clamp(2rem,5vw,4rem)}.contact__inner{padding-bottom:clamp(3rem,6vw,5rem)}.contact__headline{font-family:var(--font-display);letter-spacing:-.02em;margin:1.5rem 0 clamp(3rem,7vw,5rem);font-size:clamp(2.8rem,8.5vw,6.5rem);font-weight:700;line-height:.98}.contact__headline-line{display:block;overflow:hidden}.contact__headline-line span{display:inline-block}.contact__grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:1px;margin-bottom:clamp(3rem,6vw,4.5rem);display:grid}.contact__link{background:var(--ink);will-change:transform;flex-direction:column;gap:.6rem;padding:clamp(1.5rem,3vw,2rem);text-decoration:none;transition:background .3s;display:flex}.contact__link:hover{background:var(--ink-soft)}.contact__link-label{font-size:var(--fs-xs);color:var(--paper-dim);letter-spacing:.08em;text-transform:uppercase}.contact__link-value{color:var(--paper);word-break:break-word;font-size:clamp(1rem,2vw,1.25rem);transition:color .3s}.contact__link:hover .contact__link-value{color:var(--amber)}.contact__footer{border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--paper-dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:2rem;display:flex}.contact__cv{color:var(--paper);border-bottom:1px solid var(--line-strong);padding-bottom:2px;text-decoration:none;transition:color .3s,border-color .3s}.contact__cv:hover{color:var(--amber);border-color:var(--amber)}@media (width<=620px){.contact__grid{grid-template-columns:1fr}.contact__footer{flex-direction:column;align-items:flex-start}}
