@font-face{font-family:Inter;src:url('/assets/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}*{box-sizing:border-box}html{font-size:min(.052083333vw,1px);scroll-behavior:smooth;scroll-padding-top:114rem}body{margin:0;background:#f8fafc;color:#152338;font:21.6rem/1.35 Inter,Arial,sans-serif}p,h1,h2,h3{margin:0}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #219c9e;outline-offset:5px}h2{font-size:45.6rem;font-weight:600}h3{font-weight:600}hr{border:0;height:1.2rem;background:#dce4eb}main{max-width:1920px;margin:auto}.eyebrow{font-size:16.8rem;font-weight:600;color:#219c9e}.site-header{height:114rem;position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:100;width:100%;max-width:1920px;padding:0 120rem;display:flex;align-items:center;gap:36rem;background:rgba(248,250,255,.55);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.site-header:after{content:'';position:absolute;bottom:0;left:120rem;right:120rem;height:1.2rem;background:#dce4eb}.brand{font-size:27.6rem;font-weight:600;margin-right:auto}.site-header nav{display:flex;gap:60rem;font-size:19.2rem}.site-header nav a:hover,.site-header nav a[aria-current]{color:#219c9e}.button{display:inline-flex;align-items:center;justify-content:center;border:1.2rem solid #bbc9d4;border-radius:9.6rem;padding:16.8rem 24rem;font-size:19.2rem;font-weight:600;background:#f8fafc;transition:background .2s}.button:hover{background:#e5edf1}.primary{background:#152338;border-color:#152338;color:white;min-width:210rem}.primary:hover{background:#25415b}.header-cv{margin-left:36rem}.hero{position:relative;height:828rem;overflow:hidden}.hero-video{position:absolute;left:0;top:-268rem;width:1947rem;height:1095rem;object-fit:cover;pointer-events:none}.hero-copy{position:absolute;left:120rem;top:185rem}.hero h1{font-size:79.2rem;letter-spacing:-2.16rem;line-height:1.1;font-weight:600;margin-top:43rem}.location{position:absolute;top:153rem;left:341rem;display:flex;align-items:center;gap:8rem;font-size:20rem;white-space:nowrap;color:#66778b}.location img{width:24rem;height:24rem}.hero-buttons{position:absolute;left:120rem;top:690rem;display:flex;gap:21.6rem}.hero-buttons .button:last-child{min-width:234rem}.experience-card{position:absolute;left:1236rem;top:195rem;width:564rem;height:552rem;border-radius:24rem;background:#f0f0f0;padding:48rem 45.6rem}.years{font-size:129.6rem;font-weight:600;margin-top:12rem;line-height:1.35;margin-left:-7.6rem}.years span{font-size:80rem}.years-caption{font-size:24rem;color:#66778b;margin-top:-8rem}.experience-card hr{margin:36rem 0 29rem}.experience-card strong{font-size:21.6rem;font-weight:600;white-space:nowrap}.craft{margin-top:23rem;color:#66778b;font-size:16rem;min-height:58.32rem}.status{color:#219c9e;font-size:20.4rem;margin-top:29rem}.status:before{content:'';display:inline-block;width:9.6rem;height:9.6rem;border-radius:50%;background:#219c9e;margin-right:14.4rem}.section{padding-left:120rem;padding-right:120rem}.work{min-height:1320rem;padding-top:72rem;position:relative}.work:before{content:'';position:absolute;top:0;left:120rem;right:120rem;height:1.2rem;background:#dce4eb}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-top:26rem;margin-bottom:45rem}.section-heading>p{width:544rem;font-size:24rem;color:#66778b}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24rem;row-gap:64rem}.project-image{display:block;background:#eeedee;padding:12rem;border-radius:12rem;aspect-ratio:544/306;transition:transform .25s,box-shadow .25s}.project-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:8rem}.project-image:hover,.project-image:focus-visible{transform:scale(1.025);box-shadow:0 12rem 30rem #15233824}.project h3{font-size:25.2rem;margin-top:24rem}.project h3 a:hover{color:#14787b}.project>p{font-size:18rem;color:#66778b;margin-top:12rem}.case-link{display:inline-flex;gap:14rem;font-size:19.2rem;color:#219c9e;font-weight:600;margin-top:12rem;transition:color .2s}.case-link span{transition:transform .2s}.case-link:hover{color:#126d70}.case-link:hover span{transform:translateX(5px)}.about{background:#eff5f7;display:grid;grid-template-columns:780fr 858fr;gap:42rem;padding-top:84rem;padding-bottom:84rem;min-height:833.8rem}.about h2{font-size:48rem;margin-top:26rem}.bio{font-size:18rem;color:#66778b;margin-top:25rem}.about-copy hr{width:654rem;max-width:100%;margin:49rem 0 44rem}.about-copy h3{font-size:25.2rem;margin-top:24rem}.about-copy h3~p:not(.eyebrow){font-size:21.6rem;color:#66778b;margin-top:8rem}.about-copy h3~p+h3{margin-top:44rem}.experience>.eyebrow{margin-bottom:40.6rem}.experience details{border-bottom:1.2rem solid #dce4eb;padding:26rem 0}.experience details:first-of-type{padding-top:0}summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:216rem 1fr 28rem;gap:24rem;align-items:start}summary::-webkit-details-marker{display:none}.date{font-size:19.2rem;color:#66778b}.role{display:flex;flex-direction:column;gap:14.4rem}.role strong{font-size:26rem;font-weight:600;color:#152332}.role>span{font-size:20rem;color:#66778b}.toggle{width:28rem;height:28rem;border:1px solid #bfc7d1;border-radius:50%;background:white;display:grid;place-items:center;font-size:16rem}.toggle:before{content:'+'}details[open] .toggle:before{content:'−'}.experience ul{padding-left:20rem;margin:24rem 0 0 240rem;font-size:19.2rem;color:#66778b;line-height:1.6}.experience li+li{margin-top:12rem}.skills{padding-top:84rem;padding-bottom:55rem;min-height:498rem}.skills h2{margin-top:25rem}.skills-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48rem;margin-top:37rem}.skill{border-top:1.2rem solid #dce4eb;padding-top:20.4rem}.skill h3{font-size:26.4rem;display:flex;align-items:center;gap:12rem}.skill img{width:32rem;height:32rem}.skill ul{padding-left:32.4rem;color:#66778b;margin:20.4rem 0 0}.skill li+li{margin-top:12rem}.contact{background:#152338;color:white;min-height:258rem;padding-top:36rem;padding-bottom:45rem;display:flex;justify-content:space-between;gap:30rem}.contact h2{font-size:44.4rem;margin-top:20rem}.contact a{display:inline-block;font-size:24rem;color:#dbe9f2;margin-top:22rem}.contact a:hover{text-decoration:underline}.contact-info{padding-top:46rem;width:456rem}.contact-info p{font-size:24rem}.contact-info p+p{font-size:21.6rem;color:#bacbd8;margin-top:13rem}.coming-soon{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24rem}.coming-soon h1{font-size:72rem;font-weight:600}
@media(min-width:1921px){.site-header{height:114px}}@media(max-width:760px){html{font-size:1px;scroll-padding-top:116px}body{font-size:16px}.site-header{height:110px;padding:16px 24px;flex-wrap:wrap;gap:12px;justify-content:space-between}.site-header:after{left:24px;right:24px}.brand{font-size:20px}.header-cv{font-size:12px;padding:9px 12px;margin:0}.site-header nav{order:3;width:100%;gap:0;justify-content:space-between;font-size:14px}.hero{height:820px}.hero-video{top:45px;width:1100px;height:619px;left:50%;transform:translateX(-44%)}.hero-copy{left:24px;top:145px}.hero-copy .eyebrow{font-size:12px}.hero h1{font-size:42px;margin-top:20px;letter-spacing:-1px}.location{position:static;margin-top:12px;font-size:14px;gap:6px}.location img{width:18px;height:18px}.hero-buttons{left:24px;right:24px;top:470px;gap:12px}.hero-buttons .button,.hero-buttons .button:last-child{min-width:0;flex:1;font-size:14px;padding:13px 10px}.experience-card{left:24px;right:24px;top:540px;width:auto;height:250px;padding:22px 24px;border-radius:16px}.experience-card .eyebrow{font-size:11px}.years{font-size:52px;margin:4px 0;line-height:1.1}.years span{font-size:32px}.years-caption{font-size:14px;margin:0}.experience-card hr{margin:14px 0 12px}.experience-card strong{font-size:14px}.craft{font-size:13px;margin-top:8px;min-height:0}.status{font-size:12px;margin-top:10px}.status:before{width:7px;height:7px;margin-right:8px}.section{padding-left:24px;padding-right:24px}.eyebrow{font-size:12px}h2{font-size:30px}.work{padding-top:36px;padding-bottom:56px;min-height:0}.work:before{left:24px;right:24px}.section-heading{display:block;margin-top:18px;margin-bottom:28px}.section-heading>p{width:auto;font-size:16px;margin-top:16px}.projects{grid-template-columns:1fr;gap:36px}.project-image{padding:8px;border-radius:12px}.project-image img{border-radius:8px}.project h3{font-size:22px;margin-top:16px}.project>p{font-size:14px;margin-top:8px}.case-link{font-size:15px;margin-top:10px}.about{display:block;padding-top:40px;padding-bottom:40px}.about h2{font-size:32px;margin-top:20px}.bio{font-size:15px;margin-top:20px}.bio br{display:none}.about-copy hr{margin:28px 0}.about-copy h3{font-size:20px;margin-top:22px}.about-copy h3~p:not(.eyebrow){font-size:15px}.about-copy h3~p+h3{margin-top:24px}.experience{margin-top:44px}.experience>.eyebrow{margin-bottom:24px}.experience details{padding:20px 0}summary{grid-template-columns:1fr 28px;gap:10px}.date{grid-column:1;font-size:13px}.role{grid-column:1;gap:8px}.role strong{font-size:19px}.role>span{font-size:14px}.toggle{grid-column:2;grid-row:1/3}.experience ul{margin:18px 0 0;padding-left:20px;font-size:14px}.skills{padding-top:40px;padding-bottom:40px;min-height:0}.skills h2{margin-top:20px}.skills-grid{grid-template-columns:1fr 1fr;gap:26px 18px;margin-top:28px}.skill{padding-top:16px}.skill h3{font-size:19px;gap:8px}.skill img{width:26px;height:26px}.skill ul{font-size:14px;padding-left:19px;margin-top:16px}.skill li+li{margin-top:10px}.contact{display:block;padding-top:32px;padding-bottom:32px}.contact h2{font-size:28px;margin-top:18px}.contact a{font-size:16px;overflow-wrap:anywhere;margin-top:20px}.contact-info{padding-top:30px;width:auto}.contact-info p{font-size:18px}.contact-info p+p,.contact-info p:last-child{font-size:14px;margin-top:10px}.coming-soon{padding:130px 24px 40px;gap:20px}.coming-soon h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media(max-width:760px){.hero{height:1010px}.hero-video{top:235px;width:820px;height:461px;transform:translateX(-45%)}.hero-buttons{top:675px}.experience-card{top:744px}}
/* Homepage navigation: compact height, matched to the hero video's background. */
html:has(.hero){scroll-padding-top:84rem}
body:has(.hero) .site-header{height:84rem;background:#d8d5d6}
body:has(.hero) .header-cv{padding-top:10rem;padding-bottom:10rem}
@media(max-width:760px){
 html:has(.hero){scroll-padding-top:94px}
 body:has(.hero) .site-header{height:90px;padding-top:10px;padding-bottom:10px;gap:8px}
 body:has(.hero) .header-cv{padding-top:7px;padding-bottom:7px}
}
@media(max-width:760px){body:has(.hero) .site-header{background:#f8fafc}}
/* Fill the mobile first screen without moving its text or controls. */
@media(max-width:760px){
 .hero-video{top:0;left:0;width:100%;height:100vh;height:100svh;min-height:724px;transform:none;object-fit:cover;object-position:45% center}
}
