@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:var(--ink);background:var(--paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--paper:#fcfbf8;--ink:#25252b;--muted:#685b70;--purple:#7253be;--border:#e8e6e1;--surface:#fffdfb;--surface-raised:#fff;--surface-soft:#f7f4f8;--accent-soft:#eee8f7;font-family:DM Sans Variable,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#17151d;--ink:#f2edf7;--muted:#beb2ca;--purple:#c0a3f5;--border:#39313f;--surface:#211d29;--surface-raised:#292331;--surface-soft:#302739;--accent-soft:#352847}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{min-width:320px;margin:0;overflow-x:clip}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}h1,h2,h3,p{margin:0}button,a{outline-offset:5px}:focus-visible{outline:2px solid var(--purple)}button:disabled{cursor:default}::selection{color:#30214d;background:#e7dcfb}img,svg{vertical-align:middle}button svg,a svg{flex-shrink:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;background:var(--ink);color:var(--paper);border-radius:5px;padding:14px 20px;position:fixed;top:-70px;left:20px}.skip-link:focus{top:10px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.container{width:min(1200px,100% - 112px);margin-inline:auto}.site-header{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#fcfbf8f2;position:sticky;top:0}.scroll-progress{z-index:100;transform-origin:0;will-change:transform;background:linear-gradient(90deg,#7253be,#b488d2,#6e9680);height:3px;position:fixed;inset:0 0 auto;transform:scaleX(0)}.header-inner{justify-content:space-between;align-items:center;gap:28px;height:86px;display:flex}.brand{white-space:nowrap;flex-shrink:0;align-items:center;gap:11px;display:inline-flex}.brand-mark{letter-spacing:-4px;background:var(--ink);color:#fff;border-radius:11px;place-content:center;width:40px;height:40px;padding:0 6px 5px 0;font-family:Manrope Variable,sans-serif;font-size:32px;font-weight:800;line-height:1;display:grid;position:relative}.brand-mark span{color:#b6a1e7;position:absolute;bottom:7px;right:9px}.brand-name{letter-spacing:-.7px;font-size:18px;font-weight:750}.brand-name>span{color:#797780;font-weight:400}.navigation{gap:32px;margin-left:50px;display:flex}.navigation>a{color:#62616b;padding:10px 0;font-size:13px;transition:color .2s;position:relative}.navigation>a:hover,.navigation>a[aria-current]{color:var(--purple)}.navigation>a[aria-current]:after{content:"";background:var(--purple);border-radius:50%;width:4px;height:4px;position:absolute;bottom:1px;left:calc(50% - 2px)}.header-contact{white-space:nowrap;background:#eee8f7;border:1px solid #e4daef;border-radius:7px;align-items:center;gap:22px;padding:11px 17px;font-size:12px;font-weight:650;transition:background .2s;display:inline-flex}.header-contact:hover{background:#e3d8f3}.icon-button{background:0 0;border-radius:50%;place-content:center;width:40px;height:40px;display:inline-grid}.header-actions{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.header-actions .icon-button{flex-shrink:0;min-width:40px;min-height:40px}.theme-toggle{color:var(--muted);border:1px solid var(--border);transition:color .2s,background .2s,border-color .2s}.theme-toggle:hover{color:var(--ink);background:#eee8f7;border-color:#d9cde2}.theme-notice{border:1px solid var(--border);background:var(--paper);width:max-content;max-width:min(360px,100vw - 32px);color:var(--muted);overflow-wrap:anywhere;border-radius:8px;padding:12px 16px;font-size:12px;line-height:1.6;position:absolute;top:calc(100% + 12px);right:max(16px,50vw - 600px);box-shadow:0 8px 24px #30263718}.menu-toggle,.navigation .mobile-contact{display:none}.eyebrow{letter-spacing:1.8px;align-items:center;gap:9px;font-size:10px;font-weight:650;display:flex}.status-dot{background:#6b9579;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.hero{grid-template-columns:1.07fr 1fr;align-items:center;column-gap:40px;padding-top:76px;padding-bottom:47px;display:grid}.hero-eyebrow{color:#68616f;margin-bottom:24px;font-size:9px}.hero-eyebrow .status-dot{margin-right:5px;box-shadow:0 0 0 4px #e8eee4}h1{letter-spacing:-4.7px;font-family:Manrope Variable,sans-serif;font-size:clamp(58px,5.8vw,81px);font-weight:650;line-height:1.105}.hero-accent{color:var(--purple);position:relative}.hero-accent svg{width:105%;height:17px;position:absolute;bottom:-8px;left:-1px}.hero-accent path{stroke:#ad95d7;stroke-width:2px;stroke-linecap:round}.purple-period{color:var(--purple)}.hero-description{color:var(--muted);max-width:416px;margin-top:33px;font-size:14px;line-height:1.85}.hero-description strong{color:var(--ink);font-weight:650}.hero-actions{align-items:center;gap:26px;margin-top:28px;display:flex}.button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:25px;padding:15px 21px;font-size:12px;font-weight:600;line-height:1.2;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.button-primary:hover{background:#443853;box-shadow:0 4px 10px #26212e12}.button-secondary{background:0 0;border-color:#dedce1}.button-secondary:hover{background:#f1edf5}.button-light{background:#ffffff90;border-color:#dcd2e5}.hero-github{align-items:center;gap:9px;font-size:12px;font-weight:500;display:flex}.hero-github:hover{color:var(--purple)}.hero-note{color:#87838c;align-items:center;gap:12px;margin-top:33px;font-size:10px;display:flex}.tiny-avatars{padding-left:5px;display:flex}.tiny-avatars svg{box-sizing:content-box;border:2px solid var(--paper);color:#77648e;background:#ece7f2;border-radius:50%;margin-left:-5px;padding:7px}.tiny-avatars svg:nth-child(2){color:#5f7c69;background:#e6eee8}.tiny-avatars svg:nth-child(3){color:#a48458;background:#f3e9db}.scroll-note{color:#96919c;letter-spacing:1.8px;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:47px;font-size:8px;display:flex}.hero-art{isolation:isolate;background:radial-gradient(at 70% 18%,#e9e2f5,#0000 58%),linear-gradient(135deg,#f0eaf6,#ded5ec 70%,#e7deef);border-radius:18px;width:100%;height:445px;margin-top:-17px;position:relative}.art-grid{opacity:.45;border-radius:inherit;background-image:linear-gradient(#fff4 1px,#0000 1px),linear-gradient(90deg,#fff4 1px,#0000 1px);background-size:35px 35px;position:absolute;inset:0}.art-coordinate{letter-spacing:1.5px;color:#8f809e;font-size:8px;position:absolute;top:24px;left:26px}.orbit{border:1px solid #c3b2d95c;border-radius:50%;width:325px;height:325px;position:absolute;top:71px;left:15%}.orbit-two{width:390px;height:390px;top:37px;left:8%}.floating-symbol{color:#8f70b4;background:#fff9;border:1px solid #fff;border-radius:14px;place-content:center;display:grid;position:absolute;box-shadow:0 7px 20px #5342670b}.symbol-braces{width:60px;height:60px;top:45px;left:29px;transform:rotate(-10deg)}.symbol-spark{width:48px;height:48px;bottom:46px;right:28px;transform:rotate(10deg)}.code-window{color:#e5dde9;background:#292632;border:1px solid #ffffff24;border-radius:10px;width:91%;position:absolute;top:109px;left:4%;overflow:hidden;transform:rotate(-5deg);box-shadow:7px 22px 36px #45334f30}.window-bar{color:#98919e;background:#302d39;border-bottom:1px solid #ffffff08;justify-content:space-between;align-items:center;height:36px;padding:0 14px;font-family:Consolas,monospace;font-size:9px;display:flex}.traffic-lights{gap:5px;display:flex}.traffic-lights i{background:#d68885;border-radius:50%;width:6px;height:6px}.traffic-lights i:nth-child(2){background:#d9bd83}.traffic-lights i:nth-child(3){background:#9cb48a}.code-body{white-space:pre;padding:19px 11px 18px 0;font-family:Consolas,monospace;font-size:clamp(9px,1.02vw,13px);line-height:1.85}.line-number{text-align:right;color:#645b70;-webkit-user-select:none;user-select:none;width:33px;margin-right:15px;font-size:10px;display:inline-block}.code-purple{color:#be9bdd}.code-green{color:#b3c998}.code-orange{color:#e2b684}.code-blue{color:#a7c8e7}.code-comment{color:#85778e;font-size:.91em}.code-spacer{height:17px}.code-cursor{vertical-align:middle;background:#ba9ad4;width:5px;height:12px;margin-left:3px;display:inline-block}.editor-footer{color:#c2b4d1;background:#352f40;justify-content:space-between;padding:6px 13px;font-size:8px;display:flex}.editor-footer>span{align-items:center;gap:6px;display:flex}.cert-float{background:#fffdfa;border-radius:9px;align-items:center;gap:9px;padding:14px 16px 14px 12px;display:flex;position:absolute;top:58px;right:-15px;transform:rotate(4deg);box-shadow:0 9px 25px #54406116}.cert-float-icon{color:#87709c;background:#f0eaf5;border-radius:50%;place-content:center;width:39px;height:39px;display:grid}.cert-float strong{font-size:11px;font-weight:700;display:block}.cert-float div>span{color:#93889c;margin-top:4px;font-size:9px;display:block}.tiny-check{color:#fff;background:#829b7d;border-radius:50%;place-content:center;align-self:flex-start;width:14px;height:14px;margin-top:2px;margin-left:5px;display:grid}.art-footer{letter-spacing:.2px;color:#81708e;align-items:center;gap:7px;font-size:9px;display:flex;position:absolute;bottom:29px;left:28px}.art-footer .status-dot{background:#9880ad;width:5px;height:5px}.art-asterisk{color:#9780ba;font-size:74px;line-height:1;position:absolute;bottom:34px;left:-25px;transform:rotate(13deg)}.highlights{border-block:1px solid var(--border);grid-template-columns:1.6fr repeat(4,1fr);align-items:center;padding-block:28px;display:grid}.highlight-intro>strong{margin-top:7px;font-size:14px;font-weight:500;display:block}.highlight-intro .eyebrow{color:#939099;font-size:8px}.snapshot-label{color:#969099;margin-top:9px;font-size:8px;display:block}.stat{border-left:1px solid var(--border);padding-left:34px}.stat>strong{letter-spacing:-1.5px;align-items:center;gap:10px;font-family:Manrope Variable,sans-serif;font-size:35px;font-weight:550;line-height:1.2;display:flex}.stat>strong>span{color:#a692bd;font-size:25px;font-weight:400}.stat>strong>.stat-award{line-height:1}.stat>span{color:#8b8690;margin-top:7px;font-size:10px;display:block}.section{padding-block:85px}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;display:flex}.section-heading .eyebrow,.about-copy>.eyebrow{color:#665974;margin-bottom:14px;font-size:9px}.section-index{color:#a19aaa;margin-right:4px}h2{letter-spacing:-1.6px;font-family:Manrope Variable,sans-serif;font-size:39px;font-weight:550;line-height:1.25}.serif-word{color:#7f649c;letter-spacing:-1.5px;font-family:Georgia,serif;font-style:italic;font-weight:400}.section-heading>p{color:#8b8590;padding-bottom:4px;font-size:11px;line-height:1.8}.work-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.project-filters{flex-wrap:wrap;gap:6px;display:flex}.project-filters button{background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:7px;padding:8px 14px;font-size:10px;transition:background .2s;display:inline-flex}.project-filters button:hover{background:#ece8f1}.project-filters button[aria-pressed=true]{color:#fff;background:#29252f;border-color:#29252f}.project-filters button>span{color:#bdb4c6;background:#ffffff12;border-radius:3px;padding:1px 4px;font-size:8px}.work-caption{color:#938a9a;align-items:center;gap:9px;font-size:9px;display:flex}.projects-grid{grid-template-columns:1fr 1fr;gap:38px 27px;display:grid}.project-card{min-width:0}.project-preview-button{text-align:left;background:0 0;border-radius:11px;width:100%;padding:0;display:block;position:relative}.project-preview{border-radius:11px;justify-content:center;align-items:center;height:283px;transition:filter .3s;display:flex;position:relative;overflow:hidden}.project-preview-button:hover .project-preview{filter:saturate(1.12)}.preview-open{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;background:#ffffff70;border:1px solid #ffffff80;border-radius:50%;place-content:center;width:34px;height:34px;transition:opacity .2s,transform .2s;display:grid;position:absolute;top:16px;right:16px;transform:translate(-3px,3px)}.project-preview-button:hover .preview-open,.project-preview-button:focus-visible .preview-open{opacity:1;transform:translate(0)}.preview-note{color:#4b435e;letter-spacing:.4px;background:#ffffff80;border-radius:3px;padding:3px 5px;font-size:7px;position:absolute;bottom:10px;right:12px}.project-meta{text-transform:uppercase;letter-spacing:1px;color:#9a929f;justify-content:space-between;gap:10px;margin-top:18px;font-size:8px;display:flex}.project-meta>span:last-child{color:#847090}.project-title-row{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.project-title-row h3{letter-spacing:-.65px;font-size:21px;font-weight:550}.project-title-row h3 button{text-align:left;background:0 0;padding:0}.project-title-row h3 button:hover,.project-source:hover{color:var(--purple)}.project-title-row .icon-button{flex-shrink:0;width:29px;height:29px}.project-card>p{color:#817b86;max-width:450px;margin-top:6px;font-size:11px;line-height:1.8}.tag-list{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.tag-list>span{color:#7e7489;background:#f4f1f5;border:1px solid #e7e2e9;border-radius:4px;padding:4px 8px;font-size:8px;line-height:1.4}.more-projects{flex-direction:column;align-items:center;gap:15px;margin-top:37px;display:flex}.games-section{color:#f9f6fb;background:radial-gradient(circle at 9% 13%,#805bab15 0 2px,#0000 3px) 0 0/34px 34px,radial-gradient(circle at 91% 82%,#7ba18a18 0 2px,#0000 3px) 0 0/43px 43px,#28252f;padding-block:88px;overflow:clip}.games-heading{margin-bottom:38px}.games-heading .eyebrow,.games-heading .section-index{color:#b9a7c7}.games-heading h2{color:#fff}.games-heading>p{color:#c5bacb}.games-heading .serif-word{color:#c4a8dc}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.game-card{background:#34303c;border:1px solid #ffffff16;border-radius:14px;transition:transform .35s,border-color .35s;overflow:hidden;box-shadow:0 24px 70px #15121a30}.game-card:hover{border-color:#ffffff35;transform:translateY(-7px)}.game-video{aspect-ratio:16/10;background:#1e1b24;position:relative;overflow:hidden}.game-video video,.game-poster{object-fit:cover;width:100%;height:100%;display:block}.game-video-preview{aspect-ratio:auto}.game-video-preview .game-poster{object-fit:contain;height:auto}.game-preview-note{color:#f9f6fb;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 18px;font-size:11px;display:flex}.game-preview-note span{color:#c5bacb}.game-art{position:absolute;inset:0;overflow:hidden}.grid-survival-art{background:radial-gradient(circle,#7850a055,#0000 45%),linear-gradient(145deg,#25202e,#17151c)}.math-runner-art{background:radial-gradient(circle at 80% 15%,#f2b64e55,#0000 34%),linear-gradient(145deg,#1c3a48,#12262f)}.game-hud{z-index:2;letter-spacing:1.3px;color:#d7cbe0;align-items:center;gap:12px;font-family:Consolas,monospace;font-size:8px;display:flex;position:absolute;top:20px;left:22px;right:22px}.game-hud i{background:#ffffff25;flex:1;height:1px}.survival-grid{border:1px solid #9571b866;grid-template-columns:repeat(6,1fr);width:320px;height:192px;display:grid;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)perspective(550px)rotateX(58deg)rotate(-8deg);box-shadow:0 0 50px #8b62b72f}.survival-grid i{background:#73538b0b;border:1px solid #80639a55}.survival-grid .danger-cell{background:#d8617966;box-shadow:inset 0 0 15px #df5f7b55}.survival-grid .player-cell{background:#a88fc7;box-shadow:0 0 20px #d3baf2}.survival-player{color:#251a30;background:#d5bdec;border-radius:50%;place-content:center;width:31px;height:31px;animation:2.2s ease-in-out infinite player-pulse;display:grid;position:absolute;top:calc(52% - 15px);left:calc(50% - 15px);box-shadow:0 0 0 7px #bb98d72a,0 0 30px #ba8ee2}.runner-equation{align-items:center;gap:14px;display:flex;position:absolute;top:57px;left:50%;transform:translate(-50%)}.runner-equation span,.runner-equation strong{color:#24414b;background:#e9f0df;border-radius:12px;place-content:center;width:55px;height:55px;font-family:Manrope Variable,sans-serif;font-size:24px;font-weight:700;display:grid;box-shadow:0 9px 25px #08141930}.runner-equation strong{color:#815e1b;background:#f4c968}.runner-equation b{color:#c5d2d2;font-size:20px}.runner-track{border-bottom:2px solid #ffffff28;justify-content:flex-end;align-items:flex-end;gap:17px;height:58px;display:flex;position:absolute;bottom:49px;left:12%;right:12%}.runner-track:before,.runner-track:after{content:"";border-bottom:1px dashed #ffffff1c;position:absolute;inset:auto 0 12px}.runner-track:after{bottom:25px}.runner-character{color:#223c46;background:#96c9b2;border-radius:18px 18px 8px 8px;place-content:center;width:40px;height:49px;font-weight:800;animation:1.2s ease-in-out infinite runner-hop;display:grid;position:absolute;bottom:0;left:8%;box-shadow:0 0 25px #7ed2ab50}.runner-track i{z-index:1;color:#c7d6d8;background:#ffffff16;border:1px solid #fff2;border-radius:6px;place-content:center;width:34px;height:34px;margin-bottom:7px;font-size:11px;font-style:normal;display:grid;position:relative}.game-art-label{letter-spacing:1.7px;color:#bbaec5;font-size:7px;position:absolute;bottom:15px;left:22px}.video-placeholder{z-index:4;background:linear-gradient(#0000 47%,#17141db5);justify-content:flex-end;align-items:flex-end;gap:10px;padding:17px;display:flex;position:absolute;inset:0}.video-play{color:#2c2632;background:#f9f4fb;border-radius:50%;place-content:center;width:39px;height:39px;display:grid;box-shadow:0 8px 25px #110e162e}.video-placeholder>span:last-child{color:#fff;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#29242fc7;border:1px solid #ffffff17;border-radius:7px;padding:9px 11px}.video-placeholder strong,.video-placeholder small{display:block}.video-placeholder strong{font-size:9px;font-weight:600}.video-placeholder small{color:#c6bbc9;margin-top:3px;font-size:7px}.game-copy{padding:25px 25px 27px}.game-meta{color:#aa9caf;letter-spacing:1px;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:8px;display:flex}.game-meta>span:last-child{align-items:center;gap:6px;display:flex}.game-copy h3{letter-spacing:-1px;margin-top:17px;font-family:Manrope Variable,sans-serif;font-size:29px;font-weight:600}.game-tagline{color:#c3acd0;margin-top:3px;font-family:Georgia,serif;font-size:15px;font-style:italic}.game-copy>p:not(.game-tagline){color:#c4b9c7;max-width:450px;margin-top:13px;font-size:12px;line-height:1.75}.game-copy .text-link{color:#dfd2e6;margin-top:20px}.game-copy .text-link:hover{color:#fff}.games-note{color:#b8aabe;text-align:center;justify-content:center;align-items:center;gap:8px;margin-top:28px;font-size:9px;display:flex}.games-note code{color:#e8dcee;background:#ffffff0c;border-radius:4px;padding:3px 6px;font-family:Consolas,monospace}@keyframes player-pulse{50%{transform:scale(1.09);box-shadow:0 0 0 11px #bb98d716,0 0 40px #ba8ee2}}@keyframes runner-hop{50%{transform:translateY(-9px)rotate(3deg)}}.more-projects .button{padding:12px 17px;font-size:10px}.text-link{color:#746080;align-items:center;gap:8px;font-size:11px;font-weight:550;display:inline-flex}.text-link:hover{color:#462761}.rotate-icon{transform:rotate(180deg)}.preview-tickety{background:#e2dcee}.mini-dashboard{background:#fcfcfe;border-radius:7px;width:86%;height:207px;display:flex;overflow:hidden;transform:rotate(-3deg)translateY(5px);box-shadow:0 14px 25px #65527722}.mini-dashboard aside{border-right:1px solid #eeebf2;flex-shrink:0;width:97px;padding:14px 10px;position:relative}.mini-logo{color:#7b55b6;align-items:center;gap:5px;margin-bottom:20px;font-size:12px;font-weight:750;display:flex}.mini-nav{color:#aaa0b2;align-items:center;gap:6px;margin-block:3px;padding:7px 5px;font-size:7px;display:flex}.mini-nav.selected{color:#8b6cad;background:#eee8f8;border-radius:4px}.mini-user{color:#9f8ab7;align-items:center;gap:7px;font-size:9px;display:flex;position:absolute;bottom:13px;left:15px}.mini-user span{color:#aba3b3;font-size:6px}.mini-content{width:100%;min-width:0;padding:17px 17px 0}.mini-header{letter-spacing:-.2px;font-size:9px;font-weight:650}.mini-header>span{color:#a9a1af;margin-top:5px;font-size:6px;font-weight:400;display:block}.mini-stat-row{gap:9px;margin-top:14px;display:flex}.mini-stat-row>div{color:#a499ae;background:#f6f3fa;border:1px solid #eee8f5;border-radius:4px;flex:1;padding:8px;font-size:6px}.mini-stat-row strong{color:#736081;margin-top:3px;font-size:17px;font-weight:550;display:block}.mini-stat-row small{font-size:5px;font-weight:400}.queue-card{border:1px solid #eee9f3;border-radius:4px;align-items:center;gap:7px;margin-top:10px;padding:8px;display:flex}.queue-icon{color:#a894bc;background:#f1e9f9;border-radius:4px;padding:4px}.queue-card>div{color:#b0a5b9;font-size:5px}.queue-card strong{color:#665372;margin-block:3px;font-size:9px;display:block}.queue-card small{font-size:5px}.queue-status{color:#967daf;white-space:nowrap;background:#efe8f8;border-radius:6px;margin-left:auto;padding:3px 6px;font-size:5px}.mini-chart{align-items:flex-end;gap:8px;height:27px;padding:6px 6px 0;display:flex}.mini-chart i{background:#c7b1e0;border-radius:2px 2px 0 0;flex:1}.mini-chart i:nth-child(2n){background:#e9dff3}.preview-smart-tutor{background:#ecdfcf;justify-content:flex-start}.tutor-copy{z-index:1;width:57%;padding-left:31px;position:relative}.tutor-copy>span{letter-spacing:1px;color:#ad8d6d;align-items:center;gap:4px;margin-bottom:14px;font-size:6px;display:flex}.tutor-copy>strong{letter-spacing:-1px;color:#7b5c41;font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.1;display:block}.tutor-books{color:#b48f68;gap:10px;margin-top:23px;display:flex}.tutor-books svg{box-sizing:content-box;background:#f7ead555;border:1px solid #c5a47c40;border-radius:9px;padding:9px;transform:rotate(-8deg)}.tutor-books svg:nth-child(2){color:#8e7c99;transform:rotate(8deg)}.mini-phone{background:#fffdf9;border:5px solid #f7f5f3;border-radius:23px;outline:1px solid #cabbab;width:162px;height:294px;padding:29px 10px 0;position:absolute;top:23px;right:38px;transform:rotate(9deg);box-shadow:10px 14px 25px #9f7b4930}.phone-notch{background:#eee8df;border-radius:0 0 8px 8px;width:52px;height:10px;position:absolute;top:0;left:50px}.phone-header{color:#a29685;align-items:center;gap:5px;font-size:5px;display:flex}.phone-header strong{color:#5b5146;margin-top:3px;font-size:9px;display:block}.phone-avatar{color:#a68a66;background:#ece3d4;border-radius:50%;place-content:center;width:23px;height:23px;font-size:8px;display:grid}.lesson-banner{color:#7f6945;background:#eee2c7;border-radius:8px;margin-top:13px;padding:12px;position:relative}.lesson-banner>svg{opacity:.5;position:absolute;top:12px;right:10px}.lesson-banner strong{letter-spacing:-.2px;font-size:13px;line-height:1.2;display:block}.lesson-banner>span{margin-top:9px;font-size:6px;display:block}.phone-label{color:#766b5d;margin-top:14px;font-size:7px;font-weight:650;display:block}.phone-lesson{color:#a98d68;background:#f5f1e9;border-radius:5px;align-items:center;gap:6px;margin-top:9px;padding:7px 6px;font-size:7px;display:flex}.phone-lesson>div{color:#827263;font-weight:600}.phone-lesson span{color:#ada294;margin-top:3px;font-size:4px;display:block}.phone-lesson:nth-of-type(5){color:#9f88ac;background:#eee8f0}.phone-bottom{color:#b6a493;justify-content:space-around;align-items:center;margin-top:12px;display:flex}.preview-marketflow{background:#dde5ee}.architecture{width:78%}.architecture-caption{color:#8c9aab;letter-spacing:1px;justify-content:center;align-items:center;gap:7px;margin-bottom:18px;font-size:7px;display:flex}.service{color:#7e92ad;background:#f8fafc;border:1px solid #fff;border-radius:6px;align-items:center;gap:10px;padding:15px 12px;display:flex;box-shadow:0 5px 9px #546f8508}.gateway{width:76%;margin-inline:auto}.service span:not(.service-dot){color:#62768e;font-size:10px;font-weight:600}.service small{color:#a3b0c0;margin-top:4px;font-size:6px;font-weight:400;display:block}.service-dot{background:#9dbbb0;border-radius:50%;width:5px;height:5px;margin-left:auto}.connector-line{background:#adbfd2;width:1px;height:24px;margin-inline:auto;position:relative}.connector-line:after{content:"";border:1px solid #adbfd2;border-bottom:none;width:195px;height:11px;position:absolute;bottom:-1px;left:-97px}.service-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.service-row .service{gap:7px;padding:12px 10px}.event-bus{color:#8d8da6;background:#e6e1ef;border:1px dashed #c4bdd5;border-radius:5px;align-items:center;gap:8px;margin-top:15px;padding:10px 13px;font-size:8px;display:flex}.bus-line{background:#c4bdd5;flex:1;height:1px;margin-left:8px}.db-label{color:#93a1b3;justify-content:center;align-items:center;gap:5px;margin-top:12px;font-size:7px;display:flex}.preview-smart-garden{background:#dfe8d9}.garden-dashboard{background:#f9fbf5;border-radius:8px;width:83%;height:208px;padding:17px;transform:rotate(3deg);box-shadow:8px 15px 25px #5b71441a}.garden-header{border-bottom:1px solid #e8edde;justify-content:space-between;align-items:center;gap:5px;padding-bottom:12px;display:flex}.garden-header>span{color:#6f805e;align-items:center;gap:5px;font-size:11px;font-weight:650;display:flex}.garden-period{color:#b2b491;margin-left:-4px}.garden-header>small{color:#a0ab94;font-size:6px}.garden-body{gap:15px;margin-top:12px;display:flex}.garden-greeting{background:#e8eedb;border-radius:5px;width:53%;height:136px;padding:13px;position:relative;overflow:hidden}.garden-greeting>span{color:#a0ad8b;letter-spacing:.5px;font-size:5px}.garden-greeting strong{color:#74845d;z-index:1;margin-top:9px;font-family:Georgia,serif;font-size:23px;font-weight:500;line-height:1.05;display:block;position:relative}.garden-greeting svg{color:#b7c795;position:absolute;bottom:2px;right:1px;transform:rotate(-22deg)}.garden-greeting>small{color:#8c9d76;margin-top:12px;font-size:6px;display:block}.garden-metrics{flex:1;grid-template-columns:1fr 1fr;gap:8px;display:grid}.garden-metrics>div{background:#f0f3e9;border:1px solid #e5eadc;border-radius:5px;padding:9px}.garden-metrics div>span{color:#97a788;font-size:6px}.garden-metrics strong{color:#6f825a;margin-top:8px;font-size:25px;font-weight:500;display:block}.garden-metrics strong small{font-size:10px}.garden-metrics i{color:#9cae87;margin-top:4px;font-size:5px;font-style:normal;display:block}.garden-metrics .garden-toggle{grid-column:span 2;justify-content:space-between;align-items:center;display:flex}.toggle-track{background:#9aac7c;border-radius:7px;width:21px;height:11px;position:relative}.toggle-track:after{content:"";background:#fff;border-radius:50%;width:7px;height:7px;position:absolute;top:2px;right:2px}.preview-fast-travel{background:#dce7e8}.api-preview{width:82%}.api-kicker{color:#689092;letter-spacing:1px;align-items:center;gap:8px;font-size:8px;display:flex}.api-preview h3{color:#4c7274;margin-block:13px;font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.2}.endpoint{color:#6b8285;background:#f8fbfb;border-radius:5px;align-items:center;gap:8px;padding:11px;display:flex}.endpoint b{color:#6c9985;background:#dfebe4;padding:4px;font-size:8px}.endpoint code{font-size:9px}.endpoint>span{color:#96ad9b;margin-left:auto;font-size:6px}.api-response{color:#afc9ba;background:#344b50;border-radius:5px;margin-top:9px;padding:12px 17px;font-size:10px;line-height:1.6}.api-response code{white-space:pre}.preview-camfranglais{background:#e9deeb}.language-preview{width:82%}.language-kicker{letter-spacing:1px;color:#a587a9;align-items:center;gap:7px;margin-bottom:17px;font-size:8px;display:flex}.word-bubble{background:#f9f5fa;border-radius:15px 15px 15px 0;width:fit-content;padding:14px 21px;box-shadow:0 5px 10px #a581a50a}.word-one{color:#8c6e91;font-family:Georgia,serif;font-size:27px}.word-one>span{color:#ae9ab1;margin-top:5px;font-family:DM Sans Variable,sans-serif;font-size:7px;display:block}.word-two{color:#fff;background:#bba1c1;border-radius:15px 15px 0;align-items:center;gap:25px;margin:10px 0 0 auto;padding-block:12px;font-size:12px;display:flex}.audio-wave{align-items:center;gap:4px;height:50px;padding-top:14px;display:flex}.audio-wave i{background:#b18fba;border-radius:2px;width:3px;max-height:30px}.audio-wave>span{color:#9e85a3;margin-left:14px;font-size:7px}.about-section{background:#f2efe9;border-block:1px solid #eae6de;padding-block:70px}.about-grid{grid-template-columns:.82fr 1.25fr;align-items:center;gap:82px;display:grid}.about-visual{background:#e6dfed;border:1px solid #dcd3e3;border-radius:10px;padding:23px;position:relative;overflow:hidden}.about-topline{letter-spacing:1.2px;color:#8b759b;justify-content:space-between;align-items:center;font-size:6px;display:flex}.about-topline svg{color:#a48bb8}.personal-photo-frame{aspect-ratio:3/4;border:7px solid #f8f4fb;border-radius:10px;width:min(76%,270px);margin:20px auto 23px;position:relative;transform:rotate(-2deg);box-shadow:0 18px 38px #59426825}.personal-photo-frame img{object-fit:cover;object-position:center 24%;filter:saturate(.86)contrast(1.02);border-radius:5px;width:100%;height:100%;display:block}.photo-corner{z-index:2;border-color:#9c7fb1;width:28px;height:28px;position:absolute}.photo-corner-top{border-top:2px solid;border-left:2px solid;top:-15px;left:-15px}.photo-corner-bottom{border-bottom:2px solid;border-right:2px solid;bottom:-15px;right:-15px}.profile-label{background:var(--paper);white-space:nowrap;border-radius:5px;align-items:center;gap:7px;padding:9px 13px;font-size:9px;font-weight:600;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)rotate(-5deg);box-shadow:0 4px 10px #483f5012}.profile-label .status-dot{width:4px;height:4px}.profile-orbit-icon{color:#a18ab5;background:#f8f4fb;border:1px solid #fff;border-radius:10px;place-content:center;width:43px;height:43px;display:grid;position:absolute;top:35px;right:-22px;transform:rotate(12deg)}.about-visual-bottom{color:#745c85;justify-content:space-between;align-items:flex-end;margin-top:9px;display:flex}.about-visual-bottom strong{letter-spacing:-.9px;font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.15}.about-copy h2{margin-bottom:18px;font-size:36px}.about-copy>p{color:#89818b;margin-top:12px;font-size:12px;line-height:1.85}.about-values{flex-wrap:wrap;gap:12px;margin-block:23px;display:flex}.about-values span{color:#76637f;align-items:center;gap:6px;font-size:8px;display:flex}.skills-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.skill-card{border:1px solid var(--border);background:#fffdfb;border-radius:8px;padding:22px 19px;transition:transform .3s,border-color .3s,box-shadow .3s}.skill-card:hover{border-color:#d9cde2;transform:translateY(-6px);box-shadow:0 15px 35px #3922470d}.skill-card-top{justify-content:space-between;align-items:flex-start;display:flex}.skill-icon{color:#9a81b0;background:#f1ecf5;border-radius:8px;padding:8px}.skill-card:nth-child(2) .skill-icon{color:#8e9a78;background:#edf0e5}.skill-card:nth-child(3) .skill-icon{color:#8496b1;background:#e9edf3}.skill-card:nth-child(4) .skill-icon{color:#ad967c;background:#f3ece3}.skill-card-top>span:last-child{color:#b7aebb;font-family:Consolas,monospace;font-size:8px}.skill-card h3{letter-spacing:-.3px;margin-top:20px;font-size:15px;font-weight:550}.skill-card>p{color:#a299a6;margin-top:6px;font-size:9px;line-height:1.5}.skill-tags{flex-wrap:wrap;gap:7px 5px;margin-top:20px;display:flex}.skill-tags>span{color:#85798e;background:#f7f4f8;border:1px solid #e9e4eb;border-radius:4px;padding:6px 8px;font-size:9px}.skill-tags>.technology-chip{background:#fff;align-items:center;gap:7px;transition:transform .2s,border-color .2s;display:inline-flex}.technology-chip:hover{border-color:currentColor;transform:translateY(-2px)}.technology-chip svg{flex-shrink:0;width:15px;height:15px}.technology-chip>span{color:#685b70}.reveal-enabled [data-reveal]{opacity:0;will-change:opacity, transform;transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1);transform:translateY(34px)}.reveal-enabled [data-reveal=left]{transform:translate(-42px)}.reveal-enabled [data-reveal=right]{transform:translate(42px)}.reveal-enabled [data-reveal].is-visible{opacity:1;will-change:auto;transform:translate(0,0)}.projects-grid>[data-reveal]:nth-child(2),.skills-grid>[data-reveal]:nth-child(2){transition-delay:90ms}.projects-grid>[data-reveal]:nth-child(3),.skills-grid>[data-reveal]:nth-child(3){transition-delay:.18s}.projects-grid>[data-reveal]:nth-child(4),.skills-grid>[data-reveal]:nth-child(4){transition-delay:.27s}.hero-art{animation:7s ease-in-out infinite hero-float}@keyframes hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@media (prefers-reduced-motion:reduce){.reveal-enabled [data-reveal]{opacity:1;transition:none;transform:none}.hero-art,.survival-player,.runner-character{animation:none}.skill-card,.technology-chip{transition:none}}.toolkit-note{color:#a195aa;justify-content:center;align-items:center;gap:7px;margin-top:22px;font-size:9px;line-height:1.6;display:flex}.toolkit-note>svg{flex-shrink:0}.mobile-break{display:none}.credentials-section{background:#f3f0f7;border-block:1px solid #eae4f0;padding-block:75px}.credential-layout{grid-template-columns:.95fr 1.2fr;align-items:start;gap:41px;display:grid}.credential-card{background:#fffdfa;border:1px solid #e0d7e9;border-radius:10px;padding:26px;position:relative;overflow:hidden;box-shadow:0 6px 12px #61457505}.credential-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.google-wordmark{letter-spacing:-1px;font-size:23px;font-weight:550}.google-wordmark span:first-child,.google-wordmark span:nth-child(4){color:#4285f4}.google-wordmark span:nth-child(2),.google-wordmark span:nth-child(6){color:#ea4335}.google-wordmark span:nth-child(3){color:#fbbc05}.google-wordmark span:nth-child(5){color:#34a853}.verified-badge{color:#8e7d9b;background:#f3eff7;border:1px solid #e8e1ee;border-radius:4px;align-items:center;gap:5px;padding:5px 7px;font-size:7px;display:inline-flex}.credential-award{outline-offset:4px;color:#a38ab8;background:#f1eaf8;border:1px solid #e4d9ed;border-radius:50%;outline:1px solid #e4d9ed;place-content:center;width:73px;height:73px;margin:35px 0 24px 5px;display:grid}.credential-card>.eyebrow{color:#a18dad;letter-spacing:1.3px;font-size:7px}.credential-card h3{letter-spacing:-1px;margin-top:9px;font-family:Manrope Variable,sans-serif;font-size:29px;font-weight:500;line-height:1.22}.credential-card>p{color:#948797;max-width:300px;margin-top:14px;font-size:10px;line-height:1.8}.credential-recipient{margin-top:23px}.credential-recipient span{color:#b1a5b8;letter-spacing:1.4px;font-size:6px;display:block}.credential-recipient strong{color:#84708f;margin-top:5px;font-size:11px;font-weight:500;display:block}.credential-details{color:#9f8daa;border-top:1px solid #eee7f3;justify-content:space-between;gap:12px;margin-top:19px;padding-top:15px;font-size:7px;display:flex}.credential-details>span:first-child{align-items:center;gap:5px;display:flex}.credential-details .status-dot{background:#ab94bf;width:4px;height:4px}.credential-card .button{justify-content:space-between;width:100%;margin-top:19px;padding:13px 15px;font-size:10px}.course-list-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;padding-top:7px;display:flex}.course-list-heading>h3{letter-spacing:-.3px;font-size:14px;font-weight:550}.course-list-heading>span{color:#9683a3;white-space:nowrap;font-size:8px}.course-row{border-bottom:1px solid #e4dcea;align-items:center;gap:16px;padding:17px 0;transition:background .2s;display:flex}.course-row:hover{background:#e9e1f266}.course-number{color:#a089b1;background:#eae2f2;border:1px solid #e0d6e9;border-radius:50%;flex-shrink:0;place-content:center;width:26px;height:26px;font-size:8px;display:grid}.course-name{color:#786286;font-size:11px;font-weight:500;line-height:1.5}.course-name>small{color:#aa9ab4;margin-top:5px;font-size:8px;font-weight:400;display:block}.course-row>svg{color:#a18dae;margin-left:auto}.credential-footnote{color:#a695b1;align-items:center;gap:6px;margin-top:17px;font-size:8px;line-height:1.5;display:flex}.github-section{grid-template-columns:1fr 1.03fr;align-items:center;gap:85px;display:grid}.github-intro>.eyebrow{color:#9a8ca5;margin-bottom:16px;font-size:8px}.github-intro h2{font-size:35px}.github-intro p{color:#958b9c;max-width:360px;margin-top:17px;font-size:11px;line-height:1.9}.github-intro .button{gap:10px;margin-top:23px;padding:12px 17px;font-size:10px}.github-panel{background:#fffefc;border:1px solid #e4dfe8;border-radius:9px;overflow:hidden}.github-panel-heading{border-bottom:1px solid #f0eaf4;justify-content:space-between;align-items:center;gap:8px;padding:22px;display:flex}.github-panel-heading>div{align-items:center;gap:10px;display:flex}.github-panel-heading strong{font-size:13px;font-weight:600}.github-panel-heading strong>span{color:#9e94a5;margin-top:4px;font-size:8px;font-weight:400;display:block}.github-status{color:#9b8ea4;background:#f7f3f9;border:1px solid #e7e1ea;border-radius:4px;align-items:center;gap:4px;padding:5px 6px;font-size:6px;display:flex}.github-status .status-dot{background:#b7a6c3;width:4px;height:4px}.github-status.is-live{color:#718c73;background:#f0f5ec;border-color:#e3ebde}.github-status.is-live .status-dot{background:#8caa80}.github-panel-label{color:#ac9fb5;letter-spacing:1px;padding:19px 22px 4px;font-size:7px}.repo-row{border-bottom:1px solid #eee8f2;align-items:center;gap:11px;margin:0 22px;padding:15px 0;display:flex}.repo-row:last-of-type{border-bottom:0}.repo-icon{color:#a48bb5;background:#f1edf5;border:1px solid #eae2ef;border-radius:6px;flex-shrink:0;place-content:center;width:32px;height:32px;display:grid}.repo-row>span:nth-child(2){min-width:0}.repo-row strong{color:#7b638b;overflow-wrap:anywhere;font-size:11px;font-weight:500;display:block}.repo-row small{color:#a89bb1;margin-top:5px;font-size:7px;line-height:1.5;display:block}.repo-row>svg{color:#b3a5bb;margin-left:auto}.repo-row:hover strong{color:#5f387d}.github-panel-footer{color:#a799b0;background:#f8f4fa;border-top:1px solid #eee6f3;justify-content:space-between;align-items:center;gap:10px;padding:12px 22px;font-size:7px;line-height:1.6;display:flex}.contact-section{text-align:center;background:#eae2f2 radial-gradient(at 15% 20%,#f5edf9 0,#0000 70%);border:1px solid #e3d8ed;border-radius:12px;padding:57px 30px 37px;position:relative;overflow:hidden}.contact-section>.eyebrow{letter-spacing:1.5px;color:#9882a7;justify-content:center;font-size:7px}.contact-section>.eyebrow .status-dot{background:#a994b9;width:4px;height:4px}.contact-section h2{letter-spacing:-2px;margin-top:20px;font-size:49px;line-height:1.15}.contact-section h2 .serif-word{color:#8c6aa6}.contact-section>p{color:#9c87a8;margin-top:19px;font-size:11px;line-height:1.8}.contact-actions{justify-content:center;gap:10px;margin-top:26px;display:flex}.contact-actions .button{gap:20px;padding:13px 17px;font-size:10px}.contact-actions .button-light{color:#8d769e;gap:9px}.email-link{color:#a18eac;align-items:center;gap:5px;margin-top:19px;font-size:9px;display:inline-flex}.email-link:hover{color:#6b477f}.contact-decoration{color:#c8b5d8;font-size:105px;line-height:1;position:absolute;top:31px;right:69px;transform:rotate(15deg)}.footer{justify-content:space-between;align-items:center;gap:24px;padding-block:28px;display:flex}.footer-brand{gap:12px}.footer .brand-mark{letter-spacing:-3px;border-radius:7px;width:28px;height:28px;font-size:23px}.footer .brand-mark span{bottom:5px;right:7px}.footer-brand>span:last-child,.footer>span{color:#a698af;font-size:8px}.footer-links{color:#94869c;align-items:center;gap:15px;display:flex}.footer-links a:hover{color:#5e4376}.footer-links a{padding:5px}.footer-links a:last-child{border-left:1px solid var(--border);margin-left:2px;padding-left:15px}.project-dialog{max-width:min(630px,100% - 32px);max-height:85dvh;color:var(--ink);background:var(--paper);border:1px solid #e0d7e7;border-radius:14px;padding:0;overflow:auto;box-shadow:0 20px 100px #20152d40}.project-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#27212d88}.dialog-content{padding:39px;position:relative}.dialog-close{color:#8d789d;position:absolute;top:12px;right:12px}.dialog-close:hover{background:#eee7f4}.dialog-content>.eyebrow{color:#9480a3;padding-right:20px;font-size:9px}.dialog-content h2{margin-top:15px;font-size:34px}.dialog-subtitle{color:#9a8ba4;margin-top:8px;font-size:14px}.dialog-content .tag-list{margin-block:19px 27px}.dialog-content .tag-list span{font-size:10px}.dialog-content h3{margin-top:25px;margin-bottom:10px;font-size:14px;font-weight:600}.dialog-content h3+p{color:#8d7f95;font-size:13px;line-height:1.9}.project-highlights{margin-top:15px;padding:0;list-style:none}.project-highlights li{color:#8d7f95;align-items:flex-start;gap:10px;margin-block:12px;font-size:12px;line-height:1.7;display:flex}.project-highlights li>svg{color:#a594b2;flex-shrink:0;margin-top:2px}.dialog-links{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.dialog-links .button{gap:10px;padding:11px 13px;font-size:10px}.preview-disclaimer{color:#aea0b7;border-top:1px solid #e9e1f0;margin-top:25px;padding-top:15px;font-size:9px;line-height:1.7}@media (width>=1550px){.hero{padding-top:100px;padding-bottom:55px}}@media (width<=1150px){.container{width:calc(100% - 72px)}.hero{gap:28px}.hero-art{height:404px}.code-window{top:107px}.code-body{font-size:10px}.line-number{width:27px;margin-right:10px}.cert-float{padding:10px;top:59px;right:-10px}.hero h1{letter-spacing:-4px;font-size:68px}.hero-description{max-width:370px}.orbit{width:270px;height:270px}.orbit-two{width:330px;height:330px}.art-footer{font-size:8px;left:22px}.art-asterisk{font-size:60px;bottom:30px;left:-19px}.stat{padding-left:22px}.stat>strong{font-size:30px}.stat>span{font-size:8px}.about-grid{gap:50px}.project-preview{height:260px}.tutor-copy{padding-left:23px}.tutor-copy>strong{font-size:27px}.tutor-books svg{width:20px;height:20px;padding:7px}.mini-phone{width:149px;right:23px}.mini-dashboard{width:90%}.mini-dashboard aside{width:82px;padding-inline:8px}.mini-content{padding-inline:11px}.garden-dashboard{width:87%;padding:13px}.garden-body{gap:10px}.garden-greeting{padding:11px}.garden-metrics{gap:5px}.garden-metrics>div{padding:7px}.garden-greeting strong{font-size:20px}.architecture{width:84%}.service-row{gap:10px}.skill-card{padding:19px 15px}.skill-card h3{font-size:13px}.skill-card>p{font-size:8px}.skill-tags>span{padding:5px 6px;font-size:8px}.credential-layout{gap:29px}.credential-card{padding:23px}.course-row{gap:12px}.github-section{gap:50px}.github-panel-heading{padding:18px}.contact-decoration{right:37px}.section-heading h2{font-size:35px}.section-heading>p{font-size:10px}}@media (width<=900px){.container{width:calc(100% - 56px)}.header-inner{height:75px}.navigation{gap:22px;margin-left:0}.brand-name{font-size:16px}.header-contact{gap:8px;padding:10px 12px;font-size:11px}.hero{gap:26px;padding-top:58px}.hero h1{letter-spacing:-3.5px;font-size:58px}.hero-description{font-size:12px}.hero-art{height:340px}.code-window{top:96px}.code-body{padding-block:15px;font-size:8px}.line-number{width:20px;margin-right:9px;font-size:7px}.window-bar{height:30px;font-size:7px}.code-spacer{height:10px}.editor-footer{font-size:6px}.orbit{width:210px;height:210px;top:67px}.orbit-two{width:270px;height:270px;top:38px}.symbol-braces{width:45px;height:45px;top:35px;left:19px}.symbol-braces>svg{width:24px}.cert-float{gap:6px;padding:9px;top:48px}.cert-float strong{font-size:9px}.cert-float div>span{font-size:7px}.cert-float-icon{width:28px;height:28px}.cert-float-icon>svg{width:19px}.tiny-check{margin-left:0}.symbol-spark{width:37px;height:37px;bottom:35px;right:20px}.symbol-spark>svg{width:20px}.art-footer{font-size:6px;bottom:22px}.art-coordinate{font-size:6px;top:17px;left:20px}.art-asterisk{font-size:53px;bottom:20px;left:-17px}.hero-actions{gap:17px}.hero-actions .button{gap:12px;padding:13px 16px;font-size:10px}.hero-github{gap:6px;font-size:10px}.hero-note{font-size:8px}.tiny-avatars svg{width:12px;height:12px;padding:6px}.hero-eyebrow{letter-spacing:1.4px;font-size:7px}.hero h1+p{margin-top:26px}.highlights{grid-template-columns:1.35fr repeat(4,1fr)}.stat{padding-left:15px}.stat>strong{gap:5px;font-size:28px}.stat>span{font-size:7px}.stat>strong>span{font-size:21px}.highlight-intro>strong{font-size:11px}.snapshot-label{font-size:6px}.highlight-intro .eyebrow{font-size:7px}.section{padding-block:65px}.section-heading h2{font-size:31px}.section-heading>p{font-size:9px}.work-caption{display:none}.project-preview{height:235px}.mini-dashboard{flex-shrink:0;width:106%;transform:scale(.9)rotate(-3deg)}.mini-phone{transform-origin:100% 0;width:135px;right:17px;transform:rotate(9deg)scale(.9)}.tutor-copy{padding-left:19px}.tutor-copy>strong{font-size:24px}.tutor-copy>span{letter-spacing:.5px;max-width:120px;font-size:5px}.tutor-books{gap:7px}.tutor-books svg{width:18px;height:18px;padding:5px}.architecture{width:88%;transform:scale(.95)}.architecture-caption{font-size:6px}.service-row .service{gap:5px;padding:10px 7px}.service span:not(.service-dot){font-size:9px}.service small{font-size:5px}.service>svg{width:15px}.connector-line:after{width:158px;left:-79px}.garden-dashboard{flex-shrink:0;width:102%;transform:scale(.9)rotate(3deg)}.project-title-row h3{font-size:18px}.project-card>p{font-size:10px}.project-meta{font-size:6px}.tag-list{gap:5px}.tag-list>span{font-size:7px}.projects-grid{gap:32px 20px}.games-section{padding-block:68px}.game-copy{padding:21px}.game-copy h3{font-size:25px}.survival-grid{width:265px;height:159px}.runner-equation span,.runner-equation strong{width:46px;height:46px;font-size:20px}.about-grid{grid-template-columns:.85fr 1.15fr;gap:35px}.about-visual{padding:17px}.profile-art{height:226px}.profile-art img{width:130px;height:130px}.profile-ring{width:198px;height:198px}.about-topline{letter-spacing:.8px;font-size:5px}.profile-orbit-icon{width:35px;height:35px;right:0}.about-visual-bottom strong{font-size:26px}.about-copy h2{font-size:30px}.about-copy>p{font-size:10px}.about-values{gap:10px;margin-block:20px}.about-values span{font-size:7px}.about-values svg{width:14px}.skills-grid{grid-template-columns:repeat(2,1fr);gap:16px}.skill-card{padding:23px}.skill-card h3{font-size:16px}.skill-card>p{font-size:10px}.skill-tags>span{padding:6px 8px;font-size:10px}.skill-tags{margin-top:17px}.skill-card h3{margin-top:15px}.credentials-section{padding-block:60px}.credential-layout{grid-template-columns:.95fr 1.1fr;gap:24px}.credential-card{padding:21px}.verified-badge{padding:4px 5px;font-size:6px}.google-wordmark{font-size:20px}.credential-card h3{font-size:25px}.credential-card>p{font-size:9px}.credential-details{flex-wrap:wrap;gap:6px;font-size:6px}.course-list-heading{flex-wrap:wrap;gap:6px}.course-list-heading>h3{font-size:12px}.course-row{gap:9px;padding-block:16px}.course-name{font-size:10px}.course-name>small{font-size:7px}.course-number{width:23px;height:23px;font-size:7px}.credential-footnote{font-size:7px}.github-section{grid-template-columns:.9fr 1.1fr;gap:35px}.github-intro h2{font-size:31px}.github-intro p{font-size:10px}.github-panel-heading{padding:16px}.github-panel-heading strong{font-size:11px}.github-panel-heading strong>span{font-size:7px}.github-panel-heading>div{gap:7px}.github-panel-heading>div>svg{width:20px}.github-status{padding:4px;font-size:5px}.repo-row{margin-inline:16px}.github-panel-label{padding-left:16px;font-size:6px}.repo-row strong{font-size:10px}.repo-row small{font-size:6px}.github-panel-footer{padding-inline:16px;font-size:6px}.contact-section h2{font-size:44px}.contact-decoration{font-size:80px;top:30px;right:24px}}@media (width<=820px){.menu-toggle{display:inline-grid}.menu-toggle>svg{width:21px}.navigation{background:var(--paper);border-bottom:1px solid var(--border);width:100%;max-height:calc(100dvh - 100%);margin-left:0;padding:16px 20px;display:none;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 8px 14px #30263708}.navigation.is-open{flex-direction:column;gap:3px;display:flex}.navigation>a{padding:12px;font-size:14px}.navigation>a[aria-current]:after{display:none}.navigation>a[aria-current]{background:#f0eaf7;border-radius:5px}.navigation .mobile-contact{justify-content:space-between;display:flex}}@media (width<=650px){.reveal-enabled [data-reveal=left],.reveal-enabled [data-reveal=right]{transform:translateY(28px)}.reveal-enabled [data-reveal].is-visible{transform:translate(0,0)}html{scroll-padding-top:82px}.container{width:calc(100% - 40px)}.header-inner{gap:15px;height:70px}.brand-mark{border-radius:9px;width:34px;height:34px;font-size:28px}.brand-mark span{bottom:6px;right:8px}.brand-name{font-size:17px}.header-contact{margin-left:auto;padding:9px 11px;font-size:10px}.hero{grid-template-columns:1fr;gap:0;padding-top:41px;padding-bottom:24px}.hero-eyebrow{margin-bottom:21px;font-size:8px}.hero h1{letter-spacing:-3.5px;font-size:clamp(53px,11.5vw,72px);line-height:1.1}.hero-accent svg{height:12px;bottom:-6px}.hero-description{max-width:390px;margin-top:27px;font-size:13px;line-height:1.85}.hero-actions{gap:24px;margin-top:23px}.hero-actions .button{gap:18px;padding:14px 18px;font-size:11px}.hero-github{gap:7px;font-size:11px}.hero-note{margin-top:21px;font-size:9px}.hero-art{justify-self:center;width:calc(100% - 10px);height:343px;margin:37px 0 0}.code-window{width:91%;top:96px;left:4%}.code-body{padding-block:17px;font-size:clamp(8px,2.7vw,12px);line-height:1.7}.line-number{width:24px;margin-right:10px;font-size:8px}.window-bar{height:31px;font-size:8px}.editor-footer{font-size:7px}.code-spacer{height:11px}.orbit{width:230px;height:230px;top:62px;left:calc(50% - 115px)}.orbit-two{width:295px;height:295px;top:25px;left:calc(50% - 147px)}.symbol-braces{width:47px;height:47px;top:33px;left:22px}.cert-float{padding:10px;top:49px;right:-11px}.cert-float strong{font-size:10px}.cert-float div>span{font-size:8px}.cert-float-icon{width:31px;height:31px}.art-coordinate{font-size:6px}.art-footer{font-size:8px;bottom:19px;left:21px}.symbol-spark{width:32px;height:32px;bottom:23px;right:19px}.symbol-spark>svg{width:18px}.art-asterisk{font-size:46px;bottom:20px;left:-17px}.scroll-note{margin-top:28px;font-size:7px}.highlights{grid-template-columns:repeat(4,1fr);row-gap:20px;padding-block:19px}.highlight-intro{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:7px;display:flex}.highlight-intro>strong{margin:0;font-size:11px}.highlight-intro .eyebrow{font-size:6px}.snapshot-label{margin-top:0;margin-left:auto;font-size:6px}.stat{padding-left:15px}.stat:nth-child(2){border-left:none;padding-left:0}.stat>strong{font-size:28px}.stat>strong>span{font-size:21px}.stat-award>svg{width:19px}.stat>span{max-width:70px;font-size:7px;line-height:1.5}.section{padding-block:52px}.section-heading{margin-bottom:25px;display:block}.section-heading .eyebrow,.about-copy>.eyebrow{margin-bottom:13px;font-size:8px}.section-heading h2{font-size:30px;line-height:1.22}.section-heading>p{margin-top:13px;font-size:10px}.section-heading>p>br{display:none}.work-toolbar{margin-bottom:22px}.project-filters{gap:4px}.project-filters button{padding:8px 10px;font-size:9px}.projects-grid{grid-template-columns:1fr;gap:29px}.games-section{padding-block:52px}.games-grid{grid-template-columns:1fr;gap:21px}.game-video{aspect-ratio:16/10}.game-copy{padding:22px}.game-copy h3{font-size:27px}.game-copy>p:not(.game-tagline){font-size:11px}.games-note{align-items:flex-start;padding-inline:8px;font-size:8px;line-height:1.7}.games-note code{display:inline}.project-preview{height:260px}.mini-dashboard{width:87%;height:200px;transform:rotate(-3deg)}.mini-dashboard aside{width:87px}.mini-content{padding-inline:13px}.tutor-copy{padding-left:26px}.tutor-copy>strong{font-size:28px}.tutor-copy>span{max-width:none;font-size:6px}.tutor-books svg{width:21px;height:21px;padding:6px}.mini-phone{width:149px;top:22px;right:28px;transform:rotate(9deg)}.architecture{width:82%;transform:none}.service span:not(.service-dot){font-size:10px}.service small{font-size:6px}.garden-dashboard{width:86%;transform:rotate(3deg)}.garden-header>span{font-size:11px}.garden-greeting strong{font-size:23px}.project-meta{margin-top:16px;font-size:7px}.project-title-row h3{font-size:21px}.project-card>p{margin-top:6px;font-size:11px}.tag-list{gap:6px;margin-top:11px}.tag-list>span{font-size:8px}.preview-note{font-size:6px}.preview-open{opacity:1;width:28px;height:28px;top:12px;right:12px;transform:none}.preview-open>svg{width:18px}.more-projects{gap:15px;margin-top:28px}.more-projects .button,.more-projects .text-link{font-size:10px}.about-section{padding-block:43px}.about-grid{grid-template-columns:1fr;gap:30px}.about-visual{justify-self:center;width:min(100%,345px);padding:23px}.about-topline{font-size:6px}.profile-art{height:227px}.profile-art img{width:140px;height:140px}.profile-ring{width:205px;height:205px;top:10px}.profile-orbit-icon{right:12px}.profile-label{bottom:16px}.about-visual-bottom strong{font-size:28px}.about-copy h2{font-size:31px}.about-copy>p{font-size:12px}.about-values{gap:14px}.about-values span{font-size:8px}.about-values>span>svg{width:16px}.skills-grid{gap:12px}.skill-card{padding:17px 13px}.skill-icon{padding:7px}.skill-icon>svg{width:21px;height:21px}.skill-card h3{margin-top:16px;font-size:13px}.skill-card>p{min-height:24px;font-size:8px}.skill-tags{gap:5px;margin-top:14px}.skill-tags>span{padding:5px 6px;font-size:8px}.toolkit-note{text-align:left;align-items:flex-start;margin-top:17px;font-size:8px;line-height:1.7}.toolkit-note>svg{width:13px;margin-top:2px}.mobile-break{display:block}.credentials-section{padding-block:44px}.credential-layout{grid-template-columns:1fr;gap:28px}.credential-card{padding:24px}.google-wordmark{font-size:24px}.verified-badge{font-size:7px}.credential-award{margin-block:29px 25px}.credential-card h3{font-size:31px}.credential-card>p{max-width:none;font-size:11px}.credential-recipient strong{font-size:12px}.credential-details{font-size:8px}.credential-card .button{padding-block:14px;font-size:11px}.course-list-heading{flex-wrap:nowrap}.course-list-heading>h3{font-size:14px}.course-list-heading>span{font-size:8px}.course-row{gap:13px;padding-block:17px}.course-name{font-size:11px}.course-name>small{font-size:8px}.course-number{width:26px;height:26px;font-size:8px}.credential-footnote{font-size:8px}.github-section{grid-template-columns:1fr;gap:30px}.github-intro h2{font-size:32px}.github-intro p{max-width:none;font-size:12px}.github-panel-heading{padding:19px}.github-panel-heading strong{font-size:13px}.github-panel-heading strong>span{font-size:8px}.github-panel-heading>div{gap:9px}.github-status{padding:5px 6px;font-size:6px}.github-panel-label{padding-left:19px;font-size:7px}.repo-row{margin-inline:19px}.repo-row strong{font-size:12px}.repo-row small{font-size:8px}.github-panel-footer{padding-inline:19px;font-size:7px}.contact-section{border-radius:10px;padding:39px 18px 28px}.contact-section>.eyebrow{letter-spacing:.9px;gap:5px;font-size:6px}.contact-section h2{letter-spacing:-1.4px;margin-top:24px;font-size:36px;line-height:1.17}.contact-section>p{margin-top:16px;font-size:10px}.contact-decoration{opacity:.7;font-size:57px;top:40px;right:-13px}.contact-actions{gap:8px;margin-top:22px}.contact-actions .button{gap:11px;padding:12px;font-size:9px}.contact-actions .button-light{gap:6px}.contact-actions svg{width:14px}.email-link{margin-top:16px;font-size:8px}.footer{flex-wrap:wrap;gap:16px 10px;padding-block:25px}.footer-brand{gap:8px}.footer-brand>span:last-child{font-size:7px}.footer>span{text-align:center;flex-basis:100%;order:3;font-size:7px}.footer-links{gap:7px}.footer-links svg{width:16px}.footer-links a{padding:4px}.footer-links a:last-child{padding-left:10px}.dialog-content{padding:30px 23px}.dialog-content h2{font-size:29px}.dialog-subtitle,.dialog-content h3+p{font-size:12px}.dialog-links{flex-direction:column}.dialog-links .button{justify-content:space-between}.project-highlights li{font-size:11px}}@media (width<=370px){.container{width:calc(100% - 32px)}.brand-name{font-size:15px}.header-inner{gap:9px}.header-contact{gap:5px;font-size:9px}.hero-art{height:310px}.code-window{top:91px}.code-body{font-size:8px}.art-footer{font-size:6px}.hero-note{font-size:8px}.stat{padding-left:9px}.stat>strong{font-size:24px}.stat>span{font-size:6px}.snapshot-label{width:100%;margin-left:0}.project-filters button{padding-inline:8px;font-size:8px}.project-preview{height:237px}.mini-dashboard{width:93%;transform:scale(.94)rotate(-3deg)}.mini-dashboard aside{width:77px}.mini-content{padding-inline:9px}.mini-phone{right:12px;transform:scale(.9)rotate(9deg)}.tutor-copy{padding-left:19px}.tutor-copy>strong{font-size:25px}.tutor-copy>span{letter-spacing:0;font-size:5px}.tutor-books{gap:6px}.tutor-books svg{width:17px;height:17px}.garden-dashboard{width:92%;transform:scale(.95)rotate(3deg)}.garden-body{gap:7px}.garden-greeting strong{font-size:20px}.architecture{width:90%}.service-row .service{padding-inline:6px}.service span:not(.service-dot){font-size:9px}.service small{font-size:5px}.credential-details{font-size:7px}.contact-section h2{font-size:31px}.contact-actions .button{padding-inline:9px;font-size:8px}.contact-actions svg{width:12px}.course-list-heading h3{font-size:12px}.course-list-heading>span,.endpoint code{font-size:7px}.word-one{font-size:24px}.footer-brand>span:last-child{font-size:6px}.footer-links{gap:4px}}.section-heading>p,.project-card>p,.about-copy>p,.credential-card>p,.github-intro p,.contact-section>p,.dialog-content h3+p,.project-highlights li{color:var(--muted);font-size:13px;line-height:1.85}.skill-card>p,.skill-tags>span,.tag-list>span,.course-name>small,.repo-row small,.credential-details,.credential-footnote,.toolkit-note,.github-panel-footer,.snapshot-label,.stat>span{color:var(--muted);font-size:10px}.course-name,.repo-row strong{font-size:12px}.section-index,.hero-note,.scroll-note,.work-caption,.project-meta,.project-meta>span:last-child,.about-topline,.skill-card-top>span:last-child,.verified-badge,.credential-card>.eyebrow,.credential-recipient span,.credential-recipient strong,.course-list-heading>span,.course-number,.github-intro>.eyebrow,.github-panel-heading strong>span,.github-status,.github-panel-label,.contact-section>.eyebrow,.contact-actions .button-light,.email-link,.footer-brand>span:last-child,.footer>span,.footer-links,.preview-disclaimer,.dialog-subtitle,.dialog-content>.eyebrow{color:var(--muted)}.github-status.is-live{color:#48694d}.page-intro{border-bottom:1px solid var(--border);padding-block:88px 62px}.page-intro>.eyebrow{color:var(--muted);margin-bottom:30px}.page-intro-grid{grid-template-columns:1.2fr .8fr;align-items:end;gap:70px;display:grid}.page-intro h1{font-size:clamp(50px,6vw,78px);line-height:1.05}.page-intro-grid>p{max-width:440px;color:var(--muted);padding-bottom:8px;font-size:15px;line-height:1.9}.page-detail-strip{border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.page-detail-strip>div{border-left:1px solid var(--border);padding:29px 28px}.page-detail-strip>div:last-child{border-right:1px solid var(--border)}.page-detail-strip strong,.page-detail-strip span{display:block}.page-detail-strip strong{margin-bottom:8px;font-size:12px}.page-detail-strip span{color:var(--muted);font-size:10px;line-height:1.6}.page-section{padding-top:74px}.page-directory{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:46px;display:grid}.page-directory-card{border:1px solid var(--border);background:#fffefa;border-radius:9px;min-height:240px;padding:27px;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative}.page-directory-card:hover{border-color:#cfc2df;transform:translateY(-5px);box-shadow:0 14px 30px #4f3b690c}.page-directory-card>span{color:#988ca0;letter-spacing:1px;font-size:9px}.page-directory-card>svg:first-of-type{color:var(--purple);margin:45px 0 17px;display:block}.page-directory-card h3{font-family:Manrope Variable,sans-serif;font-size:18px}.page-directory-card p{color:var(--muted);max-width:230px;margin-top:8px;font-size:11px;line-height:1.7}.page-directory-card>svg:last-child{position:absolute;top:24px;right:24px}.page-contact{margin-top:90px}.about-details,.principles-grid,.credential-outcomes{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.about-details article,.principles-grid article,.credential-outcomes article{border:1px solid var(--border);background:#fffefa;border-radius:8px;padding:29px}.about-details h3,.principles-grid h3,.credential-outcomes h3{margin:24px 0 9px;font-size:15px}.about-details p,.principles-grid p,.credential-outcomes p{color:var(--muted);font-size:11px;line-height:1.75}.page-about{margin-top:0}.about-details{padding-top:4px}.about-details article>span,.principles-grid article>svg{width:42px;height:42px;color:var(--purple);background:#eee8f7;border-radius:50%;place-content:center;display:grid}.skills-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skills-page-grid .skill-card{min-height:100%}.skills-page-grid .technology-chip{border-radius:7px;gap:10px;padding:10px 12px;font-size:12px}.skills-page-grid .technology-chip svg{width:32px;height:32px}.skill-card-detailed .skill-detail{border-top:1px solid var(--border);color:var(--muted);margin-top:22px;padding-top:18px;font-size:10px;line-height:1.75}.skills-principles{background:#f3f0f7;border-block:1px solid #e8e1ee;padding-block:80px}.principles-grid{margin-top:40px}.credentials-page{margin-top:0}.credential-outcomes{margin-top:42px}.observatory-summary{padding-top:28px}.observatory-source{min-height:58px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;font-size:12px;display:flex}.observatory-source>span{align-items:center;gap:9px;display:flex}.observatory-source .status-dot.is-live{background:var(--purple);box-shadow:0 0 0 4px #eee8f7}.observatory-notice{color:var(--muted);background:#f3f0f7;border:1px solid #e4daef;border-radius:8px;margin-top:12px;padding:14px 18px;font-size:12px;line-height:1.7}.observatory-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px;display:grid}.observatory-metrics article{padding:26px}.observatory-metrics strong,.observatory-metrics span{display:block}.observatory-metrics strong{letter-spacing:-2px;margin-top:26px;font-family:Manrope Variable,sans-serif;font-size:clamp(38px,4vw,58px);font-weight:550}.observatory-metrics span{color:var(--muted);margin-top:12px;font-size:12px;line-height:1.6}.observatory-section{border-bottom:1px solid var(--border)}.observatory-heading>span,.weekly-heading>span{color:var(--muted);font-size:11px;line-height:1.6}.observatory-panel{border:1px solid var(--border);background:#fffdfb;border-radius:10px;padding:30px}.language-stack{background:#f1ecf5;border-radius:6px;gap:2px;height:18px;display:flex;overflow:hidden}.language-stack>span{min-width:3px}.language-legend{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px;display:grid}.language-legend>div{background:#f7f4f8;border:1px solid #e9e4eb;border-radius:8px;grid-template-columns:9px 1fr;gap:5px 10px;padding:18px;display:grid}.language-swatch{border-radius:50%;grid-row:span 2;width:8px;height:8px;margin-top:3px}.language-legend strong{overflow-wrap:anywhere;font-size:13px}.language-legend div>span:last-child{color:var(--muted);font-size:11px}.observatory-empty{text-align:center;min-height:130px;color:var(--muted);background:#f7f4f8;border:1px dashed #d9cde2;border-radius:10px;place-content:center;padding:24px;font-size:13px;line-height:1.8;display:grid}.activity-scroll,.weekly-scroll{scrollbar-width:thin;scrollbar-color:#c1b1d5 transparent;overflow-x:auto}.activity-calendar{grid-template-columns:repeat(53,minmax(13px,1fr));gap:5px;min-width:949px;padding-block:3px;display:grid}.activity-week{grid-template-rows:repeat(7,13px);gap:5px;display:grid}.activity-cell{background:#f1ecf5;border-radius:2px}.calendar-source{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px;font-size:12px;line-height:1.7;display:flex}.observatory-panel>.observatory-notice{margin-bottom:24px}.activity-legend{color:var(--muted);justify-content:flex-end;align-items:center;gap:5px;margin-top:18px;font-size:11px;display:flex}.activity-legend i{width:13px;height:13px}.activity-legend span{margin-inline:4px}.contribution-data{border-top:1px solid var(--border);color:var(--muted);margin-top:28px;font-size:12px}.contribution-data summary{cursor:pointer;padding-block:20px;font-weight:600}.contribution-table-scroll{max-height:320px;overflow:auto}.contribution-data table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%}.contribution-data caption{text-align:left;padding-bottom:16px}.contribution-data th,.contribution-data td{border-bottom:1px solid var(--border);padding:10px}.contribution-data thead{background:#f3f0f7}.activity-cell.level-1{background:#e0d4ef}.activity-cell.level-2{background:#bca5d9}.activity-cell.level-3{background:#9678c3}.activity-cell.level-4{background:var(--purple)}.activity-dates{min-width:949px;color:var(--muted);justify-content:space-between;margin-top:12px;font-family:monospace;font-size:9px;display:flex}.weekly-heading{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;margin-top:48px;padding-top:27px;display:flex}.weekly-heading h3{align-items:center;gap:10px;font-size:20px;font-weight:550;display:flex}.weekly-heading h3>svg{color:var(--purple)}.weekly-chart{border-bottom:1px solid var(--border);align-items:end;gap:5px;min-width:949px;height:195px;margin-top:28px;display:flex}.weekly-column{flex:1;align-items:end;height:100%;display:flex}.weekly-column i{background:linear-gradient(to top, var(--purple), #bca5d9);border-radius:2px 2px 0 0;width:100%}.observatory-repositories{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.observatory-repo{padding:27px 24px}.observatory-repo>div{align-items:center;gap:8px;display:flex}.observatory-repo>div:first-child{color:var(--purple)}.observatory-repo strong{color:var(--ink);overflow-wrap:anywhere;font-size:14px}.observatory-repo p{min-height:42px;color:var(--muted);margin:13px 0 20px;font-size:13px;line-height:1.7}.observatory-repo>div:last-child{color:var(--muted);flex-wrap:wrap;font-size:11px}.observatory-repo>div:last-child span{align-items:center;gap:4px;display:flex}.observatory-repo>div:last-child>svg:last-child{margin-left:auto}.observatory-method{background:#f3f0f7;border:1px solid #e4daef;border-radius:10px;margin-block:45px 90px;padding:0 26px}.observatory-method summary{cursor:pointer;padding-block:22px;font-size:12px;font-weight:600}.observatory-method>div{max-width:780px;padding-bottom:25px}.observatory-method p{color:var(--muted);margin-bottom:10px;font-size:13px;line-height:1.8}@media (width<=1050px){.header-inner{gap:18px}.navigation{gap:18px;margin-left:0}.observatory-metrics{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.header-contact{display:none}.page-intro-grid{grid-template-columns:1fr;gap:25px}.page-directory,.language-legend{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.page-intro{padding-block:60px 42px}.page-intro h1{letter-spacing:-2.6px;font-size:43px}.page-intro-grid>p{font-size:13px}.page-detail-strip,.page-directory,.skills-page-grid,.about-details,.principles-grid,.credential-outcomes{grid-template-columns:1fr}.page-detail-strip>div,.page-detail-strip>div:last-child{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.page-directory-card{min-height:205px}.observatory-metrics article{min-height:150px;padding:25px 17px}.observatory-metrics strong{margin-top:18px;font-size:36px}.observatory-metrics span{margin-top:12px;font-size:11px}.observatory-section{padding-block:54px}.observatory-heading{align-items:flex-start;gap:18px}.language-legend,.observatory-repositories{grid-template-columns:1fr}.observatory-panel{padding:18px}.observatory-heading{flex-wrap:wrap}.observatory-heading>span{text-align:left;max-width:none}.weekly-heading{align-items:flex-start}.weekly-heading>span{text-align:right;max-width:95px}}
