@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#111213;--panel:#191b1e;--text:#f4f5f7;--muted:#a4a8ae;--line:#33363b;--blue:#9aaeff;--accent:#b8c4ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip{position:fixed;top:-80px;left:24px;background:white;color:black;padding:12px;z-index:20}.skip:focus{top:12px}header{height:98px;max-width:1440px;margin:auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:Manrope,sans-serif;font-weight:800;font-size:35px;letter-spacing:-2px}.wordmark span{color:var(--blue)}nav{display:flex;gap:36px;font-size:14px}nav a{color:#c2c5ca;transition:color .2s}nav a:hover,nav a.active{color:var(--blue)}.nav-contact{font-size:14px;display:flex;gap:22px}main{max-width:1440px;margin:auto}.hero{padding:42px 6% 0}.eyebrow{display:flex;justify-content:space-between;color:#9fa3ab;font-size:12px;letter-spacing:1.5px}.hero-layout{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:40px;padding:62px 0 65px}.intro{color:#d1d3d9;margin:0 0 23px;font-size:19px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(3.4rem,5.9vw,5.4rem);line-height:1.1;letter-spacing:-.055em;font-weight:500;margin-bottom:28px}h1 span{color:var(--blue)}.hero-description{max-width:410px;color:#adb1b9;font-size:18px;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:15px 22px;background:var(--accent);color:#161a30;border-radius:3px;font-weight:600;font-size:14px;transition:transform .2s,background .2s;margin-top:17px}.button:hover{transform:translateY(-3px);background:#d1d9ff}.button span{font-size:22px}.hero-visual{position:relative;isolation:isolate;min-height:465px;overflow:hidden;background:radial-gradient(ellipse at 50% 53%,#262f63 0%,#171c30 37%,#141619 70%);border:1px solid #2c303b;border-radius:4px}.visual-label{position:absolute;top:24px;left:27px;font-size:12px;letter-spacing:2px;color:#adb6d5}.orbit{position:absolute;inset:22% 15%;border:1px solid #7789c36b;border-radius:50%;transform:rotate(-35deg);animation:orbit 26s linear infinite}.orbit-two{inset:13% 25%;transform:rotate(45deg);animation-direction:reverse;animation-duration:30s}.orbit-three{inset:31% 7%;transform:rotate(15deg);animation-duration:34s}.core{position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);font-family:Manrope,sans-serif;font-size:125px;letter-spacing:-14px;font-weight:500;color:#e5e9ff;text-shadow:0 0 70px #8799ff80}.core span{color:#aebeff}.orbit-label{position:absolute;font-size:12px;letter-spacing:1.2px;background:#1b2239;color:#c1cced;padding:7px 12px;border:1px solid #52638a;border-radius:30px}.label-one{left:11%;top:27%}.label-two{right:6%;top:55%}.label-three{bottom:24%;left:15%}.visual-bottom{position:absolute;bottom:23px;left:27px;color:#8a95b7;font-size:12px;line-height:1.6;letter-spacing:1.3px}.hero-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 0;color:#9ca1ab;font-size:12px;letter-spacing:.5px}.hero-footer b{color:#e7e9ec;margin-left:18px;font-size:14px;font-weight:500;letter-spacing:0}.hero-footer a span{margin-left:22px}.section{padding:110px 6%;display:grid;grid-template-columns:1fr 3fr;gap:40px;border-top:1px solid var(--line);scroll-margin-top:20px}.section-kicker{font-size:12px;letter-spacing:1.6px;color:#9ca5b8;padding-top:9px}h2{font-size:clamp(2.1rem,3.7vw,3.35rem);font-weight:500;letter-spacing:-.045em;line-height:1.19;margin-bottom:36px}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:35px;color:var(--muted);max-width:840px}.credentials{display:flex;gap:80px;margin-top:36px}.credentials span{font-size:12px;color:#9298a6}.credentials strong{display:block;font-size:24px;font-family:Manrope,sans-serif;font-weight:500;color:#d6deff;margin-top:5px}.credentials p{font-size:14px;color:#a4a8ae;margin-top:4px;margin-bottom:0}.work{background:#17191c}.section-heading{display:flex;justify-content:space-between;gap:32px}.section-heading>p{font-size:14px;color:#9299a8;padding-top:8px}.work-list{margin-top:12px}details{border-top:1px solid #3a3e47}details:last-child{border-bottom:1px solid #3a3e47}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:26px;padding:27px 0;font-family:Manrope,sans-serif;font-size:23px;line-height:1.4}summary::-webkit-details-marker{display:none}.number{font-family:'DM Sans',sans-serif;color:#909aaf;font-size:12px}.toggle{margin-left:auto;color:#9fb2ff;font-size:27px;transition:transform .2s}details[open] .toggle{transform:rotate(45deg)}.detail-body{padding:0 45px 30px;color:#aab0be;max-width:660px}.detail-body p{margin-bottom:20px}.tags{display:flex;flex-wrap:wrap;gap:9px}.tags span{border:1px solid #3f4659;padding:5px 10px;border-radius:3px;font-size:12px;color:#c4cce0}.current-role{display:grid;grid-template-columns:1fr 3fr;gap:28px;border-top:1px solid var(--line);padding-top:30px;margin-top:45px}.small-label{font-size:12px;letter-spacing:1px;color:#a7b8ff;padding-top:5px}h3{font-size:23px;font-weight:500;letter-spacing:-.025em;margin-bottom:5px}.company{font-size:17px;color:#c3ceff;margin-bottom:20px}.current-role p:last-child{color:var(--muted);max-width:530px}.perspective{border-top:1px solid var(--line);margin-top:14px;padding-top:28px;color:var(--muted)}.perspective p{max-width:640px}.text-link{color:#c4d0ff;border-bottom:1px solid #636f9c;padding-bottom:8px;display:inline-block;font-size:14px}.text-link span{margin-left:24px}.personal{background:#eff0f3;color:#202329}.personal .section-kicker{color:#5d6574}.personal-intro{color:#646976}.interest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}.interest-grid article{border-top:1px solid #b7bbc5;padding-top:22px}.interest-index{color:#6d7690;font-size:13px}.interest-grid h3{font-size:18px;line-height:1.4;margin:18px 0 12px}.interest-grid p{font-size:15px;color:#626977}.contact{margin:0;padding:85px 6%;background:#b9c7ff;color:#121c3b}.contact .section-kicker{color:#36446b;margin-bottom:30px}.contact h2{font-size:clamp(2.6rem,5.4vw,5rem)}.contact h2 span{color:#485a94}.contact-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center}.contact-bottom p{color:#38496f;margin-bottom:0}.light{background:#151e3a;color:#f2f4ff;margin-top:0}.light:hover{background:#293656}footer{display:flex;align-items:center;justify-content:space-between;padding:32px 6%;max-width:1440px;margin:auto;gap:20px}footer>span,footer>a:last-child{font-size:12px;color:#999faa}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes orbit{to{transform:rotate(325deg)}}@media(min-width:1600px){body{border-left:1px solid #222}}@media(max-width:950px){.hero-layout{gap:25px}.hero-visual{min-height:400px}.section{grid-template-columns:1fr;gap:28px;padding-top:75px;padding-bottom:75px}.section-heading>p{max-width:160px}.hero-footer{font-size:11px}.hero-footer b{display:block;margin:4px 0 0}.eyebrow{font-size:10px}.hero-layout{padding:45px 0}.core{font-size:105px}}@media(max-width:640px){header{height:78px;padding:0 6%}nav{gap:16px;font-size:12px}nav a:nth-child(3){display:none}.nav-contact{font-size:12px;gap:8px}.wordmark{font-size:30px}.hero{padding-top:26px}.eyebrow span:last-child{display:none}.hero-layout{grid-template-columns:1fr;padding-top:36px;gap:37px}h1{font-size:clamp(2.9rem,11vw,4.1rem)}.hero-visual{min-height:360px}.hero-description{font-size:17px}.hero-footer{align-items:center}.hero-footer>a{max-width:110px;text-align:right}.hero-footer a span{margin-left:0}.section{padding-top:60px;padding-bottom:60px}.about-copy{grid-template-columns:1fr;gap:0}.credentials{gap:25px;justify-content:space-between}.credentials strong{font-size:20px}.section-heading{display:block}.section-heading>p{max-width:none;margin-top:-10px;margin-bottom:28px}summary{font-size:19px;gap:16px}.detail-body{padding-left:30px;padding-right:5px}.current-role{grid-template-columns:1fr;gap:15px}.interest-grid{grid-template-columns:1fr;gap:20px}.interest-grid h3{margin-top:8px}.contact{padding-top:60px;padding-bottom:60px}.contact-bottom{display:block}.contact-bottom .button{margin-top:25px}footer{flex-wrap:wrap}footer>span{order:3;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit{animation:none}.reveal{opacity:1;transform:none;transition:none}*{transition:none!important}}

