:root{--paper:#fff;--ink:#222326;--muted:#7c8088;--line:#eef0f2;--accent:#222326;--icon-surface:#f5f5f5;--gutter:clamp(1.4rem, 5vw, 6rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:#fff}h1,h2,p{margin:0}.skip-link{z-index:20;background:var(--ink);color:var(--paper);padding:1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.eyebrow{letter-spacing:0;text-transform:none;font-family:inherit;font-size:.8rem;font-weight:400;line-height:1.5}.text-link{align-items:center;gap:.9rem;padding-block:.65rem;font-size:.78rem;display:inline-flex}.text-link:hover{color:var(--accent)}.intro{min-height:100svh;padding:0 var(--gutter);background:var(--paper);flex-direction:column;justify-content:space-between;display:flex}.intro-top{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1120px;min-height:72px;margin:0 auto;padding:0;display:flex}.wordmark{letter-spacing:-.06em;padding:.2rem .35rem .3rem 0;font-size:1.65rem;font-weight:750;line-height:1}.wordmark span{color:var(--accent)}.portfolio-label{color:var(--muted)}.header-role{text-align:right;font-size:.78rem;line-height:1.4}.story-stage{align-items:center;gap:.25rem;width:100%;max-width:920px;margin-inline:auto;padding:.5rem 0;display:grid}.story-scene{text-align:center;min-width:0;padding-block:.5rem}.scene-heading{letter-spacing:-.045em;max-width:920px;margin-inline:auto;font-size:clamp(1.7rem,2.9vw,2.4rem);font-weight:650;line-height:1.18}.scene-line{display:inline}.scene-greeting{display:inline-block}.scene-prefix{color:var(--ink);font:inherit}.scene-icon{border:1px solid var(--line);background:var(--icon-surface);letter-spacing:0;vertical-align:middle;border-radius:24%;justify-content:center;align-items:center;width:1.4em;height:1.4em;margin-left:.14em;font-size:.65em;line-height:1;display:inline-flex}.scene-title{margin:0;display:inline}.word-mask{vertical-align:top;max-width:100%;display:inline-block;overflow:hidden}.scene-word{white-space:nowrap;padding-bottom:.08em;display:inline-block}.tech-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:820px;margin:.85rem auto 0;padding:0;list-style:none;display:grid}.tech-item{white-space:nowrap;background:#f8f8f8;border:1px solid #eceff1;border-radius:16px;justify-content:center;align-items:center;gap:8px;min-width:0;max-width:100%;padding:10px;font-size:.875rem;font-weight:500;line-height:1.3;display:inline-flex}.tech-icon{object-fit:contain;flex-shrink:0;width:26px;height:26px}.intro-bottom{justify-content:space-between;align-items:center;gap:1rem;min-height:80px;display:flex}.scroll-hint{color:var(--muted);align-items:center;gap:1.1rem;padding-block:1rem;font-size:.76rem;display:inline-flex}.scroll-arrow{background:var(--ink);width:40px;height:40px;color:var(--paper);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:inline-flex}.bottom-note{color:var(--muted)}.site-footer{margin-inline:var(--gutter);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;min-height:110px;font-size:.78rem;display:flex}.site-footer>.eyebrow{color:var(--muted)}.experience-section{width:calc(100% - var(--gutter) * 2);max-width:1120px;margin:100px auto;scroll-margin-top:2rem}.experience-heading .eyebrow{color:var(--muted);margin-bottom:.85rem}.experience-heading h2{letter-spacing:-.045em;font-size:clamp(2.25rem,5vw,4rem);font-weight:650;line-height:1.08}.experience-carousel{margin-top:1.5rem}.experience-controls{justify-content:flex-end;gap:10px;margin-bottom:1.25rem;display:flex}.experience-control{border:1px solid var(--line);background:var(--paper);width:46px;height:46px;color:var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.experience-control:hover:not(:disabled){background:#f5f5f5}.experience-control:disabled{opacity:.3;cursor:default}.experience-control svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.experience-control:focus-visible,.experience-track:focus-visible{outline:2px solid var(--ink);outline-offset:5px}.experience-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:min(390px,85%);grid-auto-flow:column;gap:20px;padding-block:.25rem 1rem;display:grid;overflow-x:auto}.experience-track::-webkit-scrollbar{display:none}.experience-card{border:1px solid var(--line);scroll-snap-align:start;background:#fafafa;border-radius:24px;flex-direction:column;gap:1.25rem;min-width:0;padding:28px;display:flex}.experience-card>header{flex-direction:column;gap:.45rem;display:flex}.experience-meta{color:var(--muted);font-size:.75rem;line-height:1.5}.experience-company{flex-wrap:wrap;align-items:center;gap:12px;font-size:.95rem;font-weight:650;line-height:1.4;display:flex}.experience-company-logo{object-fit:contain;object-position:left;flex-shrink:0;width:auto;max-width:120px;height:36px}.experience-role{letter-spacing:-.035em;margin:0;font-size:1.65rem;font-weight:600;line-height:1.18}.experience-description{color:#575d64;font-size:.9375rem;line-height:1.6}.experience-highlights{color:#575d64;gap:.55rem;margin:0;padding-left:1.1rem;font-size:.875rem;line-height:1.55;display:grid}.experience-technologies{flex-wrap:wrap;gap:6px;margin:auto 0 0;padding:.5rem 0 0;list-style:none;display:flex}.experience-technologies li{background:var(--paper);border:1px solid #e8ebed;border-radius:999px;padding:.4rem .65rem;font-size:.72rem;line-height:1.3}@media (max-width:999px){.tech-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:360px}.tech-item{font-size:.8125rem}}@media (max-width:700px){.portfolio-label{display:none}.header-role{max-width:70%;font-size:.7rem}.text-link{gap:.5rem;font-size:.72rem}.story-scene{padding-block:.6rem}.scene-heading{font-size:clamp(1.25rem,6.2vw,1.8rem);line-height:1.35}.intro-bottom{flex-wrap:wrap;min-height:101px;padding-bottom:16px}.bottom-note{display:none}.scroll-hint{gap:.6rem;font-size:.7rem}.site-footer{min-height:94px}.site-footer>.eyebrow{display:none}.experience-section{margin-block:64px}.experience-track{gap:14px}.experience-card{padding:24px}.experience-role{font-size:1.4rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
