:root{--bg:#0e1013;--bg-elevated:#16191f;--surface:#181c23;--border:#262b34;--border-strong:#353c47;--text:#e7e9ec;--text-muted:#9aa2ad;--text-faint:#6b7280;--accent:#e7a368;--accent-soft:#e7a36824;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--maxw:920px;--radius:12px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.2}p{margin:0}ul{margin:0;padding:0;list-style:none}.section__label{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent);margin-bottom:12px;font-size:.8rem}.section__title{margin-bottom:36px;font-size:clamp(1.4rem,4.5vw,1.6rem)}.hero__actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.btn{font-family:var(--font-mono);border:1px solid var(--accent);background:var(--accent);color:#1a1205;transition:transform .2s var(--ease), box-shadow .2s var(--ease);border-radius:8px;align-items:center;gap:8px;padding:11px 20px;font-size:.9rem;font-weight:500;display:inline-flex}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #e7a36840}.btn svg{flex-shrink:0;width:16px;height:16px}.socials{gap:14px;display:flex}.social{border:1px solid var(--border-strong);width:42px;height:42px;color:var(--text-muted);transition:color .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.social:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.social svg{width:18px;height:18px}.entry__meta{font-family:var(--font-mono);color:var(--text-faint);white-space:nowrap;font-size:.8rem}.tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.tag{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);background:var(--bg-elevated);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;display:inline-flex}.tag__icon{opacity:.75;flex-shrink:0;width:.9em;height:.9em}.edu{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:20px 22px;display:flex}.edu__degree{color:var(--text-muted);margin-top:4px}.projects{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:transform .22s var(--ease), border-color .22s var(--ease), box-shadow .22s var(--ease);flex-direction:column;padding:24px;display:flex}.card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 14px 34px #00000059}.card--placeholder{border-style:dashed;justify-content:center;align-items:flex-start}.card--placeholder:hover{border-color:var(--border-strong);box-shadow:none;transform:none}.card__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.card__name{font-size:1.2rem}.card__period{font-family:var(--font-mono);color:var(--text-faint);font-size:.75rem}.card__blurb{color:var(--text-muted);margin-top:10px}.card__link{font-family:var(--font-mono);color:var(--accent);align-items:center;gap:6px;margin-top:16px;font-size:.82rem;display:inline-flex}.card__link:hover{text-decoration:underline}.card__link svg{width:14px;height:14px}@media (width<=680px){.projects{grid-template-columns:1fr}}.skills{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.skills__group h3{font-family:var(--font-mono);color:var(--text);margin-bottom:14px;font-size:.85rem}.skills__group .tags{margin-top:0}@media (width<=680px){.skills{grid-template-columns:1fr;gap:22px}}.contact__title{margin-bottom:16px;font-size:clamp(1.7rem,6vw,2rem)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.deck{scroll-snap-type:y proximity;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;height:100dvh;overflow:hidden scroll}.deck__panel{scroll-snap-align:start;border-top:1px solid var(--border);flex-direction:column;justify-content:center;min-height:100dvh;padding:96px 0;display:flex;position:relative}@media (width<=680px){.deck__panel{min-height:100dvh;padding:80px 0}}.deck__panel:first-child{border-top:none}.deck__inner{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}@media (width<=680px){.deck__inner{padding:0 20px}}.deck-dots{z-index:40;flex-direction:column;gap:14px;display:flex;position:fixed;top:50%;right:26px;transform:translateY(-50%)}.deck-dots button{border:1px solid var(--border-strong);cursor:pointer;width:11px;height:11px;transition:background .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);background:0 0;border-radius:50%;padding:0}.deck-dots button:hover{border-color:var(--accent)}.deck-dots button.is-active{background:var(--accent);border-color:var(--accent);transform:scale(1.25)}@media (width<=600px){.deck-dots{display:none}}.deck-hero__eyebrow{font-family:var(--font-mono);color:var(--accent);margin-bottom:16px;font-size:.9rem}.deck-hero__caret{color:var(--accent);margin-left:2px;animation:1.1s step-end infinite deck-caret-blink;display:inline-block}@keyframes deck-caret-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.deck-hero__name{letter-spacing:-.02em;margin-bottom:20px;font-size:clamp(2.6rem,8vw,5rem)}.deck-hero__word{display:inline-block}.deck-hero__word:not(:last-child){margin-right:.25em}@media (prefers-reduced-motion:reduce){.deck-hero__caret{animation:none}}.deck-hero__tagline{color:var(--text-muted);max-width:640px;margin-bottom:34px;font-size:clamp(1.05rem,2.4vw,1.4rem)}.deck-exp{gap:22px;display:grid}.deck-exp__row{grid-template-columns:150px 1fr;align-items:start;gap:22px;display:grid}.deck-exp__period{font-family:var(--font-mono);color:var(--text-faint);padding-top:4px;font-size:.78rem}.deck-exp__role{font-size:1.1rem}.deck-exp__role span{color:var(--accent)}.deck-exp__summary{color:var(--text-muted);margin-top:6px}@media (width<=680px){.deck-exp__row{grid-template-columns:1fr;gap:6px}}.deck-interests{gap:12px;display:grid}.deck-interests>div{color:var(--text-muted);padding-left:20px;position:relative}.deck-interests>div:before{content:"▹";color:var(--accent);position:absolute;left:0}