.intro{display:flex;align-items:center;gap:13px}.intro img{border-radius:50%;object-fit:cover;border:1px solid #727a91}
/* Portrait-led second edition */
.hero-layout{align-items:start;grid-template-columns:1.06fr 1fr;gap:36px;padding-top:48px;padding-bottom:55px}.hero-copy{padding-top:30px}.hero-note{margin-top:72px;border-left:1px solid #525f88;padding-left:22px}.hero-note p{font-size:20px;line-height:1.65;color:#b3bdce;margin:13px 0 0}.portrait-stage{position:sticky;top:28px;height:650px;min-height:0;border:0;overflow:visible;background:none;--scroll:0;--px:0;--py:0;isolation:isolate}.portrait-frame{position:absolute;inset:0 3% 0 3%;overflow:hidden;border-radius:46% 46% 8px 8px;background:#16181d;transform:translate3d(0,calc(var(--scroll)*-20px),0) scale(calc(1 - var(--scroll)*.035));will-change:transform}.hero-portrait{height:100%;width:100%;object-fit:cover;object-position:50% 30%;display:block;transform:scale(1.06) translate3d(calc(var(--px)*-5px),calc(var(--py)*-5px),0);will-change:transform}.portrait-frame:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#111213)}.portrait-halo{position:absolute;inset:8% -5% 0;border-radius:50%;background:radial-gradient(ellipse,#829aff25,transparent 65%);z-index:-1}.portrait-orbit{position:absolute;left:-5%;top:11%;width:110%;height:70%;border:1px solid #8498d42e;border-radius:50%;transform:rotate(calc(-22deg + var(--scroll)*30deg));z-index:-1}.float-ball{position:absolute;display:grid;place-items:center;border-radius:50%;border:1px solid #bfcfff6b;box-shadow:inset -12px -18px 28px #090e3940,0 15px 35px #0004,inset 4px 5px 18px #ffffff60;color:#162141;font-family:Manrope,sans-serif;font-weight:600;font-size:14px;will-change:transform;transform:translate3d(calc(var(--px)*var(--depth)*1px + var(--scroll)*var(--sx)*1px),calc(var(--py)*var(--depth)*1px + var(--scroll)*var(--sy)*1px + var(--float)*1px),0)}.ball-strategy{width:112px;height:112px;top:12%;left:-7%;background:radial-gradient(circle at 28% 24%,#f0f3ff,#bacaff 43%,#7187cd);--depth:16;--sx:28;--sy:95;--float:0}.ball-value{width:90px;height:90px;right:-4%;top:41%;background:radial-gradient(circle at 30% 22%,#f0f2ff,#a1ade4 48%,#58649a);--depth:24;--sx:-25;--sy:-65;--float:0}.ball-risk{width:72px;height:72px;bottom:14%;left:-1%;background:radial-gradient(circle at 28% 20%,#d1d8ea,#7d8bad 43%,#4a536e);color:#111a30;--depth:12;--sx:-12;--sy:-90;--float:0}.ball-ai{width:56px;height:56px;right:9%;top:5%;background:radial-gradient(circle at 28% 20%,#fff,#d8dce5 43%,#8c98b7);--depth:20;--sx:20;--sy:60;--float:0}.portrait-caption{position:absolute;bottom:29px;left:15%;right:15%;text-align:center;pointer-events:none}.portrait-caption>span{font-size:11px;letter-spacing:2px;color:#d6deee}.portrait-caption small{display:block;font-size:14px;color:#a5b2ce;margin-top:5px}.motion-toggle{position:absolute;right:0;bottom:-9px;border:0;border-bottom:1px solid #667494;background:none;color:#aab7d2;padding:8px 0;font:12px 'DM Sans',sans-serif;cursor:pointer}.motion-toggle:focus-visible{outline:2px solid #b8c4ff;outline-offset:5px}.motion-paused .hero-portrait,.motion-paused .portrait-frame{transform:none}.motion-paused .float-ball{transform:none}.motion-paused .portrait-orbit{transform:rotate(-22deg)}.global-strip{border-top:1px solid var(--line);margin-top:45px;padding-top:25px}.global-strip>span{color:#929dae;font-size:12px;letter-spacing:1.3px}.global-strip p{margin:12px 0 0;font-size:17px;color:#cad3e6;line-height:2}.global-strip i{font-style:normal;color:#667697;padding:0 12px}.section-lead{color:var(--muted);max-width:550px;margin-top:-12px}.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:40px 0 70px}.impact-grid article{border:1px solid #343c4e;background:linear-gradient(140deg,#1c2230,#15181e);padding:27px}.impact-grid h3{font-size:30px;color:#d6dfff;margin:16px 0}.impact-grid p{color:#a9b1c1;font-size:15px;margin-bottom:10px}.impact-grid small{font-size:12px;color:#d1bb8d}.career-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.career-heading h3{font-size:26px}.career-heading span{font-size:12px;color:#929bad;letter-spacing:1px}.career-timeline{border-top:1px solid #353b47}.career-timeline article{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:29px 0;border-bottom:1px solid #303642}.career-date{font-size:13px;color:#aebfe7;padding-top:5px}.career-timeline h3{font-size:22px;margin-bottom:9px}.career-title{font-size:14px;line-height:1.8;color:#bdc8df;margin-bottom:12px}.career-timeline p:last-child{font-size:15px;color:#9ca6b9;margin-bottom:0}.qualification-row{display:flex;flex-wrap:wrap;gap:10px;margin:32px 0}.qualification-row span{font-size:12px;border:1px solid #3c465a;padding:8px 12px;color:#aebad2}.contact-email{display:inline-block;margin-top:18px;border-bottom:1px solid #6374a7;font-size:17px}.contact-email:hover{color:#0d1631}@media(min-width:1100px){.hero-layout{min-height:880px}.hero-note{margin-top:105px}}@media(max-width:950px){.portrait-stage{height:540px;top:20px}.ball-strategy{width:90px;height:90px;left:-5%}.ball-value{width:76px;height:76px;right:-3%}.ball-risk{width:64px;height:64px}.hero-note{margin-top:45px}.hero-note p{font-size:17px}}@media(max-width:640px){.hero-layout{grid-template-columns:1fr;padding-top:20px;gap:36px}.hero-copy{padding-top:0}.hero-note{display:none}.portrait-stage{position:relative;top:0;height:520px;margin:0 8px 15px}.portrait-frame{inset:0 2%}.portrait-caption{bottom:27px}.ball-strategy{left:-4%;top:12%}.ball-value{right:-4%;top:42%}.ball-ai{right:7%}.impact-grid{grid-template-columns:1fr;margin-bottom:45px}.impact-grid article{padding:24px}.career-timeline article{grid-template-columns:1fr;gap:10px}.career-heading{display:block}.career-heading span{display:block;margin-top:9px}.global-strip p{font-size:15px}.global-strip i{padding:0 5px}.hero-description{max-width:100%}.contact-email{font-size:16px}}@media(prefers-reduced-motion:reduce){.hero-portrait,.portrait-frame,.float-ball{transform:none!important}.portrait-orbit{transform:rotate(-22deg)!important}.motion-toggle{display:none}}

/* Full portrait framing and scroll-orbit edition. */
.portrait-stage{height:680px;top:24px}.portrait-frame{inset:0 2%;border-radius:12px;background:#111213;overflow:hidden;transform:translate3d(0,calc(var(--scroll)*-10px),0);z-index:2}.hero-portrait{object-fit:contain;object-position:center center;transform:none;will-change:auto}.portrait-frame:after{inset:88% 0 0}.portrait-halo{inset:3% -3% 1%}.portrait-orbit{z-index:0;left:4%;width:92%;top:5%;height:82%;transform:rotate(calc(-12deg + var(--scroll)*80deg));border-color:#8498d447}.float-ball{z-index:5}.orbit-active .float-ball{left:50%;top:46%;right:auto;bottom:auto;transform:translate(-50%,-50%) translate3d(var(--orb-x,0px),var(--orb-y,0px),0) scale(var(--orb-scale,1))}.portrait-caption{bottom:7px;z-index:6}.motion-toggle{bottom:-33px;z-index:6}.ball-strategy{left:0;top:15%;width:102px;height:102px}.ball-value{right:0;top:43%;width:84px;height:84px}.ball-risk{left:4%;bottom:12%}.ball-ai{right:12%;top:4%}.hero-note{margin-top:110px}@media(min-width:1100px){.hero-layout{min-height:1100px}.hero-copy{position:sticky;top:40px;align-self:start}.hero-note{margin-top:70px}}@media(max-width:950px){.portrait-stage{height:560px}.ball-strategy{width:86px;height:86px}.ball-value{width:74px;height:74px}.hero-note{margin-top:45px}}@media(max-width:640px){.portrait-stage{height:auto;aspect-ratio:3/4.7;min-height:470px;max-height:650px;position:relative;top:0;margin:0 0 35px}.portrait-frame{inset:0}.portrait-caption{bottom:3px}.ball-strategy{width:80px;height:80px}.ball-value{width:68px;height:68px}.ball-risk{width:60px;height:60px}.ball-ai{width:50px;height:50px}.float-ball{font-size:12px}.hero-layout{overflow:clip}.motion-toggle{bottom:-28px}}@media(prefers-reduced-motion:reduce){.hero-note:after{display:none}.portrait-frame{transform:none!important}}

/* Seamless image treatment; preserve face and hair while dissolving edges. */
.portrait-frame{background:transparent;border-radius:0;overflow:visible}.portrait-frame:after{display:none}.hero-portrait{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 5%,#000 78%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 5%,#000 78%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.portrait-orbit{transform:rotate(calc(-12deg + var(--scroll)*16deg))}.contact-phone{display:block;width:fit-content;font-size:17px;margin-top:13px;border-bottom:1px solid #6374a7}.contact-form{margin-top:52px;padding-top:32px;border-top:1px solid #7184b4}.contact-form h3{font-size:26px;margin-bottom:24px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form label{display:block;font-size:14px;margin-bottom:7px;color:#25365f}.contact-form input,.contact-form textarea{width:100%;padding:13px 15px;font:16px 'DM Sans',sans-serif;line-height:1.5;color:#142141;background:#d9e1ff;border:1px solid #7487ba;border-radius:3px}.contact-form textarea{resize:vertical;min-height:135px}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #273e76;outline-offset:3px}.message-field{grid-column:1/-1}.form-actions{display:flex;align-items:center;gap:25px;margin-top:22px}.form-actions button{border:0;cursor:pointer;font-family:inherit}.form-actions p{font-size:13px;line-height:1.6;color:#354b7a;margin:0}#contact-status{font-size:14px;max-width:650px;margin:18px 0 0}#contact-status:empty{display:none}@media(max-width:640px){.form-fields{grid-template-columns:1fr}.form-actions{align-items:flex-start;flex-direction:column;gap:16px}.contact-form{margin-top:38px}.form-actions .button{margin-top:0}}

/* Match masks to the actual 3:4 raster, never its letterboxed container.
   Separate nested masks avoid browser differences in mask compositing. */
.portrait-frame{inset:auto;left:50%;top:50%;width:min(96%,510px);height:auto;aspect-ratio:3/4;transform:translate(-50%,-50%) translateY(calc(var(--scroll)*-10px));background:transparent;overflow:visible;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 4%,#000 22%,#000 78%,rgba(0,0,0,.18) 96%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 4%,#000 22%,#000 78%,rgba(0,0,0,.18) 96%,transparent 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.hero-portrait{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:initial;transform:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 6%,#000 76%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 6%,#000 76%,transparent 100%);-webkit-mask-composite:source-over;mask-composite:add;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.motion-paused .portrait-frame{transform:translate(-50%,-50%)}@media(max-width:950px){.portrait-frame{width:min(96%,420px)}}@media(max-width:640px){.portrait-frame{inset:auto;left:50%;top:50%;width:100%;height:auto}}@media(prefers-reduced-motion:reduce){.portrait-frame{transform:translate(-50%,-50%)!important}}

/* Rear half of the orbit passes beneath the portrait, including its head. */
.ball-strategy,.ball-ai,.ball-value{z-index:1}.ball-risk{z-index:5}.portrait-frame{z-index:2}

/* Real transparent person layer: rear spheres are hidden only by the silhouette. */
.portrait-frame{background:transparent;-webkit-mask-image:none;mask-image:none;z-index:2}.hero-portrait{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 84%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 84%,transparent 100%)}.portrait-halo{z-index:-1;background:radial-gradient(ellipse at 50% 43%,#829aff14,transparent 68%)}

/* Neutral, image-free studio lighting behind the transparent portrait. */
.portrait-stage{background:transparent;box-shadow:none;filter:none}.portrait-frame,.hero-portrait{box-shadow:none;filter:none}.portrait-halo{inset:0;z-index:-1;border-radius:0;background:radial-gradient(ellipse at 50% 42%,#252525 0%,#191919 35%,#111213 72%)}
