:root{--canvas:#eef1f4;--surface:#fff;--ink:#0f1b2d;--ink-soft:#33405a;--muted:#566275;--line:#d5dbe3;--track:#e2e7ee;--select:#0a5fe6;--select-ink:#fff;--select-tint:rgba(10,95,230,.1);--redline:#d61f69;--block:#0f1b2d;--on-block:#f3f6fa;--on-block-muted:#a9b4c4;--font:"Schibsted Grotesk","Segoe UI",system-ui,-apple-system,sans-serif;--gutter:20px;--header-h:60px;color-scheme:light}@media(min-width:760px){:root{--gutter:40px}}@media(prefers-color-scheme:dark){:root{--canvas:#15181d;--surface:#1d2128;--ink:#e9edf2;--ink-soft:#c3cbd6;--muted:#9ba6b5;--line:#2e3540;--track:#262c35;--select:#5b9bff;--select-ink:#0b1220;--select-tint:rgba(91,155,255,.14);--redline:#ff6f9f;--block:#1d2128;--on-block:#f3f6fa;--on-block-muted:#a9b4c4;color-scheme:dark}}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:76px;scroll-padding-top:calc(var(--header-h) + 16px)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#eef1f4;background:var(--canvas);color:#0f1b2d;color:var(--ink);font-family:Schibsted Grotesk,Segoe UI,system-ui,-apple-system,sans-serif;font-family:var(--font);font-size:17px;line-height:1.55;overflow-x:hidden}body,dd,dl,figure,h1,h2,h3,ol,p,ul{margin:0}ol,ul{padding:0}a{color:inherit}button{font:inherit}::selection{background:#0a5fe6;background:var(--select);color:#fff;color:var(--select-ink)}:focus-visible{border-radius:2px;outline:2px solid #0a5fe6;outline:2px solid var(--select);outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{-webkit-animation-delay:0ms!important;animation-delay:0ms!important;-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.container{margin:0 auto;max-width:1200px;padding:0 var(--gutter);width:100%}.visually-hidden{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.skip-link{background:var(--ink);border-radius:6px;color:var(--canvas);font-weight:600;left:16px;padding:10px 14px;position:absolute;top:-60px;z-index:100}.skip-link:focus{top:12px}.btn{align-items:center;border:1.5px solid transparent;border-radius:6px;display:inline-flex;font-size:15px;font-weight:600;gap:8px;height:46px;padding:0 18px;text-decoration:none;transition:background-color .15s,border-color .15s;white-space:nowrap}.btn svg{flex-shrink:0;font-size:18px}.btn--small{font-size:14px;height:36px;padding:0 14px}.btn--primary{background:var(--select);color:var(--select-ink)}.btn--primary:hover{background:color-mix(in srgb,var(--select) 86%,var(--ink))}.btn--ink{background:var(--ink);color:var(--canvas)}.btn--outline{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn--outline:hover{border-color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:12px}.stack{color:var(--muted);font-size:14px}.site-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:color-mix(in srgb,var(--canvas) 88%,transparent);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:50}.site-header__inner{align-items:center;display:flex;gap:32px;height:var(--header-h)}.site-header__name{font-size:17px;font-weight:800;letter-spacing:-.01em;margin-right:auto;text-decoration:none}.site-header__nav{display:none;gap:28px}.site-header__nav a{color:var(--muted);font-size:15px;font-weight:500;text-decoration:none}.site-header__nav a:hover{color:var(--ink)}@media(min-width:760px){.site-header__nav{display:flex}}.hero{padding:56px 0 80px}@media(min-width:960px){.hero{padding:64px 0 104px}}.hero__grid{grid-gap:56px;display:grid;gap:56px}@media(min-width:960px){.hero__grid{align-items:start;gap:64px;grid-template-columns:minmax(0,1fr) 380px}}.hero__status{align-items:baseline;color:var(--ink-soft);display:flex;font-size:15px;font-weight:500;gap:10px;margin-bottom:40px}.hero__dot{background:#1aa35b;border-radius:50%;box-shadow:0 0 0 4px rgba(26,163,91,.18);flex-shrink:0;height:9px;position:relative;top:-1px;width:9px}.frame{display:inline-block;margin:0 0 64px -.14em;max-width:100%;padding:.04em .2em .1em .14em;position:relative}.frame:before{-webkit-animation:frame-draw .6s cubic-bezier(.65,0,.35,1) .35s forwards;animation:frame-draw .6s cubic-bezier(.65,0,.35,1) .35s forwards;border:1.5px solid var(--select);-webkit-clip-path:inset(0 100% 100% 0);clip-path:inset(0 100% 100% 0);content:"";inset:0;pointer-events:none;position:absolute}.frame__name{-webkit-animation:fade-in .35s ease-out both;animation:fade-in .35s ease-out both;font-size:clamp(3.25rem,14vw,8.25rem);font-weight:800;letter-spacing:-.045em;line-height:.92}.frame__name span{display:block}.frame__handle{-webkit-animation:pop .2s ease-out .9s forwards;animation:pop .2s ease-out .9s forwards;background:var(--surface);border:1.5px solid var(--select);height:10px;position:absolute;-webkit-transform:scale(0);transform:scale(0);width:10px}.frame__handle--tl{left:-5px;top:-5px}.frame__handle--tr{right:-5px;top:-5px}.frame__handle--bl{bottom:-5px;left:-5px}.frame__handle--br{bottom:-5px;right:-5px}.frame__badge{-webkit-animation:badge-in .25s ease-out 1.05s forwards;animation:badge-in .25s ease-out 1.05s forwards;background:var(--select);border-radius:4px;color:var(--select-ink);font-size:14px;font-weight:600;left:50%;line-height:1.3;opacity:0;padding:4px 9px;position:absolute;top:calc(100% + 12px);translate:-50% 0;white-space:nowrap}@-webkit-keyframes frame-draw{to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}@keyframes frame-draw{to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes pop{to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pop{to{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes badge-in{0%{opacity:0;-webkit-transform:translateY(-4px);transform:translateY(-4px)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes badge-in{0%{opacity:0;-webkit-transform:translateY(-4px);transform:translateY(-4px)}to{opacity:1;-webkit-transform:none;transform:none}}.hero__lead{color:var(--ink-soft);font-size:clamp(1.125rem,1.6vw,1.3rem);line-height:1.5;margin-bottom:32px;max-width:34em}.hero__clients{margin-top:56px}.hero__clients p{color:var(--muted);font-size:14px;margin-bottom:10px}.hero__clients ul{display:flex;flex-wrap:wrap;gap:6px 24px;list-style:none}.hero__clients li{color:var(--ink-soft);font-size:18px;font-weight:700;letter-spacing:-.01em}.inspect{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:20px 22px 22px}@media(min-width:960px){.inspect{margin-top:8px}}.inspect__head{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:16px;padding-bottom:16px}.inspect__photo{background:#fff;border:1px solid var(--line);border-radius:6px;flex-shrink:0;height:77px;object-fit:cover;width:64px}.inspect__title{font-size:16px;font-weight:700;line-height:1.3}.inspect__sub{color:var(--muted);font-size:14px;line-height:1.4;margin-top:2px}.inspect__row{grid-gap:12px;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:92px 1fr;padding:9px 0}.inspect__row dt{color:var(--muted);font-size:13px;padding-top:2px}.inspect__row dd{font-size:15px;font-weight:500;line-height:1.4}.inspect__links{display:flex;flex-wrap:wrap;gap:8px 18px;padding-top:16px}.inspect__links a{align-items:center;color:var(--select);display:inline-flex;font-size:14px;font-weight:600;gap:6px;text-decoration:none}.inspect__links a:hover{text-decoration:underline}.section{border-top:1px solid var(--line);padding:72px 0}@media(min-width:960px){.section{padding:104px 0}}.section__grid{grid-gap:36px;display:grid;gap:36px}@media(min-width:960px){.section__grid{gap:56px;grid-template-columns:4fr 8fr}.section__head{align-self:start;position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 40px)}}.section__head h2{font-size:clamp(2rem,3.6vw,2.75rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;margin-bottom:12px}.section__head p{color:var(--muted);max-width:30ch}.section__body{min-width:0}.measure{background:var(--surface);border:1px solid var(--line);border-radius:8px;margin-bottom:8px;padding:24px 24px 20px}@media(min-width:760px){.measure{padding:28px 32px 24px}}.measure__head{grid-gap:8px 32px;display:grid;gap:8px 32px;margin-bottom:28px}@media(min-width:760px){.measure__head{align-items:center;grid-template-columns:auto 1fr}}.measure__head figcaption{color:var(--muted);font-size:15px;max-width:40ch}.measure__value{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";font-size:clamp(2.75rem,6vw,3.75rem);font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.04em;line-height:1}.measure__value .measure__to{color:var(--muted);font-size:.4em;font-weight:500;letter-spacing:0;margin:0 .15em;vertical-align:.5em}.measure__scale{height:112px;margin:0 6px;position:relative}.measure__track{background:var(--track);height:6px;left:0;right:0;top:30px}.measure__good,.measure__track{border-radius:3px;position:absolute}.measure__good{background:var(--select-tint);height:22px;top:22px}.measure__mark{height:30px;position:absolute;top:18px;translate:-1px 0;width:2px}.measure__mark span{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";bottom:calc(100% + 2px);font-size:13px;font-variant-numeric:tabular-nums;font-weight:700;left:50%;position:absolute;translate:-50% 0}.measure__mark--before{background:var(--muted)}.measure__mark--before span{color:var(--muted)}.measure__mark--after{background:var(--ink)}.measure__redline{border-left:1.5px solid var(--redline);border-right:1.5px solid var(--redline);height:10px;position:absolute;top:56px}.measure__redline:before{background:var(--redline);content:"";height:1.5px;left:0;position:absolute;right:0;top:4px}.measure__redline span{color:var(--redline);font-size:13px;font-weight:700;left:50%;position:absolute;top:12px;translate:-50% 0}.measure__ticks span{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";bottom:0;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;position:absolute;translate:-50% 0}.measure__ticks span:first-child{translate:0 0}.measure__ticks span:last-child{translate:-100% 0}.results{grid-column-gap:40px;-webkit-column-gap:40px;column-gap:40px;display:grid;list-style:none}@media(min-width:760px){.results{grid-template-columns:1fr 1fr}}.results__item{grid-gap:16px;border-bottom:1px solid var(--line);display:grid;gap:16px;grid-template-columns:88px 1fr;padding:22px 0}.results__value{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";font-size:2rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.035em;line-height:1.05}.results__label{font-weight:600;line-height:1.35;margin-bottom:4px}.results__detail{color:var(--muted);font-size:15px;line-height:1.45}.featured__item{border-top:1px solid var(--line);padding:28px 0 32px}.featured__item:first-child{border-top:0;padding-top:0}.featured__item h3{font-size:clamp(1.5rem,2.6vw,1.875rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;margin-bottom:12px}.featured__client{color:var(--select);font-size:15px;font-weight:700;margin-bottom:6px}.featured__client span{color:var(--muted);font-weight:500;margin-left:6px}.featured__summary{color:var(--ink-soft);margin-bottom:14px;max-width:60ch}.featured__impact{background:var(--surface);border:1px solid var(--line);border-radius:4px;display:inline-block;font-size:15px;font-weight:600;margin-bottom:10px;padding:3px 10px}.more-work{grid-column-gap:40px;border-top:1px solid var(--ink);-webkit-column-gap:40px;column-gap:40px;display:grid;margin-top:8px}@media(min-width:760px){.more-work{grid-template-columns:1fr 1fr}}.more-work__item{border-bottom:1px solid var(--line);padding:20px 0}.more-work__item h3{font-size:18px;font-weight:700;line-height:1.3;margin-bottom:4px}.more-work__item p{color:var(--ink-soft);font-size:15px;margin-bottom:4px}.more-work__item .stack{color:var(--muted);font-size:14px;margin:0}.more-work__client{color:var(--select)!important;font-size:14px!important;font-weight:700}.timeline{list-style:none}.role{grid-gap:6px;display:grid;gap:6px;padding-bottom:40px}@media(min-width:760px){.role{gap:24px;grid-template-columns:172px 1fr}}.role:last-child{padding-bottom:0}.role:last-child .role__body{border-left-color:transparent}.role__dates{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";color:var(--muted);font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;padding-top:3px}.role__body{border-left:1.5px solid var(--line);margin-left:5px;padding-left:28px;position:relative}.role__body:before{background:var(--canvas);border:2px solid var(--muted);border-radius:50%;content:"";height:12px;left:-6.75px;position:absolute;top:7px;width:12px}.role__body h3{font-size:1.25rem;font-weight:700;letter-spacing:-.015em;line-height:1.3;margin-bottom:6px}.role__body h3 span{color:var(--muted);font-weight:500}.role__body h3 a{color:inherit}.role--current .role__body:before{background:var(--select);border-color:var(--select);box-shadow:0 0 0 4px var(--select-tint)}.role__summary{color:var(--ink-soft);margin-bottom:12px}.role__points{grid-gap:8px;display:grid;gap:8px;list-style:none;margin-bottom:10px;max-width:64ch}.role__points li{font-size:16px;line-height:1.5;padding-left:18px;position:relative}.role__points li:before{background:var(--muted);content:"";height:1.5px;left:2px;position:absolute;top:.68em;width:6px}.role__toggle{background:none;border:0;color:var(--select);cursor:pointer;font-size:15px;font-weight:600;margin-bottom:10px;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.skills__sub{border-bottom:1px solid var(--ink);font-size:17px;font-weight:700;padding-bottom:10px}.skills__sub span{color:var(--muted);font-size:14px;font-weight:500;margin-left:6px}.years{border-collapse:collapse;margin-bottom:48px;width:100%}.years th{font-size:15px;font-weight:600;padding:9px 16px 9px 0;text-align:left;white-space:nowrap;width:132px}.years td{align-items:center;display:flex;gap:16px;padding:9px 0}.years tr{border-bottom:1px solid var(--line)}.years__bar{background:var(--track);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.years__bar span{background:var(--select);border-radius:0 3px 3px 0;display:block;height:100%}.years__text{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";color:var(--muted);font-size:14px;font-variant-numeric:tabular-nums;min-width:92px;text-align:right}.backend{list-style:none;margin-bottom:48px}.backend li{grid-gap:2px 16px;border-bottom:1px solid var(--line);display:grid;gap:2px 16px;grid-template-columns:1fr auto;padding:11px 0}@media(min-width:760px){.backend li{align-items:baseline;grid-template-columns:180px 1fr auto}}.backend__skill{font-size:15px;font-weight:600}.backend__detail{color:var(--ink-soft);font-size:15px;grid-column:1/-1;grid-row:2}@media(min-width:760px){.backend__detail{grid-column:auto;grid-row:auto}}.skill-groups{grid-gap:24px 40px;display:grid;gap:24px 40px;padding-top:20px}@media(min-width:760px){.skill-groups{grid-template-columns:1fr 1fr}}.skill-groups dt{font-size:15px;font-weight:700;margin-bottom:4px}.skill-groups dd{color:var(--ink-soft);font-size:16px}.certs{list-style:none;margin-bottom:32px}.certs li{border-bottom:1px solid var(--line);padding:16px 0}.certs li:first-child{padding-top:0}.certs a{font-weight:600}.certs p{color:var(--muted);font-size:14px;margin-top:2px}.education+.education{margin-top:20px}.education h3{font-size:17px;font-weight:700}.education p{color:var(--muted);font-size:15px}.education .education__note{color:var(--ink-soft);font-weight:600}.quote{border-top:1px solid var(--line);padding:28px 0}.quote:first-child{border-top:0;padding-top:0}.quote blockquote{color:var(--ink);font-size:1.125rem;line-height:1.6;margin:0 0 16px;max-width:62ch}.quote blockquote p:before{content:"“"}.quote blockquote p:after{content:"”"}.quote figcaption{grid-gap:2px;display:grid;gap:2px}.quote__name{font-weight:700}.quote__role{color:var(--muted);font-size:14px}.quotes__more{color:var(--select);display:inline-block;font-size:15px;font-weight:600;margin-top:8px;text-underline-offset:3px}.contact{background:var(--block);color:var(--on-block);padding:80px 0}@media(min-width:960px){.contact{padding:120px 0}}.contact h2{font-size:clamp(2.25rem,6vw,4.5rem);font-weight:800;letter-spacing:-.045em;line-height:1;margin-bottom:20px;max-width:14ch}.contact .btn--outline{background:transparent;border-color:hsla(0,0%,100%,.3);color:var(--on-block)}.contact .btn--outline:hover{border-color:var(--on-block)}.contact :focus-visible{outline-color:var(--on-block)}.contact__lead{color:var(--on-block-muted);font-size:1.125rem;margin-bottom:32px;max-width:36em}.contact__details{grid-gap:20px 40px;border-top:1px solid hsla(0,0%,100%,.16);display:grid;gap:20px 40px;margin-top:56px;padding-top:28px}@media(min-width:760px){.contact__details{grid-template-columns:repeat(3,auto);justify-content:start}}.contact__details dt{color:var(--on-block-muted);font-size:13px;margin-bottom:4px}.contact__details dd{align-items:center;display:flex;flex-wrap:wrap;font-weight:600;gap:10px}.contact__details a{overflow-wrap:anywhere;text-decoration:none}.contact__details a:hover{text-decoration:underline}.copy{align-items:center;background:transparent;border:1px solid hsla(0,0%,100%,.3);border-radius:4px;color:var(--on-block);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:4px;padding:3px 10px}.copy:hover{border-color:var(--on-block)}.site-footer{color:var(--muted);font-size:14px;padding:28px 0}.site-footer__inner{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between}.site-footer__inner ul{display:flex;gap:20px;list-style:none}.site-footer__inner a{text-decoration:none}.site-footer__inner a:hover{color:var(--ink)}@-webkit-keyframes rise{0%{opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px)}to{opacity:1;-webkit-transform:none;transform:none}}@keyframes rise{0%{opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px)}to{opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes ping{0%{opacity:.55;-webkit-transform:scale(1);transform:scale(1)}80%,to{opacity:0;-webkit-transform:scale(2.8);transform:scale(2.8)}}@keyframes ping{0%{opacity:.55;-webkit-transform:scale(1);transform:scale(1)}80%,to{opacity:0;-webkit-transform:scale(2.8);transform:scale(2.8)}}@-webkit-keyframes bob{0%,to{-webkit-transform:none;transform:none}45%{-webkit-transform:translateY(3px);transform:translateY(3px)}}@keyframes bob{0%,to{-webkit-transform:none;transform:none}45%{-webkit-transform:translateY(3px);transform:translateY(3px)}}@-webkit-keyframes pop-in{0%{-webkit-transform:scale(0);transform:scale(0)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pop-in{0%{-webkit-transform:scale(0);transform:scale(0)}to{-webkit-transform:scale(1);transform:scale(1)}}.hero__status{-webkit-animation:rise .5s cubic-bezier(.2,.7,.2,1) both;animation:rise .5s cubic-bezier(.2,.7,.2,1) both}.hero__lead{-webkit-animation:rise .6s cubic-bezier(.2,.7,.2,1) .25s both;animation:rise .6s cubic-bezier(.2,.7,.2,1) .25s both}.hero .actions{-webkit-animation:rise .6s cubic-bezier(.2,.7,.2,1) .35s both;animation:rise .6s cubic-bezier(.2,.7,.2,1) .35s both}.hero__clients{-webkit-animation:rise .6s cubic-bezier(.2,.7,.2,1) .45s both;animation:rise .6s cubic-bezier(.2,.7,.2,1) .45s both}.inspect{-webkit-animation:rise .6s cubic-bezier(.2,.7,.2,1) .15s both;animation:rise .6s cubic-bezier(.2,.7,.2,1) .15s both}.inspect__row{-webkit-animation:rise .45s cubic-bezier(.2,.7,.2,1) both;animation:rise .45s cubic-bezier(.2,.7,.2,1) both;-webkit-animation-delay:.3s;animation-delay:.3s;-webkit-animation-delay:calc(.3s + var(--i, 0)*45ms);animation-delay:calc(.3s + var(--i, 0)*45ms)}.inspect__row dt{transition:color .15s}.inspect__row:hover dt{color:var(--select)}.hero__dot:after{-webkit-animation:ping 2.4s cubic-bezier(0,0,.2,1) 1.4s infinite;animation:ping 2.4s cubic-bezier(0,0,.2,1) 1.4s infinite;background:#1aa35b;border-radius:50%;content:"";inset:0;position:absolute}html.motion [data-reveal]{transition:opacity .7s cubic-bezier(.2,.7,.2,1),-webkit-transform .7s cubic-bezier(.2,.7,.2,1);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1),-webkit-transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:0ms;transition-delay:calc(var(--i, 0)*90ms)}html.motion [data-reveal]:not([data-in]){opacity:0;-webkit-transform:translateY(16px);transform:translateY(16px)}.measure__mark--after{transition:left 1.4s cubic-bezier(.2,.7,.2,1) .25s}.measure__mark--after span{transition:opacity .4s ease 1.3s}.measure__redline{transition:width 1.4s cubic-bezier(.2,.7,.2,1) .25s}.measure__redline span{transition:opacity .4s ease 1.4s}html.motion .measure:not([data-in]) .measure__mark--after{left:74%!important}html.motion .measure:not([data-in]) .measure__mark--after span{opacity:0}html.motion .measure:not([data-in]) .measure__redline{width:0!important}html.motion .measure:not([data-in]) .measure__redline span{opacity:0}.years__bar span{-webkit-transform-origin:left;transform-origin:left;transition:-webkit-transform .9s cubic-bezier(.2,.7,.2,1);transition:transform .9s cubic-bezier(.2,.7,.2,1);transition:transform .9s cubic-bezier(.2,.7,.2,1),-webkit-transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:.15s;transition-delay:calc(.15s + var(--i, 0)*60ms)}html.motion .years:not([data-in]) .years__bar span{-webkit-transform:scaleX(0);transform:scaleX(0)}.role__body:before{transition:-webkit-transform .4s cubic-bezier(.3,1.6,.5,1) .25s;transition:transform .4s cubic-bezier(.3,1.6,.5,1) .25s;transition:transform .4s cubic-bezier(.3,1.6,.5,1) .25s,-webkit-transform .4s cubic-bezier(.3,1.6,.5,1) .25s}html.motion .role:not([data-in]) .role__body:before{-webkit-transform:scale(0);transform:scale(0)}.site-header{transition:box-shadow .25s}.site-header[data-scrolled]{box-shadow:0 8px 24px -16px rgba(15,27,45,.35)}.site-header__progress{background:var(--select);bottom:-1px;height:2px;left:0;position:absolute;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform:scaleX(var(--progress,0));transform:scaleX(var(--progress,0));-webkit-transform-origin:left;transform-origin:left;width:100%}.site-header__nav a{padding:6px 0;position:relative;transition:color .2s}.site-header__nav a:after{background:var(--select);border-radius:2px;bottom:0;content:"";height:2px;left:0;position:absolute;right:0;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:left;transform-origin:left;transition:-webkit-transform .3s cubic-bezier(.2,.7,.2,1);transition:transform .3s cubic-bezier(.2,.7,.2,1);transition:transform .3s cubic-bezier(.2,.7,.2,1),-webkit-transform .3s cubic-bezier(.2,.7,.2,1)}.site-header__nav a:hover:after{opacity:.35;-webkit-transform:scaleX(1);transform:scaleX(1)}.site-header__nav a[aria-current]{color:var(--ink)}.site-header__nav a[aria-current]:after{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}.btn{transition:background-color .15s,border-color .15s,box-shadow .25s,-webkit-transform .25s cubic-bezier(.2,.7,.2,1);transition:background-color .15s,border-color .15s,box-shadow .25s,transform .25s cubic-bezier(.2,.7,.2,1);transition:background-color .15s,border-color .15s,box-shadow .25s,transform .25s cubic-bezier(.2,.7,.2,1),-webkit-transform .25s cubic-bezier(.2,.7,.2,1)}.btn svg{transition:-webkit-transform .3s cubic-bezier(.3,1.6,.5,1);transition:transform .3s cubic-bezier(.3,1.6,.5,1);transition:transform .3s cubic-bezier(.3,1.6,.5,1),-webkit-transform .3s cubic-bezier(.3,1.6,.5,1)}.btn:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px)}.btn:hover svg{-webkit-transform:rotate(-10deg) scale(1.1);transform:rotate(-10deg) scale(1.1)}.btn:active{-webkit-transform:translateY(0) scale(.98);transform:translateY(0) scale(.98);transition-duration:.08s}.btn[download]:hover svg{-webkit-animation:bob .7s ease-in-out;animation:bob .7s ease-in-out;-webkit-transform:none;transform:none}.btn--primary:hover{box-shadow:0 10px 20px -10px var(--select)}.inspect__links a svg{transition:-webkit-transform .25s cubic-bezier(.3,1.6,.5,1);transition:transform .25s cubic-bezier(.3,1.6,.5,1);transition:transform .25s cubic-bezier(.3,1.6,.5,1),-webkit-transform .25s cubic-bezier(.3,1.6,.5,1)}.inspect__links a:hover svg{-webkit-transform:translateY(-2px);transform:translateY(-2px)}.draw-link{background-image:linear-gradient(currentColor,currentColor),linear-gradient(var(--line),var(--line));background-position:0 100%,0 100%;background-repeat:no-repeat;background-size:0 1.5px,100% 1px;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-bottom:2px;text-decoration:none;transition:background-size .35s cubic-bezier(.2,.7,.2,1),color .2s}.draw-link:focus-visible,.draw-link:hover{background-size:100% 1.5px,100% 1px;color:var(--select)}.featured__item{position:relative}.featured__item:after,.featured__item:before{content:"";opacity:0;pointer-events:none;position:absolute}.featured__item:before{border:1.5px solid var(--select);inset:14px -16px 18px;-webkit-transform:scale(.99);transform:scale(.99);transition:opacity .2s,-webkit-transform .3s cubic-bezier(.2,.7,.2,1);transition:opacity .2s,transform .3s cubic-bezier(.2,.7,.2,1);transition:opacity .2s,transform .3s cubic-bezier(.2,.7,.2,1),-webkit-transform .3s cubic-bezier(.2,.7,.2,1)}.featured__item:after{background:linear-gradient(var(--select),var(--select)) 0 0/8px 8px no-repeat,linear-gradient(var(--select),var(--select)) 100% 0/8px 8px no-repeat,linear-gradient(var(--select),var(--select)) 0 100%/8px 8px no-repeat,linear-gradient(var(--select),var(--select)) 100% 100%/8px 8px no-repeat;inset:10px -20px 14px;transition:opacity .2s .06s}.featured__item:first-child:before{top:-14px}.featured__item:first-child:after{top:-18px}.featured__item:focus-within:after,.featured__item:focus-within:before{opacity:1;-webkit-transform:none;transform:none}@media(hover:hover){.featured__item:hover:after,.featured__item:hover:before{opacity:1;-webkit-transform:none;transform:none}}.role__more{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1),visibility 0s linear .4s;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1),visibility 0s linear .4s,-ms-grid-rows .4s cubic-bezier(.2,.7,.2,1);visibility:hidden}.role__more.is-open{grid-template-rows:1fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1),visibility 0s;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1),visibility 0s,-ms-grid-rows .4s cubic-bezier(.2,.7,.2,1);visibility:visible}.role__more-inner{min-height:0;overflow:hidden}.copy{transition:background-color .2s,border-color .2s,color .2s}.copy.is-copied{background:#1aa35b;border-color:#1aa35b;color:#fff}.copy svg{-webkit-animation:pop-in .3s cubic-bezier(.3,1.6,.5,1);animation:pop-in .3s cubic-bezier(.3,1.6,.5,1)}@media(prefers-reduced-motion:reduce){.hero__dot:after{-webkit-animation:none;animation:none;opacity:0}.btn:active,.btn:hover{-webkit-transform:none;transform:none}}
/*# sourceMappingURL=main.b121524a.css.map*/