.portfolio-page{margin:0;background:var(--background);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;line-height:1.7}.portfolio-page *{box-sizing:border-box}.portfolio-page a{color:inherit;text-decoration:none}.portfolio-page button,.portfolio-page input,.portfolio-page textarea{font:inherit}.portfolio-page button{cursor:pointer}.portfolio-page a:focus-visible,.portfolio-page button:focus-visible,.portfolio-page input:focus-visible,.portfolio-page textarea:focus-visible{outline:2px solid #fff;outline-offset:5px}.portfolio-page [hidden]{display:none!important}.portfolio-page img{display:block;max-width:100%;height:auto}.portfolio-page figure{margin:0}.portfolio-page h1,.portfolio-page h2,.portfolio-page h3,.portfolio-page h4,.portfolio-page p{margin-top:0}.portfolio-header{position:absolute;top:32px;left:var(--gutter);z-index:5}.portfolio-brand{display:block;font-family:Anton,Impact,sans-serif;font-size:30px;line-height:1}.portfolio-brand span{display:block;font-family:Roboto,Arial,sans-serif;font-size:9px;letter-spacing:.15em;margin-top:10px;color:var(--secondary)}.portfolio-skip{position:fixed;top:10px;left:20px;z-index:1100;background:#fff;color:#242424!important;padding:10px 20px;transform:translateY(-150%)}.portfolio-skip:focus{transform:none}#portfolio-content{padding:165px var(--gutter) 100px;max-width:1920px;margin:auto;min-height:75svh}.portfolio-page-heading{max-width:1400px;margin-bottom:75px}.portfolio-kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);margin-bottom:30px}.portfolio-page-heading h1{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(65px,8.2vw,158px);line-height:1.08;letter-spacing:0;overflow-wrap:anywhere;margin-bottom:24px}.portfolio-intro{font-family:Poppins,Arial,sans-serif;font-size:clamp(17px,1.5vw,25px);color:var(--secondary);max-width:820px;line-height:1.65}.portfolio-page .portfolio-back{display:inline-block;font-size:11px;letter-spacing:.08em;color:var(--secondary);margin-bottom:35px}.portfolio-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:48px}.portfolio-filters button{padding:12px 20px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--secondary);font-size:11px;letter-spacing:.08em;transition:background .2s,color .2s}.portfolio-filters button[aria-pressed=true]{background:#fff;color:#242424;border-color:#fff}.portfolio-filters span{margin-left:14px}.portfolio-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px 36px}.portfolio-project-card a{display:block}.portfolio-card-image{overflow:hidden;background:var(--surface);aspect-ratio:16/10}.portfolio-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.portfolio-project-card a:hover img{transform:scale(1.035)}.portfolio-card-meta{display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.07em;color:var(--muted);margin:22px 0 14px}.portfolio-card-meta span:first-child{text-transform:uppercase}.portfolio-project-card h2{font-family:Poppins,Arial,sans-serif;font-weight:600;font-size:clamp(22px,2vw,37px);line-height:1.3;margin-bottom:9px}.portfolio-project-card p{color:var(--secondary);font-size:14px;line-height:1.6;margin-bottom:0}.portfolio-project-cover{margin-bottom:90px!important}.portfolio-project-cover img{width:100%;max-height:900px;object-fit:contain;background:#202020}.portfolio-project-cover figcaption,.portfolio-media figcaption,.portfolio-video figcaption{color:var(--muted);font-size:12px;margin-top:12px}.portfolio-project-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:70px}.portfolio-copy{grid-column:1/-1;max-width:970px;margin:0 auto 38px;width:100%;font-size:18px;line-height:1.8;overflow-wrap:anywhere}.portfolio-copy p{margin-bottom:22px}.portfolio-copy h2{font-family:Anton,Impact,sans-serif;font-size:clamp(35px,4vw,70px);font-weight:400;line-height:1.15;margin:40px 0 20px}.portfolio-copy h3{font-family:Poppins,Arial,sans-serif;font-size:clamp(23px,2.4vw,38px);font-weight:600;line-height:1.45;margin:20px 0}.portfolio-copy h4{font-family:Poppins,Arial,sans-serif;font-size:23px;margin-bottom:18px}.portfolio-copy a,.portfolio-form-privacy a{border-bottom:1px solid var(--secondary)}.portfolio-copy ul,.portfolio-copy ol{padding-left:25px}.portfolio-copy--expertise{grid-column:auto;background:var(--surface);padding:35px;max-width:none}.portfolio-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin:25px 0 85px}.portfolio-gallery--single{grid-template-columns:1fr}.portfolio-gallery .portfolio-media{align-self:start}.portfolio-media img{width:100%;height:auto}.portfolio-media a{display:block;cursor:zoom-in}.portfolio-video{grid-column:1/-1;margin:20px 0 75px!important}.portfolio-video-shell{aspect-ratio:16/9;min-height:220px;background:#1b1b1b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:var(--secondary);padding:20px;text-align:center}.portfolio-video-shell>span{font-family:Poppins,Arial,sans-serif;font-size:clamp(20px,3vw,40px);line-height:1.3}.portfolio-video-shell button{border:1px solid var(--secondary);background:transparent;color:#fff;padding:15px 30px;font-size:12px;letter-spacing:.1em}.portfolio-video-shell>a{font-size:11px}.portfolio-video-shell:has(iframe){padding:0}.portfolio-video iframe,.portfolio-video video{width:100%;height:100%;border:0}.portfolio-video video{display:block;max-height:850px}.portfolio-project-next{display:flex;justify-content:space-between;gap:30px;align-items:end;border-top:1px solid var(--line);padding-top:40px;margin-top:40px;font-size:11px;letter-spacing:.08em}.portfolio-project-next>a:last-child{text-align:right;max-width:65%}.portfolio-project-next strong{display:block;font-family:Poppins,Arial,sans-serif;font-size:clamp(25px,3vw,55px);line-height:1.4;letter-spacing:0;margin-top:18px}.portfolio-about-body{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.portfolio-about-body>.portfolio-gallery:first-of-type{grid-column:1;max-width:650px}.portfolio-about-body>.portfolio-gallery:first-of-type+.portfolio-copy{grid-column:2}.portfolio-skills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-column:1/-1;gap:18px;margin:45px 0 70px}.portfolio-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 15px;background:var(--surface);text-align:center;min-height:180px}.portfolio-tool img{width:65px;height:65px;object-fit:contain;margin-bottom:22px}.portfolio-tool h3{font-family:Poppins,Arial,sans-serif;font-size:15px;font-weight:400;margin:0}.portfolio-legal-body{max-width:960px}.portfolio-legal-body .portfolio-copy{font-size:16px}.portfolio-legal-body .portfolio-copy h2{font-size:42px}.portfolio-legal-body .portfolio-copy h3{font-size:27px}.portfolio-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,150px);margin:15px 0 100px}.portfolio-contact-social{display:flex;flex-wrap:wrap;gap:25px;font-size:11px;letter-spacing:.08em;margin-top:48px}.portfolio-contact-notice{font-size:clamp(16px,1.2vw,20px);color:var(--secondary);max-width:550px;line-height:1.7;margin-top:36px}.portfolio-contact-form{display:flex;flex-direction:column}.portfolio-contact-form label{font-size:11px;letter-spacing:.1em;margin-bottom:15px}.portfolio-contact-form input,.portfolio-contact-form textarea{background:transparent;color:#fff;border:0;border-bottom:1px solid var(--line);padding:12px 0;border-radius:0;font-size:18px;resize:vertical;min-width:0}.portfolio-contact-form [aria-invalid=true]{border-color:#ffc8bb}.portfolio-field-error{font-size:13px;color:#ffc8bb;min-height:45px;padding-top:8px}.portfolio-honeypot{position:absolute;left:-9999px;opacity:0;width:1px;height:1px;overflow:hidden}.portfolio-form-privacy{font-size:12px;color:var(--muted);margin:5px 0 25px}.portfolio-send{display:flex;align-items:center;justify-content:space-between;background:transparent;border:1px solid var(--secondary);color:#fff;font-size:12px;letter-spacing:.1em;padding:20px 25px}.portfolio-send:hover{background:#fff;color:#242424}.portfolio-send:disabled{opacity:.5;cursor:wait}.portfolio-form-status{min-height:50px;color:var(--secondary);font-size:14px;margin-top:20px}.portfolio-contact-original{max-width:960px}.portfolio-contact-original .portfolio-copy{font-size:16px}.portfolio-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line);padding:35px var(--gutter);font-size:10px;letter-spacing:.07em;color:var(--secondary)}.portfolio-footer>div,.portfolio-footer nav{display:flex;gap:25px;flex-wrap:wrap}.portfolio-footer>a{font-family:Anton,Impact,sans-serif;font-size:22px;color:#fff}.portfolio-footer-hours{width:100%;justify-content:space-between;color:var(--muted)}.portfolio-contact-direct{display:flex;gap:25px;flex-wrap:wrap;font-size:16px;margin-bottom:45px}.portfolio-contact-direct a{border-bottom:1px solid var(--line)}.portfolio-video-shell{width:100%;min-width:0}.portfolio-video-shell>span{overflow-wrap:anywhere}.portfolio-lightbox{position:fixed;inset:0;padding:60px 80px;max-width:100vw;max-height:100svh;width:100%;height:100%;background:#181818;color:#fff;border:0;overflow:hidden}.portfolio-lightbox::backdrop{background:#000000e6}.portfolio-lightbox[open]{display:flex;align-items:center;justify-content:center;gap:25px}.portfolio-lightbox figure{max-width:calc(100% - 100px);max-height:100%;display:flex;flex-direction:column;align-items:center}.portfolio-lightbox img{max-height:calc(100svh - 155px);object-fit:contain;width:auto;max-width:100%}.portfolio-lightbox figcaption{margin-top:15px;font-size:12px;color:#bdbdbd;text-align:center}.portfolio-lightbox button{border:0;background:transparent;color:#fff;font-size:28px;padding:12px;min-width:44px;min-height:44px}.portfolio-lightbox-close{position:absolute;top:20px;right:25px;font-size:40px!important}@media(max-width:900px){.portfolio-project-grid{gap:55px 25px}.portfolio-project-body,.portfolio-about-body{column-gap:30px}.portfolio-contact-layout{gap:40px}.portfolio-menu-primary{padding:40px 0}}@media(max-width:700px){#portfolio-content{padding-top:140px;padding-bottom:70px}.portfolio-header{top:28px}.portfolio-brand{font-size:27px}.portfolio-page-heading{margin-bottom:45px}.portfolio-page-heading h1{font-size:clamp(57px,14vw,95px)}.portfolio-kicker{margin-bottom:24px;font-size:10px}.portfolio-project-grid{grid-template-columns:1fr;gap:50px}.portfolio-card-image{aspect-ratio:16/10}.portfolio-project-card h2{font-size:26px}.portfolio-filters{gap:8px;margin-bottom:35px}.portfolio-filters button{padding:10px 12px;font-size:10px}.portfolio-project-cover{margin-bottom:45px!important}.portfolio-project-body,.portfolio-about-body{display:block}.portfolio-copy{font-size:16px;margin-bottom:30px}.portfolio-copy h2{font-size:40px}.portfolio-copy h3{font-size:25px}.portfolio-copy--expertise{padding:25px}.portfolio-gallery{grid-template-columns:1fr;gap:20px;margin-bottom:45px}.portfolio-about-body>.portfolio-gallery:first-of-type{max-width:440px}.portfolio-skills{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portfolio-tool{min-height:150px;padding:25px 10px}.portfolio-tool img{width:50px;height:50px}.portfolio-project-next{flex-direction:column;align-items:start}.portfolio-project-next>a:last-child{text-align:left;max-width:100%}.portfolio-contact-layout{grid-template-columns:1fr;gap:35px;margin-bottom:60px}.portfolio-contact-notice{margin-top:30px}.portfolio-contact-social{margin-top:25px}.portfolio-footer{gap:25px}.portfolio-footer>div,.portfolio-footer nav{gap:18px}.portfolio-lightbox{padding:65px 5px 35px}.portfolio-lightbox[open]{gap:0}.portfolio-lightbox figure{max-width:calc(100% - 80px)}.portfolio-lightbox button{padding:5px;min-width:38px}}@media(prefers-reduced-motion:reduce){.portfolio-card-image img,.portfolio-filters button{transition:none}}.portfolio-page--about .portfolio-page-heading{max-width:none}.portfolio-about-intro>h2{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(58px,6vw,118px);line-height:1.1;margin:0 0 24px}.portfolio-about-disciplines{display:flex;flex-wrap:wrap;gap:14px 24px}.portfolio-about-disciplines h2{display:flex;align-items:center;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(40px,4.7vw,80px);line-height:1.2;margin:0}.portfolio-about-disciplines h2:not(:last-child):after{content:"–";font-family:Roboto,Arial,sans-serif;font-size:.65em;color:var(--secondary);margin-left:24px}@media(max-width:700px){.portfolio-about-disciplines{gap:12px}.portfolio-about-disciplines h2{flex-basis:100%}.portfolio-about-disciplines h2:after{display:none}}.portfolio-about-disciplines{justify-content:center;text-align:center}.portfolio-about-disciplines h2{justify-content:center}.portfolio-page .software-toolkit{grid-column:1/-1;width:100%;margin:45px 0 70px}.portfolio-page .software-tools{list-style:none;padding:0;margin:0}.portfolio-page .software-heading h3,.portfolio-page .software-heading>p,.portfolio-page .software-credits{margin-bottom:0}.portfolio-page .software-heading .section-index{font-size:10px;letter-spacing:.075em;color:var(--secondary)}.portfolio-page .software-tools img{height:56px}@media(max-width:640px){.portfolio-page .software-tools img{height:50px}}.portfolio-artstation{grid-column:1/-1;text-align:center;margin:35px 0 25px}.portfolio-artstation h2{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(35px,4vw,65px);line-height:1.2;margin-bottom:38px}.portfolio-artstation>a{display:flex;flex-direction:column;align-items:center;gap:30px;max-width:1040px;margin:auto;padding:20px}.portfolio-artstation img{width:100%;height:auto}.portfolio-artstation a>span{font-size:12px;letter-spacing:.1em;color:var(--secondary)}.portfolio-artstation a:hover>span{color:var(--text)}.portfolio-about-intro{width:max-content;max-width:100%}.portfolio-about-disciplines{width:0;min-width:100%;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:0;text-align:left}.portfolio-about-disciplines h2{font-size:clamp(18px,2.5vw,48px);flex-basis:auto;justify-content:start;white-space:nowrap}.portfolio-about-disciplines h2:after{display:none}.portfolio-discipline-divider{font-size:clamp(15px,2vw,34px);line-height:1;color:var(--secondary)}.portfolio-category-icon{display:block;width:72px;height:72px;flex-shrink:0;color:var(--text)}.portfolio-responsibility{display:grid;grid-template-columns:minmax(0,2fr) minmax(72px,1fr);column-gap:28px;align-items:center}.portfolio-responsibility>.portfolio-category-icon{justify-self:center}.portfolio-responsibility-copy{min-width:0}.portfolio-responsibility-copy>:last-child{margin-bottom:0}.portfolio-skillsets{grid-column:1/-1;margin:44px 0 80px;text-align:left}.portfolio-skillsets>h2{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(40px,4vw,70px);line-height:1.15;margin:0 0 46px}.portfolio-skillset-list{border-top:1px solid var(--line)}.portfolio-skillset{padding:32px 0;border-bottom:1px solid var(--line)}.portfolio-skillset-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:18px}.portfolio-skillset h3{font-family:Poppins,Arial,sans-serif;font-size:clamp(20px,1.7vw,29px);font-weight:600;line-height:1.4;margin:0}.portfolio-skillset-heading .portfolio-category-icon{width:38px;height:38px}.portfolio-skillset p{font-size:18px;line-height:1.8;max-width:1200px;margin:0}.portfolio-carousel{grid-column:1/-1;min-width:0;margin:29px 0 98px}.portfolio-carousel>h2{font-family:Poppins,Arial,sans-serif;font-size:clamp(17px,1.8vw,26px);font-weight:600;letter-spacing:.04em;margin:0 0 25px}.portfolio-carousel-track{height:auto;aspect-ratio:16/9;display:grid;grid-template-rows:minmax(0,1fr);grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--secondary) var(--surface);min-width:0}.portfolio-carousel-track .portfolio-media{scroll-snap-align:start;scroll-snap-stop:always;min-width:0;min-height:0;height:auto;align-self:stretch;overflow:hidden;background:#202020;display:flex;flex-direction:column}.portfolio-carousel-track .portfolio-media a{display:block;min-height:0;overflow:hidden;flex:1}.portfolio-carousel-track .portfolio-media img{width:100%;height:100%;object-fit:contain}.portfolio-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:25px}.portfolio-carousel-controls button{min-width:44px;min-height:44px;padding:8px;background:transparent;border:1px solid var(--line);color:var(--secondary);font-size:13px}.portfolio-carousel-controls>button{font-size:25px}.portfolio-carousel-controls button:hover,.portfolio-carousel-controls button[aria-current=true]{background:var(--text);color:var(--background);border-color:var(--text)}.portfolio-carousel-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.portfolio-carousel-counter{font-size:12px;white-space:nowrap;color:var(--secondary)}.portfolio-page-heading{margin-bottom:86px}.portfolio-copy{margin-bottom:44px}.portfolio-copy p{margin-bottom:25px}.portfolio-copy h2{margin-top:46px;margin-bottom:23px}.portfolio-gallery{gap:29px;margin:29px 0 98px}.portfolio-video{margin:23px 0 86px!important}.portfolio-project-cover{margin-bottom:104px!important}.portfolio-project-grid{row-gap:92px}.portfolio-page .software-toolkit{margin-top:52px;margin-bottom:80px}.portfolio-contact-layout{margin-bottom:115px}@media(max-width:900px){.portfolio-project-grid{row-gap:63px}}.portfolio-award,.portfolio-story{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(35px,5vw,100px);align-items:center;margin:35px 0 100px}.portfolio-award>.portfolio-media{width:100%;max-width:420px;justify-self:center}.portfolio-award>div{max-width:1100px}.portfolio-award h2{font-family:Poppins,Arial,sans-serif;font-size:clamp(26px,2.5vw,42px);line-height:1.35;margin-bottom:25px}.portfolio-award p{font-size:18px;line-height:1.8}.portfolio-award .portfolio-kicker{font-size:11px}.portfolio-award a:not(.portfolio-lightbox-link){font-size:11px;letter-spacing:.06em;border-bottom:1px solid var(--line)}.portfolio-story{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.portfolio-story>.portfolio-media{width:100%;max-width:800px;justify-self:center}.portfolio-story-copy{grid-column:auto;max-width:none;margin:0}.portfolio-story-copy p{font-family:Poppins,Arial,sans-serif;font-weight:600;font-size:24px;line-height:1.45}.portfolio-gif{margin-bottom:100px}.portfolio-gif .portfolio-media{max-width:1200px;width:100%;margin:auto}.portfolio-image-pair .portfolio-media{height:100%;display:flex;align-items:start}.portfolio-image-pair img{max-height:800px;object-fit:contain}.portfolio-page--about .portfolio-page-heading{margin-bottom:125px}.portfolio-about-body{align-items:start;row-gap:40px}.portfolio-about-body>.portfolio-gallery:first-of-type{margin-top:0}.portfolio-about-body>.portfolio-copy{margin-bottom:75px}.portfolio-expertise-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;column-gap:inherit;row-gap:115px;margin-bottom:75px}.portfolio-expertise-grid>.portfolio-copy--expertise{margin:0;align-self:stretch}.portfolio-contact-orbit{position:relative;padding-top:145px;padding-bottom:35px;margin-top:-25px;min-height:220px}.portfolio-contact-orbit canvas{position:absolute;pointer-events:none;z-index:1}.portfolio-contact-orbit p{position:relative;max-width:620px;font-size:18px;line-height:1.7;color:var(--secondary);margin:0}@media(max-width:700px){.portfolio-contact-orbit p{font-size:16px;max-width:calc(100% - 8px)}.portfolio-contact-orbit{padding-bottom:40px}}@media(max-width:700px){.portfolio-expertise-grid{grid-template-columns:minmax(0,1fr);row-gap:65px;margin-bottom:65px}}.portfolio-about-body .portfolio-skillsets{margin-bottom:110px}.portfolio-about-body .software-toolkit{margin-top:80px;margin-bottom:110px}@media(max-width:700px){.portfolio-award,.portfolio-story{grid-template-columns:1fr;gap:30px;margin-bottom:70px}.portfolio-award>.portfolio-media{max-width:260px}.portfolio-award p{font-size:16px}.portfolio-story-copy p{font-size:21px}.portfolio-page--about .portfolio-page-heading{margin-bottom:85px}.portfolio-about-body>.portfolio-copy{margin-bottom:65px}.portfolio-about-body .software-toolkit{margin-top:65px;margin-bottom:85px}.portfolio-about-body .portfolio-skillsets{margin-bottom:85px}}@media(max-width:700px){.portfolio-page-heading{margin-bottom:52px}.portfolio-copy{margin-bottom:35px}.portfolio-copy p{margin-bottom:25px}.portfolio-gallery,.portfolio-carousel{margin-bottom:52px}.portfolio-project-cover{margin-bottom:52px!important}.portfolio-project-grid{row-gap:58px}.portfolio-skillsets{margin:35px 0 64px}.portfolio-skillset p{font-size:16px}.portfolio-skillset{padding:28px 0}.portfolio-responsibility{grid-template-columns:minmax(0,1fr) 64px;gap:16px}.portfolio-responsibility>.portfolio-category-icon{width:40px;height:40px}.portfolio-carousel-controls{flex-wrap:wrap;gap:12px}.portfolio-carousel-dots{order:2;flex-basis:100%;gap:6px}.portfolio-carousel-controls button{min-width:40px;min-height:40px}}.portfolio-about-body .portfolio-artstation{border-top:1px solid var(--line);padding-top:clamp(80px,8vw,150px);margin-top:0}.privacy-copy p{white-space:pre-line}.privacy-copy h2{margin-top:65px}.privacy-copy h3{font-size:24px}.privacy-copy ul{margin-bottom:28px}.privacy-copy li{margin-bottom:10px}@media(min-width:701px){.portfolio-about-body>.portfolio-gallery:first-of-type{width:min(100%,var(--portrait-size,650px));max-width:none;margin-bottom:75px}.portfolio-about-body>.portfolio-gallery:first-of-type img{width:100%;height:auto}}@media(max-width:700px){.portfolio-about-body .portfolio-artstation{padding-top:70px}.privacy-copy h2{font-size:30px}.privacy-copy h3{font-size:22px}}@media(min-width:701px)and (max-width:1100px){.portfolio-about-body>.portfolio-gallery:first-of-type{grid-column:1/-1;width:min(100%,450px);margin-inline:auto}.portfolio-about-body>.portfolio-gallery:first-of-type+.portfolio-copy{grid-column:1/-1;max-width:none}}.portfolio-responsibility-intro{position:relative;isolation:isolate;overflow:hidden;max-width:none;padding:clamp(28px,3.3vw,64px);margin:30px 0 44px;border:1px solid rgba(255,255,255,.15);border-radius:24px;background:linear-gradient(125deg,#ffffff13,#ffffff06 52%,#ffffff0b);box-shadow:inset 0 1px #ffffff1a,0 16px 48px #0000001f;backdrop-filter:blur(16px)}.portfolio-responsibility-intro h2{margin:0 0 28px;font-size:clamp(35px,3.4vw,64px)}.portfolio-responsibility-intro h3{margin:0;max-width:1100px;font-size:clamp(17px,1.35vw,24px);font-weight:400;line-height:1.75;color:var(--secondary)}.portfolio-responsibility-intro:before{content:"";position:absolute;z-index:-1;inset:-150% -100%;pointer-events:none;background:linear-gradient(115deg,transparent 43%,rgba(255,255,255,.065) 49%,rgba(255,255,255,.11) 50%,rgba(255,255,255,.035) 53%,transparent 58%);transform:translate(var(--glass-shine,-35%));will-change:transform}@media(prefers-reduced-motion:reduce){.portfolio-responsibility-intro:before{display:none}}.portfolio-about-body>.portfolio-gallery:first-of-type .portfolio-media a{position:relative;isolation:isolate;border-radius:50%;overflow:hidden}.portfolio-skillsets .resume-heading h2{font-size:clamp(40px,4vw,70px);min-width:0;overflow-wrap:anywhere}.portfolio-skillset-preview{border-top:1px solid var(--line)}.portfolio-skillsets.is-closing .resume-toggle-arrow{transform:rotate(0)}.portfolio-artstation>a.portfolio-soundcloud{margin-top:65px}.portfolio-time-travel{grid-column:1/-1;text-align:center;padding:35px 0 70px;position:relative;isolation:isolate}.portfolio-time-travel details{position:relative;z-index:1}.portfolio-time-travel-stars{position:absolute;left:50%;top:0;transform:translate(-50%);width:min(1040px,100%);height:300px;pointer-events:none;z-index:2}.portfolio-time-travel summary{display:block;position:relative;overflow:hidden;width:max-content;max-width:100%;margin:0 auto;list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:28px;padding:20px 42px;background:#ffffff09;font-size:13px;line-height:1.7;letter-spacing:.14em;transition:background .25s,border-color .25s}.portfolio-time-travel summary::-webkit-details-marker{display:none}.portfolio-time-travel summary:hover{background:#ffffff17;border-color:var(--secondary)}.portfolio-time-travel summary:focus-visible{outline:2px solid var(--text);outline-offset:5px}.portfolio-time-travel summary:after{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.16) 50%,transparent 60%);transform:translate(-65%);transition:transform .6s;pointer-events:none}.portfolio-time-travel summary:hover:after{transform:translate(65%)}.portfolio-time-travel-media{width:min(800px,100%);aspect-ratio:16/9;margin:35px auto 0;overflow:hidden;border-radius:12px}.portfolio-time-travel-media img{display:block;width:100%;height:auto}.portfolio-time-travel-media img:not([src]){visibility:hidden}@media(prefers-reduced-motion:reduce){.portfolio-time-travel summary,.portfolio-time-travel summary:after{transition:none}}.portfolio-artstation>a>img{width:90%}.portfolio-artstation .portfolio-soundcloud-brand{display:flex;align-items:center;justify-content:center;gap:clamp(13.5px,1.8vw,31.5px);width:90%;font-family:Arial,sans-serif;font-size:clamp(21.6px,4.77vw,81px);letter-spacing:-.03em;color:var(--text)}.portfolio-artstation .portfolio-soundcloud-brand img{width:20%;height:auto;filter:invert(48%) sepia(99%) saturate(2890%) hue-rotate(359deg) brightness(101%) contrast(107%)}@media(max-width:700px){.portfolio-skillsets .resume-heading h2{font-size:clamp(30px,8vw,48px)}.portfolio-artstation>a.portfolio-soundcloud{margin-top:40px}}.portfolio-about-body>.portfolio-gallery:first-of-type .portfolio-media a:after{content:"";position:absolute;inset:-50%;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.24) 50%,transparent 60%);transform:translate(var(--glass-shine,-65%))}@media(prefers-reduced-motion:reduce){.portfolio-about-body>.portfolio-gallery:first-of-type .portfolio-media a:after{display:none}}.resume-timeline{--resume-content-max: 1600px;--resume-toggle-size: 56px;--resume-accent: var(--accent, #c2c8d0);position:relative;grid-column:1 / -1;width:100%;isolation:isolate;margin:clamp(100px,9vw,200px) auto clamp(90px,8vw,160px);padding-top:clamp(65px,6vw,120px);border-top:1px solid var(--line);max-width:none}.resume-timeline:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 90% 8%,rgba(194,200,208,.09),transparent 34%),radial-gradient(ellipse at 25% 58%,rgba(194,200,208,.045),transparent 40%)}.resume-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;list-style:none;cursor:pointer;margin-bottom:clamp(55px,5vw,90px)}.resume-heading::-webkit-details-marker{display:none}.resume-heading:focus-visible{outline:2px solid var(--resume-accent);outline-offset:12px}.resume-eyebrow{font-size:11px;letter-spacing:.15em;color:var(--secondary);margin:0 0 25px}.resume-toggle-button{width:var(--resume-toggle-size);height:var(--resume-toggle-size);flex-shrink:0;margin-inline-end:calc(max(0px,(100% - var(--resume-content-max)) / 2) + 19px - var(--resume-toggle-size) / 2);display:inline-grid;place-items:center;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:50%;background:#ffffff0a;box-shadow:inset 0 1px #ffffff14}.resume-toggle-arrow{width:60%;height:60%;transition:transform .35s ease}.resume-disclosure[open] .resume-toggle-arrow{transform:rotate(180deg)}.resume-timeline.is-closing .resume-toggle-arrow{transform:rotate(0)}.portfolio-skillset-list{max-width:1600px;margin-inline:auto}@media(min-width:1920px)and (min-aspect-ratio:22/10)and (max-aspect-ratio:25/10){.resume-timeline{--resume-content-max:1840px}.portfolio-skillset-list{max-width:1840px}}.resume-node-note{display:block;margin:10px 0 0 33px;color:var(--secondary);font-size:12px;line-height:1.5}.resume-preview{position:relative;max-width:1600px;margin-inline:auto;height:290px;overflow:hidden;pointer-events:none;mask-image:linear-gradient(#000 0%,#000 48%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 48%,transparent 100%)}.resume-disclosure[open]+.resume-preview{display:none}.resume-preview-position{display:grid;grid-template-columns:200px minmax(0,1fr);gap:clamp(40px,5vw,110px);margin-bottom:18px;align-items:center}.resume-preview-year{font-family:var(--project-font);font-size:30px;color:var(--secondary)}.resume-preview .resume-card{padding:25px 40px}.resume-preview .resume-date{margin-bottom:15px}.resume-preview .resume-card h4{font-size:clamp(19px,1.6vw,25px);margin-bottom:0}.resume-preview .resume-organization{margin-top:10px}.resume-heading h2{font-family:var(--display);font-weight:400;font-size:clamp(64px,7.5vw,130px);line-height:1.08;margin:0}.resume-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:clamp(40px,5vw,110px);align-items:stretch;max-width:1600px;margin-inline:auto}.resume-rail{min-width:0}.resume-rail-sticky{position:sticky;top:100px;padding:0 0 30px}.resume-year-indicator{margin:0 0 32px}.resume-year-indicator>span{font-size:10px;letter-spacing:.15em;color:var(--muted);display:block}.resume-year-indicator strong{font-family:var(--project-font);display:block;font-weight:600;font-size:56px;line-height:1.3;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.resume-rail-navigation{position:relative;padding-left:1px;width:max-content}.resume-progress-track{position:absolute;top:14px;bottom:14px;left:7px;width:1px;background:#ffffff21;pointer-events:none}.resume-progress-track>span{display:block;width:100%;height:100%;background:var(--resume-accent);transform:scaleY(0);transform-origin:top;box-shadow:0 0 9px #c2c8d0a6}.resume-rail-group+.resume-rail-group{margin-top:20px}.resume-timeline .resume-node{position:relative;display:flex;align-items:center;gap:20px;min-height:28px;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;transition:color .25s}.resume-node-dot{width:13px;height:13px;flex-shrink:0;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:var(--background);transition:background .25s,border-color .25s,box-shadow .25s}.resume-node.is-active{color:var(--text)}.resume-node.is-active .resume-node-dot{border-color:var(--resume-accent);background:var(--resume-accent);box-shadow:0 0 0 4px #c2c8d014,0 0 14px #c2c8d040}.resume-group+.resume-group{margin-top:85px}.resume-group-heading{display:flex;align-items:baseline;gap:22px;font-family:var(--project-font);font-weight:600;font-size:clamp(19px,1.8vw,28px);line-height:1.4;margin:0 0 30px}.resume-group-heading>span{font-family:var(--font);font-weight:400;font-size:11px;letter-spacing:.08em;color:var(--muted)}.resume-entries{list-style:none;padding:0;margin:0;display:grid;gap:18px}.resume-card{position:relative;overflow:hidden;padding:clamp(26px,3vw,44px);border-radius:22px;background:#2c2c2c9e;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:inset 0 1px #fff1,0 12px 30px #0000001a;scroll-margin-top:140px;transition:background .35s,border-color .35s,box-shadow .35s}.resume-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.025),transparent 45%)}.resume-card-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin-bottom:20px}.resume-date{font-size:12px;letter-spacing:.035em;color:var(--secondary);font-variant-numeric:tabular-nums;margin:0}.resume-status{border:1px solid rgba(255,255,255,.13);border-radius:100px;padding:5px 11px;font-size:10px;letter-spacing:.045em;color:var(--secondary)}.resume-card h4{font-family:var(--project-font);font-size:clamp(20px,1.85vw,29px);font-weight:600;letter-spacing:-.025em;line-height:1.4;margin:0 0 12px;color:var(--text)}.resume-organization{color:var(--secondary);font-size:16px;line-height:1.6;margin:0 0 20px}.resume-description{color:var(--secondary);font-size:16px;line-height:1.8;max-width:740px;margin:0;transition:color .35s}.resume-card>:last-child{margin-bottom:0}.resume-card.is-active{border-color:#c2c8d06b;background:#3a3c40b8;box-shadow:inset 0 1px #ffffff1f,0 14px 36px #00000024,0 0 32px #c2c8d009}.resume-card.is-active .resume-description,.resume-card.is-active .resume-organization,.resume-card.is-active .resume-date{color:var(--text)}.resume-card:focus-visible{outline:2px solid var(--resume-accent);outline-offset:5px}.resume-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(hover:hover)and (pointer:fine){.resume-card:hover{border-color:#ffffff45;background:#343436b8}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.resume-card{background:#2c2c2c}.resume-card.is-active{background:#37393c}}@media(min-width:1920px)and (min-aspect-ratio:22/10)and (max-aspect-ratio:25/10){.resume-layout,.resume-preview{max-width:1840px}.resume-layout,.resume-preview-position{grid-template-columns:240px minmax(0,1fr);gap:120px}.resume-heading h2{font-size:150px}.resume-card{padding:44px 50px}.resume-description{max-width:900px;font-size:19px}.resume-organization{font-size:19px}}@media(max-width:900px){.resume-layout,.resume-preview-position{grid-template-columns:120px minmax(0,1fr);gap:30px}.resume-year-indicator strong{font-size:40px}.resume-card{padding:28px}}@media(max-width:700px){.resume-timeline{margin-top:90px;padding-top:60px}.resume-timeline:before{inset-inline:0}.resume-heading{margin-bottom:35px;gap:14px}.resume-heading h2{font-size:clamp(38px,10vw,68px)}.resume-timeline{--resume-toggle-size:44px}.resume-eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:20px}.resume-layout,.resume-preview-position{grid-template-columns:44px minmax(0,1fr);gap:18px}.resume-preview{height:290px}.resume-preview-year{font-size:15px}.resume-preview .resume-card{padding:22px 20px}.resume-node-note{margin-left:0;max-width:44px;font-size:10px}.resume-rail-sticky{top:85px;padding-bottom:15px}.resume-year-indicator{margin-bottom:25px}.resume-year-indicator>span{font-size:8px;letter-spacing:0}.resume-year-indicator strong{font-size:18px;letter-spacing:0}.resume-rail-navigation{padding-left:0}.resume-node{gap:6px;min-height:24px;font-size:9px}.resume-node-dot{width:7px;height:7px}.resume-progress-track{left:3px;top:12px;bottom:12px}.resume-rail-group+.resume-rail-group{margin-top:14px}.resume-group+.resume-group{margin-top:55px}.resume-group-heading{display:block;font-size:18px;margin-bottom:22px}.resume-group-heading>span{display:block;font-size:10px;margin-bottom:8px}.resume-entries{gap:14px}.resume-card{padding:23px 20px;border-radius:18px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);scroll-margin-top:100px}.resume-card-meta{margin-bottom:16px;gap:10px}.resume-date{font-size:11px;letter-spacing:0}.resume-card h4{font-size:19px}.resume-organization,.resume-description{font-size:14px}.resume-organization{margin-bottom:16px}}@media(max-height:700px){.resume-year-indicator{margin-bottom:15px}.resume-year-indicator strong{font-size:26px}.resume-node{min-height:18px}.resume-rail-group+.resume-rail-group{margin-top:10px}.resume-progress-track{top:9px;bottom:9px}}@media(prefers-reduced-motion:reduce){.resume-timeline *,.resume-timeline *:before{transition:none!important}}.pergola-reveal{--pergola-frame-height:min(56.25vw,80svh);--pergola-scroll-distance:90svh;--pergola-reveal:0%;--pergola-title-opacity:1;--pergola-title-y:0px;position:relative;margin-bottom:90px}.pergola-reveal.is-scroll-active{height:calc(var(--pergola-frame-height) + var(--pergola-scroll-distance))}.pergola-reveal-frame{position:relative;width:100%;height:var(--pergola-frame-height);overflow:hidden;background:var(--surface);isolation:isolate}.is-scroll-active>.pergola-reveal-frame{position:sticky;top:clamp(90px,10svh,140px)}.pergola-reveal-color,.pergola-reveal-monochrome{position:absolute;inset:0}.pergola-reveal .pergola-reveal-frame img{display:block;width:100%;height:100%;max-height:none;object-fit:cover}.pergola-reveal-monochrome{clip-path:inset(calc(100% - var(--pergola-reveal)) 0 0 0)}.is-scroll-active .pergola-reveal-monochrome{will-change:clip-path}.pergola-reveal .pergola-reveal-caption{position:absolute;left:5%;right:5%;bottom:7%;margin:0;z-index:1;pointer-events:none;opacity:var(--pergola-title-opacity);transform:translateY(var(--pergola-title-y))}.pergola-reveal-caption h2{font-family:var(--display);font-weight:400;font-size:clamp(42px,5.6vw,132px);line-height:1.06;color:#fff;margin:0;text-shadow:0 3px 6px rgba(0,0,0,.85),0 8px 28px rgba(0,0,0,.7)}.portfolio-card-meta{align-items:center}.portfolio-project-card .portfolio-card-view{display:inline-grid;place-items:center;flex-shrink:0}@media(max-width:700px){.pergola-reveal{--pergola-scroll-distance:70svh;margin-bottom:52px}.pergola-reveal-caption h2{font-size:clamp(28px,8.3vw,58px)}}
