/* Portrait edition: a personal editorial spread within the engineering identity. */
.hero-about-link{pointer-events:auto;position:relative;padding-bottom:6px}.hero-about-link:after{content:'';position:absolute;bottom:0;left:0;width:28px;height:1px;background:var(--blue);transition:transform .3s var(--ease);transform-origin:left}.hero-about-link:hover:after{transform:scaleX(2)}
.portrait-profile{display:block;background:#e5e8ee;padding-top:100px;padding-bottom:90px}.profile-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:60px}.profile-intro .section-label{margin-bottom:22px}.profile-intro h2{font-size:clamp(36px,4.8vw,70px);line-height:1.15;max-width:850px}.profile-contact{margin-bottom:8px}.profile-contact .external-icon:before{box-shadow:-2px 2px 0 #e5e8ee}.portrait-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(45px,8vw,135px);align-items:start}.portrait-figure{margin:0;position:sticky;top:45px}.portrait-mat{position:relative;isolation:isolate;overflow:hidden;background:#d8dce3;aspect-ratio:4/5}.portrait-photo{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.portrait-accent{position:absolute;left:0;top:0;width:5px;height:90px;background:var(--blue)}.portrait-figure figcaption{display:flex;align-items:center;justify-content:space-between;padding:21px 0;border-bottom:1px solid #bec5cf;gap:20px}.portrait-figure figcaption strong{display:block;font-size:16px;font-weight:500;letter-spacing:-.3px}.portrait-figure figcaption span{display:block;font-size:12px;margin-top:6px;color:var(--muted)}.portrait-figure figcaption>img{width:28px;height:34px}.profile-story{padding-top:12px}.profile-story>.profile-lead{font-family:'Sora',sans-serif;font-weight:400;font-size:clamp(23px,2.55vw,37px);letter-spacing:-.05em;line-height:1.38;color:var(--ink);margin-bottom:28px}.profile-story>p{font-size:17px;line-height:1.8;color:#505969;max-width:570px;margin-bottom:20px}.personal-details{display:grid;grid-template-columns:1fr 1fr;gap:28px 25px;padding:30px 0;border-top:1px solid #bdc4cf;margin-top:30px}.personal-details>div>span{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}.personal-details strong{font-weight:500;font-size:15px;line-height:1.5;display:block}.personal-details p{font-size:12px;line-height:1.6;color:var(--muted);margin-top:5px}.profile-experience-link{display:flex;align-items:center;justify-content:space-between;font-size:14px;padding:14px 0;gap:30px;border-bottom:1px solid #bdc4cf}.link-track{display:block;height:1px;width:70px;background:#aeb7c7;position:relative}.link-track i{display:block;position:absolute;right:0;top:-3px;width:7px;height:7px;background:var(--blue);transform:rotate(45deg);transition:transform .4s var(--ease)}.profile-experience-link:hover .link-track i{transform:translateX(-28px) rotate(135deg)}.expertise{margin-top:90px}.expertise-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.expertise-heading>h3{font-family:'Sora',sans-serif;font-size:32px;font-weight:400;letter-spacing:-1.5px}.expertise-heading>p{font-size:14px;color:var(--muted);line-height:1.5}.expertise-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.expertise-item{border-top:1px solid #aeb7c7}.expertise-item summary{list-style:none;cursor:pointer;padding:23px 0 18px}.expertise-item summary::-webkit-details-marker{display:none}.expertise-heading-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.expertise-heading-row strong{font-size:18px;font-weight:500;letter-spacing:-.4px}.expertise-toggle{font-size:24px;color:var(--blue);transition:transform .25s var(--ease)}.expertise-item[open] .expertise-toggle{transform:rotate(45deg)}.expertise-tools{font-size:13px;color:var(--muted);display:block;line-height:1.6;margin-top:13px}.expertise-detail{padding-bottom:18px}.expertise-detail>p{font-size:14px;line-height:1.8;color:#505969;min-height:76px}.expertise-project{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;text-align:left;font-size:13px;padding:18px 0 8px;color:var(--blue)}.expertise-project>span{font-size:20px}.expertise-project .external-icon:before{box-shadow:-2px 2px 0 #e5e8ee}.section-dock{position:fixed;left:50%;bottom:24px;transform:translate(-50%,25px);display:flex;align-items:center;gap:6px;padding:8px 12px;z-index:60;background:#f9fafdF2;border:1px solid #d0d5df;box-shadow:0 6px 25px #17213c12;backdrop-filter:blur(18px);opacity:0;visibility:hidden;transition:transform .45s var(--ease),opacity .3s,visibility .3s}.section-dock.is-visible{transform:translate(-50%,0);opacity:1;visibility:visible}.section-dock>a{font-size:13px;padding:13px 16px;position:relative;white-space:nowrap;transition:background .25s,color .25s}.section-dock>a.is-active{background:var(--blue);color:white}.section-dock>a:hover:not(.is-active){background:#e9ecf3}.section-dock .dock-home{padding:8px 12px 8px 3px;margin-right:7px;border-right:1px solid var(--line)}.dock-home img{width:20px;height:24px}.dock-progress{position:absolute;left:-1px;right:-1px;bottom:-1px;height:2px;overflow:hidden}.dock-progress i{height:100%;display:block;background:var(--blue);transform:scaleX(0);transform-origin:left}.contact-section footer{padding-bottom:75px}.modal-open .section-dock{visibility:hidden;opacity:0}.portrait-reveal-ready .portrait-photo{opacity:0;transform:translateY(24px) scale(1.015)}.portrait-reveal-ready .portrait-figure figcaption{opacity:0;transform:translateY(12px)}.portrait-reveal-ready.is-in-view .portrait-photo{opacity:1;transform:none;transition:transform 1s var(--ease),opacity .8s}.portrait-reveal-ready.is-in-view .portrait-figure figcaption{opacity:1;transform:none;transition:transform .7s .12s var(--ease),opacity .7s .12s}.motion-off .portrait-photo,.motion-off .portrait-figure figcaption{opacity:1;transform:none}.motion-off .section-dock.is-visible{transform:translate(-50%,0)}
@supports(animation-timeline:scroll()){@media(prefers-reduced-motion:no-preference){body:not(.motion-off) .dock-progress i{animation:scroll-progress linear;animation-timeline:scroll(root block)}}}
@media(max-width:1100px) and (min-width:761px){.portrait-layout{grid-template-columns:.85fr 1.15fr;gap:40px}.profile-story{padding-top:0}.profile-story>p{font-size:16px}.personal-details{grid-template-columns:1fr;gap:20px}.portrait-figure{top:30px}.expertise-grid{gap:25px}.expertise-heading-row strong{font-size:16px}}
@media(max-width:760px){.site-header nav{gap:15px}.site-header nav>a{font-size:12px}.nav-count{font-size:10px}.motion-control{padding:8px}.portrait-profile{padding-top:65px;padding-bottom:65px}.profile-intro{display:block;margin-bottom:32px}.profile-intro .section-label{margin-bottom:20px}.profile-intro h2{font-size:36px;line-height:1.18;max-width:500px}.profile-intro h2 br{display:none}.profile-contact{margin-top:20px;font-size:13px;margin-bottom:0}.portrait-layout{display:flex;flex-direction:column;gap:32px}.portrait-figure{position:relative;top:auto;width:100%;max-width:450px;align-self:center}.portrait-mat{aspect-ratio:4/4.6}.portrait-photo{object-position:center 42%}.portrait-accent{height:65px;width:4px}.portrait-figure figcaption{padding:17px 0}.portrait-figure figcaption strong{font-size:16px}.portrait-figure figcaption span{font-size:12px}.profile-story{padding-top:0}.profile-story>.profile-lead{font-size:27px;line-height:1.4;margin-bottom:25px;letter-spacing:-1px}.profile-story>p{font-size:16px;line-height:1.8}.personal-details{grid-template-columns:1fr 1fr;gap:25px 20px;padding-top:25px}.personal-details strong{font-size:14px}.personal-details>div>span,.personal-details p{font-size:12px}.expertise{margin-top:50px}.expertise-heading{display:block;margin-bottom:25px}.expertise-heading>h3{font-size:30px}.expertise-heading>p{font-size:14px;margin-top:13px}.expertise-grid{grid-template-columns:1fr;gap:15px}.expertise-heading-row strong{font-size:18px}.expertise-detail>p{min-height:0;font-size:14px}.expertise-item summary{padding:20px 0 13px}.expertise-project{padding:15px 0 8px;font-size:14px}.section-dock{bottom:12px;max-width:calc(100% - 24px);width:max-content;gap:0;padding:6px}.section-dock>a{font-size:12px;padding:13px 12px}.section-dock .dock-home{padding:8px;margin-right:4px}.dock-home img{width:17px;height:20px}.contact-section footer{padding-bottom:65px}}
@media(max-width:370px){.site-header nav{gap:11px}.site-header nav>a{font-size:11px}.personal-details{grid-template-columns:1fr}.section-dock>a{font-size:11px;padding:12px 10px}}
@media(prefers-reduced-motion:reduce){.portrait-photo,.portrait-figure figcaption{opacity:1!important;transform:none!important}}
/* Keep focused controls clear of the floating navigation. */
html{scroll-padding-bottom:110px}a,button,summary{scroll-margin-bottom:110px}.section-dock a{scroll-margin-bottom:0}
@media(max-width:450px){.experience-heading{flex-direction:column;align-items:flex-start;gap:15px}.experience-heading a{margin-top:0}.tasees-word{font-size:clamp(106px,33vw,130px)}}
