@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--blue: #1556C7;--white: #ffffff;--white-dim: rgba(255, 255, 255, .9);--white-rule: rgba(255, 255, 255, .18);--pad: clamp(2rem, 5vw, 4.5rem);--font: "JetBrains Mono", "Courier New", monospace}html{font-size:clamp(16px,1.25vw,26px)}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:var(--blue);color:var(--white);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden;text-shadow:0 1px 4px rgba(0,30,120,.45)}img{text-shadow:none}*::selection{background:var(--white);color:var(--blue)}a{color:inherit;text-decoration:none}.site{width:100vw;height:100dvh;display:grid;grid-template-areas:"identity" "rule-top" "career" "rule-bottom" "links";grid-template-rows:1fr auto 2fr auto 1fr;padding:var(--pad)}.snap-page{display:contents}.band--identity{grid-area:identity}.band--career{grid-area:career}.band--links{grid-area:links}.rule--top{grid-area:rule-top}.rule--bottom{grid-area:rule-bottom}.rule--top,.rule--bottom{display:none}.band{display:flex;align-items:center}.band--identity{align-items:center}.name{font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700;letter-spacing:-.025em;line-height:1.05}.title{font-size:clamp(.64rem,1.05vw,.86rem);font-weight:400;color:var(--white-dim);margin-top:.35rem;letter-spacing:.07em;text-transform:uppercase}.descriptor{font-size:clamp(.58rem,.9vw,.76rem);font-weight:400;color:#fff9;margin-top:.2rem;letter-spacing:.09em;text-transform:uppercase}.band--career{flex-direction:column;align-items:flex-start;justify-content:center;gap:clamp(1rem,2.5vh,1.8rem)}.exp-row{display:flex;gap:clamp(2rem,5vw,4rem);flex-wrap:wrap;width:100%}.job{display:flex;flex-direction:column;gap:.15rem;min-width:120px}.job__logo{width:22px;height:22px;object-fit:contain;margin-bottom:.3rem;filter:brightness(0) invert(1);opacity:.75}.job__initials{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:.5rem;font-weight:700;letter-spacing:.03em;color:var(--blue);background:#f5f5f5b3;border-radius:3px;margin-bottom:.3rem;flex-shrink:0}.job__company{font-size:clamp(.78rem,1.1vw,.95rem);font-weight:700}.job__role,.job__dates{font-size:clamp(.62rem,.85vw,.78rem);color:var(--white-dim)}.edu{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.edu__school{font-size:clamp(.72rem,1vw,.88rem);font-weight:600}.edu__degree{font-size:clamp(.62rem,.85vw,.78rem);color:var(--white-dim)}.skills{display:flex;flex-wrap:wrap;gap:.4rem .6rem;width:100%}.skill{display:inline-flex;align-items:center;gap:.35em;font-size:clamp(.55rem,.78vw,.7rem);font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:#ffffffb3;border:1px solid rgba(255,255,255,.22);border-radius:2px;padding:.18em .5em;white-space:nowrap}.skill__icon{width:11px;height:11px;object-fit:contain;filter:brightness(0) invert(1);opacity:.55;flex-shrink:0}.band--links{gap:clamp(1.2rem,3vw,2.8rem);flex-wrap:wrap;align-items:center}.link{display:inline-flex;align-items:center;gap:.45rem;font-size:clamp(.62rem,.88vw,.8rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;opacity:.72;text-decoration:underline;text-underline-offset:4px;text-decoration-color:transparent;transition:opacity .18s ease,text-decoration-color .18s ease,text-underline-offset .18s ease}.link:hover{opacity:1;text-underline-offset:6px;text-decoration-color:var(--white)}.link img{height:15px;width:15px;object-fit:contain;opacity:.62;transition:opacity .18s ease}.link:hover img{opacity:1}.page-dots{display:none}@media (max-width: 640px){.site{display:flex;flex-direction:row;width:200vw;height:100dvh;overflow-x:scroll;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:0;scrollbar-width:none}.site::-webkit-scrollbar{display:none}.snap-page{display:flex;flex-direction:column;width:100vw;height:100dvh;flex-shrink:0;scroll-snap-align:start;scroll-snap-stop:always;padding:2.4rem 1.8rem}.snap-page--1{justify-content:space-between}.snap-page--2{justify-content:center}.band{display:flex;width:100%}.rule--top,.rule--bottom{display:none}.band--identity{flex-direction:column;align-items:flex-start;gap:1rem}.name{font-size:1.9rem}.title{font-size:.72rem;margin-top:.2rem}.band--links{flex-direction:column;align-items:flex-start;gap:.85rem;flex-wrap:nowrap}.link{font-size:.82rem;opacity:.85}.link img{height:17px;width:17px}.band--career{flex-direction:column;align-items:flex-start;justify-content:center;gap:2rem;width:100%}.exp-row{flex-direction:column;gap:1.4rem}.job__company{font-size:.92rem}.job__role,.job__dates{font-size:.76rem}.edu__school{font-size:.86rem}.edu__degree{font-size:.73rem}.descriptor{font-size:.62rem}.skills{gap:.35rem .5rem}.skill{font-size:.62rem}.page-dots{display:flex;position:fixed;bottom:1.4rem;left:50%;transform:translate(-50%);gap:.4rem;z-index:10;pointer-events:none}.page-dots__dot{width:8px;height:8px;border-radius:50%;background:var(--white);opacity:.25;border:none;cursor:pointer;outline:none;transition:opacity .25s ease,transform .25s ease}.page-dots__dot--active{opacity:.95;transform:scale(1.3)}}
