:root{color:#e8ece8;font-synthesis:none;text-rendering:optimizelegibility;--edge:clamp(1.25rem, 4vw, 4.5rem);--earth:#91a197;--sand:#ddc28b;--muted:#87928d;background:#030607;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:auto;background:#030607}body{background:#030607;min-width:320px;margin:0}button,a{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:4px;outline:2px solid}.application-shell[data-mode=portfolio] .journey-experience{visibility:hidden;pointer-events:none;position:fixed;inset:0;overflow:hidden}.mode-switch{color:#e2e9e394;background:#0308094d;border:1px solid #e2e9e31f;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:.55rem;min-width:8.5rem;padding:.35rem .55rem;display:flex}.mode-switch button{color:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:0;font-size:.54rem;font-weight:600;transition:color .18s}.mode-switch button.is-active{color:var(--sand)}.mode-switch i{opacity:.35;background:currentColor;width:1.4rem;height:1px}.mode-switch button:focus-visible{outline-offset:4px;outline:1px solid}.application-shell[data-mode=portfolio] .mode-switch{color:#1c28238a;background:0 0;border-color:#1c28231f}.application-shell[data-mode=portfolio] .mode-switch button.is-active{color:#17201d}.journey{background:#030607;height:2696vh;position:relative}.scene-shell{width:100%;height:100vh;position:sticky;top:0;overflow:hidden}.scene-shell canvas{pointer-events:none;width:100%;height:100%;display:block}.scene-shell:after{content:"";pointer-events:none;background:radial-gradient(circle at 58% 48%,#0000 25%,#0104052e 64%,#010304c7 120%),linear-gradient(90deg,#0205066b,#0000 40%);position:absolute;inset:0}.journey-ui{z-index:10;pointer-events:none;height:100vh;margin-top:-100vh;position:sticky;top:0}.journey-ui .chapter-stack{transition:opacity .42s,visibility 0s linear .42s}.journey-ui.mode-story .chapter-stack,.journey-ui.story-transition .chapter-stack{opacity:0;visibility:hidden}.masthead{z-index:10;color:#eef3efdb;letter-spacing:.18em;text-transform:uppercase;pointer-events:auto;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-height:4rem;padding:0 clamp(1.25rem,3vw,3rem);font-size:.66rem;font-weight:500;display:grid;position:absolute;top:0;left:0}.masthead>.brand{justify-self:start}.masthead>.mode-switch{justify-self:center}.masthead a,.masthead button{text-decoration:none}.masthead button{color:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.masthead .brand{letter-spacing:.06em;text-transform:none;font-size:.72rem}.masthead>:last-child{justify-self:end}.masthead a:focus-visible,.masthead button:focus-visible,.journey-controls button:focus-visible{outline:1px solid var(--sand);outline-offset:5px}.chapter-stack{left:var(--edge);width:min(32rem,68vw);position:absolute;top:50%;transform:translateY(-50%)}.chapter{opacity:0;transition:opacity .52s,transform .65s cubic-bezier(.2,.75,.2,1);position:absolute;inset:0 auto auto 0;transform:translateY(1.5rem)}.chapter.is-active{opacity:1;transform:translateY(0)}.chapter p,.eyebrow{color:var(--sand);letter-spacing:.23em;text-transform:uppercase;margin:0 0 1rem;font-size:.64rem;font-weight:500}.chapter h2{letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(2rem,4.5vw,4.8rem);font-weight:350;line-height:.94}.chapter span{color:#aab2ad;letter-spacing:.08em;margin-top:1.35rem;font-size:clamp(.75rem,1.2vw,.9rem);font-weight:300;display:block}.chapter.is-bridge h2{letter-spacing:-.025em;max-width:18ch;font-size:clamp(1.45rem,3vw,2.8rem);line-height:1.05}.chapter.is-bridge span{max-width:24rem}.chapter.is-silent{display:none}.journey-controls{right:var(--edge);bottom:2.3rem;left:var(--edge);pointer-events:auto;grid-template-columns:auto minmax(7rem,1fr) auto;align-items:center;gap:1rem;display:grid;position:absolute}.progress-label{color:#c9d1cc;letter-spacing:.1em;gap:.35rem;font-size:.58rem;display:flex}.progress-label span+span:before{content:"/ ";color:#59645f}.progress-track{background:#becac22e;height:1px;overflow:hidden}.progress-track i{background:linear-gradient(90deg, var(--sand), #8eaaa3);transform-origin:0;will-change:transform;width:100%;height:100%;display:block}.journey-controls nav{gap:.3rem;display:flex}.journey-controls button{color:#0000;cursor:pointer;background:0 0;border:1px solid #e5eae673;border-radius:50%;width:.45rem;height:.45rem;padding:0;transition:background .2s,border-color .2s,transform .2s;overflow:hidden}.journey-controls button.is-active{background:var(--sand);border-color:var(--sand);transform:scale(1.25)}.scroll-cue{right:var(--edge);color:#d2dbd59e;letter-spacing:.17em;writing-mode:vertical-rl;align-items:center;gap:.65rem;font-size:.57rem;display:flex;position:absolute;top:50%}.scroll-cue i{background:linear-gradient(var(--sand), transparent);width:1px;height:2.6rem;animation:1.8s ease-in-out infinite scroll-pulse;display:block}@keyframes scroll-pulse{0%,to{transform-origin:top;opacity:.4;transform:scaleY(.35)}50%{opacity:1;transform:scaleY(1)}}.world-loader{z-index:8;opacity:0;visibility:hidden;background:radial-gradient(circle at 50% 46%,#102226,#030607 58%);flex-direction:column;justify-content:center;align-items:center;gap:.45rem;transition:opacity .7s,visibility 0s linear .7s;display:flex;position:absolute;inset:0}.world-loader.is-visible{opacity:1;visibility:visible;transition-delay:0s}.world-loader p{color:var(--sand);letter-spacing:.25em;text-transform:uppercase;margin:0 0 .75rem;font-size:.58rem}.world-loader strong{letter-spacing:-.03em;text-transform:uppercase;margin-bottom:1.25rem;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:300}.world-loader span{color:#6f7b76;letter-spacing:.14em;text-transform:uppercase;min-width:11rem;padding-left:1rem;font-size:.58rem;position:relative}.world-loader span:before{content:"";border:1px solid;border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.26rem;left:0}.world-loader span.ready{color:#a9b8af}.world-loader span.ready:before{background:#91a99a}.world-loader span.failed{color:#bb9675}.geo-debug{z-index:7;top:5rem;right:var(--edge);color:#aebbb4;letter-spacing:.08em;pointer-events:none;background:#030809c7;border:1px solid #d1ded62e;gap:.28rem;min-width:15rem;padding:.9rem;font:500 .56rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid;position:absolute}.geo-debug b{color:var(--sand);margin-bottom:.35rem;font-weight:600}.destination-chapter{z-index:1;color:#edf0e9;width:100%;height:100vh;opacity:var(--chapter-opacity);visibility:hidden;pointer-events:none;transform:scale(calc(.975 + var(--chapter-enter) * .025));transform-origin:70% 52%;will-change:opacity, transform;background:#07100f;margin-top:-100vh;transition:visibility 0s linear .5s;position:sticky;top:0;overflow:hidden}.destination-chapter[aria-hidden=false]{visibility:visible;transition-delay:0s}.story-scene{background:linear-gradient(152deg,#101c1a 0%,#1d302a 45%,#8d8368 135%);position:absolute;inset:0;overflow:hidden}.story-scene:before{content:"";background:radial-gradient(circle at 68% 42%,#c4ba9133,#0000 22%),linear-gradient(90deg,#030909d6,#0000 62%);position:absolute;inset:0}.story-scene__horizon{opacity:.76;clip-path:polygon(0 80%,14% 54%,28% 65%,46% 25%,62% 49%,76% 18%,100% 51%,100% 100%,0 100%);background:linear-gradient(145deg,#0000 0 32%,#293c34 32.2% 44%,#172b27 44.2% 57%,#0d1e1c 57.2%);width:76%;height:72%;position:absolute;bottom:-12%;right:-8%}.story-scene__contours{aspect-ratio:1.35;opacity:.16;width:min(42rem,58vw);transform:rotate(-9deg) scale(calc(.9 + var(--chapter-progress) * .1));background:repeating-radial-gradient(at 52% 54%,#0000 0 19px,#e4d8ae 20px 21px);border-radius:50%;position:absolute;top:11%;right:3%}.story-scene__place{right:var(--edge);color:#dee4d821;letter-spacing:.08em;text-transform:uppercase;writing-mode:vertical-rl;font-size:clamp(2rem,5vw,5rem);font-weight:400;position:absolute;top:19%}.destination-chapter__frame{height:100%;padding:clamp(6.5rem, 13vh, 9rem) var(--edge) 6.5rem;grid-template-rows:1fr auto;grid-template-columns:.7fr 1.3fr;gap:2rem 7vw;display:grid;position:relative}.destination-chapter__identity{transform:translateY(calc((1 - var(--chapter-enter)) * 2.5rem));align-self:center}.destination-chapter__identity p{color:var(--sand);letter-spacing:.24em;text-transform:uppercase;margin:0 0 1.2rem;font-size:.62rem}.destination-chapter__identity h2{letter-spacing:-.05em;text-transform:uppercase;margin:0;font-size:clamp(2.4rem,5.5vw,5.8rem);font-weight:350;line-height:.9}.destination-chapter__identity>span{color:#b5c0b8;letter-spacing:.15em;text-transform:uppercase;margin-top:1rem;font-size:clamp(.68rem,1vw,.82rem);display:block}.destination-chapter__context{align-self:center;max-width:35rem;padding-top:2rem}.destination-chapter__context>p{margin:0 0 2rem;font-family:inherit;font-size:clamp(1.35rem,2.6vw,2.35rem);font-style:normal;font-weight:350;line-height:1.35}.destination-chapter__milestones{border-top:1px solid #e4e9df3b;display:grid}.destination-chapter__milestones span{color:#bec8c0;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #e4e9df24;grid-template-columns:2rem 1fr;padding:.8rem 0;font-size:.67rem;display:grid}.destination-chapter__milestones b{color:var(--sand);font-weight:500}.education-timeline{border-top:1px solid #e4e9df33;grid-template-columns:repeat(4,1fr);gap:.45rem;margin-top:1.5rem;padding-top:1.1rem;display:grid;position:relative}.education-timeline__label{background:#172421;padding-right:.6rem;position:absolute;top:-.55rem;left:0;color:var(--sand)!important;letter-spacing:.16em!important;font-size:.48rem!important}.education-timeline span{color:#c7d0c8;letter-spacing:.1em;text-transform:uppercase;gap:.45rem;font-size:.54rem;transition:opacity .26s,transform .38s cubic-bezier(.2,.75,.2,1);display:grid}.education-timeline i{border:1px solid var(--sand);background:#172421;border-radius:50%;width:.34rem;height:.34rem}.story-scene--kathmandu{background:linear-gradient(145deg,#0d1718,#1d2928 48%,#776f62 140%)}.story-scene--kathmandu .story-scene__horizon{opacity:.62;clip-path:polygon(0 100%,0 67%,7% 67%,7% 51%,13% 51%,13% 72%,20% 72%,20% 40%,27% 40%,27% 61%,34% 61%,34% 29%,42% 29%,42% 55%,48% 55%,48% 45%,55% 45%,55% 70%,63% 70%,63% 34%,72% 34%,72% 58%,81% 58%,81% 24%,89% 24%,89% 64%,100% 64%,100% 100%);background:linear-gradient(#2f3b37,#101b1b);width:70%;height:68%;bottom:-2%;right:-3%}.story-scene--kathmandu .story-scene__contours{opacity:.1;background:repeating-linear-gradient(90deg,#0000 0 42px,#d7ca9f 43px 44px),repeating-linear-gradient(0deg,#0000 0 42px,#d7ca9f 43px 44px);border-radius:0;transform:perspective(28rem)rotateX(64deg)rotate(-8deg)}.destination-chapter[data-destination=kathmandu] .destination-chapter__context{max-width:27rem}.destination-chapter[data-destination=kathmandu] .destination-chapter__context>p{font-family:inherit;font-size:clamp(1.35rem,2.6vw,2.35rem);font-style:normal;font-weight:350;line-height:1.4}.destination-chapter[data-destination=kathmandu] .destination-chapter__pending{opacity:.74}.story-scene--faridabad{background:linear-gradient(140deg,#071011,#132322 52%,#3f4b42 145%)}.story-scene--faridabad .story-scene__horizon{opacity:.5;clip-path:polygon(0 18%,100% 0,100% 100%,0 100%);transform-origin:bottom;background:repeating-linear-gradient(90deg,#1d312e 0 2px,#0000 2px 5.5rem),repeating-linear-gradient(0deg,#61847c6b 0 1px,#0000 1px 4rem);width:72%;height:72%;bottom:-7%;right:-4%;transform:perspective(34rem)rotateX(58deg)rotate(-5deg)}.story-scene--faridabad .story-scene__contours{opacity:calc(.08 + var(--chapter-progress) * .1);transform:rotate(calc(-12deg + var(--chapter-progress) * 12deg));background:repeating-radial-gradient(circle,#0000 0 34px,#97bcb3 35px 36px)}.story-scene__network{width:min(42rem,52vw);height:58%;opacity:calc(var(--chapter-progress) * .56);transform:scale(calc(.92 + var(--chapter-progress) * .08));background:linear-gradient(28deg,#0000 49.8%,#99beb552 50%,#0000 50.2%),linear-gradient(152deg,#0000 49.8%,#99beb53d 50%,#0000 50.2%);position:absolute;top:17%;right:7%}.story-scene__network i{background:#142724;border:1px solid #b6d1ca;border-radius:50%;width:.52rem;height:.52rem;position:absolute;box-shadow:0 0 1.2rem #8bc0b459}.story-scene__network i:first-child{top:68%;left:4%}.story-scene__network i:nth-child(2){top:31%;left:22%}.story-scene__network i:nth-child(3){top:56%;left:41%}.story-scene__network i:nth-child(4){top:18%;left:58%}.story-scene__network i:nth-child(5){top:48%;left:74%}.story-scene__network i:nth-child(6){top:24%;left:91%}.story-scene__network i:nth-child(7){top:82%;left:66%}.destination-chapter[data-destination=faridabad] .destination-chapter__context{max-width:29rem}.destination-chapter[data-destination=faridabad] .destination-chapter__context>p{letter-spacing:-.02em;text-transform:none;font-family:inherit;font-size:clamp(1.35rem,2.6vw,2.35rem);font-style:normal}.destination-chapter__coda{right:var(--edge);color:#d7decf;letter-spacing:-.02em;text-align:right;max-width:14ch;font-size:clamp(1rem,2vw,1.7rem);font-weight:400;line-height:1.1;transition:opacity .36s,transform .52s cubic-bezier(.2,.75,.2,1);position:absolute;bottom:7.5rem}.destination-chapter__pending{align-self:end;max-width:32rem}.destination-chapter__pending span{color:#87958d;letter-spacing:.18em;text-transform:uppercase;font-size:.56rem;display:block}.destination-chapter__pending strong{color:#d1d8d0;letter-spacing:.15em;margin:.45rem 0;font-size:.72rem;font-weight:500;display:block}.destination-chapter__pending p{color:#77827c;letter-spacing:.08em;margin:0;font-size:.6rem;line-height:1.6}.destination-chapter__timeline{right:var(--edge);color:#8d9891;letter-spacing:.14em;grid-template-columns:1fr auto auto auto;align-items:center;gap:1rem;font-size:.52rem;display:grid;position:absolute;bottom:2.3rem;left:50%}.destination-chapter__timeline i{background:linear-gradient(90deg, var(--sand) calc(var(--chapter-progress) * 100%), #d5ded633 0);height:1px}.geographic-label{color:#dce4dc;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;pointer-events:none;background:#050c0cc2;border:1px solid #e1e6dc3d;padding:.32rem .48rem;font-size:.5rem;font-weight:600;display:block;transform:translateY(-1.7rem)}.geographic-label.is-destination{color:var(--sand);border-color:#ddc28b94}.geographic-label.hierarchy-label{gap:.16rem;min-width:max-content;transition:opacity .12s linear;display:grid;transform:translateY(-2.05rem)}.geographic-label.hierarchy-label small{color:#dce4dc94;letter-spacing:.2em;font-size:.38rem;font-weight:500}.journey-conclusion{z-index:3;width:100%;height:100vh;padding:var(--edge);color:#edf1e9;opacity:var(--conclusion-opacity);visibility:hidden;pointer-events:none;background:#030808c7;flex-direction:column;justify-content:center;margin-top:-100vh;display:flex;position:sticky;top:0}.journey-conclusion[aria-hidden=false]{visibility:visible}.journey-conclusion p{color:var(--sand);letter-spacing:.2em;text-transform:uppercase;margin:0 0 1rem;font-size:.6rem;font-weight:600}.journey-conclusion h2{letter-spacing:-.045em;max-width:17ch;margin:0;font-size:clamp(2.2rem,5vw,5.2rem);font-weight:350;line-height:.95}.journey-conclusion span{color:#b4c0b8;letter-spacing:.045em;margin-top:1.5rem;font-size:clamp(.76rem,1.2vw,.95rem)}.pending{color:#69736e}.accessible-summary{border-top:1px solid #23332d40;max-width:42rem;margin-top:16rem;padding-top:4rem}.accessible-summary h2{letter-spacing:-.045em;font-size:clamp(2rem,5vw,4rem);font-weight:400}.accessible-summary p{color:#46534d;line-height:1.7}.accessible-summary .data-credit{margin-top:2rem;font-size:.72rem;line-height:1.65}.portfolio-mode{color:#17201d;background:#eeeee8;min-height:100vh;display:none}.portfolio-mode.is-active{display:block}.portfolio-mode__header{z-index:20;min-height:4rem;padding:0 var(--edge);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#eeeee8f5;border-bottom:1px solid #1e2c261f;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(1.5rem,3vw,3.5rem);display:grid;position:sticky;top:0}.brand{color:inherit;letter-spacing:.06em;white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:.65rem;padding:0;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.brand__mark{fill:none;stroke:currentColor;stroke-width:.85px;stroke-linecap:round;stroke-linejoin:round;opacity:.5;width:2.35rem;height:.9rem;overflow:visible}.portfolio-header__navigation{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(1.5rem,2.5vw,3rem);min-width:0;display:grid}.portfolio-header__utilities{align-items:center;gap:1rem;display:flex}.portfolio-header__resume{color:#5c665f;letter-spacing:.11em;text-transform:uppercase;font-size:.52rem;font-weight:650;text-decoration:none}.portfolio-mode__header nav{justify-content:flex-end;align-items:center;gap:clamp(.65rem,1.1vw,1.25rem);min-width:0;display:flex}.portfolio-mode__header nav a{color:#47524d;letter-spacing:.11em;text-transform:uppercase;font-size:.54rem;font-weight:600;text-decoration:none}.portfolio-mode__header a:focus-visible{outline-offset:5px;outline:1px solid #17201d}.portfolio-header__menu{color:#34443d;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-self:end;padding:.4rem 0;font-size:.58rem;font-weight:650;display:none}.portfolio-hero{min-height:calc(100vh - 4rem);padding:8rem var(--edge);flex-direction:column;justify-content:center;display:flex}.portfolio-hero h1{letter-spacing:-.065em;text-transform:uppercase;max-width:12ch;margin:0;font-size:clamp(3.6rem,8vw,7.2rem);font-weight:350;line-height:.88}.portfolio-hero>strong{color:#2b3d36;letter-spacing:-.02em;margin-top:1.8rem;font-size:clamp(1.15rem,2vw,1.7rem);font-weight:450}.portfolio-hero>span{color:#756b54;letter-spacing:.12em;text-transform:uppercase;margin-top:.45rem;font-size:.72rem;font-weight:600}.portfolio-hero>p:not(.eyebrow){color:#46524c;max-width:40rem;margin:2.3rem 0;font-size:clamp(1rem,1.65vw,1.3rem);line-height:1.65}.portfolio-hero>div{align-items:center;gap:1.3rem;display:flex}.portfolio-hero__technologies{flex-wrap:wrap;max-width:48rem;margin:-.6rem 0 2.3rem}.portfolio-hero__technologies span{color:#53615a;letter-spacing:.08em;text-transform:uppercase;border:1px solid #1e2c262b;padding:.5rem .65rem;font-size:.54rem;font-weight:600}.portfolio-hero>div a,.portfolio-hero>div button,.portfolio-journey button{color:#24362f;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;width:max-content;padding:0 0 .35rem;font-size:.62rem;font-weight:650;text-decoration:none}.portfolio-hero>div button{color:#746a51}.portfolio-hero>div a.is-subtle{color:#68736d;border-bottom-color:#0000}.portfolio-work,.portfolio-feature,.portfolio-case-studies,.portfolio-architecture,.portfolio-experience,.portfolio-education,.portfolio-journey,.portfolio-gallery,.portfolio-contact{padding:clamp(6rem, 12vh, 9rem) var(--edge);border-top:1px solid #1e2c2621;scroll-margin-top:4rem}.section-heading{max-width:56rem;margin-bottom:clamp(3.5rem,7vw,6rem)}.section-heading>p,.portfolio-feature__heading>p,.portfolio-case-studies>header>p,.portfolio-architecture>p,.portfolio-journey>p,.portfolio-contact>p{color:#786d52;letter-spacing:.17em;text-transform:uppercase;margin:0 0 1.2rem;font-size:.58rem;font-weight:650}.section-heading h2,.portfolio-feature__heading h2,.portfolio-case-studies>header h2,.portfolio-architecture h2,.portfolio-journey h2,.portfolio-contact h2{letter-spacing:-.055em;max-width:15ch;margin:0;font-size:clamp(2.5rem,5vw,5rem);font-weight:350;line-height:.94}.section-heading>span{color:#5e6963;max-width:35rem;margin-top:1.5rem;line-height:1.6;display:block}.portfolio-feature{grid-template-columns:minmax(18rem,.9fr) 1.25fr;gap:clamp(3rem,8vw,9rem);display:grid}.portfolio-feature.is-dark{color:#dfe7e1;background:#0b1514}.portfolio-feature.is-dark .portfolio-feature__heading>p{color:var(--sand)}.portfolio-feature__heading>strong{color:#59665f;max-width:33rem;margin-top:1.5rem;font-size:clamp(.9rem,1.3vw,1.1rem);font-weight:500;line-height:1.7;display:block}.portfolio-feature__heading>span{color:#68736d;max-width:30rem;margin-top:1rem;font-size:.8rem;line-height:1.65;display:block}.portfolio-feature.is-dark .portfolio-feature__heading>strong{color:#a5b4ad}.work-grid{border-top:1px solid #1e2c2629;grid-template-columns:1fr;display:grid}.work-card{border-bottom:1px solid #1e2c2629;grid-template-rows:auto auto auto;grid-template-columns:3rem minmax(14rem,.75fr) minmax(20rem,1.25fr);gap:0 clamp(2rem,5vw,6rem);padding:clamp(2.2rem,5vw,4.5rem) 0;display:grid}.work-card>span{color:#8a7a59;letter-spacing:.14em;font-size:.55rem}.work-card h3{letter-spacing:-.045em;grid-column:2;margin:0 0 1rem;font-size:clamp(1.8rem,3.4vw,3.4rem);font-weight:400;line-height:.98}.work-card>p{color:#59665f;grid-column:2;max-width:38rem;margin:0;font-size:.8rem;line-height:1.65}.work-card dl{grid-area:1/3/3;align-self:start;margin:0}.work-card dl div{border-top:1px solid #1e2c261f;grid-template-columns:6rem 1fr;gap:1rem;padding:.65rem 0;display:grid}.work-card dt,.work-card dd{margin:0;font-size:.6rem;line-height:1.5}.work-card dt{color:#7b7058;text-transform:uppercase;font-weight:650}.work-card dd{color:#4f5d56}.work-card details{border-top:1px solid #1e2c262e;grid-column:2/-1;margin-top:2rem}.work-card summary{color:#2c4138;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;border-bottom:1px solid;width:max-content;padding:1rem 0 .25rem;font-size:.57rem;font-weight:650;list-style:none}.work-card summary::-webkit-details-marker{display:none}.work-card__detail{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 3rem;padding-top:1.8rem;display:grid}.work-card__detail>p{color:#59665f;gap:.35rem;margin:0 0 1rem;font-size:.7rem;line-height:1.6;display:grid}.work-card__detail>p b{color:#283d34;letter-spacing:.1em;text-transform:uppercase;font-size:.54rem}.work-card__detail>div{grid-column:1/-1;gap:.75rem;display:grid}.work-card__detail>div>b{color:#283d34;letter-spacing:.1em;text-transform:uppercase;font-size:.54rem}.work-card__detail>a{color:#70664f;text-transform:uppercase;margin-top:1rem;font-size:.58rem;font-weight:650;display:inline-block}.experience-areas{border-top:1px solid #1e2c2633;grid-template-columns:repeat(2,1fr);align-content:start;display:grid}.experience-areas span{color:#45534d;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #1e2c2626;grid-template-columns:2.2rem 1fr;padding:1rem 0;font-size:.62rem;display:grid}.experience-areas b{color:#8a7a59;font-weight:600}.engineering-groups{gap:1.6rem;display:grid}.engineering-groups article{border-top:1px solid #d3ded729;padding-top:1rem}.engineering-groups h3{color:var(--sand);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .8rem;font-size:.58rem;font-weight:600}.engineering-groups article>div{flex-wrap:wrap;gap:.55rem;display:flex}.engineering-groups span{color:#c2cec7;letter-spacing:.07em;text-transform:uppercase;border:1px solid #d3ded72e;padding:.65rem .75rem;font-size:.56rem}.integration-statement{border-top:1px solid #d3ded726;grid-column:1/-1;padding-top:3rem}.integration-statement>p{color:var(--sand);letter-spacing:.16em;text-transform:uppercase;font-size:.56rem}.integration-statement h3{letter-spacing:-.035em;max-width:25ch;margin:1.2rem 0 2rem;font-size:clamp(1.6rem,3vw,3rem);font-weight:350}.integration-statement strong,.integration-statement span{color:#b6c1bb;font-size:.72rem;font-weight:500;line-height:1.7;display:block}.integration-statement span{color:#899991;max-width:52rem;margin-top:.75rem}.engineering-mindset{border-top:1px solid #d3ded726;grid-column:1/-1;padding-top:3rem}.engineering-mindset header>p{color:var(--sand);letter-spacing:.16em;text-transform:uppercase;font-size:.56rem}.engineering-mindset header h3{letter-spacing:-.04em;max-width:22ch;margin:1rem 0 2.5rem;font-size:clamp(1.8rem,3.5vw,3.6rem);font-weight:350}.engineering-mindset>div{grid-template-columns:repeat(3,1fr);display:grid}.engineering-mindset article{border:1px solid #d3ded724;gap:1rem;min-height:10rem;padding:1.25rem;display:grid}.engineering-mindset article strong{color:#dbe4de;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:550}.engineering-mindset article span{color:#8f9e96;font-size:.66rem;line-height:1.65}.portfolio-case-studies>header{margin-bottom:7rem}.portfolio-work>.portfolio-case-studies{border-top:0;padding:clamp(6rem,10vh,8rem) 0 0}.portfolio-case-studies>article{border-top:1px solid #1e2c2633;grid-template-columns:.8fr 1.2fr;gap:3rem 7vw;padding:5rem 0;display:grid}.portfolio-case-studies>article>div:first-child p{color:#7a7058;letter-spacing:.13em;text-transform:uppercase;font-size:.54rem;font-weight:600}.portfolio-case-studies h3{letter-spacing:-.06em;text-transform:uppercase;max-width:10ch;margin:1.2rem 0;font-size:clamp(2.8rem,5vw,5.5rem);font-weight:320;line-height:.9}.portfolio-case-studies article strong{color:#52605a;max-width:30rem;font-size:.8rem;font-weight:400;line-height:1.7;display:block}.portfolio-case-studies article>div:first-child>span{color:#786d52;letter-spacing:.06em;margin-top:1rem;font-size:.63rem;display:block}.portfolio-case-studies article>div:first-child>em{color:#4b5a53;max-width:34rem;margin-top:1rem;font-size:.68rem;font-style:normal;font-weight:600;line-height:1.6;display:block}.portfolio-system-flow{flex-wrap:wrap;align-content:center;gap:.55rem;display:flex}.portfolio-system-flow span{color:#33463e;letter-spacing:.07em;text-transform:uppercase;border:1px solid #2c3d353d;align-items:center;gap:.55rem;padding:.7rem .8rem;font-size:.52rem;font-weight:650;display:flex;position:relative}.portfolio-system-flow span+span:before{content:"→";color:#8a7a59;position:absolute;left:-.68rem}.is-dark .portfolio-system-flow span{color:#c2cec7;border-color:#d3ded72e}.portfolio-case-studies dl{border-top:1px solid #1e2c2624;grid-column:1/-1;grid-template-columns:.5fr 1.5fr;margin:0;display:grid}.portfolio-case-studies dl div{border-bottom:1px solid #1e2c2624;padding:1.2rem 0}.portfolio-case-studies dt{color:#7a7058;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.5rem;font-size:.5rem;font-weight:650}.portfolio-case-studies dd{color:#53605a;margin:0;font-size:.68rem;line-height:1.6}.portfolio-case-studies>article{scroll-margin-top:5rem}.portfolio-architecture{color:#dfe7e1;background:#111b18}.portfolio-architecture>p{color:var(--sand)}.portfolio-architecture h2{max-width:18ch}.portfolio-architecture>strong{color:#b3c0b9;max-width:38rem;margin:2rem 0 3rem;font-size:clamp(1rem,1.7vw,1.35rem);font-weight:400;line-height:1.6;display:block}.portfolio-architecture>div{flex-wrap:wrap;gap:.55rem;max-width:64rem;display:flex}.portfolio-architecture>div span{color:#c2cec7;letter-spacing:.07em;text-transform:uppercase;border:1px solid #d3ded72e;padding:.65rem .75rem;font-size:.56rem}.experience-timeline{border-top:1px solid #1e2c262e;max-width:76rem;position:relative}.experience-timeline>article{border-bottom:1px solid #1e2c2629;grid-template-columns:3rem minmax(16rem,.75fr) minmax(22rem,1.25fr);gap:clamp(1.5rem,4vw,5rem);padding:clamp(2.5rem,5vw,4.5rem) 0;display:grid}.experience-timeline>article>span{color:#8a7a59;letter-spacing:.14em;font-size:.55rem}.experience-timeline__heading h3{letter-spacing:-.04em;margin:0 0 .75rem;font-size:clamp(1.6rem,3vw,2.8rem);font-weight:400;line-height:1}.experience-timeline__heading strong{color:#33463e;font-size:.72rem;font-weight:600}.experience-timeline__heading p{color:#776d56;letter-spacing:.06em;font-size:.6rem;line-height:1.6}.experience-timeline__content>p{color:#526059;max-width:42rem;margin:0 0 1.4rem;font-size:.78rem;line-height:1.7}.experience-timeline__content ul{gap:.65rem;margin:0 0 1.6rem;padding:0;list-style:none;display:grid}.experience-timeline__content li{color:#59665f;padding-left:1rem;font-size:.68rem;line-height:1.55;position:relative}.experience-timeline__content li:before{content:"";background:#8a7a59;width:.3rem;height:1px;position:absolute;top:.55em;left:0}.experience-timeline__technologies{flex-wrap:wrap;gap:.45rem;margin-top:1.5rem;display:flex}.experience-timeline__technologies span{color:#53615a;letter-spacing:.06em;text-transform:uppercase;border:1px solid #1e2c2629;padding:.45rem .55rem;font-size:.52rem}.portfolio-education>div{border-top:1px solid #1e2c2629;border-left:1px solid #1e2c2629;grid-template-columns:repeat(3,1fr);display:grid}.portfolio-education article{border-bottom:1px solid #1e2c2629;border-right:1px solid #1e2c2629;padding:2rem}.portfolio-education article>span,.portfolio-education aside>span{color:#8a7a59;letter-spacing:.13em;text-transform:uppercase;font-size:.55rem}.portfolio-education article h3,.portfolio-education aside h3{letter-spacing:-.035em;margin:2rem 0 .6rem;font-size:clamp(1.4rem,2.4vw,2.2rem);font-weight:400}.portfolio-education article p,.portfolio-education article strong,.portfolio-education aside p{color:#68736d;margin:0;font-size:.72rem;font-weight:400;line-height:1.6}.portfolio-education article strong{color:#33463e;margin-top:1rem;display:block}.portfolio-education aside{border-top:1px solid #1e2c262e;max-width:40rem;margin-top:5rem;padding-top:2rem}.portfolio-journey{color:#e3eae3;background:#0e1816;min-height:70vh}.portfolio-journey>p{color:var(--sand)}.portfolio-journey h2{max-width:16ch}.portfolio-journey button{color:#d8c38f}.portfolio-gallery{background:#e5e5de}.gallery-grid{columns:4 14rem;column-gap:1rem}.gallery-card{color:#17201d;text-align:left;break-inside:avoid;cursor:pointer;background:#eeeee8;border:1px solid #1e2c2624;width:100%;margin:0 0 1rem;padding:0;transition:transform .18s,box-shadow .18s;display:block;overflow:hidden}.gallery-card:hover{transform:translateY(-2px);box-shadow:0 .8rem 2rem #1b272214}.gallery-card img,.gallery-placeholder{width:100%;aspect-ratio:var(--gallery-ratio);object-fit:cover;display:block}.gallery-placeholder{color:#efefe9b3;background:#52615b;place-items:center;min-height:12rem;display:grid}.gallery-placeholder span{letter-spacing:.16em;text-transform:uppercase;font-size:.5rem;font-weight:600}.gallery-card>span{gap:.35rem;padding:1rem;display:grid}.gallery-card b{font-size:.8rem;font-weight:600}.gallery-card small{color:#6d7772;letter-spacing:.08em;text-transform:uppercase;font-size:.55rem}.gallery-lightbox{z-index:100;padding:4rem var(--edge) 2rem;color:#edf1ed;background:#050a09f5;grid-template-columns:3rem minmax(0,1fr) 3rem;align-items:center;gap:1rem;display:grid;position:fixed;inset:0}.gallery-lightbox figure{max-width:min(82vw,70rem);max-height:86vh;margin:auto}.gallery-lightbox figure img,.gallery-lightbox figure .gallery-placeholder{aspect-ratio:auto;object-fit:contain;width:100%;max-height:72vh}.gallery-lightbox figure .gallery-placeholder{width:min(72vw,60rem);height:min(62vh,42rem)}.gallery-lightbox figcaption{align-items:baseline;gap:1rem;margin-top:1rem;display:flex}.gallery-lightbox figcaption span,.gallery-lightbox figcaption p{color:#99a69f;font-size:.65rem}.gallery-lightbox button{color:#e1e8e2;cursor:pointer;background:0 0;border:0}.gallery-lightbox__close{top:1.5rem;right:var(--edge);letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;position:absolute}.gallery-lightbox__previous,.gallery-lightbox__next{font-size:1.5rem}.portfolio-contact{min-height:58vh;padding-bottom:clamp(5rem,10vh,8.75rem)}.portfolio-contact h2{max-width:21ch}.portfolio-contact__identity{border-top:1px solid #1e2c2629;border-bottom:1px solid #1e2c2629;grid-template-columns:minmax(12rem,.65fr) 1.35fr;gap:2rem;max-width:58rem;margin-top:4rem;padding:2rem 0;display:grid}.portfolio-contact__identity>strong{letter-spacing:.15em;text-transform:uppercase;font-size:.7rem}.portfolio-contact__identity dl{gap:1rem;margin:0;display:grid}.portfolio-contact__identity dl div{grid-template-columns:5rem 1fr;gap:1rem;display:grid}.portfolio-contact__identity dt{color:#786d52;letter-spacing:.12em;text-transform:uppercase;font-size:.55rem;font-weight:650}.portfolio-contact__identity dd{color:#3f4e47;margin:0;font-size:.72rem}.portfolio-contact__identity a{text-underline-offset:.25rem;text-decoration-color:#3f4e4759}.portfolio-contact__actions{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.portfolio-contact__actions a{color:#283a32;letter-spacing:.12em;text-transform:uppercase;border:1px solid #1e2c2647;padding:.85rem 1.15rem;font-size:.58rem;font-weight:650;text-decoration:none}.portfolio-contact__actions a.is-primary{color:#eef1ed;background:#17231f;border-color:#17231f}.scene-fallback{color:#9eada6;background:radial-gradient(circle at 60% 42%,#173236,#050a0b 56%,#020405);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.scene-fallback p{letter-spacing:.15em;text-transform:uppercase;font-size:.62rem;position:absolute;bottom:2rem}.fallback-orbit{aspect-ratio:1;background:radial-gradient(circle at 65% 30%,#798b80,#233c3d 38%,#092027 70%);border-radius:50%;width:min(48vw,28rem);box-shadow:0 0 5rem #43818938}.fallback-topography{aspect-ratio:1;opacity:.22;background:repeating-radial-gradient(#0000 0 18px,#a9c0b1 19px 20px);border-radius:50%;width:54vw;position:absolute;bottom:-18vw;right:-8vw;transform:rotate(-12deg)}@media (max-width:1180px){.portfolio-mode__header{grid-template-columns:auto 1fr auto}.portfolio-header__navigation{border-top:1px solid #1e2c261a;grid-column:1/-1;grid-template-columns:1fr auto;gap:1.5rem;width:100%;padding:1.25rem 0 1.5rem;display:none}.portfolio-header__navigation.is-open{display:grid}.portfolio-mode__header nav{flex-wrap:wrap;justify-content:flex-start;gap:1rem 1.4rem;display:flex}.portfolio-header__menu{display:block}}@media (max-width:700px){.journey{height:2247vh}.chapter-stack{width:calc(100vw - var(--edge) * 2);top:auto;bottom:9.5rem;transform:none}.chapter h2{font-size:clamp(2rem,10vw,3.4rem)}.chapter span{max-width:18rem}.journey-controls{grid-template-columns:auto 1fr;bottom:1.8rem}.journey-controls nav,.scroll-cue,.geo-debug{display:none}.scene-shell:after{background:linear-gradient(0deg,#020506d9 0,#0000 45%),radial-gradient(circle,#0000 30%,#01030480)}.destination-chapter__frame{flex-direction:column;justify-content:center;gap:2.2rem;padding-bottom:8.5rem;display:flex}.destination-chapter__identity h2{font-size:clamp(2.2rem,11vw,3.6rem)}.destination-chapter__context{align-self:auto;max-width:22rem;padding-top:0}.destination-chapter__pending{display:none}.education-timeline{grid-template-columns:repeat(2,1fr)}.destination-chapter__timeline{left:var(--edge)}.story-scene__place{display:none}.story-scene__contours{width:100vw;right:-28%}.journey-conclusion{padding-bottom:8rem}.portfolio-header__navigation.is-open{grid-template-columns:1fr}.portfolio-header__utilities{flex-wrap:wrap;justify-self:start}.portfolio-mode__header nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.portfolio-hero{padding-top:9rem}.portfolio-hero h1{font-size:clamp(3rem,17vw,5rem)}.portfolio-hero>div{flex-direction:column;align-items:flex-start}.portfolio-feature{display:block}.portfolio-feature__heading{margin-bottom:4rem}.work-grid,.experience-areas,.portfolio-education>div{grid-template-columns:1fr}.work-card{display:block}.work-card h3{margin-top:1.5rem}.work-card>p{min-height:0}.work-card dl{margin-top:2rem}.work-card__detail{grid-template-columns:1fr}.work-card__detail>div{grid-column:auto}.engineering-mindset>div{grid-template-columns:1fr}.experience-timeline>article{grid-template-columns:2rem 1fr}.experience-timeline__content{grid-column:2}.portfolio-case-studies>article{grid-template-columns:1fr}.portfolio-case-studies dl{grid-column:auto;grid-template-columns:1fr}.gallery-grid{columns:2 8rem;column-gap:.7rem}.gallery-card{margin-bottom:.7rem}.gallery-lightbox{grid-template-columns:2rem minmax(0,1fr) 2rem;gap:.25rem;padding-inline:.5rem}.gallery-lightbox figure .gallery-placeholder{width:78vw}.portfolio-contact__identity{grid-template-columns:1fr}.portfolio-contact__identity dl div{grid-template-columns:1fr;gap:.35rem}}@media (max-width:420px){.masthead{grid-template-rows:2.3rem 1.8rem;grid-template-columns:1fr auto;padding-top:.35rem;padding-bottom:.35rem}.masthead>.brand{grid-area:1/1}.masthead>.mode-switch{grid-area:2/1/auto/-1}.masthead>.masthead__skip{grid-area:1/2}.brand__mark{width:2rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.journey{height:1798vh}.scroll-cue{display:none}.journey-controls button{width:.7rem;height:.7rem}}
