*{margin:0;padding:0;box-sizing:border-box}html{font-size:clamp(1rem,.52vw + .375rem,1.625rem)}body,html{background:#000;color:#fff;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}:focus-visible{outline:2px solid #ff3b1f;outline-offset:3px;border-radius:2px}.spotlight{position:fixed;inset:0;background:#000;perspective:1000px;overflow:hidden}.tunnel{top:50%;left:50%}.layer,.tunnel{position:absolute;transform-style:preserve-3d}.layer{top:0;left:0}.item{position:absolute;width:18.75rem;height:25rem;transform:translate(-50%,-50%);border-radius:12px;overflow:hidden}.item:first-child{margin-top:-16.875rem}.item:nth-child(2){margin-top:16.875rem}.item:nth-child(3){margin-left:-23.125rem}.item:nth-child(4){margin-left:23.125rem}.item img{width:100%;height:100%;object-fit:cover}.item-overlay{position:absolute;inset:0;background:#000;opacity:var(--overlay,1);pointer-events:none}.disciplines{position:fixed;left:4.25rem;top:38%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1.75rem;z-index:20}.disciplines button{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:1.375rem;color:#fff;text-align:left;opacity:.85;transition:color .3s ease,opacity .3s ease}.disciplines button:hover{opacity:1}.disciplines button[data-active=true]{color:#ff3b1f;opacity:1}.pill-nav{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;gap:.75rem;padding:.875rem 1.375rem;border-radius:999px;background:rgba(40,40,40,.55);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20}.pill-nav a{color:#fff;text-decoration:none;font-size:1.0625rem;padding:.25rem .875rem;opacity:.9;transition:color .25s ease}.pill-nav a:hover{color:#ff3b1f}@media (max-width:768px){.disciplines{left:24px;gap:20px}.disciplines button{font-size:17px}.item{width:200px;height:270px}.item:first-child{margin-top:-200px}.item:nth-child(2){margin-top:200px}.item:nth-child(3){margin-left:-240px}.item:nth-child(4){margin-left:240px}}@media (prefers-reduced-motion:reduce){.item-overlay{opacity:.15!important}}.about,.contact{max-width:min(92vw,96rem);margin:0 auto;padding:0 2.5rem 10rem;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.about h1,.about h2,.about h3,.contact button,.contact h1{font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.topbar{display:flex;align-items:center;justify-content:space-between;padding:1.625rem 0}.logo{font-weight:800;font-size:1.375rem;letter-spacing:-1px;color:#fff}.logo,.resume{text-decoration:none}.resume{background:#fff;color:#000;font-size:.875rem;padding:.5rem 1.25rem;border-radius:999px;transition:opacity .25s ease}.resume:hover{opacity:.75}.intro,.skills-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:3.5rem;gap:3.5rem}.intro{padding:3.75rem 0 7.5rem}.intro h1{font-size:clamp(2.75rem,6vw,5.125rem);font-weight:800;letter-spacing:-.035em;line-height:.92;color:#fff}.role{color:#ff3b1f;font-size:clamp(.9375rem,1.5vw,1.25rem);font-weight:400;letter-spacing:.02em;margin:1.125rem 0 1.875rem}.bio{color:#b9b9b9;font-size:1.0625rem;line-height:1.95;white-space:pre-line}.portrait{aspect-ratio:4/5;filter:grayscale(1) brightness(.9);background:repeating-linear-gradient(45deg,#131313 0 12px,#181818 12px 24px);border:1px solid #262626}.portrait,.portrait img{display:block;width:100%;object-fit:cover}.portrait img{height:100%}.about h2{font-size:clamp(2.5rem,4.6vw,4rem);font-weight:800;letter-spacing:-1px;margin-bottom:2.5rem}.skills{padding-bottom:8.75rem}.skills-grid{align-items:center}.sphere{position:relative;height:34rem;cursor:-webkit-grab;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sphere .web{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.sphere .wire{fill:none;stroke:#9a9a9a;stroke-width:1;stroke-dasharray:3 7;stroke-linecap:round;opacity:.45}.sphere .pulse{fill:none;stroke:#ff3b1f;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:.3 .7;opacity:0;animation:wire-pulse 8s linear infinite;animation-delay:calc(var(--phase) * -8s)}@keyframes wire-pulse{0%{stroke-dashoffset:0;opacity:0}4%{opacity:.95}26%{opacity:.95}30%{stroke-dashoffset:1;opacity:0}to{stroke-dashoffset:1;opacity:0}}.tag{position:absolute;left:50%;top:50%;white-space:nowrap;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.5rem;color:#d6d6d6;transform-origin:center;will-change:transform,opacity;transition:color .2s ease}.tag[data-active=true]{color:#ff3b1f}.skill-groups{display:flex;flex-direction:column;gap:1.875rem}.skill-groups h3{color:#ff3b1f;font-size:1.75rem;font-weight:800;letter-spacing:1px;margin-bottom:.875rem}.chips{display:flex;flex-wrap:wrap;gap:.625rem}.chip{border:1px solid #3a3a3a;border-radius:8px;padding:.625rem 1.0625rem;font-size:.875rem;color:#d6d6d6;cursor:default;transition:border-color .25s ease,color .25s ease}.chip[data-active=true]{color:#ff3b1f;border-color:#ff3b1f}.experience+.experience{margin-top:7.5rem}.experience article{position:relative;display:grid;grid-template-columns:1fr 1fr 1.6fr;grid-gap:2rem;gap:2rem;padding:2rem 0;border-bottom:1px solid #2a2a2a;transition:border-color .35s ease}.experience article:first-of-type{border-top:1px solid #2a2a2a}.experience article:before{content:"";position:absolute;inset:-1px -1.25rem;background:#ff3b1f;opacity:.08;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,1,.36,1)}.experience article>*{position:relative}.period{font-size:1.625rem;color:#e4e4e4}.place{font-size:1rem;color:#7a7a7a;margin-top:.5rem}.job-role{color:#ff3b1f;font-size:1.625rem;font-weight:600;letter-spacing:-.01em}.company{font-size:1.25rem;color:#cfcfcf;margin-top:.5rem}.job-body{font-size:1.0625rem;line-height:1.75;color:#c4c4c4}.company,.job-body,.job-role,.period,.place{transition:color .35s ease}@media (hover:hover){.experience article:hover{border-bottom-color:#ff3b1f}.experience article:hover:before{transform:scaleX(1)}.experience article:hover .company,.experience article:hover .period{color:#fff}.experience article:hover .place{color:#a8a8a8}.experience article:hover .job-body{color:#e6e6e6}}@media (prefers-reduced-motion:reduce){.experience article:before{transition:none}}@media (max-width:900px){.about{padding:0 22px 140px}.experience article,.intro,.skills-grid{grid-template-columns:1fr;gap:28px}.experience+.experience{margin-top:80px}.sphere{height:340px}.tag{font-size:18px}.portrait{display:none}}.transition{position:fixed;inset:0;display:flex;flex-direction:column;z-index:100;pointer-events:none}.transition[data-state=idle]{visibility:hidden}.transition-row{flex:1 1;display:flex}.row-1 .block{transform-origin:top}.row-2 .block{transform-origin:bottom}.block{flex:1 1;background:#ff3b1f;transform:scaleY(1);transition:transform .7s cubic-bezier(.76,0,.24,1);transition-delay:calc(var(--i) * 90ms);will-change:transform}.transition[data-state=idle] .block,.transition[data-state=reveal] .block{transform:scaleY(0)}.works{overflow:hidden}.hscroll,.works{height:100vh;height:100dvh}.hscroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.hscroll::-webkit-scrollbar{display:none}.w-frame{height:100vh;height:100dvh}.w-frame,.w-intro{display:flex;width:max-content}.w-intro{min-width:46vw;padding-right:8vw;padding-left:13.125rem;flex-shrink:0;flex-direction:column;justify-content:flex-end;padding-bottom:8vh}.w-intro h1{font-size:clamp(3.75rem,11vw,11.875rem);line-height:.88;font-weight:700;letter-spacing:-.03em;text-transform:uppercase}.w-single{position:relative;flex-shrink:0}.w-single,.w-tab{display:flex;height:100vh;height:100dvh}.w-tab{position:-webkit-sticky;position:sticky;left:0;z-index:10;flex:0 0 5.75rem;background:#000;border-left:1px solid #262626;border-right:1px solid #262626;align-items:flex-end;justify-content:center;padding-bottom:2.75rem}.w-tab-label{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;gap:1.125rem;white-space:nowrap}.w-tab-label h2{font-size:1.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.w-tab-label h3{font-size:.9375rem;color:#ff3b1f;font-weight:600}.w-gallery{display:flex;height:100vh;height:100dvh}.w-shot{position:relative;height:82vh;width:auto;max-width:none;align-self:center;flex-shrink:0;margin:0;overflow:hidden;background:#111}.w-gallery img{display:block;width:100%;height:100%;object-fit:contain}.w-shot figcaption{position:absolute;inset:auto 0 0 0;display:flex;flex-wrap:wrap;gap:.4rem;padding:3.5rem 1.25rem 1.25rem;background:linear-gradient(transparent,rgba(0,0,0,.78))}.w-shot figcaption span{padding:.3rem .75rem;border:1px solid hsla(0,0%,100%,.45);border-radius:999px;font-size:.75rem;letter-spacing:.02em;color:#fff}@media (hover:hover){.w-shot figcaption{opacity:0;transform:translateY(.5rem);transition:opacity .35s ease,transform .35s ease}.w-shot.is-hot figcaption{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.w-shot figcaption{transition:none;transform:none}}.w-outro{flex-shrink:0;display:flex;align-items:center;padding:0 10vw 0 7vw;border-left:1px solid #262626}.w-outro a{font-size:clamp(2.25rem,5vw,5rem);font-weight:700;line-height:.95;letter-spacing:-.03em;text-transform:uppercase;transition:color .3s ease}.w-outro a>span{display:block}.w-outro a:hover{color:#ff3b1f}.w-outro-arrow{display:inline-block;transition:transform .3s ease}.w-outro a:hover .w-outro-arrow{transform:translate(.25rem,-.25rem)}.pill-nav a[data-active=true]{color:#ff3b1f}.works[data-mode=gallery] .works-body{height:100%}.works-body[data-out=true]{pointer-events:none}@keyframes item-in{0%{opacity:0;transform:translateY(2.25rem)}to{opacity:1;transform:none}}@keyframes item-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(2.25rem)}}.works-body :is(.w-intro,.w-tab,.w-shot,.w-outro,.works-title,.project-item,.empty){animation:item-in .85s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.12s + var(--n, 0) * .09s)}.works-body[data-out=true] :is(.w-intro,.w-tab,.w-shot,.w-outro,.works-title,.project-item,.empty){animation:item-out .4s cubic-bezier(.4,0,1,1) both;animation-delay:calc(min(var(--n, 0), 6) * .05s)}@media (prefers-reduced-motion:reduce){.works-body :is(.w-intro,.w-tab,.w-shot,.w-outro,.works-title,.project-item,.empty),.works-body[data-out=true] :is(.w-intro,.w-tab,.w-shot,.w-outro,.works-title,.project-item,.empty){animation:none}}@media (max-width:900px){.hscroll,.works{height:auto;overflow:visible}.w-frame,.w-gallery,.w-single{flex-direction:column;width:100%;height:auto}.w-intro{width:100%;height:50vh;padding:0 22px 40px}.w-tab{position:relative;flex:0 0 74px;width:100%;height:74px;border:0;border-top:1px solid #262626;align-items:center;justify-content:flex-start;padding:0 22px}.w-tab-label{writing-mode:horizontal-tb;transform:none}.w-shot{width:100%;height:auto}.w-outro{padding:4.5rem 22px;border-left:0;border-top:1px solid #262626}}.disciplines button{display:flex;align-items:center;gap:.875rem;animation:disc-reveal .75s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.95s + var(--i) * .09s)}@keyframes disc-reveal{0%{opacity:0;transform:translateX(-26px);-webkit-clip-path:inset(0 0 100% 0);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;-webkit-clip-path:inset(0 0 -20% 0);clip-path:inset(0 0 -20% 0)}}.disc-index{font-size:.625rem;letter-spacing:1.5px;color:#8a8a8a;transform:translateY(-2px);transition:color .35s ease,opacity .35s ease;opacity:.6}.disciplines button:hover .disc-index,.disciplines button[data-active=true] .disc-index{opacity:1;color:#ff3b1f}.disc-mask{display:block;height:1.2em;overflow:hidden}.disc-slide{display:block;transition:transform .45s cubic-bezier(.16,1,.3,1)}.disc-slide>span{display:block;height:1.2em;line-height:1.2em}.disciplines button:hover .disc-slide{transform:translateY(-1.2em)}.disc-line{width:0;height:1px;background:#ff3b1f;transition:width .45s cubic-bezier(.16,1,.3,1)}.disciplines button:hover .disc-line{width:1.625rem}.disciplines button[data-active=true] .disc-line{width:2.5rem}.drag-hint{position:fixed;right:3.375rem;top:50%;transform:translateY(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:1.125rem;color:hsla(0,0%,100%,.55);font-size:.6875rem;letter-spacing:2.5px;text-transform:uppercase;pointer-events:none;animation:disc-reveal .9s ease 1.35s both;transition:opacity .6s ease}.drag-hint span:first-child{writing-mode:vertical-rl}.drag-hint[data-hidden=true]{opacity:0}.drag-hint-line{width:1px;height:3.375rem;background:linear-gradient(#ff3b1f,transparent);animation:drag-drift 2.2s ease-in-out infinite}@keyframes drag-drift{0%,to{transform:translateY(0);opacity:.35}50%{transform:translateY(14px);opacity:1}}.spotlight{cursor:-webkit-grab;cursor:grab;touch-action:none}@media (prefers-reduced-motion:reduce){.disciplines button,.drag-hint,.drag-hint-line{animation:none}}@media (max-width:768px){.drag-hint{right:20px;font-size:9px}}.works[data-mode=list]{height:auto;overflow:visible}.works-list{padding:5.625rem 3.75rem 10rem 12.5rem}.works-title{font-size:clamp(3.5rem,9vw,9.375rem);font-weight:800;letter-spacing:-.04em;line-height:.9;margin-bottom:5.625rem}.project-list{display:flex;flex-direction:column}.project-item{position:relative;z-index:2;display:flex;align-items:center;gap:2.5rem;padding:2.625rem 1.5rem;border-top:1px solid hsla(0,0%,100%,.1);color:inherit;text-decoration:none;transition:background .3s ease}.project-item:last-child{border-bottom:1px solid hsla(0,0%,100%,.1)}.project-item:hover{background:hsla(0,0%,100%,.02)}.p-index{font-size:.875rem;color:hsla(0,0%,100%,.3);transition:color .3s ease}.project-item:hover .p-index{color:#ff3b1f}.p-info{flex-grow:1}.p-info h2{font-size:clamp(2rem,4.6vw,4.875rem);font-weight:800;text-transform:uppercase;letter-spacing:-.03em;line-height:1;transition:color .3s ease,padding-left .3s ease}.project-item:hover .p-info h2{padding-left:.75rem}@supports (-webkit-text-stroke:1px #fff){.project-item:hover .p-info h2{color:transparent;-webkit-text-stroke:1px #fff}}.p-info p{margin-top:.625rem;font-size:.8125rem;letter-spacing:1px;color:hsla(0,0%,100%,.5)}.p-arrow{font-size:1.875rem;transition:transform .3s ease,color .3s ease}.project-item:hover .p-arrow{transform:rotate(-45deg);color:#ff3b1f}.empty{padding:2.5rem 1.5rem;color:#8f8f8f;letter-spacing:1px}button.project-item{width:100%;background:none;border-left:0;border-right:0;font:inherit;text-align:left;cursor:pointer}.lightbox{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;background:rgba(8,8,8,.94);animation:lightbox-in .3s ease}@keyframes lightbox-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.lightbox{animation:none}}.lightbox-bar{display:flex;align-items:center;gap:1.25rem;padding:1rem 1.5rem;border-bottom:1px solid hsla(0,0%,100%,.12)}.lightbox-bar strong{flex-grow:1;font-size:.9375rem;letter-spacing:1px;text-transform:uppercase}.lightbox-bar a{font-size:.75rem;letter-spacing:1.5px;text-transform:uppercase;color:hsla(0,0%,100%,.6);text-decoration:none}.lightbox-bar a:hover{color:#ff3b1f}.lightbox-bar button{background:none;border:0;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer;padding:.25rem .5rem}.lightbox-bar button:hover{color:#ff3b1f}.lightbox iframe{flex-grow:1;width:100%;border:0;background:#1a1a1a}.lightbox-img{flex-grow:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:1.5rem}.lightbox-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.lightbox-img[data-zoom=true]{overflow:auto;padding:0;justify-content:flex-start;align-items:flex-start}.lightbox-img[data-zoom=true] img{margin:auto}.w-shot>button{display:block;width:100%;height:100%;padding:0;border:0;background:none}.w-shot>button:focus-visible{outline:2px solid #ff3b1f;outline-offset:-2px}@media (max-width:700px){.lightbox-bar{padding:.875rem 1rem;gap:.875rem}.lightbox-bar strong{font-size:.75rem}.lightbox-bar a{display:none}}.hover-reveal{position:fixed;top:0;left:0;width:18.75rem;height:24.375rem;z-index:1;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .35s ease}.hover-reveal[data-on=true]{opacity:1}.hover-reveal img{width:100%;height:100%;object-fit:cover}.reveal-card{width:100%;height:100%;background:#131313;border:1px solid #2b2b2b;display:flex;flex-direction:column;justify-content:flex-end;gap:.625rem;padding:1.625rem}.reveal-card span{font-size:.6875rem;letter-spacing:2px;text-transform:uppercase;color:#ff3b1f}.reveal-card strong{font-size:1.375rem;font-weight:700;line-height:1.15}.dot-cursor{display:none;position:fixed;top:0;left:0;width:1.125rem;height:1.125rem;mix-blend-mode:difference;pointer-events:none;z-index:999}.dot-cursor:after{content:"";position:absolute;inset:0;border-radius:50%;background:#fff;transform:scale(1);transition:transform .25s ease}.dot-cursor[data-on=true]{display:block}.dot-cursor[data-big=true]:after{transform:scale(3.4)}@media (pointer:coarse){.hover-reveal{display:none}}@media (pointer:fine){[data-cursor=custom],[data-cursor=custom] :is(body,a,button,input,textarea,.sphere,.spotlight){cursor:none}}.disc-toggle{display:none}@media (max-width:1100px){.works-list{padding:84px 22px 140px}.w-intro{padding-left:22px}.project-item{padding:26px 0;gap:20px}.disc-toggle{display:flex;position:fixed;top:20px;right:20px;z-index:30;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 10px;border:1px solid #2a2a2a;border-radius:10px;background:hsla(0,0%,8%,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.disc-toggle span{height:1.5px;background:#fff;transition:transform .3s ease,opacity .2s ease}.disc-toggle[aria-expanded=true] span:first-child{transform:translateY(6.5px) rotate(45deg)}.disc-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.disc-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.disciplines{top:76px;left:20px;right:20px;transform:none;z-index:29;gap:4px;padding:10px 18px;border:1px solid #2a2a2a;border-radius:14px;background:hsla(0,0%,8%,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.disciplines[data-open=false]{display:none}.disciplines button{padding:12px 0;animation:none}}.contact{padding:5.625rem 2.5rem 6.875rem;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.contact h1{font-size:clamp(2.625rem,6vw,5.625rem);font-weight:800;letter-spacing:-.04em;line-height:.9;margin-bottom:5.625rem}.contact-grid{margin-bottom:5.625rem;display:grid;grid-template-columns:1fr 1.15fr;grid-gap:5rem;gap:5rem;align-items:start}.contact-details{display:flex;flex-direction:column;gap:2.625rem}.c-label{color:#ff3b1f;font-size:.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:.75rem}.c-label.muted{color:#8f8f8f}.c-value,.contact-details a:not(.chip){font-size:clamp(1rem,1.5vw,1.3125rem);color:#ededed;text-decoration:none;transition:color .25s ease}.contact-details a:not(.chip):hover{color:#ff3b1f}.contact .chip{border-radius:999px;padding:.5625rem 1.125rem;font-size:.8125rem;text-decoration:none;cursor:pointer;background:#171717}.contact .chip:hover{color:#ff3b1f;border-color:#ff3b1f}.contact-form{display:flex;flex-direction:column;gap:1.25rem}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem;gap:1.25rem}.contact-form label{display:flex;flex-direction:column;gap:.5625rem;font-size:.8125rem;color:#b5b5b5}.contact-form input,.contact-form textarea{font:inherit;font-size:.875rem;color:#ededed;background:#1b1b1b;border:1px solid #2e2e2e;border-radius:8px;padding:.875rem 1rem;resize:vertical;transition:border-color .25s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#6b6b6b}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#ff3b1f}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid #ff3b1f;outline-offset:2px}.contact-form button{margin-top:.375rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#ff3b1f;color:#0a0a0a;border:0;border-radius:8px;padding:1.0625rem;font-size:.9375rem;font-weight:700;cursor:pointer;transition:background-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}.contact-form button .arrow{display:inline-block;transition:transform .35s cubic-bezier(.22,1,.36,1)}@media (hover:hover){.contact-form button:hover{background:#fff;color:#ff3b1f;transform:translateY(-2px);box-shadow:0 .625rem 1.625rem rgba(255,59,31,.3)}.contact-form button:hover .arrow{transform:translate(.25rem,-.25rem)}}.contact-form button:active{transform:translateY(0);box-shadow:none}@media (prefers-reduced-motion:reduce){.contact-form button,.contact-form button .arrow{transition:background-color .3s ease,color .3s ease}.contact-form button:hover,.contact-form button:hover .arrow{transform:none}}.form-note{font-size:.75rem;color:#8a8a8a}@media (max-width:900px){.contact{padding:80px 22px 140px}.contact-grid,.field-row{grid-template-columns:1fr;gap:34px}}.masked{position:relative}.masked .mask-layer{position:absolute;inset:-5.625rem;padding:5.625rem;max-width:none;margin:0;color:#ff3b1f;pointer-events:none;-webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0iYmxhY2siLz48L3N2Zz4=");mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0iYmxhY2siLz48L3N2Zz4=");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:0;mask-size:0}@media (prefers-reduced-motion:reduce){.masked .mask-layer{display:none}}.loader{--dw:min(84px,13vw);--dh:calc(var(--dw) * 1.6);position:fixed;inset:0;z-index:200;background:#000;overflow:hidden;display:flex;align-items:flex-end}.counter{display:flex;margin:0 0 2.4rem 2.2rem;animation:count-travel 4.8s cubic-bezier(.76,0,.24,1) .35s both}.count-wrapper{width:var(--dw);height:var(--dh);overflow:hidden}.count{display:flex;width:calc(var(--dw) * 6)}.digit{position:relative;width:var(--dw);height:var(--dh);flex-shrink:0}.digit span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--dh);font-weight:300;line-height:1}.count{animation:count-step 4.8s .35s both}@keyframes count-step{0%{transform:translateX(0);animation-timing-function:cubic-bezier(.76,0,.24,1)}20%{transform:translateX(calc(var(--dw) * -1));animation-timing-function:cubic-bezier(.76,0,.24,1)}40%{transform:translateX(calc(var(--dw) * -2));animation-timing-function:cubic-bezier(.76,0,.24,1)}60%{transform:translateX(calc(var(--dw) * -3));animation-timing-function:cubic-bezier(.76,0,.24,1)}80%{transform:translateX(calc(var(--dw) * -4));animation-timing-function:cubic-bezier(.76,0,.24,1)}to{transform:translateX(calc(var(--dw) * -5))}}@keyframes count-travel{0%{transform:translateX(0)}to{transform:translateX(calc(100vw - var(--dw) * 2 - 4.4rem))}}.revealer{position:absolute;top:50%;left:50%;width:150vmax;height:150vmax;margin:-75vmax 0 0 -75vmax;border-radius:50%;pointer-events:none;animation:circle-grow 1.2s cubic-bezier(.76,0,.24,1) both}.revealer-1{background:#f5f5f5;animation-delay:5s}.revealer-2{background:#ff3b1f;animation-delay:5.4s}.revealer-3{background:#000;animation-delay:5.8s}@keyframes circle-grow{0%{transform:scale(0)}to{transform:scale(1)}}.credit{margin-top:auto;border-top:1px solid #262626;padding-top:1.5rem;align-items:flex-start;text-align:left;display:flex;flex-direction:column;gap:2px;font-size:.625rem;letter-spacing:1.2px;text-transform:uppercase;line-height:1.7;color:#9a9a9a}@media (max-width:1100px){.about,.contact{padding-left:30px;padding-right:30px}.intro,.skills-grid{gap:36px}}@media (max-width:900px){.experience article{padding:22px 0}.sphere{height:440px}.contact-details{gap:34px}}@media (max-width:620px){.pill-nav{gap:2px;padding:11px 14px;bottom:22px}.pill-nav a{font-size:14px;padding:4px 9px}.about,.contact{padding-left:20px;padding-right:20px}.about h2,.contact h1{margin-bottom:44px}.experience+.experience{margin-top:60px}.job-role,.period{font-size:21px}.company{font-size:17px}.place{font-size:14px}.job-body{font-size:15px}.topbar{padding:20px 0}.item{width:165px;height:225px}.item:first-child{margin-top:-165px}.item:nth-child(2){margin-top:165px}.item:nth-child(3){margin-left:-190px}.item:nth-child(4){margin-left:190px}.sphere{height:350px}.tag{font-size:16px}.chip{padding:8px 13px;font-size:13px}.skill-groups h3{font-size:23px}.w-intro{height:38vh}.p-info h2{font-size:34px}.p-arrow{font-size:22px}.loader{--dw:min(64px,17vw)}.counter{margin:0 0 1.6rem 1.4rem}.drag-hint{display:none}}@media (pointer:coarse){.masked .mask-layer{display:none}.sphere{cursor:default}}@media (prefers-reduced-motion:reduce){.sphere .pulse{animation:none;opacity:0}}