:root{--sans: "Instrument Sans", -apple-system, "Segoe UI", sans-serif;--serif: "Instrument Serif", Georgia, serif;--mono: "JetBrains Mono", ui-monospace, monospace}:root,:root[data-theme=dark]{--bg: #131313;--bg-raised: #1b1b1b;--text: #eaeaea;--text-soft: #9a9a9a;--text-faint: #666;--border: #262626;color-scheme:dark}:root[data-theme=light]{--bg: #fcfcfc;--bg-raised: #f1f1f0;--text: #1a1a1a;--text-soft: #666;--text-faint: #999;--border: #e6e6e4;color-scheme:light}*{margin:0;padding:0;box-sizing:border-box}html{scrollbar-width:none;overflow-x:clip}html::-webkit-scrollbar{display:none}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}@supports (view-transition-name: root){::view-transition-old(root){animation:none}::view-transition-new(root){animation:theme-slash-reveal .95s cubic-bezier(.65,0,.35,1)}}@keyframes theme-slash-reveal{0%{clip-path:polygon(-45% -20%,-15% -20%,-60% 120%,-90% 120%)}to{clip-path:polygon(-45% -20%,145% -20%,110% 120%,-90% 120%)}}.theme-sword-glint{position:fixed;top:-20%;left:-10%;z-index:99999;width:8px;height:140%;pointer-events:none;transform:rotate(12deg);background:linear-gradient(transparent,rgba(255,255,255,.95) 45% 55%,transparent);box-shadow:0 0 20px 4px #ffffffa6,0 0 44px 12px #ffffff4d;opacity:0}.theme-sword-glint.is-slicing{animation:sword-glint-slice .95s cubic-bezier(.65,0,.35,1) forwards}@keyframes sword-glint-slice{0%{left:-10%;opacity:0}12%{opacity:1}85%{opacity:1}to{left:110%;opacity:0}}@media(prefers-reduced-motion:reduce){.theme-sword-glint{display:none}::view-transition-new(root){animation:none}}body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.7;transition:background .3s ease,color .3s ease;overflow-x:clip}.page{max-width:600px;margin:0 auto;padding:16px 24px 48px;min-width:0}.topnav{display:none}.topnav-inner{display:flex;align-items:center;gap:24px}.topnav-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-weight:700;letter-spacing:-.01em}.topnav-logo{width:30px;height:30px;border-radius:8px;object-fit:cover}.topnav-links{display:flex;align-items:center;gap:26px;margin-left:42px}.topnav-links a{font-size:14px;color:var(--text-soft);text-decoration:none;transition:color .15s}.topnav-links a:hover{color:var(--text)}.topnav-actions{display:flex;align-items:center;gap:14px;margin-left:auto}.topnav-cta{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;font-weight:500;color:var(--bg);background:var(--text);border:1px solid var(--text);border-radius:999px;padding:7px 16px;text-decoration:none;white-space:nowrap;transition:opacity .15s,transform .2s}.topnav-cta:hover{opacity:.88;transform:translateY(-1px)}@media(min-width:900px){.page{max-width:1080px;padding:0 40px 96px}.topnav{display:block;position:sticky;top:0;z-index:40;margin:0 -40px 8px;padding:16px 40px;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--border)}.topnav-inner{max-width:1080px;margin:0 auto}.page .hero-head,.page .hero>.hero-body{display:none}.hero{padding-top:20px;padding-bottom:8px}.page .hero-editorial-grid{display:grid;grid-template-columns:240px minmax(0,1fr) 320px;gap:48px;align-items:start}.hero-rail{border-right:1px solid var(--border);padding-right:24px;position:sticky;top:88px}.hero-rail-head{padding-bottom:22px;border-bottom:1px solid var(--border)}.hero-rail-date{font-size:12px;color:var(--text-faint)}.hero-rail-title{margin-top:12px;font-family:var(--sans);font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--text)}.hero-rail-list{list-style:none}.hero-rail-block{padding:22px 0;border-bottom:1px solid var(--border)}.hero-rail-tag{display:flex;align-items:center;justify-content:space-between;font-size:13.5px;font-weight:600;color:var(--text)}.hero-rail-dot{width:7px;height:7px;border-radius:50%;background:var(--text);flex-shrink:0}.hero-rail-line{margin-top:8px;font-size:13px;line-height:1.5;color:var(--text-soft)}.hero-rail-link{display:inline-block;margin-top:12px;font-size:13px;font-weight:500;color:#3b82f6;text-decoration:none}.hero-rail-link:hover{text-decoration:underline;text-underline-offset:3px}.hero-kicker{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint)}.hero-headline{margin-top:18px;font-family:var(--sans);font-size:46px;line-height:1.08;letter-spacing:-.02em}.hero-headline .hl-bold{font-weight:800;color:var(--text)}.hero-headline .hl-light{font-weight:400;color:var(--text-soft)}.hero-bio{margin-top:34px;max-width:60ch}.hero-bio p{font-size:15.5px;line-height:1.75;color:var(--text-soft)}.hero-bio p+p{margin-top:18px}.hero-bio .fancy{font-family:var(--sans);color:var(--text);text-underline-offset:4px}.hero-bio .social-pill{font-family:var(--sans);font-size:13.5px;vertical-align:1px}.hero-bio-lead{font-size:17px!important;line-height:1.7!important;color:var(--text)!important}.hero-frame{position:sticky;top:88px}.hero-frame-inner{position:relative;padding:10px}.hero-frame-inner img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;background:var(--bg-raised)}.corner{position:absolute;width:22px;height:22px;border:2px solid var(--text);z-index:2}.corner.tl{top:0;left:0;border-right:0;border-bottom:0}.corner.tr{top:0;right:0;border-left:0;border-bottom:0}.corner.bl{bottom:0;left:0;border-right:0;border-top:0}.corner.br{bottom:0;right:0;border-left:0;border-top:0}.hero-frame-name,.hero-frame-year{position:absolute;bottom:20px;font-size:11.5px;padding:4px 8px;background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--text);border-radius:4px;z-index:2}.hero-frame-name{left:20px}.hero-frame-year{right:20px;font-family:var(--mono)}.hero-frame-caption{display:flex;justify-content:space-between;margin-top:12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.divider{margin:88px 0}.section-label{font-size:12px}.section-head{margin-bottom:32px}.see-all{font-size:14px}.journey-item{padding:14px 0;border-bottom:1px solid var(--border)}.journey-item:first-child{border-top:1px solid var(--border)}.journey-main h3{font-size:18px}.org-link{font-size:15px}.journey-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px}.journey-stat{padding:20px 22px}.journey-stat-value{font-size:34px}.journey-graph{padding-left:38px}.journey-node{padding-bottom:30px}.journey-node-head h3{font-size:18px}.works-grid{grid-template-columns:1fr 1fr;gap:48px 40px}.work-card h3{font-size:18px;margin-top:18px}.work-tagline{font-size:14.5px;margin-top:4px}.templates-carousel{max-width:720px;margin:0 auto}.section#about .section-label,.section#about h2.section-label{font-size:12px}#about>p,.section[aria-label="Interested about me?"]>p{font-size:20px;line-height:1.65;max-width:720px}.more-link{font-size:16px;margin-top:22px}.page .about-columns{grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;padding-top:48px}.page .about-col{padding:0 40px;border-left:1px solid var(--border)}.page .about-col:first-child{padding-left:0;border-left:0}.page .about-col:last-child{padding-right:0}.page .about-col-title{font-size:27px;margin-bottom:20px}.cert-grid{gap:32px}.cert-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding-top:32px}.cert-card h3{font-size:22px}.cert-description,.cert-recipient{font-size:14.5px}.page-title{font-size:52px;margin:24px 0 44px}.subpage{padding-top:48px}.about-page p{font-size:18px}.footer{margin-top:96px;padding-top:40px}.footer-top{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:64px}.footer-brand span{font-size:15px}.footer-cols{grid-template-columns:repeat(3,minmax(120px,auto));gap:56px}.footer-bottom{margin-top:48px}}.divider{border:none;border-top:1px solid var(--border);margin:64px 0}a{color:inherit}.hero{position:relative}.hero-editorial-grid{display:none}.hero-head{display:flex;align-items:flex-start;gap:14px}.hero-avatar{width:48px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0}.hero-id{flex:1;min-width:0}.hero-name{font-family:var(--sans);font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.3;display:flex;align-items:center;gap:6px;overflow-wrap:anywhere}.verified{display:inline-flex;cursor:default}.hero-location{display:flex;align-items:center;gap:4px;color:var(--text-soft);font-size:12.5px;line-height:1.5;margin-top:1px}.hero-role{color:var(--text);font-size:14px;line-height:1.5}.hero-side{display:flex;align-items:center;gap:12px;margin-left:auto;margin-top:4px}.theme-toggle{width:32px;height:32px;border:none;background:transparent;color:var(--text-soft);cursor:pointer;display:grid;place-items:center;transition:color .2s,transform .3s ease}.theme-toggle:hover{color:var(--text);transform:rotate(30deg)}.subpage{padding-top:8px}.back-link{display:inline-block;font-size:13.5px;color:var(--text-soft);text-decoration:none;transition:color .15s}.back-link:hover{color:var(--text)}.back-link .arrow{font-size:.9em}.page-title{font-family:var(--serif);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:1.2;margin:14px 0 30px}.page-sub{color:var(--text-soft);font-size:14.5px;margin:-16px 0 28px}.about-page p{color:var(--text-soft);font-size:16px}.about-page p+p{margin-top:16px}.about-socials{list-style:none;margin-top:14px}.about-socials li{display:flex;align-items:baseline;gap:10px;padding:7px 0;border-top:1px solid var(--border)}.about-socials li:last-child{border-bottom:1px solid var(--border)}.about-social-handle{font-family:var(--mono);font-size:11.5px;color:var(--text-faint)}.hero-body{margin-top:28px}.hero-body p,.about-section p{font-size:16px;color:var(--text-soft)}.fancy-wrap{position:relative;display:inline-block}.fancy{font:inherit;background:none;border:none;padding:0;color:var(--text);cursor:pointer;text-decoration:underline dashed;text-decoration-color:var(--text-faint);text-underline-offset:5px;text-decoration-thickness:1px;transition:color .15s}.fancy:hover{text-decoration-style:solid;text-decoration-color:var(--text)}.fancy-alt{display:inline-block}.fancy{position:relative}.fancy-base{transition:opacity .18s ease}.fancy-swap{position:absolute;left:0;top:0;white-space:nowrap;transition:opacity .18s ease;pointer-events:none}@media(prefers-reduced-motion:reduce){.fancy-base,.fancy-swap{transition:none}}.tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:var(--text);color:var(--bg);font-family:var(--mono);font-size:11.5px;white-space:nowrap;padding:5px 10px;border-radius:7px;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:5}.fancy-wrap:hover .tooltip{opacity:1;transform:translate(-50%) translateY(0)}.social-pill{position:relative;display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:999px;padding:2px 11px 3px;font-size:13.5px;font-weight:600;text-decoration:none;white-space:nowrap;vertical-align:1px;transition:transform .2s}.social-pill:hover{transform:translateY(-1px)}.social-github{background:#fff;color:#111}:root[data-theme=dark] .social-github,:root[data-theme=dark] .social-linkedin{background:transparent}:root[data-theme=dark] .social-github{color:var(--text)}:root[data-theme=dark] .social-linkedin{color:#70b7ff}.social-threads{background:#000;border-color:#3a3a3a;color:#fff}.social-linkedin{background:#fff;color:#0a66c2}.social-pill:hover .tooltip-card{opacity:1;transform:translate(-50%) translateY(0)}.tooltip-card{background:#fff;color:#111;border:1px solid var(--border);box-shadow:0 6px 20px var(--shadow);white-space:normal;width:max-content;max-width:250px;padding:10px 13px;border-radius:10px;text-align:left;font-family:var(--sans);font-size:12.5px}.tooltip-card strong{display:block;font-weight:600;color:#111}.tooltip-card .tt-label{display:block;font-size:10.5px;color:#8a8a8a;margin-top:1px}.tooltip-card .tt-blurb{display:block;font-size:11px;line-height:1.5;color:#555;margin-top:7px}.inline-link{color:var(--text);text-decoration:underline;text-decoration-color:var(--text-faint);text-underline-offset:4px;transition:text-decoration-color .15s}.inline-link:hover{text-decoration-color:var(--text)}.arrow{font-size:.85em}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px}.section-label{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.see-all{font-size:13px;color:var(--text-soft);text-decoration:none;transition:color .15s}.see-all:hover{color:var(--text)}.journey-list{list-style:none}.journey-item{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0}.journey-main h3{font-size:16px;font-weight:500;line-height:1.5;display:inline}.org-link{margin-left:10px;font-size:14px;color:var(--text-soft);text-decoration:none}a.org-link:hover{color:var(--text)}a.org-link .arrow{font-size:.75em}.period{font-family:var(--mono);font-size:11.5px;color:var(--text-faint);white-space:nowrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modal-fade .2s ease}.modal-card{position:relative;width:100%;max-width:560px;background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:36px 32px 32px;box-shadow:0 24px 70px #00000073;animation:modal-pop .28s cubic-bezier(.34,1.56,.64,1)}.modal-close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:none;background:transparent;color:var(--text-soft);font-size:24px;line-height:1;cursor:pointer;border-radius:8px;transition:color .15s,background .15s}.modal-close:hover{color:var(--text);background:var(--bg-raised)}.modal-title{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-.01em;color:var(--text);margin-bottom:16px}.modal-body{font-size:16px;line-height:1.75;color:var(--text-soft)}.modal-body .fancy{color:var(--text)}.modal-cta{display:inline-block;margin-top:24px;font-weight:500;font-size:15px;color:var(--bg);background:var(--text);border-radius:999px;padding:10px 20px;text-decoration:none;transition:opacity .15s,transform .2s}.modal-cta:hover{opacity:.88;transform:translateY(-1px)}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.modal-backdrop,.modal-card{animation:none}}.journey-dash{margin-top:4px}.journey-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px}.journey-stat{border:1px solid var(--border);border-radius:12px;background:var(--bg-raised);padding:16px 18px;opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.journey-dash.is-live .journey-stat{opacity:1;transform:none}.journey-stat:nth-child(2){transition-delay:.06s}.journey-stat:nth-child(3){transition-delay:.12s}.journey-stat:nth-child(4){transition-delay:.18s}.journey-stat-value{display:block;font-family:var(--sans);font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1;color:var(--text)}.journey-stat-label{display:block;margin-top:6px;font-size:12px;color:var(--text-soft)}.journey-graph{list-style:none;position:relative;padding-left:30px}.journey-spine{position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--text),var(--text-faint));transform:scaleY(0);transform-origin:top;transition:transform .9s cubic-bezier(.22,.61,.36,1)}.journey-dash.is-live .journey-spine{transform:scaleY(1)}.journey-node{position:relative;padding:0 0 26px}.journey-node:last-child{padding-bottom:0}.journey-dot{position:absolute;left:-30px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--bg);border:2px solid var(--text);transform:scale(0);transition:transform .4s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(.25s + var(--i) * .12s);z-index:1}.journey-dash.is-live .journey-dot{transform:scale(1)}.journey-node-body{display:block;width:100%;text-align:left;font:inherit;color:inherit;background:transparent;border:1px solid transparent;border-radius:12px;padding:10px 14px;margin:-10px -14px;cursor:pointer;opacity:0;transform:translate(8px);transition:opacity .5s ease,transform .5s ease,background .2s ease,border-color .2s ease;transition-delay:calc(.3s + var(--i) * .12s)}.journey-dash.is-live .journey-node-body{opacity:1;transform:none}.journey-node-body:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}.journey-node.is-active .journey-node-body{background:var(--bg-raised);border-color:var(--border)}.journey-node.is-active .journey-dot{background:var(--text);box-shadow:0 0 0 4px color-mix(in srgb,var(--text) 18%,transparent)}.journey-detail{max-height:0;overflow:hidden;opacity:0;margin-top:0;font-size:13.5px;line-height:1.6;color:var(--text-soft);transition:max-height .35s ease,opacity .3s ease,margin-top .3s ease}.journey-node.is-active .journey-detail{max-height:120px;opacity:1;margin-top:12px}.journey-bar-track{position:relative}.journey-bar-pct{position:absolute;right:0;top:-20px;font-family:var(--mono);font-size:10.5px;color:var(--text-faint);opacity:0;transition:opacity .2s ease}.journey-node-body:hover .journey-bar-pct,.journey-node.is-active .journey-bar-pct{opacity:1}.journey-node-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.journey-node-head h3{font-size:16px;font-weight:600;line-height:1.4}.journey-kind{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft);border:1px solid var(--border);border-radius:999px;padding:3px 9px;white-space:nowrap}.journey-node-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-top:4px}.journey-node-meta .org-link{margin-left:0}.journey-period{font-family:var(--mono);font-size:11px;color:var(--text-faint)}.journey-bar-track{margin-top:12px;height:8px;border-radius:999px;background:var(--bg-raised);border:1px solid var(--border);overflow:hidden}.journey-bar-fill{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--text-faint),var(--text));transition:width 1s cubic-bezier(.22,.61,.36,1);transition-delay:calc(.4s + var(--i, 0) * .12s)}.journey-dash.is-live .journey-bar-fill{width:var(--level)}@media(prefers-reduced-motion:reduce){.journey-stat,.journey-node-body{opacity:1;transform:none;transition:none}.journey-spine{transform:scaleY(1);transition:none}.journey-dot{transform:scale(1);transition:none}.journey-bar-fill{transition:none;width:var(--level)}}.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 20px}.work-preview-link{display:block;text-decoration:none}.work-preview{display:block;width:100%;aspect-ratio:16 / 9;object-fit:contain;background:var(--bg-raised);border:1px solid var(--border);transition:border-color .2s}.work-preview-link:hover .work-preview{border-color:var(--text-faint)}.work-card h3{margin-top:14px;font-size:16px;font-weight:500}.work-tagline{font-size:13.5px;color:var(--text-soft)}.work-domain{font-family:var(--mono);font-size:11px;color:var(--text-faint)}@media(prefers-reduced-motion:no-preference){.scroll-reveal{opacity:0;transform:translateY(28px) scale(.97);filter:blur(4px)}.scroll-reveal.is-visible{animation:scroll-reveal .7s cubic-bezier(.2,.75,.2,1) var(--reveal-delay) both}@keyframes scroll-reveal{to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.project-card .work-preview-link{overflow:hidden}.project-card .work-preview{transition:transform .45s ease,border-color .2s ease}.project-card .work-preview-link:hover .work-preview,.project-card .work-preview-link:focus-visible .work-preview{transform:scale(1.035)}}.templates-viewport{overflow:hidden}.templates-track{display:flex;transition:transform .5s ease}.template-slide{flex:0 0 100%;min-width:0}.templates-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:18px}.template-arrow{width:40px;height:40px;border:1px solid var(--border);border-radius:50%;background:var(--bg-raised);color:var(--text);cursor:pointer}.template-arrow:hover{border-color:var(--text-faint)}.template-position{display:flex;flex-direction:column;align-items:center;gap:4px}.template-count{font-family:var(--mono);font-size:11px;color:var(--text-soft)}.template-dots{display:flex;align-items:center;gap:2px}.template-dot{width:26px;height:26px;border:0;background:none;cursor:pointer}.template-dot:after{content:"";display:block;width:10px;height:10px;margin:auto;border-radius:50%;border:1px solid var(--text-faint);background:transparent}.template-dot.is-active:after{background:var(--text);border-color:var(--text)}.template-dot:hover:after{border-color:var(--text)}@media(prefers-reduced-motion:reduce){.templates-track{transition:none}}.more-link{display:inline-block;margin-top:16px;font-weight:500;font-size:14.5px;color:var(--text);text-decoration:none}.more-link:hover{text-decoration:underline;text-underline-offset:4px}.about-columns{display:grid;grid-template-columns:1fr;gap:32px;margin-top:48px;border-top:1px solid var(--border);padding-top:40px}.about-col-title{font-family:var(--serif);font-size:24px;font-weight:400;letter-spacing:-.01em;color:var(--text);margin-bottom:16px}.about-col p{font-size:14.5px;line-height:1.7;color:var(--text-soft)}.about-col p+p{margin-top:14px}.cert-grid{display:grid;gap:20px}.cert-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:24px;align-items:start;border-top:1px solid var(--border);padding-top:18px}.cert-image-link{display:block;overflow:hidden;border:1px solid var(--border);border-radius:8px;transition:border-color .2s}.cert-image-link:hover{border-color:var(--text-faint)}.cert-image-link img{display:block;width:100%;height:auto;transition:transform .45s cubic-bezier(.2,.75,.2,1)}.cert-image-link:hover img{transform:scale(1.03)}.cert-type{font-family:var(--mono);font-size:11px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em}.cert-card h3{margin-top:8px;font-size:18px;font-weight:600;line-height:1.35}.cert-issuer{font-size:13.5px;color:var(--text-soft);margin-top:5px}.cert-description,.cert-recipient{margin-top:12px;font-size:13.5px;color:var(--text-soft)}.cert-meta{margin-top:5px;font-size:12px;color:var(--text-faint);overflow-wrap:anywhere}.cert-details>.inline-link{display:inline-block;margin-top:14px;font-size:13.5px}.footer{border-top:1px solid var(--border);margin-top:64px;padding-top:24px;font-size:13.5px;color:var(--text-soft)}.footer-top{display:flex;flex-direction:column;gap:24px}.footer-brand{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--text);text-decoration:none}.footer-logo{width:30px;height:30px;border-radius:8px;object-fit:cover}.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.footer-col{display:flex;flex-direction:column;gap:8px}.footer-col h4{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:2px}.footer-col a{color:var(--text-soft);text-decoration:none;transition:color .15s;width:fit-content}.footer-col a:hover{color:var(--text)}.footer-email{overflow-wrap:anywhere}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:32px;padding-top:20px;border-top:1px solid var(--border);font-size:12.5px;color:var(--text-faint)}.footer-loc{font-family:var(--mono);font-size:11.5px}.back-to-top{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:20;width:44px;height:44px;border:1px solid var(--border);border-radius:50%;background:var(--bg-raised);color:var(--text);font-size:22px;cursor:pointer;box-shadow:0 4px 16px #00000024}.back-to-top:hover{border-color:var(--text-faint)}@media(max-width:560px){.tooltip{max-width:calc(100vw - 48px)}.works-grid{grid-template-columns:1fr}.cert-card{grid-template-columns:1fr;gap:16px}.journey-item{flex-direction:column;gap:2px}}
