:root{--background:#020913;--surface:#071322;--surface-strong:#0b1a2e;--surface-soft:rgba(10,24,43,.78);--line:rgba(126,159,211,.22);--line-strong:rgba(86,139,255,.55);--text:#f1f5fb;--muted:#9baac0;--blue:#5d8eff;--cyan:#34b9ed;--glow:rgba(45,99,240,.24);--max-width:1360px;--font-space-grotesk:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-ibm-plex-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--background)}body{margin:0;background:radial-gradient(circle at 77% 8%,rgba(37,84,181,.13),transparent 28%),var(--background);color:var(--text);font-family:var(--font-space-grotesk),system-ui,sans-serif;text-rendering:optimizeLegibility}a,button{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}a,button,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid rgba(91,143,255,.9);outline-offset:4px}.skip-link{position:fixed;z-index:100;top:1rem;left:1rem;transform:translateY(-160%);padding:.75rem 1rem;border-radius:.55rem;background:#ffffff;color:#08111f;font-weight:700;transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}.portfolio-shell{width:min(calc(100% - 3rem),var(--max-width));margin:0 auto}.site-header{position:-webkit-sticky;position:sticky;z-index:30;top:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;border-bottom:1px solid var(--line);background:rgba(2,9,19,.86);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand,.hero-actions,.highlight-list,.site-nav,.tag-list{display:flex;align-items:center}.brand{gap:.8rem;font-weight:700}.monogram{color:var(--blue);font-family:var(--font-ibm-plex-mono),monospace;font-size:1.15rem;letter-spacing:-.1em}.site-nav{gap:2rem;color:#aebacd;font-size:.9rem}.site-nav a{padding:1.55rem 0;transition:color .2s ease}.site-nav a:hover{color:#ffffff}.header-download{justify-self:end}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:.7rem;padding:.75rem 1.1rem;border:1px solid var(--line);border-radius:.65rem;font-size:.82rem;font-weight:700;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.button:hover{transform:translateY(-2px);border-color:rgba(100,147,255,.7)}.button-primary{border-color:#4e7de8;background:linear-gradient(135deg,#356de1,#4c86f5);box-shadow:0 16px 40px rgba(37,92,224,.22);color:#ffffff}.button-ghost{background:rgba(8,20,36,.66);color:#eff5ff}.hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(430px,.88fr);min-height:580px;border-bottom:1px solid var(--line)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:5rem 4rem 5rem 0}.eyebrow{margin:0 0 1.1rem;color:var(--blue);font-family:var(--font-ibm-plex-mono),monospace;font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.hero h1{max-width:820px;margin:0;font-size:clamp(3.7rem,6.3vw,6.5rem);font-weight:400;letter-spacing:-.062em;line-height:.98}.hero h1 .headline-accent{background:linear-gradient(110deg,var(--blue),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.hero h1 .headline-plain{color:var(--text)}.hero-lead{max-width:760px;margin:1.8rem 0 0;color:var(--muted);font-size:1rem;line-height:1.75}.highlight-list{flex-wrap:wrap;gap:.65rem;margin-top:1.65rem}.highlight-list span,.tag-list span{border:1px solid rgba(102,146,225,.3);border-radius:.5rem;background:rgba(10,22,40,.78);color:#c8d5e8}.highlight-list span{padding:.5rem .72rem;font-size:.74rem}.hero-actions{flex-wrap:wrap;gap:.9rem;margin-top:2rem}.hero-visual{position:relative;min-height:580px;overflow:hidden;border-left:1px solid var(--line)}.hero-lines{position:absolute;inset:4% -20% 8% -8%;opacity:.7;transform:rotate(-8deg);background:repeating-linear-gradient(160deg,transparent 0 26px,rgba(65,115,255,.27) 27px,transparent 29px 55px);-webkit-mask-image:radial-gradient(circle,#000 0 42%,transparent 74%);mask-image:radial-gradient(circle,#000 0 42%,transparent 74%)}.profile-panel{position:absolute;z-index:2;inset:12% 7% 10% 12%;display:flex;flex-direction:column;justify-content:flex-end;padding:2.2rem;border:1px solid var(--line);border-radius:1.2rem;background:radial-gradient(circle at 83% 15%,rgba(72,119,242,.22),transparent 34%),linear-gradient(150deg,rgba(10,26,48,.9),rgba(4,12,23,.92));box-shadow:0 24px 90px rgba(0,0,0,.32)}.profile-panel-mark{position:absolute;top:1.6rem;right:1.9rem;color:rgba(78,126,241,.24);font-family:var(--font-ibm-plex-mono),monospace;font-size:clamp(4rem,8vw,7rem);font-weight:800}.profile-panel .eyebrow{margin-top:1.4rem;margin-bottom:.45rem;font-size:.62rem}.profile-panel>strong{max-width:420px;font-size:1.15rem;line-height:1.5}.profile-panel-metrics{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.8rem;gap:.8rem;margin-top:2rem;padding-top:1.3rem;border-top:1px solid var(--line)}.profile-panel-metrics div{display:grid;grid-gap:.3rem;gap:.3rem}.profile-panel-metrics b{color:#77a5ff;font-size:1.2rem}.profile-panel-metrics span{color:#8fa0b8;font-size:.66rem;line-height:1.4}.portrait{object-fit:contain;object-position:bottom center}.section{padding:5rem 0;border-bottom:1px solid var(--line)}.section-heading{max-width:720px;margin-bottom:2.2rem}.section-heading-inline{display:flex;align-items:flex-end;justify-content:space-between;gap:3rem;max-width:none}.section-heading h2{margin:0;font-size:clamp(2.2rem,4vw,4.1rem);font-weight:400;letter-spacing:-.045em;line-height:1.05}.section-heading-inline>p,.section-heading>p{color:var(--muted);line-height:1.7}.section-heading-inline>p{max-width:470px;margin:0}.company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1rem;gap:1rem}.company-card{position:relative;min-height:420px;overflow:hidden;padding:0;border:1px solid var(--line);border-radius:.95rem;background:var(--surface);color:#ffffff;text-align:left;cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.company-card>img{object-fit:cover;transition:transform .4s ease}.company-card.is-selected,.company-card:hover{transform:translateY(-5px);border-color:var(--blue);box-shadow:0 0 0 1px rgba(83,132,255,.32),0 18px 55px var(--glow)}.company-card:hover>img{transform:scale(1.04)}.company-card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,6,14,.07) 8%,rgba(2,7,15,.68) 54%,#020812)}.company-card-content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:.58rem;padding:1.35rem}.company-period{color:#82b0ff;font-size:.78rem}.company-logo{width:auto;max-width:145px;height:36px;object-fit:contain;object-position:left center;filter:brightness(1.28)}.company-card-content strong{font-size:1.18rem;line-height:1.25}.company-card-content>span:not(.company-period):not(.company-card-action){color:#c0cad8;font-size:.86rem;line-height:1.45}.company-card-content small{color:#94a6be;font-size:.75rem}.company-card-action{display:inline-flex;align-items:center;gap:.45rem;margin-top:.45rem;color:#76a6ff;font-size:.74rem}.company-detail{display:grid;grid-template-columns:1.15fr 1fr .95fr;grid-gap:2.5rem;gap:2.5rem;margin-top:1.25rem;padding:2rem;border:1px solid var(--line);border-radius:1rem;background:linear-gradient(135deg,rgba(11,24,43,.9),rgba(6,14,27,.9))}.company-detail h3{margin:0;font-size:1.8rem}.company-detail h4{margin:0 0 .9rem;font-size:.95rem}.company-detail li,.company-detail p{color:var(--muted);line-height:1.65}.company-detail ul{margin:0;padding-left:1.15rem}.detail-role{color:#8eb8ff!important}.company-detail-stack{display:flex;flex-direction:column;gap:1.5rem}.initiative-list{display:grid;grid-gap:.45rem;gap:.45rem}.tag-list{flex-wrap:wrap;gap:.42rem}.tag-list span{padding:.34rem .5rem;font-size:.66rem}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem}.capability-card{display:flex;min-height:260px;flex-direction:column;padding:1.55rem;border:1px solid var(--line);border-radius:.95rem;background:linear-gradient(180deg,rgba(12,26,46,.91),rgba(6,15,28,.94));transition:transform .2s ease,border-color .2s ease}.capability-card:hover{transform:translateY(-4px);border-color:rgba(91,143,255,.5)}.skill-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:.75rem;background:rgba(53,101,210,.16);color:var(--blue)}.capability-card h3{margin:1rem 0 .65rem;font-size:1.06rem;line-height:1.35}.capability-card p{margin:0 0 auto;color:var(--muted);font-size:.87rem;line-height:1.65}.capability-card .tag-list{margin-top:1.15rem}.selected-work{display:grid;grid-gap:3.25rem;gap:3.25rem}.selected-work>.section-heading{margin-bottom:0}.work-group{display:grid;grid-gap:1.2rem;gap:1.2rem}.work-group-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.work-group-heading h3{margin:0;font-size:1.55rem}.work-group-heading p{max-width:580px;margin:0;color:var(--muted);font-size:.86rem;line-height:1.6;text-align:right}.work-grid{display:grid;grid-gap:1rem;gap:1rem}.work-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.work-card{position:relative;min-height:360px;overflow:hidden;border:1px solid var(--line);border-radius:.95rem;background:var(--surface)}.work-card>img{object-fit:cover;transition:transform .45s ease}.work-card:hover>img{transform:scale(1.035)}.work-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,6,14,.18) 5%,rgba(2,7,15,.7) 51%,rgba(2,8,18,.98));transition:background .25s ease}.work-card:hover .work-card-shade{background:linear-gradient(180deg,rgba(1,6,14,.28) 5%,rgba(2,7,15,.78) 47%,rgba(2,8,18,1))}.work-card-content{position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr;grid-gap:1rem;gap:1rem;padding:1.45rem}.work-card-meta{display:flex;justify-content:space-between;gap:1rem;color:#9dbdff;font-family:var(--font-ibm-plex-mono),monospace;font-size:.61rem;letter-spacing:.06em;text-transform:uppercase}.work-card-body{align-self:end;min-width:0}.work-card h3{margin:0 0 .65rem;font-size:1.35rem;line-height:1.25;-webkit-line-clamp:2}.work-card h3,.work-card p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.work-card p{margin:0 0 1rem;color:#bdc8d8;font-size:.88rem;line-height:1.58;-webkit-line-clamp:4}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 1.25fr;padding:2.4rem 0;border-bottom:1px solid var(--line)}.metrics>div{display:flex;flex-direction:column;gap:.45rem;padding:0 1.4rem;border-right:1px solid var(--line)}.metrics>div:first-child{padding-left:0}.metrics>div:last-child{border-right:0}.metrics strong{color:#75a5ff;font-size:1.35rem}.contact-card a,.metrics span{color:var(--muted);font-size:.78rem}.contact-card a:hover{color:#ffffff}.site-footer{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;min-height:76px;color:#718098;font-size:.72rem}.site-footer span:nth-child(2){text-align:center}.site-footer a{display:inline-flex;align-items:center;justify-self:end;gap:.4rem}.company-detail-toggle,.mobile-navigation{display:none}.mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;gap:.55rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:.65rem;background:rgba(8,20,36,.86);color:var(--text);font-size:.78rem;font-weight:700;cursor:pointer}.mobile-navigation-panel{position:absolute;z-index:45;top:calc(100% + 1px);right:0;width:min(340px,calc(100vw - 2rem));padding:.8rem;border:1px solid var(--line);border-radius:0 0 .9rem .9rem;background:rgba(3,11,22,.98);box-shadow:0 24px 70px rgba(0,0,0,.45)}.mobile-navigation-panel nav{display:grid;margin-bottom:.7rem}.mobile-navigation-panel nav a{padding:.85rem .8rem;border-bottom:1px solid var(--line);color:#c7d1df}.mobile-navigation-panel nav a:hover{color:#fff}.mobile-navigation-panel .button{width:100%}.company-detail-toggle{align-items:center;justify-content:space-between;width:100%;min-height:48px;margin-top:1rem;padding:.8rem 1rem;border:1px solid var(--line);border-radius:.75rem;background:rgba(8,20,36,.8);color:var(--text);font-weight:700;cursor:pointer}.company-detail-toggle[aria-expanded=true] svg{transform:rotate(90deg)}@media (max-width:1100px){.site-header{grid-template-columns:1fr auto}.header-download,.site-nav{display:none}.mobile-navigation{display:block;justify-self:end}.hero{grid-template-columns:1fr}.hero-copy{padding-right:0}.hero-visual{min-height:480px;border-top:1px solid var(--line);border-left:0}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-detail{grid-template-columns:1fr 1fr}.company-detail>:last-child{grid-column:1/-1}.metrics{grid-template-columns:repeat(2,1fr)}.metrics>div{min-height:88px;padding:1rem;border-bottom:1px solid var(--line)}.metrics>div:first-child{padding-left:1rem}.contact-card{grid-column:1/-1}}@media (max-width:820px){.portfolio-shell{width:min(calc(100% - 2rem),var(--max-width))}.site-header{min-height:64px}.brand>span:last-child{font-size:.85rem}.hero-copy{padding:4rem 0}.hero h1{font-size:clamp(3rem,13vw,5rem)}.section{padding:4rem 0}.section-heading-inline,.work-group-heading{align-items:flex-start;flex-direction:column;gap:1rem}.work-group-heading p{text-align:left}.capability-grid,.work-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-panel-metrics{grid-template-columns:1fr}}@media (max-width:620px){.portfolio-shell{width:min(calc(100% - 1.25rem),var(--max-width))}.hero h1{font-size:clamp(2.8rem,14vw,4.2rem)}.hero-lead{font-size:.92rem}.hero-visual{min-height:430px}.profile-panel{inset:8% 0 7%;padding:1.5rem}.capability-grid,.company-grid,.work-grid-three{display:flex;gap:.85rem;margin-inline:-.625rem;padding:.2rem .625rem 1rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-padding-inline:.625rem;scroll-snap-type:inline mandatory;scrollbar-width:thin}.capability-card,.company-card,.work-card{flex:0 0 min(84vw,350px);scroll-snap-align:start}.company-card{min-height:350px}.company-detail-toggle{display:flex}.company-detail.is-collapsed{display:none}.company-detail{grid-template-columns:1fr;gap:1.8rem;padding:1.35rem}.company-detail>:last-child{grid-column:auto}.capability-card{min-height:230px}.work-card{min-height:350px}.work-card-meta{align-items:flex-start;flex-direction:column;gap:.3rem}.metrics{grid-template-columns:1fr}.contact-card{grid-column:auto}.site-footer{grid-template-columns:1fr;gap:.6rem;padding:1.5rem 0}.site-footer span:nth-child(2){text-align:left}.site-footer a{justify-self:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}