:root{--bg:#f6f5f1;--card:#fff;--ink:#16191d;--muted:#4a5059;--faint:#8a9099;--line:#e2e0d9;--line-card:#e8e6df;--accent:#1e6b4f;--accent-soft:#1e6b4f14;--panel:#10261d;--panel-line:#24463a;--panel-text:#d5e2db;--panel-accent:#8fd3b2;--disp:"Schibsted Grotesk",system-ui,sans-serif;--body:"Inter",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;--maxw:1120px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:76px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f5f1;background:var(--bg);color:#16191d;color:var(--ink);font-family:Inter,system-ui,sans-serif;font-family:var(--body);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{background:#1e6b4f;background:var(--accent);color:#fff}:focus-visible{border-radius:2px;outline:2px solid #1e6b4f;outline:2px solid var(--accent);outline-offset:3px}.wrap{margin:0 auto;max-width:1120px;max-width:var(--maxw);padding:0 32px}.eyebrow{align-items:center;color:#8a9099;color:var(--faint);display:flex;font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.72rem;gap:11px;letter-spacing:.16em;text-transform:uppercase}.actions a,.flinks a,.socials a{color:#1e6b4f;color:var(--accent);padding-bottom:3px;position:relative}.actions a:after,.flinks a:after,.socials a:after{background:currentColor;bottom:0;content:"";height:1px;left:0;position:absolute;transform-origin:right;transition:transform .45s ease;width:100%}.actions a:hover:after,.flinks a:hover:after,.socials a:hover:after{transform:scaleX(0)}.topbar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:color-mix(in srgb,#f6f5f1 86%,#0000);background:color-mix(in srgb,var(--bg) 86%,#0000);border-bottom:1px solid #e2e0d9;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60}.topbar .wrap{align-items:center;display:flex;height:60px;justify-content:space-between}.brand{font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp);font-size:1.02rem;font-weight:600;letter-spacing:-.01em}.brand .d{color:#1e6b4f;color:var(--accent)}.nav{align-items:center;color:#4a5059;color:var(--muted);display:flex;font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.76rem;gap:28px}.nav a{transition:color .15s}.nav a:hover{color:#1e6b4f;color:var(--accent)}@media (max-width:720px){.nav a:not(:last-child){display:none}}.hero{padding:104px 0 80px}.hero .eyebrow{margin-bottom:26px}.avail{color:#1e6b4f;color:var(--accent)}h1{font-size:clamp(3rem,9vw,6.4rem);font-weight:600;letter-spacing:-.035em;line-height:.98}.thesis,h1{font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp)}.thesis{font-size:clamp(1.4rem,3.2vw,2.15rem);font-weight:500;letter-spacing:-.015em;line-height:1.2;margin-top:28px;max-width:30ch}.thesis .hl{color:#1e6b4f;color:var(--accent)}.sub{color:#8a9099;color:var(--faint);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.8rem;letter-spacing:.04em;line-height:1.9;margin-top:24px}.sub em{color:#16191d;color:var(--ink);font-style:normal}.actions{display:flex;flex-wrap:wrap;font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.82rem;gap:34px;margin-top:36px}.sec{border-top:1px solid #e2e0d9;border-top:1px solid var(--line);padding:80px 0}.sechead{align-items:baseline;display:flex;gap:16px;margin-bottom:48px}.secno{color:#1e6b4f;color:var(--accent);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.82rem}.sechead h2{font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp);font-size:clamp(1.7rem,4vw,2.6rem);font-weight:600;letter-spacing:-.02em}.about-grid{grid-gap:56px;align-items:start;display:grid;gap:56px;grid-template-columns:280px 1fr}@media (max-width:760px){.about-grid{gap:32px;grid-template-columns:1fr}.photo{max-width:260px}}.photo{aspect-ratio:1;border:1px solid #e8e6df;border:1px solid var(--line-card);border-radius:6px;display:block;height:auto;object-fit:cover;width:100%}.about-txt p{color:#4a5059;color:var(--muted);font-size:1.08rem;margin-bottom:16px;max-width:64ch}.about-txt p b{color:#16191d;color:var(--ink);font-weight:600}.facts{grid-gap:0 40px;display:grid;font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.78rem;gap:0 40px;grid-template-columns:1fr 1fr;margin-top:26px}@media (max-width:520px){.facts{grid-template-columns:1fr}}.facts .row{border-bottom:1px solid #e2e0d9;border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;padding:11px 0}.facts .k{color:#8a9099;color:var(--faint)}.facts .v{color:#16191d;color:var(--ink);text-align:right}.facts .v.accent{color:#1e6b4f;color:var(--accent)}.stack{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.chip{background:#f6f5f1;background:var(--bg);border:1px solid #e8e6df;border:1px solid var(--line-card);border-radius:3px;color:#4a5059;color:var(--muted);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.72rem;padding:5px 9px;transition:color .15s,border-color .15s,background .15s}.chip:hover{background:#1e6b4f14;background:var(--accent-soft);border-color:#1e6b4f;border-color:var(--accent);color:#1e6b4f;color:var(--accent)}.flinks{display:flex;flex-wrap:wrap;font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.8rem;gap:30px}.feature{background:#10261d;background:var(--panel);border-radius:8px;color:#d5e2db;color:var(--panel-text);overflow:hidden;padding:48px;position:relative}.feature:after{background:radial-gradient(circle,#1e6b4f66,#0000 70%);border-radius:50%;content:"";height:360px;pointer-events:none;position:absolute;right:-120px;top:-120px;width:360px}.feature .tag{border:1px solid #24463a;border:1px solid var(--panel-line);border-radius:3px;color:#8fd3b2;color:var(--panel-accent);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.68rem;letter-spacing:.13em;padding:5px 10px;text-transform:uppercase}.feature h3{color:#fff;font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp);font-size:2.2rem;font-weight:600;letter-spacing:-.02em;margin:22px 0 4px}.feature .role{color:#9fb8ac;font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.8rem;margin-bottom:20px}.feature p{font-size:1.04rem;margin-bottom:14px;max-width:72ch}.feature .chip{background:#0000;border-color:#24463a;border-color:var(--panel-line);color:#d5e2db;color:var(--panel-text)}.feature .chip:hover{border-color:#8fd3b2;border-color:var(--panel-accent)}.feature .chip:hover,.feature .flinks a{color:#8fd3b2;color:var(--panel-accent)}@media (max-width:640px){.feature{padding:32px 26px}}.grid3{grid-gap:24px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.grid2,.grid3{display:grid;gap:24px}.grid2{grid-gap:24px;grid-template-columns:1fr 1fr}@media (max-width:960px){.grid3{grid-template-columns:1fr 1fr}}@media (max-width:760px){.grid2,.grid3{grid-template-columns:1fr}}.pcard{background:#fff;background:var(--card);border:1px solid #e8e6df;border:1px solid var(--line-card);border-radius:8px;display:flex;flex-direction:column;padding:30px;transition:transform .18s,box-shadow .18s}.pcard:hover{box-shadow:0 18px 40px -24px #16191d59;transform:translateY(-3px)}.pcard-media{aspect-ratio:16/10;background:#f6f5f1;background:var(--bg);border:1px solid #e8e6df;border:1px solid var(--line-card);border-radius:5px;margin-bottom:22px;object-fit:cover;object-position:top;width:100%}.kind{color:#1e6b4f;color:var(--accent);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.72rem;letter-spacing:.04em}.pcard h3{font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp);font-size:1.45rem;font-weight:600;letter-spacing:-.015em;margin:8px 0 12px}.pcard p{color:#4a5059;color:var(--muted);flex:1 1;font-size:.96rem}.pcard .stack{margin-bottom:6px}.pcard .flinks{margin-top:12px}.xp{border-top:1px solid #e2e0d9;border-top:1px solid var(--line)}.xp-row{grid-gap:24px;align-items:start;border-bottom:1px solid #e2e0d9;border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:44px 170px 1fr;padding:28px 8px;transition:background .15s}.xp-row:hover{background:#fff;background:var(--card)}@media (max-width:680px){.xp-row{gap:6px;grid-template-columns:1fr}}.xp-no{color:#1e6b4f;color:var(--accent);font-size:.82rem}.xp-no,.xp-when{font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono)}.xp-when{color:#8a9099;color:var(--faint);font-size:.8rem}.xp-main .role{font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp);font-size:1.2rem;font-weight:600;letter-spacing:-.01em}.xp-main .co{font-size:.98rem}.xp-main .co,.xp-main .desc{color:#4a5059;color:var(--muted)}.xp-main .desc{font-size:.95rem;margin-top:8px;max-width:80ch}.xp-main .stack{margin:14px 0 0}.skill-row{grid-gap:24px;align-items:center;border-bottom:1px solid #e2e0d9;border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:170px 1fr;padding:18px 0}.skill-row:first-child{border-top:1px solid #e2e0d9;border-top:1px solid var(--line)}.skill-row .stack{margin:0}.skill-group{color:#8a9099;color:var(--faint);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.8rem}@media (max-width:680px){.skill-row{gap:10px;grid-template-columns:1fr}}.contact{border-top:1px solid #e2e0d9;border-top:1px solid var(--line);padding:100px 0 72px;text-align:center}.contact .eyebrow{justify-content:center;margin-bottom:20px}.contact h2,.notfound h2{font-family:Schibsted Grotesk,system-ui,sans-serif;font-family:var(--disp);font-size:clamp(2.2rem,6vw,3.6rem);font-weight:600;letter-spacing:-.025em;margin-bottom:16px}.contact p{color:#4a5059;color:var(--muted);font-size:1.06rem;margin:0 auto 30px;max-width:56ch}.mail{border-bottom:1px solid #1e6b4f;border-bottom:1px solid var(--accent);color:#1e6b4f;color:var(--accent);font-size:1.05rem;padding-bottom:3px}.mail,.socials{font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono)}.socials{display:flex;flex-wrap:wrap;font-size:.82rem;gap:34px;justify-content:center;margin-top:36px}.notfound{min-height:60vh;padding:140px 0}.notfound .eyebrow{margin-bottom:20px}.notfound h2{margin-bottom:28px}footer{border-top:1px solid #e2e0d9;border-top:1px solid var(--line);color:#8a9099;color:var(--faint);font-family:IBM Plex Mono,ui-monospace,monospace;font-family:var(--mono);font-size:.72rem;padding:26px 0;text-align:center}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
/*# sourceMappingURL=main.19f5a516.css.map*/