@font-face{font-family:Anton;src:url(../fonts/anton.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:DM Sans;src:url(../fonts/dm-sans.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:Caveat;src:url(../fonts/caveat.woff2)format("woff2");font-display:swap;font-weight:700}:root{--ink:#13151a;--cream:#f7ebc9;--pink:#ef579b;--yellow:#ffda77;--teal:#31c5c9;--page-pad:clamp(24px, 5.3vw, 100px);--display:Anton, "Arial Narrow", Impact, sans-serif;--body:"DM Sans", Arial, sans-serif;--motion-speed:1;--sky-color:#ff648f;--line:#13151a38}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{background:var(--ink);color:var(--ink);font-family:var(--body);margin:0;font-size:16px;line-height:1.45;overflow-x:clip}body.scroll-locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}button{border:0}a,button{-webkit-touch-callout:default}::selection{color:var(--ink);background:var(--yellow)}:focus-visible{outline-offset:6px;outline:3px solid #fb7cba}button:disabled{opacity:.35;cursor:default}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--yellow);padding:14px 20px;position:fixed;top:-80px;left:15px}.skip-link:focus{top:15px}.eyebrow{text-transform:uppercase;letter-spacing:.055em;margin-bottom:18px;font-size:12px;font-weight:700}.display{font-family:var(--display);text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(52px,5.4vw,100px);font-weight:400;line-height:1.01}.script{font-family:Caveat,cursive;font-size:clamp(26px,3vw,48px);line-height:.92;display:block;transform:rotate(-7deg)}.button{background:var(--yellow);min-height:52px;color:var(--ink);text-transform:uppercase;box-shadow:4px 5px 0 var(--ink);isolation:isolate;transition:box-shadow var(--motion-duration), background var(--motion-duration);border-radius:3px;justify-content:space-between;align-items:center;gap:32px;padding:16px 25px;font-size:13px;font-weight:700;display:inline-flex;position:relative}.button span{transition:transform var(--motion-duration);font-size:23px;line-height:.5}.button:hover{background:#ffe6a6}.button:hover span{transform:translate(3px,-3px)}.rim:before{content:"";border-radius:inherit;pointer-events:none;z-index:2;background:linear-gradient(110deg,#ffc657,#e587de,#48d8d4,#ff6e94,#ffc657) 0 0/350% 100%;padding:2px;animation:9s linear infinite gradient-rim;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.paper{background-color:var(--cream);background-image:linear-gradient(#6e543012 1px,#0000 1px),linear-gradient(90deg,#6e543012 1px,#0000 1px),url("data:image/svg+xml,%3Csvg width='32' height='32' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%2346311d' opacity='.1'%3E%3Ccircle cx='4' cy='7' r='.6'/%3E%3Ccircle cx='19' cy='5' r='.5'/%3E%3Ccircle cx='12' cy='18' r='.7'/%3E%3Ccircle cx='29' cy='25' r='.6'/%3E%3Ccircle cx='5' cy='31' r='.6'/%3E%3C/g%3E%3C/svg%3E");background-size:32px 32px;position:relative}.section-cut{clip-path:polygon(0 0,100% 30px,100% 100%,0 100%);margin-top:-30px;padding-top:70px}.scene{position:relative;overflow:hidden}.site-header{height:78px;padding:0 var(--page-pad);z-index:20;color:var(--cream);transition:background var(--motion-duration), box-shadow var(--motion-duration);justify-content:space-between;align-items:center;gap:30px;display:flex;position:absolute;inset:0 0 auto}.site-header.is-scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#13151acc;height:66px;position:fixed;box-shadow:0 1px #f7ebc922}.wordmark{font-family:var(--display);letter-spacing:-1px;font-size:33px;line-height:1;position:relative}.desktop-nav{align-items:center;gap:clamp(18px,2.1vw,36px);margin-left:auto;display:flex}.desktop-nav a{text-transform:uppercase;padding:15px 0;font-size:11px;font-weight:700;position:relative}.desktop-nav a:after{content:"";background:var(--yellow);transform-origin:0;width:100%;height:2px;transition:transform var(--motion-duration);position:absolute;bottom:8px;left:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.header-actions{align-items:center;gap:20px;display:flex}.header-talk{background:var(--ink);text-transform:uppercase;white-space:nowrap;border:1px solid #f7ebc93a;border-radius:3px;padding:9px 15px;font-size:11px;font-weight:700}.header-talk span{margin-left:15px}.menu-toggle{background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;display:flex}.menu-toggle span{width:23px;height:2px;transition:width var(--motion-duration);background:currentColor}.menu-toggle:hover span:last-child{width:15px}.hero{isolation:isolate;background:#552e62;height:clamp(700px,59vw,1020px);min-height:700px}.hero-world{z-index:-2;position:absolute;inset:0;overflow:hidden}.hero-art{display:block;position:absolute;inset:-3%}.hero-art img{object-fit:cover;object-position:center 48%;width:100%;height:100%}.parallax-layer{transform:translate3d(var(--px,0px), var(--py,0px), 0)}.hero-shade{z-index:-1;background:linear-gradient(90deg,#100e22b8 0%,#16152650 29%,#0000 53%),linear-gradient(#10132322,#0000 60%,#11131b30);position:absolute;inset:0}.hero-content{margin-left:var(--page-pad);width:38%;color:var(--cream);padding-top:clamp(110px,9vw,175px);position:relative}.hero-eyebrow{letter-spacing:.15em;opacity:.8;margin-bottom:22px;font-size:11px}.hero-name{font-family:var(--display);text-transform:uppercase;letter-spacing:-.012em;paint-order:stroke fill;-webkit-text-stroke:7px #11121a;text-shadow:5px 7px #11121a;transform-origin:0 100%;font-size:clamp(82px,8.5vw,156px);font-weight:400;line-height:.95;transform:rotate(-4deg)}.hero-role{color:#ee8acc;white-space:nowrap;text-shadow:2px 2px #13151a;margin:15px 0 39px;font-size:clamp(32px,3.6vw,58px);transform:rotate(-7deg)}.hero-intro{letter-spacing:-.02em;font-size:clamp(20px,1.65vw,28px);font-weight:600;line-height:1.22}.hero-principles{font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;margin:25px 0 22px;font-size:14px;line-height:1.4}.hero-notes{right:var(--page-pad);color:var(--ink);text-align:center;position:absolute;top:clamp(110px,10vw,180px);transform:rotate(-8deg)}.hero-notes>.script{text-shadow:0 0 12px #ffcf9c80;font-size:clamp(28px,3vw,48px);transform:rotate(0)}.road-sign{color:var(--cream);border:3px solid var(--cream);font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;background:#163b3b;outline:5px solid #182623;margin-top:28px;padding:14px 24px;font-size:clamp(17px,1.5vw,25px);line-height:1.2;box-shadow:6px 10px #10131580}.road-sign i{color:var(--yellow);margin-left:10px;font-size:.8em;font-style:normal}.road-sign hr{border:0;border-top:1px solid #f7ebc958;margin:8px 0}.scroll-cue{left:var(--page-pad);color:var(--cream);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:12px;font-size:11px;display:flex;position:absolute;bottom:35px}.scroll-cue span{font-size:22px;animation:4s ease-in-out infinite arrow-nudge}.hero-coordinate{right:var(--page-pad);letter-spacing:.1em;color:var(--cream);font-size:11px;font-weight:700;position:absolute;bottom:35px}.intro-skip{color:var(--cream);z-index:3;background:#13151ac9;border:1px solid #fff6;padding:10px 15px;font-size:12px;position:absolute;bottom:30px;left:45%}.sky-haze{mix-blend-mode:screen;pointer-events:none;position:absolute;inset:0}.sun-glow{aspect-ratio:1;background:radial-gradient(circle,#ffc65a28,#0000 68%);width:45%;animation:19s ease-in-out infinite alternate haze;position:absolute;top:7%;right:7%}.cloud-plane{pointer-events:none;position:absolute;inset:0}.clouds{opacity:.22;background-image:url(../artwork/clouds.svg);background-repeat:repeat-x;background-size:50% 100%;width:200%;height:26%;animation:90s linear infinite cloud-drift;position:absolute;top:10%;left:0}.clouds-near{opacity:.1;height:23%;animation-duration:63s;animation-delay:-27s;top:24%}.clouds-far{animation-delay:-46s}.plane-route{position:absolute;inset:0}.plane{opacity:.72;width:85px;animation:78s linear -21s infinite plane-pass;position:absolute;top:22%;left:-12%}.palm-layer{pointer-events:none;position:absolute;inset:0}.palm{transform-origin:45% 100%;filter:drop-shadow(2px 3px #1c203d);opacity:.95;width:220px;height:540px;animation:10s ease-in-out infinite alternate palm-sway;position:absolute;bottom:-30px;left:-65px}.hero-ground-shade{background:linear-gradient(#0000,#1213198a);height:18%;position:absolute;inset:auto -5% -9%}.about{padding:70px var(--page-pad) 75px;grid-template-columns:1.1fr 1fr;gap:8%;min-height:625px;display:grid;overflow:hidden}.about-copy{z-index:1}.about .display{margin-bottom:22px;font-size:clamp(45px,4.5vw,82px)}.about-copy>p:not(.eyebrow){max-width:475px;font-size:15px;line-height:1.5}.about-facts{gap:8px;margin:20px 0 23px;padding:0;font-size:12px;list-style:none;display:grid}.about-facts span{background:var(--ink);color:var(--cream);border-radius:50%;justify-content:center;align-items:center;width:21px;height:21px;margin-right:8px;font-size:13px;display:inline-flex}.experience-stats{border-top:3px solid #13151a99;gap:35px;max-width:450px;padding-top:18px;display:flex}.experience-stats>div{flex-direction:column;display:flex}.experience-stats strong{font-family:var(--display);font-size:35px;line-height:1}.experience-stats strong span{vertical-align:top;color:#9f5734;font-size:21px}.experience-stats>div>span{text-transform:uppercase;margin-top:8px;font-size:11px;font-weight:700}.portrait-composition{align-self:center;margin-right:12%;padding-top:5px;position:relative}.portrait-frame{border:3px solid var(--ink);background:var(--teal);aspect-ratio:.94;position:relative;overflow:hidden;transform:rotate(-8deg);box-shadow:10px 12px #13151a15}.portrait-frame img{object-fit:cover;object-position:38% 45%;width:100%;height:100%;transform:scale(1.15)}.portrait-label{background:var(--ink);color:var(--cream);text-transform:uppercase;letter-spacing:.04em;padding:8px 14px;font-size:11px;position:absolute;bottom:0;left:0;right:0}.portrait-note{font-size:clamp(27px,2.5vw,43px);position:absolute;top:13%;right:-22%;transform:rotate(8deg)}.doodle-star{color:#a86439;font-size:75px;position:absolute;bottom:5%;right:-21%;transform:rotate(12deg)}.skills{min-height:625px;padding:75px var(--page-pad) 70px;background:#44bcc4}.section-background{z-index:0;display:block;position:absolute;inset:0}.section-background img{object-fit:cover;object-position:center;width:100%;height:100%}.skills .section-background:after{content:"";background:linear-gradient(#48cfd66b,#40c7ca27 60%,#27afb300 100%);position:absolute;inset:0}.skills-content{z-index:1;grid-template-columns:.85fr 3.4fr;gap:30px;display:grid;position:relative}.skills .display{text-shadow:2px 2px #f7ebc9b3;font-size:clamp(58px,6.1vw,115px)}.section-heading .script{min-width:0;max-width:100%;color:var(--cream);background:#13151acc;border-radius:3px;margin-top:25px;padding:12px 16px;font-size:26px;line-height:1.15;display:inline-block;box-shadow:4px 5px #13151a35}.skill-groups{grid-template-columns:repeat(4,minmax(0,1fr));align-self:start;gap:10px;margin-top:52px;display:grid}.skill-group{transition:transform var(--motion-duration), box-shadow var(--motion-duration), border-color var(--motion-duration);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f9f1dcef;border:1px solid #13151a2c;border-radius:3px;padding:21px 12px 23px;box-shadow:0 15px 26px #10252d66,5px 6px #12323440}@media (hover:hover) and (pointer:fine){html[data-motion=on] .skill-group:hover:after{animation:.7s ease-out both skill-card-sheen}}.skill-group:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(110deg,#0000 25%,#ffda7733 42%,#fff8e866 50%,#ffda7733 58%,#0000 75%) 0 0/300% 100%;position:absolute;inset:0}@keyframes skill-card-sheen{0%{opacity:0;background-position:100% 0}15%{opacity:1}85%{opacity:1}to{opacity:0;background-position:0 0}}.skill-group h3{letter-spacing:-.03em;white-space:nowrap;padding:0 3px 14px;font-size:16px;font-weight:700}.tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px 5px;display:grid}.tech{text-align:center;flex-direction:column;align-items:center;font-size:12px;line-height:1.1;display:flex}.skills-caption{bottom:40px;right:var(--page-pad);color:var(--cream);text-transform:uppercase;letter-spacing:.06em;background:#101b20d9;padding:9px 15px;font-size:11px;position:absolute}.marquee{position:relative;overflow:hidden}.marquee-track{width:max-content;animation:34s linear infinite marquee-travel;display:flex}.marquee-group{white-space:nowrap;flex:none}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.tech-tape{background:var(--ink);color:var(--cream);font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;z-index:3;border-block:2px solid #f7ebc925;margin:-12px 0 -10px;padding:11px 0;font-size:22px}.tech-tape .marquee-track{animation-duration:180s;animation-direction:reverse}.tech-tape .marquee-group{text-align:center;min-width:100vw}.projects{background:#de559b;position:relative}.projects-stage{isolation:isolate;background:#d54995;height:650px;min-height:600px;padding:65px 0 35px}.projects.is-pinned .projects-stage{height:100vh;min-height:650px;position:sticky;top:0}.project-panorama{z-index:-3;position:absolute;inset:0}.project-panorama img{object-fit:cover;object-position:center 62%;width:100%;height:100%;transform:translateX(var(--panorama-x,0px)) scale(1.08)}.project-tint{z-index:-2;background:linear-gradient(90deg,#97265b28,#0000 45%),linear-gradient(#e481b280,#0000 65%,#d44286a0);position:absolute;inset:0}.projects-top{padding-inline:var(--page-pad);justify-content:space-between;align-items:center;display:flex}.projects-top .eyebrow{margin:0}.project-controls{align-items:center;gap:8px;display:flex}.project-count{margin-right:12px;font-size:11px;font-weight:700}.round-button{border:1.5px solid var(--ink);background:var(--cream);width:44px;height:44px;transition:color var(--motion-duration), background var(--motion-duration);border-radius:50%;place-items:center;padding:0;font-size:23px;display:grid}.round-button svg{pointer-events:none;width:24px;height:24px;display:block}.round-button:hover{background:var(--ink);color:var(--cream)}.projects-layout{margin-left:var(--page-pad);grid-template-columns:clamp(235px,26vw,420px) minmax(0,1fr);align-items:center;gap:30px;height:calc(100% - 110px);margin-top:22px;display:grid}.projects-heading{color:var(--cream);text-shadow:2px 3px #81365130;align-self:start;padding-top:10px}.projects-heading .display{text-shadow:4px 4px #16121f;font-size:clamp(60px,6.5vw,115px)}.projects-heading>p{clip-path:polygon(18px 0,100% 0,calc(100% - 18px) 100%,0 100%);width:fit-content;max-width:100%;color:var(--cream);text-shadow:none;background:#13151acc;margin-top:22px;padding:10px 28px;font-size:13px;font-weight:600;line-height:1.5}.projects-heading .script{color:var(--ink);text-shadow:none;margin:27px 0 0 14px;font-size:34px}.project-viewport{scrollbar-width:none;scroll-snap-type:x mandatory;outline-offset:-5px;padding:10px 0 20px;overflow-x:auto}.project-viewport::-webkit-scrollbar{display:none}.projects.is-pinned .project-viewport{scroll-snap-type:none;overflow-x:clip}.project-track{padding-right:var(--page-pad);width:max-content;transform:translate3d(var(--project-x,0px), 0, 0);gap:16px;display:flex}.project-card{scroll-snap-align:start;width:clamp(265px,26vw,430px);transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform var(--motion-duration), border-color var(--motion-duration);background:#11171a;border:2px solid #182425;border-radius:4px;flex-shrink:0;position:relative;overflow:hidden;box-shadow:4px 5px #631d6240}.project-card:hover,.project-card:focus-within{border-color:var(--cream)}.project-open{text-align:left;width:100%;color:var(--cream);background:0 0;padding:0;display:block}.project-image{height:clamp(215px,20vw,335px);position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-duration), filter var(--motion-duration)}.project-open:hover .project-image img,.project-open:focus-visible .project-image img{filter:saturate(1.1);transform:scale(1.045)}.project-index{letter-spacing:.07em;color:var(--cream);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#13151aad;padding:5px 9px;font-size:11px;font-weight:700;position:absolute;top:13px;left:13px}.image-action{background:var(--yellow);color:var(--ink);opacity:0;transition:opacity var(--motion-duration), transform var(--motion-duration);padding:9px 13px;font-size:12px;font-weight:700;position:absolute;bottom:15px;left:15px;transform:translateY(55px)}.project-open:hover .image-action,.project-open:focus-visible .image-action{opacity:1;transform:translateY(0)}.project-meta{padding:20px 17px 22px;position:relative}.project-meta h3{letter-spacing:-.04em;padding-right:22px;font-size:21px;font-weight:700;line-height:1.1}.project-meta>p{opacity:.85;max-width:90%;margin:7px 0 12px;font-size:11px}.tags{flex-wrap:wrap;gap:5px;display:flex}.tags span{border:1px solid #f7ebc930;border-radius:3px;padding:5px 7px;font-size:11px;line-height:1}.card-arrow{border:1px solid #f7ebc97a;border-radius:50%;place-items:center;width:27px;height:27px;font-size:18px;display:grid;position:absolute;top:17px;right:17px}.project-progress{height:2px;bottom:38px;left:calc(var(--page-pad) + 26vw + 30px);right:var(--page-pad);background:#f7ebc944;position:absolute}.project-progress span{background:var(--cream);width:20%;height:100%;transform:translateX(var(--progress-x,0%));transition:transform var(--motion-duration);display:block}.project-hint{bottom:16px;right:var(--page-pad);color:var(--cream);letter-spacing:.03em;font-size:11px;position:absolute}.project-hint span{margin-left:20px;display:inline-block}.distant-car{z-index:-1;opacity:.6;width:65px;animation:35s linear -10s infinite traffic-pass;position:absolute;bottom:16%;left:-10%}.experience{padding:80px var(--page-pad) 85px;min-height:600px;color:var(--cream);background:#101b19;grid-template-columns:1fr 1.7fr;gap:8%;display:grid;position:relative;overflow:hidden}.experience-copy{z-index:1;position:relative}.experience .display{margin-bottom:24px;font-size:clamp(50px,5.1vw,88px)}.experience-copy>p:not(.eyebrow){max-width:360px;margin-bottom:28px;font-size:14px;line-height:1.5}.experience-scene{opacity:.7;width:34%;position:absolute;top:0;bottom:0;right:0}.experience-scene img{object-fit:cover;object-position:65% center;width:100%;height:100%}.experience-scene:after{content:"";background:linear-gradient(90deg,#101b19,#0000 85%);position:absolute;inset:0}.career{z-index:1;align-content:start;gap:22px;padding-top:8px;display:grid;position:relative}.career-route{width:20px;height:100%;position:absolute;top:0;left:-10px;overflow:visible}.route-base{fill:none;stroke:#f7ebc945;stroke-width:1px}.route-progress{fill:none;stroke:var(--yellow);stroke-width:2px;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset var(--motion-duration) linear}.career-stop{min-height:68px;transition:opacity var(--motion-duration);grid-template-columns:1fr 1.2fr;gap:30px;padding-left:27px;display:grid;position:relative}.career-dot{background:var(--cream);width:10px;height:10px;transition:background var(--motion-duration), box-shadow var(--motion-duration);border-radius:50%;position:absolute;top:9px;left:-5px;box-shadow:0 0 0 5px #101b1966}.career-stop.is-active .career-dot{background:var(--yellow);box-shadow:0 0 0 5px #ffd16622}.career-date{opacity:.75;letter-spacing:.04em;font-size:11px}.career-stop h3{letter-spacing:-.025em;margin:1px 0 3px;font-size:19px;line-height:1.2}.career-stop p{font-size:12px;line-height:1.4}.career-stop>p{color:#e4e1d0;align-self:center;max-width:290px}.services{padding:75px var(--page-pad) 50px;min-height:490px;transition:background-color var(--motion-duration);grid-template-columns:1.08fr 1.7fr;gap:6%;display:grid;overflow:hidden}.services-intro{z-index:1;position:relative}.services-intro>p:not(.eyebrow){max-width:330px;font-size:13px;line-height:1.5}.services-intro>img{object-fit:cover;object-position:center 88%;mix-blend-mode:multiply;width:120%;max-width:none;height:170px;margin:25px 0 -60px -45px;-webkit-mask-image:linear-gradient(#0000,#000 30%);mask-image:linear-gradient(#0000,#000 30%)}.service-list{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 25px;padding-top:20px;display:grid;position:relative}.service{transition:opacity var(--motion-duration), transform var(--motion-duration);border-bottom:1px solid #13151a25;padding:8px 4px 16px;position:relative}.service:hover,.service:focus-visible{transform:translateY(-4px)}.service-icon{height:48px;font-size:33px;line-height:1;display:block}.service h3{letter-spacing:-.035em;margin-bottom:8px;font-size:14px;line-height:1.25}.service-number{opacity:.5;font-size:11px;position:absolute;top:12px;right:4px}.service-preview{z-index:3;pointer-events:none;opacity:0;border:3px solid var(--ink);background:var(--ink);width:170px;height:120px;transition:opacity var(--motion-duration);position:absolute;transform:translate(-50%,-50%)rotate(-8deg);box-shadow:5px 7px #13151a30}.service-preview img{object-fit:cover;width:100%;height:100%}.service-preview span{background:var(--ink);color:var(--cream);text-align:center;letter-spacing:.06em;padding:5px;font-size:11px;position:absolute;bottom:0;left:0;right:0}.contact{min-height:580px;padding:90px var(--page-pad) 85px;isolation:isolate;color:var(--cream);background:#5c2c70;grid-template-columns:1.3fr 1fr .5fr;align-items:center;gap:45px;display:grid}.contact .section-background{z-index:-3}.contact .section-background img{object-position:center 65%}.contact-shade{z-index:-2;background:linear-gradient(90deg,#1b0e31a8,#0000 75%),linear-gradient(#0000 40%,#13151a56);position:absolute;inset:0}.contact-title{align-self:start}.contact-title .display{text-shadow:4px 4px #16121f;max-width:600px;font-size:clamp(55px,6vw,110px)}.contact-title .script{color:var(--yellow);margin-top:28px;font-size:clamp(30px,3vw,48px);display:inline-block}.contact-card{background:#11171af0;border-radius:3px;align-self:center;max-width:420px;padding:35px 30px;position:relative;box-shadow:8px 10px #30183144}.contact-card>p{margin-bottom:24px;font-size:15px;line-height:1.55}.contact-card>.button{width:100%}.social-links{gap:12px;margin-top:28px;display:flex}.social-links a{width:45px;height:45px;transition:background var(--motion-duration), color var(--motion-duration), transform var(--motion-duration);border:1.5px solid #f7ebc990;border-radius:50%;place-items:center;font-size:26px;font-weight:700;display:grid}.social-links a:hover{color:var(--ink);background:var(--cream);transform:translateY(-3px)}.social-links svg{fill:currentColor;width:25px;height:25px}.neon-sign{font-family:var(--display);text-transform:uppercase;color:#ffda8a;text-shadow:0 0 5px #ffb759,0 0 22px #ffb75955;z-index:1;align-self:start;margin-top:80px;font-size:clamp(23px,2.6vw,43px);line-height:1.2;animation:7s ease-in-out infinite alternate neon-breathe;transform:rotate(-8deg)}.contact-clouds{z-index:-1;opacity:.12;height:24%;animation-duration:110s;top:8%}.contact-marquee{background:var(--cream);color:var(--ink);border-block:2px solid var(--ink);font-family:var(--display);text-transform:uppercase;padding:22px 0;font-size:clamp(40px,5vw,90px);line-height:1.2}.contact-marquee:after{content:"";background:linear-gradient(90deg, transparent 75%, var(--cream) 90%);pointer-events:none;position:absolute;inset:0}.contact-marquee .marquee-track{animation-duration:36s}.marquee-cta{right:var(--page-pad);background:var(--ink);color:var(--cream);font-family:var(--body);text-transform:uppercase;border:2px solid var(--cream);z-index:1;box-shadow:0 0 15px 15px var(--cream);padding:16px 22px;font-size:12px;font-weight:700;position:absolute;top:50%;transform:translateY(-50%)}.site-footer{padding:22px var(--page-pad);color:var(--cream);justify-content:space-between;align-items:center;gap:20px;font-size:11px;display:flex}.site-footer>a{font-weight:700}.site-footer>a>span{opacity:.6;margin-left:18px;font-weight:400}.site-footer>span{opacity:.6}.site-footer>div{align-items:center;gap:22px;display:flex}.site-footer button{color:var(--cream);background:0 0;border:1px solid #f7ebc94d;border-radius:2px;min-height:40px;padding:8px 15px;font-size:11px}.back-top{text-align:center;place-items:center;width:40px;min-height:44px;font-size:25px;display:grid}.menu-dialog{width:100%;max-width:none;height:100dvh;max-height:none;padding:35px var(--page-pad);color:var(--cream);--menu-color:#ffbf7d;background:#17121bf0;border:0;margin:0;overflow:auto}.menu-dialog::backdrop{background:#12131a}.menu-art{z-index:-1;position:absolute;inset:0;overflow:hidden}.menu-art:after{content:"";background:linear-gradient(90deg,#10151af7 0%,#12121bba 50%,#12121b55),linear-gradient(#0000,#10121a66);position:absolute;inset:0}.menu-image{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--motion-duration);position:absolute;inset:0}.menu-image.active{opacity:1}.menu-top{z-index:1;justify-content:space-between;align-items:center;font-size:12px;display:flex;position:relative}.menu-close{color:var(--cream);text-transform:uppercase;background:0 0;min-height:44px;padding:5px 10px;font-size:12px}.menu-close span{vertical-align:middle;margin-left:15px;font-size:30px}.menu-dialog nav{flex-direction:column;max-width:1000px;padding:30px 0 35px;display:flex}.menu-dialog nav a{font-family:var(--display);text-transform:uppercase;opacity:.62;transition:color var(--motion-duration), opacity var(--motion-duration), transform var(--motion-duration);align-items:center;gap:20px;max-width:100%;font-size:clamp(45px,6.6vw,110px);line-height:1.04;display:flex}.menu-dialog nav a:hover,.menu-dialog nav a:focus-visible{color:var(--menu-color);opacity:1;transform:translate(10px)}.menu-dialog nav sup{font-family:var(--body);align-self:start;margin-top:14px;font-size:11px}.menu-dialog nav a>span{text-transform:none;opacity:0;transition:opacity var(--motion-duration);margin-left:20px;font-family:Caveat;font-size:25px}.menu-dialog nav a:hover>span,.menu-dialog nav a:focus-visible>span{opacity:1}.menu-bottom{letter-spacing:.15em;opacity:.6;font-size:11px}.project-dialog{background:var(--ink);width:90vw;max-width:850px;color:var(--cream);border:2px solid #f7ebc96f;border-radius:6px;max-height:90dvh;padding:0;overflow:auto;box-shadow:0 20px 100px #0008}.project-dialog[open]{grid-template-columns:1fr 1fr;display:grid}.project-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a121ddc}.dialog-close{z-index:2;background:var(--cream);color:var(--ink);border-radius:50%;width:44px;height:44px;font-size:28px;position:absolute;top:10px;right:10px}.dialog-art{object-fit:cover;width:100%;height:100%;min-height:430px}.dialog-body{padding:55px 30px 35px}.dialog-body .display{overflow-wrap:anywhere;margin-bottom:20px;font-size:44px}.dialog-description{margin-bottom:25px;font-size:14px;line-height:1.6}.dialog-tags{margin-bottom:25px}.dialog-tags span{font-size:11px}.art-note{color:#c1bcb0;margin-bottom:24px;font-size:11px}.dialog-body .button{gap:15px;font-size:11px}.custom-cursor{border:1px solid var(--cream);z-index:80;pointer-events:none;opacity:0;width:12px;height:12px;transition:width var(--motion-duration), height var(--motion-duration), background var(--motion-duration);color:var(--ink);background:#fff3;border-radius:50%;place-items:center;display:grid;position:fixed;top:0;left:0;transform:translate(-100px,-100px)}.custom-cursor span{font-size:11px;font-weight:700}.custom-cursor.is-view{background:var(--yellow);border-color:var(--ink);width:55px;height:55px}.word{white-space:nowrap;display:inline-block}.char{transition:color var(--motion-duration), transform var(--motion-duration);transform:translateY(var(--letter-y,0px));color:var(--letter-color,inherit);display:inline-block}.js-motion .reveal{opacity:0;transition:opacity var(--motion-duration), transform var(--motion-duration);transform:translateY(24px)}.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}.hero.has-intro .hero-name,.hero.has-intro .hero-role,.hero.has-intro .hero-intro,.hero.has-intro .hero-principles,.hero.has-intro .hero-content>.button{animation:intro-reveal var(--motion-duration) both}.hero.has-intro .hero-name{animation-delay:.2s}.hero.has-intro .hero-role{animation-delay:.45s}.hero.has-intro .hero-intro{animation-delay:.65s}.hero.has-intro .hero-principles{animation-delay:.85s}.hero.has-intro .hero-content>.button{animation-delay:1.05s}@keyframes marquee-travel{to{transform:translate(-50%)}}@keyframes cloud-drift{to{transform:translate(-50%)}}@keyframes haze{to{opacity:.35;transform:scale(1.06)}}@keyframes plane-pass{0%{transform:translate(0)rotate(-5deg)}18%,to{transform:translate(130vw,-70px)rotate(-5deg)}}@keyframes palm-sway{0%{rotate:-1deg}to{rotate:1deg}}@keyframes traffic-pass{0%{transform:translate(0)}60%,to{transform:translate(130vw)}}@keyframes neon-breathe{0%{opacity:.8;text-shadow:0 0 4px #ffb759,0 0 15px #ffb75933}to{opacity:1;text-shadow:0 0 6px #ffb759,0 0 24px #ffb75966}}@keyframes gradient-rim{to{background-position:350% 0}}@keyframes arrow-nudge{0%,80%,to{translate:0}40%{translate:0 4px}}@keyframes intro-reveal{0%{opacity:0;clip-path:inset(0 0 100%);translate:0 20px}to{opacity:1;clip-path:inset(0);translate:0}}[data-scene][data-active=false] [data-ambient],[data-scene][data-active=false] .rim:before,.page-hidden [data-ambient],.page-hidden .marquee-track,.page-hidden .rim:before{animation-play-state:paused}html[data-motion=reduced]{scroll-behavior:auto}html[data-motion=reduced] *,html[data-motion=reduced] :before,html[data-motion=reduced] :after{transition:none!important;animation:none!important}html[data-motion=reduced] .parallax-layer,html[data-motion=reduced] .project-track,html[data-motion=reduced] .char,html[data-motion=reduced] .project-card{transform:none!important}html[data-motion=reduced] .reveal{opacity:1!important;transform:none!important}html[data-motion=reduced] .custom-cursor,html[data-motion=reduced] .intro-skip{display:none!important}html[data-motion=reduced] .contact-marquee .marquee-track{width:auto;padding:0 var(--page-pad);display:block}html[data-motion=reduced] .contact-marquee .marquee-group{white-space:normal;padding-right:180px;font-size:clamp(30px,4vw,65px)}html[data-motion=reduced] .marquee-group:nth-child(2){display:none}html[data-motion=reduced] .tech-tape .marquee-track{text-align:center;width:100%;font-size:18px}html[data-motion=reduced] .tech-tape .marquee-group{white-space:normal;width:100%;min-width:0;padding-inline:15px}@media (width<=1100px){.desktop-nav{gap:16px}.desktop-nav a{font-size:11px}.site-header{gap:15px}.header-actions{gap:7px}.hero{height:740px}.hero-content{width:46%;padding-top:135px}.hero-name{font-size:105px}.hero-role{font-size:40px}.hero-intro{font-size:21px}.hero-notes{top:105px;right:25px}.hero-notes>.script{font-size:30px}.road-sign{margin-top:20px;padding:12px 18px;font-size:17px}.about{gap:5%;min-height:600px}.about .display{font-size:53px}.portrait-note{font-size:29px;right:-32%}.skills{min-height:680px}.skills-content{grid-template-columns:1fr;gap:20px}.skills .section-heading{align-items:end;gap:35px;display:flex;position:relative}.skills .section-heading>.eyebrow{position:absolute;top:-25px}.skills .display{font-size:65px;line-height:.95}.skills .display br{display:none}.skills .section-heading .script{margin:0;font-size:25px}.skill-groups{margin-top:0}.skill-group{padding:20px 17px}.tech{font-size:12px}.projects-heading .display{font-size:69px}.experience{grid-template-columns:1fr 1.6fr;gap:40px}.experience .display{font-size:60px}.career-stop{gap:15px}.career-stop h3{font-size:17px}.career-stop p{font-size:11px}.services{grid-template-columns:1fr 1.6fr;gap:35px}.service-list{gap:16px}.service h3{font-size:13px}.service p{font-size:12px}.contact{grid-template-columns:1.2fr 1fr;gap:35px;min-height:570px}.contact-title .display{font-size:70px}.neon-sign{margin:0;font-size:24px;position:absolute;bottom:42px;right:5%}.contact-card{padding:27px}.contact-title .script{font-size:36px}.service-preview{display:none}}@media (width<=800px){.desktop-nav{display:none}.header-actions{gap:17px;margin-left:auto}.site-header{height:70px}.hero{height:810px;min-height:0}.hero-art img{object-position:60% center}.hero-content{width:53%;padding-top:115px}.hero-name{font-size:94px}.hero-role{margin-bottom:34px;font-size:36px}.hero-notes{top:99px;right:30px}.hero-notes>.script{font-size:27px}.road-sign{padding:10px 15px;font-size:14px}.hero-eyebrow{max-width:200px;line-height:1.5}.hero-shade{background:linear-gradient(90deg,#100e22bf,#16152660 45%,#0000 80%)}.hero-coordinate{display:none}.palm{width:160px;bottom:-80px;left:-75px}.about{grid-template-columns:1.15fr .85fr;gap:6%;min-height:570px;padding-bottom:60px}.about .display{font-size:45px}.about-copy>p:not(.eyebrow){font-size:13px}.about-facts{font-size:11px}.experience-stats{gap:20px}.experience-stats>div>span{font-size:11px}.portrait-composition{margin-right:0}.portrait-frame{aspect-ratio:.7}.portrait-note{font-size:27px;top:-23%;right:-6%}.doodle-star{font-size:55px;bottom:-16%;right:-5%}.portrait-label{padding:6px;font-size:11px}.skills{min-height:650px;padding-top:75px}.skill-group h3{font-size:15px}.skill-group{padding:17px 11px}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 5px}.tech{font-size:12px}.skills-caption{font-size:11px}.projects-stage{height:635px;min-height:0;padding-top:45px}.projects-layout{grid-template-columns:190px 1fr;gap:20px;height:calc(100% - 100px);margin-top:30px}.projects-heading .display{font-size:60px}.projects-heading>p{font-size:12px}.projects-heading .script{font-size:28px}.project-card{width:290px}.project-image{height:265px}.project-meta{padding:18px 15px}.project-progress{left:calc(var(--page-pad) + 210px)}.experience{grid-template-columns:1fr;gap:35px;padding-bottom:65px}.experience .display{font-size:65px}.experience-copy>p:not(.eyebrow){max-width:440px}.experience-copy .button{min-height:48px}.career{max-width:620px;margin-left:9px}.career-stop{grid-template-columns:1fr 1.2fr;min-height:65px;padding-left:25px}.career-stop h3{font-size:20px}.career-stop p{font-size:12px}.experience-scene{opacity:.45;width:50%}.services{grid-template-columns:1fr;gap:30px;padding-bottom:60px}.services-intro{grid-template-columns:1fr 1fr;gap:0 30px;display:grid}.services-intro>.eyebrow{grid-column:1/-1}.services-intro>p:not(.eyebrow){align-self:center;font-size:14px}.services-intro>img{display:none}.services .display{font-size:65px}.service-list{gap:23px 30px;padding:0}.service h3{font-size:16px}.service p{font-size:12px}.contact{grid-template-columns:1fr 1fr;gap:25px;min-height:545px;padding-top:80px}.contact-title .display{font-size:58px}.contact-title .script{font-size:29px}.contact-card{padding:25px 20px}.contact-card>p{font-size:13px}.contact-card>.button{gap:8px;padding:14px 16px;font-size:11px}.neon-sign{font-size:20px}.site-footer{flex-wrap:wrap}.site-footer>span{text-align:center;order:3;width:100%;font-size:11px}.menu-dialog nav a>span{font-size:20px}.menu-dialog nav a{font-size:70px}.menu-dialog nav{padding-top:40px}.project-dialog[open]{grid-template-columns:1fr 1.1fr}.dialog-art{min-height:400px}.dialog-body{padding:55px 25px 30px}.dialog-body .display{font-size:38px}}@media (width<=600px){:root{--page-pad:24px}html{scroll-padding-top:65px}.section-cut{clip-path:polygon(0 0,100% 20px,100% 100%,0 100%);margin-top:-20px}.hero{height:850px}.hero-art{inset:0}.hero-art img{object-position:center bottom}.hero-shade{background:linear-gradient(#17132899,#0000 55%,#1514253d),linear-gradient(90deg,#1413208c,#0000 80%)}.hero-content{width:90%;margin-left:24px;padding-top:115px}.hero-eyebrow{max-width:none;margin-bottom:19px;font-size:11px}.hero-name{-webkit-text-stroke:5px #11121a;text-shadow:3px 5px #11121a;max-width:300px;font-size:86px;line-height:.95}.hero-role{margin:12px 0 26px;font-size:34px}.hero-intro{text-shadow:0 2px 4px #111;max-width:240px;font-size:18px;line-height:1.3}.hero-intro br{display:none}.hero-principles{max-width:100px;margin:17px 0 20px;font-size:12px}.hero-content>.button{gap:20px;min-height:48px;padding:14px 19px;font-size:11px}.hero-notes{top:435px;right:22px}.hero-notes>.script{color:var(--cream);text-shadow:1px 2px 0 var(--ink);font-size:24px}.road-sign{display:none}.scroll-cue{font-size:11px;bottom:27px}.palm{display:none}.plane{width:50px;animation-duration:95s;top:17%}.clouds{opacity:.16}.clouds-near{display:none}.hero-role,.hero-name{z-index:1;position:relative}.about{grid-template-columns:1fr;gap:45px;padding:60px 24px 65px}.about .display{font-size:54px}.about-copy>p:not(.eyebrow){max-width:none;font-size:14px}.about-facts{font-size:11px}.experience-stats{justify-content:space-between;gap:10px;max-width:100%}.experience-stats strong{font-size:37px}.experience-stats>div>span{font-size:11px}.portrait-composition{align-self:auto;width:70%;margin:0 10px 0 5px}.portrait-frame{aspect-ratio:1;transform:rotate(-7deg)}.portrait-note{font-size:27px;top:19%;right:-40%}.doodle-star{font-size:60px;bottom:5%;right:-30%}.portrait-label{font-size:11px}.skills{min-height:880px;padding:64px 24px 170px}.skills .section-heading{align-items:center;gap:25px;margin-top:13px;margin-bottom:5px}.skills .display{font-size:55px}.skills .section-heading>.eyebrow{top:-33px}.skills .section-heading .script{margin:0;font-size:22px}.skill-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.skill-group{padding:20px 11px}.skill-group h3{padding-bottom:16px;font-size:15px}.tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px 5px}.tech{font-size:12px}.skills .section-background img{object-position:45% bottom}.skills .section-background:after{background:linear-gradient(#43c6cbdd,#37c2c5aa 55%,#0000)}.skills-caption{padding:7px 11px;font-size:11px;bottom:33px;right:24px}.tech-tape{padding:10px 0;font-size:19px}.tech-tape .marquee-group{min-width:180vw}.projects-stage{height:auto;min-height:730px;padding:45px 0 35px}.projects-top{align-items:center}.project-controls{gap:6px}.project-count{margin-right:8px;font-size:11px}.round-button{width:44px;height:44px;font-size:20px}.projects-layout{grid-template-columns:1fr;gap:20px;height:auto;margin:20px 0 0}.projects-heading{align-items:end;gap:24px;padding:0 24px;display:flex}.projects-heading .display{font-size:57px}.projects-heading>p{max-width:135px;margin:0;padding-bottom:5px;font-size:11px}.projects-heading .script{display:none}.project-viewport{padding-bottom:40px;padding-left:24px;scroll-padding-left:24px}.project-track{gap:13px;padding-right:24px}.project-card{width:calc(100vw - 75px);max-width:340px}.project-image{height:270px}.project-meta{padding:20px 17px}.project-meta h3{font-size:22px}.project-meta>p{font-size:11px}.project-progress{bottom:43px;left:24px;right:24px}.project-hint{font-size:11px;bottom:17px}.projects .project-panorama img{object-position:25% center}.experience{gap:45px;padding:65px 24px}.experience .display{font-size:59px}.experience-copy>p:not(.eyebrow){max-width:95%;font-size:14px}.career{gap:24px;margin-left:4px}.career-stop{grid-template-columns:1fr 1fr;gap:12px;padding-left:20px}.career-stop h3{font-size:17px}.career-stop p,.career-date{font-size:11px}.career-stop>p{padding-top:13px}.experience-scene{opacity:.25;width:78%}.services{gap:15px;padding:64px 24px 55px}.services-intro{grid-template-columns:1fr;gap:0}.services .display{margin-bottom:18px;font-size:58px}.services-intro>p:not(.eyebrow){max-width:95%;margin-bottom:15px;font-size:14px}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.service{padding-bottom:18px}.service-icon{font-size:34px}.service h3{min-height:35px;font-size:14px}.service p{font-size:12px}.contact{grid-template-columns:1fr;align-content:start;gap:28px;min-height:800px;padding:68px 24px 140px}.contact-title .display{font-size:65px}.contact-title{position:relative}.contact-title .script{margin:0;font-size:26px;position:absolute;bottom:0;right:8px}.contact-card{background:#11171af2;max-width:340px;margin-top:10px;padding:28px}.contact-card>p{font-size:15px}.contact-card>.button{min-height:52px;font-size:12px}.social-links{margin-top:22px}.neon-sign{font-size:27px;bottom:38px;right:28px}.contact .section-background img{object-position:65% center}.contact-shade{background:linear-gradient(#0000,#17122c66),linear-gradient(90deg,#17122c77,#0000)}.contact-marquee{padding:22px 0 75px;font-size:40px}.marquee-cta{box-shadow:none;padding:12px 18px;font-size:11px;inset:auto auto 14px 24px;transform:none}.contact-marquee:after{display:none}.site-footer{gap:15px;padding:19px 24px}.site-footer>a{font-size:11px}.site-footer>a>span{margin-left:9px}.site-footer>div{gap:10px}.site-footer button{min-height:44px;padding:8px 10px;font-size:11px}.back-top{width:32px}.site-footer>span{font-size:11px}.menu-dialog{padding:20px 24px}.menu-top{font-size:11px}.menu-dialog nav{gap:10px;padding-top:35px}.menu-dialog nav a{gap:15px;font-size:clamp(45px,12.5vw,75px)}.menu-dialog nav a>span{display:none}.menu-dialog nav sup{margin-top:9px;font-size:11px}.menu-bottom{font-size:11px}.project-dialog[open]{width:calc(100vw - 30px);max-height:90dvh;display:block}.dialog-art{height:240px;min-height:0}.dialog-body{padding:30px 25px}.dialog-body .display{font-size:43px}.dialog-description{font-size:14px}.dialog-close{position:fixed;top:calc(5dvh + 10px);right:25px}html[data-motion=reduced] .contact-marquee .marquee-group{padding-right:0;font-size:30px}html[data-motion=reduced] .contact-marquee{padding-bottom:80px}.eyebrow{font-size:11px}.custom-cursor{display:none}}@media (width<=360px){:root{--page-pad:20px}.hero-name{font-size:76px}.hero-role{font-size:30px}.hero-content{margin-left:20px}.hero-notes{top:460px;right:15px}.hero-notes>.script{font-size:22px}.about .display{font-size:47px}.about,.skills,.experience,.services{padding-left:20px;padding-right:20px}.skill-group{padding:17px 8px}.skill-group h3{font-size:13px}.tech{font-size:12px}.contact-title .display{font-size:56px}.contact-title .script{font-size:22px;right:0}.contact-card{padding:24px}.project-image{height:240px}.project-meta h3{font-size:19px}.projects-heading .display{font-size:51px}.projects-heading{gap:17px}.career-stop{grid-template-columns:1.05fr 1fr;gap:10px}.career-stop h3{font-size:16px}.site-footer{padding-inline:20px}.site-footer>a>span{margin-top:4px;margin-left:0;font-size:11px;display:block}}@media (prefers-reduced-motion:reduce){html:not([data-motion=on]){scroll-behavior:auto}html:not([data-motion=on]) *,html:not([data-motion=on]) :before,html:not([data-motion=on]) :after{transition:none!important;animation:none!important}}@media (hover:none),(pointer:coarse){.custom-cursor{display:none}.image-action{opacity:1;padding:7px 10px;font-size:11px;transform:none}.plane,.distant-car{display:none}.palm{animation:none}.service-preview{display:none}.project-card{transform:none!important}}.hero-subject{pointer-events:none;position:absolute;inset:-3%}.hero-subject img{object-fit:cover;object-position:center 48%;width:100%;height:100%}@media (width<=800px){.hero-subject img{object-position:60% center}}@media (width<=600px){.hero-subject{inset:355px -120px 5px -65px}.hero-subject img{object-fit:contain;object-position:center bottom}.hero-shade{background:linear-gradient(#17132866,#0000 50%,#1514251d),linear-gradient(90deg,#14132066,#0000 80%)}.hero-notes{top:655px;right:25px}}.ambient-sky{opacity:.6;background:linear-gradient(130deg,#dd318412,#0000 50%,#ffa45822) 0 0/180% 180%;animation:28s ease-in-out infinite alternate sky-breathe;position:absolute;inset:0}.project-tint{background-size:150% 150%;animation:32s ease-in-out infinite alternate sky-breathe}.contact-shade{background-size:130% 130%;animation:37s ease-in-out infinite alternate sky-breathe}@keyframes sky-breathe{to{background-position:100% 70%}}.header-talk{align-items:center;min-height:44px;display:inline-flex}.wordmark{align-items:center;min-width:44px;min-height:44px;display:flex}.tech{font-size:12px}@media (width<=1100px){.tech{font-size:12px}}@media (width<=360px){.tech{font-size:12px}}.career-stop{min-height:78px}.career-stop h3{overflow-wrap:anywhere}@media (width<=600px){.career-stop{min-height:75px}.social-links{gap:10px}.contact-title .script{margin-top:20px;font-size:26px;display:inline-block;position:static}.contact-title{padding-bottom:4px}}.dialog-actions{flex-wrap:wrap;gap:12px;display:flex}.dialog-visit[hidden]{display:none}.wordmark{letter-spacing:-.025em;white-space:nowrap;visibility:hidden;opacity:0;pointer-events:none;transition:opacity var(--motion-duration);font-size:25px}.site-header.is-scrolled .wordmark{visibility:visible;opacity:1;pointer-events:auto}.hero{height:auto;min-height:clamp(700px,59vw,1020px);padding-bottom:70px}.scroll-cue{width:max-content;min-height:44px;margin-top:24px;position:static}.road-sign{line-height:1.45}.tech-logo{object-fit:contain;width:32px;height:36px;margin-bottom:7px;display:block}.projects-top>.eyebrow{background:var(--ink);color:var(--cream);letter-spacing:.13em;border:1px solid #f7ebc954;border-radius:3px;padding:10px 14px}.experience-highlights{border-top:1px solid #f7ebc933;max-width:370px;margin-top:45px;padding-top:25px}.experience-highlights>.eyebrow{color:var(--yellow);margin-bottom:22px}.experience-highlights article{gap:18px;margin-bottom:24px;display:flex}.experience-highlights article>span{font-family:var(--display);color:#58cfc6;font-size:28px;line-height:1.1}.experience-highlights h3{margin-bottom:6px;font-size:16px;font-weight:600}.experience-highlights article p{color:#d3d7ca;font-size:12px;line-height:1.6}.service-icon svg{stroke-width:1.6px;width:34px;height:34px;transition:transform var(--motion-duration), stroke var(--motion-duration)}.service:hover .service-icon svg,.service:focus-visible .service-icon svg{stroke:#287770;transform:translateY(-3px)rotate(-5deg)}.button,.header-talk,.marquee-cta,.round-button,.menu-toggle,.menu-close,.site-footer button{isolation:isolate;position:relative}.dialog-close,.intro-skip{isolation:isolate}.marquee-cta{position:absolute}.button:after,.header-talk:after,.marquee-cta:before,.round-button:after,.menu-toggle:after,.dialog-close:after,.menu-close:after,.intro-skip:after,.site-footer button:after{content:"";border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:background-position var(--motion-duration) ease, opacity var(--motion-duration);background:linear-gradient(125deg,#0000 15%,#65e8de66 32%,#e9a2f488 48%,#fff3b6aa 60%,#0000 78%) 100% 100%/300% 300%;position:absolute;inset:0}.button:is(:hover,:focus-visible):after,.header-talk:is(:hover,:focus-visible):after,.marquee-cta:is(:hover,:focus-visible):before,.round-button:not(:disabled):is(:hover,:focus-visible):after,.menu-toggle:is(:hover,:focus-visible):after,.dialog-close:is(:hover,:focus-visible):after,.menu-close:is(:hover,:focus-visible):after,.intro-skip:is(:hover,:focus-visible):after,.site-footer button:is(:hover,:focus-visible):after{opacity:1;background-position:0 0}@media (width<=1100px){.hero{min-height:740px}.wordmark{font-size:21px}}@media (width<=800px){.hero{min-height:810px}.experience-highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:620px;display:grid}.experience-highlights>.eyebrow{grid-column:1/-1;margin:0}.experience-highlights article{gap:10px;margin:0}}@media (width<=600px){.hero{min-height:850px}.wordmark{font-size:18px}.header-actions,.site-header{gap:8px}.header-talk{padding:8px 10px;font-size:11px}.header-talk span{margin-left:8px}.scroll-cue{margin-top:18px;font-size:11px}.tech-logo{width:28px;height:34px}.experience-highlights{margin-top:32px;display:block}.experience-highlights>.eyebrow{margin-bottom:22px}.experience-highlights article{gap:16px;margin-bottom:22px}.experience-highlights article:last-child{margin-bottom:0}.marquee-cta{position:absolute}}html[data-motion=reduced] .button:after,html[data-motion=reduced] .header-talk:after,html[data-motion=reduced] .marquee-cta:before,html[data-motion=reduced] .round-button:after,html[data-motion=reduced] .menu-toggle:after,html[data-motion=reduced] .dialog-close:after,html[data-motion=reduced] .menu-close:after,html[data-motion=reduced] .intro-skip:after,html[data-motion=reduced] .site-footer button:after{transition:none}#skills .section-background,#contact .section-background,.experience-scene{transform:translate3d(0, var(--scene-y,0px), 0) scale(1.22);transform-origin:50%}.portrait-composition{translate:0 var(--portrait-y,0px)}html[data-motion=reduced] #skills .section-background,html[data-motion=reduced] #contact .section-background,html[data-motion=reduced] .experience-scene{transform:none}html[data-motion=reduced] .portrait-composition{translate:none}:root{--motion-duration:.5s;--motion-ease:cubic-bezier(.22, 1, .36, 1)}.parallax-layer,#skills .section-background,#contact .section-background,.experience-scene,.project-track,.project-panorama{transition:transform var(--motion-duration) var(--motion-ease)}.portrait-composition{transition:translate var(--motion-duration) var(--motion-ease), opacity var(--motion-duration) var(--motion-ease), transform var(--motion-duration) var(--motion-ease)}.projects-heading .script{color:var(--cream);text-shadow:none;background:#13151acc;border-radius:3px;width:max-content;max-width:100%;margin-left:0;padding:12px 18px;line-height:1.15;box-shadow:4px 5px #13151a35}.tech{overflow-wrap:anywhere;min-width:0;max-width:100%;line-height:1.25}@media (width<=600px){.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1800px){:root{--page-pad:max(80px, calc((100vw - 1880px) / 2))}.desktop-nav a,.header-talk,.button,.marquee-cta{font-size:16px}.eyebrow,.hero-eyebrow,.hero-principles,.career-date,.project-count,.project-index,.tags span{font-size:14px}.hero-content{width:560px}.hero-role{margin-bottom:48px}.about{grid-template-columns:1fr 1fr;gap:80px;min-height:800px}.about-copy>p:not(.eyebrow){max-width:560px;font-size:20px}.about-facts,.experience-stats>div>span{font-size:15px}.skills{min-height:800px}.skills-content{grid-template-columns:300px minmax(0,1fr);gap:40px}.skill-group{padding:28px 20px}.skill-group h3{font-size:22px}.tech{font-size:15px}.tech-logo{width:46px;height:48px;margin-bottom:10px}.tech-grid{gap:30px 10px}.projects-layout{margin-right:var(--page-pad);grid-template-columns:380px minmax(0,1fr);gap:40px}.project-card{width:clamp(360px,22vw,450px)}.project-meta{padding:24px}.project-meta h3{font-size:27px}.project-meta>p,.projects-heading>p{font-size:16px}.project-progress{left:calc(var(--page-pad) + 420px)}.experience{grid-template-columns:520px minmax(0,1fr);gap:80px;min-height:900px}.experience-copy>p:not(.eyebrow){max-width:500px;font-size:19px}.career{gap:34px}.career-stop{grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:35px}.career-stop h3{font-size:28px}.career-stop p{font-size:18px}.experience-highlights{max-width:500px}.experience-highlights article p{font-size:16px}.services{grid-template-columns:520px minmax(0,1fr);gap:80px;min-height:650px}.services-intro>p:not(.eyebrow){max-width:460px;font-size:19px}.service-list{gap:30px}.service h3{font-size:22px}.service p{font-size:16px}.contact{grid-template-columns:1.1fr 1fr .5fr;min-height:800px}.contact-card{width:100%;max-width:560px;padding:42px}.contact-card>p{font-size:21px}}.about-fact-icon,.contact-marquee-repeat{display:none}.skill-groups{scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--cream) #13151a66;grid-template-columns:none;grid-auto-columns:max(240px,23.5294% - 15.0588px);grid-auto-flow:column;align-items:stretch;gap:16px;min-width:0;padding:12px 10px 32px 4px;overflow-x:auto}.skill-group{scroll-snap-align:start}.skill-groups:focus-visible{outline:2px solid var(--cream);outline-offset:4px}@media (width<=600px){.skill-groups{grid-auto-columns:85%}}@media (width>=1024px){.hero-eyebrow{position:relative;top:-24px}.projects-heading{padding-top:42px}.projects-heading>p{margin-top:38px}.projects-heading .script{margin-top:44px}}@media (width>=1800px){.about .display{font-size:clamp(100px,4.8vw,120px)}.skills .display{font-size:clamp(124px,5.6vw,140px)}.skills-content{grid-template-columns:360px minmax(0,1fr)}.skills .section-heading .script{margin-top:48px}.projects-heading .display{font-size:clamp(124px,5.6vw,140px)}.projects-layout{grid-template-columns:500px minmax(0,1fr)}.project-progress{left:calc(var(--page-pad) + 540px)}.experience .display,.services .display{font-size:clamp(100px,4.6vw,115px)}.experience .display{max-width:520px}.contact-title .display{font-size:clamp(124px,5.6vw,140px)}.hero{height:max(1120px,100svh)}.hero-role{margin-bottom:64px}.hero-intro{line-height:1.5}.hero-principles{margin-block:28px 8px;font-size:22px;line-height:1.55}.portrait-composition{justify-self:center;width:80%;max-width:720px;margin-right:0}.about-facts{gap:14px;font-size:20px;line-height:1.5}.about-facts li{grid-template-columns:32px minmax(0,1fr);align-items:start;column-gap:12px;display:grid}.about-facts span{width:32px;height:32px;margin:0;font-size:0;line-height:1}.about-fact-icon{width:22px;height:22px;display:block}.experience-stats strong{font-size:60px}.experience-stats strong span{font-size:36px}.portrait-label{padding:20px;font-size:16px}.tech-tape{padding-block:14px}.projects-layout{margin-right:80px}.project-track{padding-right:80px}.project-progress{right:80px}.service-number{font-size:20px;font-weight:600}.site-footer{padding-block:28px;font-size:18px}.site-footer button{min-height:48px;padding:10px 20px;font-size:18px}.site-footer .back-top{width:48px;min-height:48px;font-size:32px}.contact-marquee{padding-block:14px;font-size:clamp(38px,1.9vw,48px)}html[data-motion=reduced] .contact-marquee .marquee-group{font-size:inherit}.tech-tape .marquee-group{font-size:20px}.projects.is-pinned .projects-stage{max-height:none}.projects-stage{height:900px;min-height:800px}.projects-heading>p{margin-top:58px;padding-block:18px;font-size:19px;line-height:1.6}.projects-heading .script{margin-top:64px}.project-viewport{padding-top:24px;padding-bottom:48px}.neon-sign{filter:drop-shadow(3px 4px 2px #13151ad9)}.contact-marquee-repeat{display:inline}html[data-motion=reduced] .contact-marquee-repeat{display:none}.project-card{width:clamp(440px,22vw,540px);box-shadow:0 16px 32px #100c2680,8px 10px #351a3559}.project-image{height:clamp(350px,16vw,420px)}.project-meta{padding:28px}.project-meta h3{font-size:32px}.project-meta>p{margin-block:12px 18px;font-size:20px;line-height:1.5}.project-meta .tags span{padding:7px 9px;font-size:16px}.service h3{font-size:26px}.service p{font-size:20px;line-height:1.5}.services-intro>p:not(.eyebrow){font-size:22px;line-height:1.5}.contact-title .script{margin-top:52px}}.services{padding:100px var(--page-pad) 110px;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start;gap:clamp(32px,4vw,80px);min-height:760px}.services-intro{display:block}.services .display{margin-bottom:32px;font-size:clamp(72px,6vw,132px)}.services-intro>p:not(.eyebrow):not(.services-script){max-width:420px;margin-bottom:30px;font-size:18px;line-height:1.55}.services-cta{gap:24px}.services-intro>p.services-script{max-width:none;margin-top:32px;font-size:34px;line-height:1.1}.services-content{min-width:0}.service-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;padding:0 5px 8px 0}.service{text-align:left;color:var(--cream);min-height:278px;box-shadow:5px 6px 0 var(--yellow);transition:transform var(--motion-duration), box-shadow var(--motion-duration);background:#101b1b;border:1px solid #344342;border-radius:4px;flex-direction:column;align-items:stretch;padding:28px 24px 52px;font-family:inherit;display:flex}.service:hover,.service:focus-visible{box-shadow:5px 11px 0 var(--yellow);transform:translateY(-5px)}.service-list:has(.service:hover) .service:not(:hover){opacity:1}.service-icon{color:var(--yellow);height:auto;margin-bottom:26px}.service-icon svg{width:38px;height:38px}.service h3{letter-spacing:-.025em;min-height:0;margin-bottom:16px;font-size:clamp(18px,1.45vw,28px);line-height:1.25}.service p{font-size:clamp(14px,1.05vw,20px);line-height:1.5}.service-number{opacity:.7;font-size:13px;top:26px;right:22px}@media (width>=1800px){.services{padding-top:120px;padding-bottom:130px}.service{min-height:330px;padding:36px 30px 60px}.services-intro>p:not(.eyebrow):not(.services-script){font-size:22px}}@media (width<=1100px){.services{grid-template-columns:1fr;gap:42px;min-height:0;padding-top:80px;padding-bottom:85px}.services .display{font-size:86px}.services-intro>p:not(.eyebrow):not(.services-script){max-width:600px}.service{min-height:260px}}@media (width<=600px){.services{gap:36px;padding:65px 24px 75px}.services .display{margin-bottom:24px;font-size:66px}.services-intro>p:not(.eyebrow):not(.services-script){font-size:16px}.services-intro>p.services-script{font-size:30px}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.service{min-height:250px;padding:20px 15px 44px}.service h3{font-size:17px}.service p{font-size:13px}.service-icon svg{width:32px;height:32px}.service-number{font-size:11px;top:20px;right:14px}}@media (width<=380px){.service-list{grid-template-columns:1fr}.service{min-height:225px}}.skill-group{position:relative}.skill-number{opacity:.6;font-size:12px;line-height:1;position:absolute;top:23px;right:16px}.skill-group h3{padding-right:35px}@media (width>=1800px){.skill-number{font-size:14px;top:25px;right:20px}}.collaboration{padding:100px var(--page-pad) 110px;color:var(--ink)}.collaboration-intro .display{margin-bottom:26px;font-size:clamp(62px,5.8vw,132px);line-height:1.06}.collaboration-intro>p:not(.eyebrow){font-size:20px;line-height:1.5}.collaboration-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin-top:46px;padding:0 5px 8px 0;display:grid}.collaboration-card{min-width:0;color:var(--cream);box-shadow:5px 6px 0 var(--yellow);background:#101b1b;border:1px solid #344342;border-radius:4px;flex-direction:column;padding:32px 26px 26px;display:flex;position:relative}.collaboration-icon{color:var(--yellow);margin-bottom:30px;display:block}.collaboration-icon svg{width:38px;height:38px}.collaboration-number{opacity:.7;font-size:13px;position:absolute;top:30px;right:24px}.collaboration-card h3{margin-bottom:20px;font-size:30px;line-height:1.2}.collaboration-card>p{margin-bottom:28px;font-size:17px;line-height:1.55}.collaboration-card>.collaboration-note{color:var(--yellow);border-top:1px solid #f5e9c433;margin-top:auto;margin-bottom:0;padding-top:20px;font-size:14px}.collaboration-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:40px;display:flex}.collaboration-footer .script{margin:0;font-size:40px}.collaboration-footer .button{gap:28px}@media (width>=1800px){.collaboration{padding-top:120px;padding-bottom:130px}.collaboration-card{padding:40px 34px 34px}.collaboration-card h3{font-size:36px}.collaboration-card>p{font-size:21px}.collaboration-card>.collaboration-note{font-size:17px}.collaboration-intro>p:not(.eyebrow){font-size:24px}}@media (width<=1100px){.collaboration{padding-top:80px;padding-bottom:90px}.collaboration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.collaboration{padding:65px 24px 75px}.collaboration-intro .display{font-size:clamp(43px,9.5vw,57px)}.collaboration-intro>p:not(.eyebrow){font-size:16px}.collaboration-grid{gap:20px 16px;margin-top:32px}.collaboration-card{padding:24px 16px 20px}.collaboration-card h3{font-size:24px}.collaboration-card>p{font-size:15px}.collaboration-card>.collaboration-note{font-size:13px}.collaboration-number{font-size:11px;top:24px;right:16px}.collaboration-icon svg{width:32px;height:32px}.collaboration-footer .script{font-size:32px}}@media (width<=380px){.collaboration-grid{grid-template-columns:1fr}}.neon-sign{-webkit-text-stroke:1px #3b2418;paint-order:stroke fill}.skills-caption{clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);background:#101b20f2;max-width:calc(100% - 48px);padding:13px 24px;font-size:14px;font-weight:700}@media (width>=1800px){.skills-caption{padding:16px 30px;font-size:18px}.neon-sign{-webkit-text-stroke-width:1.5px}}@media (width<=600px){.skills-caption{padding:12px 20px;font-size:12px}}
