@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Noto+Sans+SC:wght@400;500;600&display=swap";:root{--bg:#f1f2f1;--surface:#f3f3f3;--ink:#11110f;--muted:#77756f;--line:#11110f2b;--accent:#ff4d24;--white:#fffdf8;--max:1700px;--gutter:clamp(24px, 4vw, 72px);--section:clamp(120px, 12vw, 210px);--radius-media-lg:24px;--radius-media-md:18px;--radius-media-sm:14px;--radius-media-xs:12px;--ease:cubic-bezier(.25, 1, .5, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,Noto Sans SC,sans-serif}body,button,input{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}img{width:100%;display:block}p,h1,h2,h3{margin:0}i{font-style:normal}::selection{background:var(--accent);color:#fff}.container{width:min(calc(100% - var(--gutter) * 2), var(--max));margin-inline:auto}.section{padding-top:var(--section)}.display-emphasis{font-family:inherit;font-weight:500}.eyebrow{letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:600}.section-index{color:var(--muted);margin-top:18px;font-size:12px;display:block}.button{min-height:56px;transition:transform .7s var(--ease), background .7s var(--ease), color .7s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:40px;padding:0 25px;font-size:13px;font-weight:600;display:inline-flex}.button:hover{transform:translateY(-3px)}.button--dark{background:var(--ink);color:#fff}.button--dark:hover{background:var(--accent)}.button--accent{background:var(--accent);color:#fff}.button--accent:hover{background:var(--ink)}.text-link{border-bottom:1px solid;align-items:center;gap:30px;padding-bottom:7px;font-size:13px;font-weight:600;display:inline-flex}.text-link span{transition:transform .6s var(--ease)}.text-link:hover span{transform:translate(4px,-4px)}[data-reveal]{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(45px)}[data-reveal].is-visible{opacity:1;transform:none}.navbar{z-index:50;width:100%;height:94px;padding:0 var(--gutter);transition:height .6s var(--ease), background .6s, border-color .6s;border-bottom:1px solid #0000;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;top:0;left:0}.navbar--scrolled{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-color:var(--line);background:#f1f2f1db;height:72px}.navbar:not(.navbar--scrolled){color:var(--white)}.navbar:not(.navbar--scrolled) .nav-cta{background:var(--white);color:var(--ink)}.wordmark{letter-spacing:-.05em;justify-self:start;font-size:22px;font-weight:600}.wordmark span{vertical-align:super;color:var(--accent);margin-left:3px;font-size:8px}.nav-links{gap:42px;display:flex}.nav-links a{font-size:12px;position:relative}.nav-links a:after{content:"";transform-origin:100%;width:100%;height:1px;transition:transform .6s var(--ease);background:currentColor;position:absolute;bottom:-8px;left:0;transform:scaleX(0)}.nav-links a:hover:after{transform-origin:0;transform:scaleX(1)}.nav-cta{justify-self:end;gap:30px;min-height:44px;padding-inline:20px}.menu-toggle{cursor:pointer;background:0 0;border:0;display:none}.hero{border-radius:var(--radius-media-lg);min-height:calc(100svh - 32px);color:var(--white);align-items:stretch;margin:16px;padding:160px 0 60px;display:flex;position:relative;overflow:hidden}.hero-content{z-index:2;flex-direction:column;display:flex;position:relative}.hero-eyebrow{margin-bottom:24px}.hero-title{letter-spacing:-.06em;max-width:1120px;font-size:clamp(68px,7.2vw,120px);font-weight:500;line-height:.98}.hero-title span{display:block}.hero-title .display-emphasis{letter-spacing:-.055em}.hero-bottom{grid-template-columns:1fr minmax(430px,520px);align-items:end;gap:80px;width:100%;margin-top:auto;padding-top:64px;display:grid}.hero-tags{letter-spacing:.04em;flex-wrap:wrap;gap:clamp(22px,4vw,64px);font-size:13px;display:flex}.hero-intro>p{max-width:500px;font-size:clamp(14px,1.05vw,17px);line-height:1.7}.hero-intro .button-row{margin-top:28px}.button-row{align-items:center;gap:30px;display:flex}.hero-media{z-index:1;border-radius:inherit;background:var(--ink);position:absolute;inset:0;overflow:hidden}.hero-media video{object-fit:cover;object-position:center 52%;background:var(--ink);will-change:transform;width:100%;height:110%;position:absolute;inset:-5% 0;transform:scale(1.04)}.hero-media__mesh{background:linear-gradient(90deg,#080808c2 0%,#08080875 52%,#08080842 100%),linear-gradient(#0000 50%,#08080899);position:absolute;inset:0}.hero-media__note{color:#fff9;letter-spacing:.14em;font-size:9px;position:absolute;bottom:24px;right:24px}.scroll-cue{display:none}.logo-strip{border-block:1px solid var(--line);grid-template-columns:180px 1fr;align-items:center;min-height:180px;display:grid;overflow:hidden}.logo-strip__label{padding-left:var(--gutter);letter-spacing:.14em;font-size:9px}.marquee{overflow:hidden}.marquee__track{width:max-content;animation:24s linear infinite marquee;display:flex}.marquee__track:hover{animation-play-state:paused}.brand{color:#8a8882;letter-spacing:-.04em;filter:grayscale();min-width:330px;font-size:clamp(20px,2vw,31px);font-weight:600;transition:color .5s,filter .5s}.brand:hover{color:var(--accent);filter:none}@keyframes marquee{to{transform:translate(-50%)}}.about-copy{grid-template-columns:28% 72%;display:grid}.statement{letter-spacing:-.055em;max-width:1150px;font-size:clamp(44px,5.35vw,91px);font-weight:500;line-height:1.12}.about-meta{justify-content:space-between;align-items:flex-end;gap:40px;width:min(660px,70%);margin-top:65px;margin-left:auto;display:flex}.about-meta p{color:#55534e;max-width:460px;line-height:1.8}.gallery-marquee{margin-top:130px;overflow:hidden}.gallery-track{align-items:center;gap:24px;width:max-content;animation:29s linear infinite gallery;display:flex}.gallery-track:hover{animation-play-state:paused}.gallery-card{flex:none;width:clamp(400px,36vw,650px);margin:0}.gallery-card img{aspect-ratio:4/3;object-fit:cover;object-position:center top;border-radius:var(--radius-media-sm);width:100%}.gallery-card figcaption{letter-spacing:.14em;margin-top:12px;font-size:9px}@keyframes gallery{to{transform:translate(calc(-50% - 12px))}}.stats-section{padding:clamp(100px,9vw,150px) 0 clamp(90px,8vw,135px)}.stats-eyebrow{align-items:center;gap:8px;display:flex}.stats-eyebrow:before{content:"";background:var(--accent);flex:none;width:8px;height:8px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(32px,4vw,68px);margin-top:34px;display:grid}.stat{min-width:0}.stat strong{letter-spacing:-.065em;font-variant-numeric:tabular-nums;border-bottom:1px dashed #11110f24;padding-bottom:26px;font-size:clamp(64px,5vw,92px);font-weight:500;line-height:1.06;display:block}.stat p{margin-top:22px;font-size:clamp(16px,1.15vw,20px);font-weight:600;line-height:1.5}.stat span{max-width:280px;color:var(--muted);margin-top:7px;font-size:13px;line-height:1.55;display:block}.section-heading,.projects-heading{grid-template-columns:28% 47% 25%;align-items:end;margin-bottom:100px;display:grid}.section-heading h2,.projects-heading h2,.faq-title h2{letter-spacing:-.06em;font-size:clamp(54px,5vw,86px);font-weight:500;line-height:1.02}.section-heading h2 i,.projects-heading h2 i,.faq-title h2 i{font-weight:500}.section-heading>p,.projects-heading>p{max-width:340px;color:var(--muted);font-size:14px;line-height:1.8}.skills{background:var(--ink);color:var(--white)}.skills .section-heading>p,.skills .section-index{color:#ffffff8c}.skills-list{border-top:1px solid #fff3}.skill-row{transition:background .6s var(--ease), box-shadow .6s var(--ease);border-bottom:1px solid #fff3;overflow:hidden}.skill-row:hover,.skill-row.is-active{background:0 0;box-shadow:inset 0 1px #de322d,inset 0 -1px #de322d}.skill-row>button{width:100%;height:126px;padding:0 var(--gutter);text-align:left;cursor:pointer;transition:height .7s var(--ease);background:0 0;border:0;grid-template-columns:15% 1fr 180px 30px;align-items:center;display:grid}.skill-row.is-active>button{height:155px}.skill-number,.skill-tool{letter-spacing:.12em;font-size:10px}.skill-row h3{letter-spacing:-.045em;font-size:clamp(29px,3vw,51px);font-weight:500}.skill-icon{font-size:25px}.skill-details{height:0;width:min(calc(100% - var(--gutter) * 2), var(--max));opacity:0;transition:height .7s var(--ease), opacity .5s;grid-template-columns:28% 40% 1fr;margin:auto;display:grid;overflow:hidden}.skill-row.is-active .skill-details{opacity:1;height:245px}.skill-details p{color:#ffffff9e;grid-column:2;max-width:520px;line-height:1.75}.skill-details img{object-fit:cover;border-radius:var(--radius-media-xs);grid-area:1/3;justify-self:end;width:260px;height:190px;transform:rotate(3deg)}.project-grid{grid-template-columns:1fr 1fr;align-items:start;gap:64px clamp(28px,6vw,110px);display:grid}.project-card:nth-child(2n){margin-top:88px}.project-visual{aspect-ratio:4/3;border-radius:var(--radius-media-md);background:var(--surface);position:relative;overflow:hidden}.project-visual img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .8s var(--ease);position:absolute;inset:0;transform:scale(1)}.project-card:hover .project-visual img{transform:scale(1.035)}.project-open{background:var(--white);width:54px;height:54px;transition:transform .6s var(--ease);border-radius:50%;place-items:center;font-size:18px;display:grid;position:absolute;top:22px;right:22px;transform:scale(0)}.project-card:hover .project-open{transform:scale(1)}.project-info{padding-top:20px}.project-info>div{color:var(--muted);letter-spacing:.12em;justify-content:space-between;font-size:9px;display:flex}.project-info h3{letter-spacing:-.05em;transition:transform .6s var(--ease);margin-top:25px;font-size:clamp(33px,3vw,52px);font-weight:500}.project-card:hover .project-info h3{transform:translateY(-4px)}.project-info p{color:var(--muted);margin-top:8px}.all-projects{border-block:1px solid var(--ink);grid-template-columns:1fr auto 50px;align-items:center;margin-top:150px;padding:35px 0;font-size:clamp(26px,3vw,50px);display:grid}.all-projects strong{font-size:13px}.all-projects i{justify-self:end;font-style:normal}.faq{grid-template-columns:1fr 1.25fr;align-items:start;gap:clamp(36px,5vw,90px);padding-top:clamp(120px,10vw,160px);padding-bottom:clamp(80px,7vw,120px);display:grid}.faq-title .eyebrow{margin-bottom:28px}.faq-title h2{max-width:650px;font-size:clamp(54px,4.2vw,72px);line-height:1.08}.faq-list{gap:12px;display:grid}.faq-item{background:var(--surface);transition:border-radius .6s var(--ease), background .6s var(--ease);border-radius:44px;overflow:hidden}.faq-item.is-open{background:#f6f6f4;border-radius:30px}.faq-item button{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1fr 32px;align-items:center;gap:16px;width:100%;min-height:84px;padding:0 28px;display:grid}.faq-item button strong{font-size:clamp(17px,1.25vw,22px);font-weight:500;line-height:1.5}.faq-item button i{justify-self:end;font-size:23px;font-style:normal;font-weight:400}.faq-answer{transition:grid-template-rows .6s var(--ease);grid-template-rows:0fr;display:grid}.faq-answer p{max-width:650px;color:var(--muted);margin:0 76px 0 28px;font-size:14px;line-height:1.75;overflow:hidden}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer p{padding-bottom:28px}.footer{color:var(--ink);background:0 0}.footer-cta-shell{padding:clamp(70px,6vw,100px) 0 clamp(72px,6vw,100px)}.footer-cta{grid-template-columns:1fr auto;align-items:end;display:grid;position:relative}.footer-cta .eyebrow{grid-column:1/-1;margin-bottom:28px}.footer-cta h2{letter-spacing:-.07em;font-size:clamp(72px,8.4vw,140px);font-weight:500;line-height:.92}.round-button{background:var(--accent);min-height:58px;color:var(--white);transition:transform .7s var(--ease), background .7s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:48px;margin-bottom:12px;padding:0 28px;font-size:13px;display:inline-flex}.round-button:hover{background:var(--ink);transform:translateY(-4px)}.footer-panel{background:var(--ink);color:var(--white);border-radius:24px;margin:0 16px 16px;padding-top:48px;overflow:hidden}.footer-grid{grid-template-columns:1.15fr 1fr 1fr;gap:clamp(50px,8vw,140px);padding:0 0 72px;display:grid}.footer-email{font-size:clamp(18px,1.8vw,28px)}.footer-grid>div>p{color:#77746e;margin-top:12px;font-size:12px}.footer-socials{gap:20px;display:grid}.footer-socials a{grid-template-columns:90px 1fr 20px;font-size:11px;display:grid}.footer-socials span{color:#77746e}.subscribe label{margin-bottom:28px;font-size:12px;display:block}.subscribe>div{border-bottom:1px solid #55524c;display:flex}.subscribe input{color:#fff;background:0 0;border:0;outline:none;width:100%;padding:15px 0}.subscribe button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:22px}.footer-logo-giant{min-height:clamp(210px,24vw,410px);color:var(--white);letter-spacing:-.095em;border-top:1px solid #3b3a37;justify-content:center;align-items:flex-end;padding-top:70px;font-size:clamp(190px,26vw,440px);font-weight:600;line-height:.7;display:flex;overflow:hidden}.footer-logo-giant span{color:var(--accent);letter-spacing:0;align-self:flex-start;margin:34px 0 0 10px;font-size:14px}.footer-bottom{border-top:1px solid #3b3a37;grid-template-columns:1fr auto 1fr;align-items:center;min-height:96px;display:grid}.footer-bottom p,.footer-bottom a{letter-spacing:.12em;font-size:9px}.footer-bottom>a:last-child{justify-self:end}.project-page{min-height:100vh}.project-nav{width:100%;height:90px;padding:0 var(--gutter);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.project-nav>a:last-child{font-size:12px}.project-hero{padding:130px 0 90px}.project-hero h1{letter-spacing:-.08em;margin-top:35px;font-size:clamp(85px,13vw,220px);font-weight:500;line-height:.85}.project-hero>div{grid-template-columns:1fr 1fr;gap:70px;width:60%;margin:70px 0 0 auto;display:grid}.project-hero h2{font-size:clamp(25px,2.2vw,38px);font-weight:500}.project-hero>div p{color:var(--muted);line-height:1.8}.project-cover{width:calc(100% - var(--gutter) * 2);max-width:var(--max);aspect-ratio:2;border-radius:var(--radius-media-md);margin:auto;overflow:hidden}.project-cover img{object-fit:cover;height:100%}.project-placeholder{grid-template-columns:1fr 1fr;gap:10%;padding:150px 0;display:grid}.project-placeholder h2{letter-spacing:-.05em;margin-top:30px;font-size:clamp(40px,5vw,80px);font-weight:500;line-height:1.05}.project-placeholder>div:last-child>p:first-child{color:var(--muted);line-height:1.8}.metric-large{letter-spacing:-.04em;margin:60px 0;font-size:clamp(30px,3vw,52px)}.not-found{text-align:center;place-content:center;min-height:70vh;display:grid}.not-found p{color:var(--accent)}.not-found h1{font-size:70px}@media (width<=980px){:root{--section:110px;--radius-media-lg:18px;--radius-media-md:14px;--radius-media-sm:12px;--radius-media-xs:10px}.navbar{grid-template-columns:1fr auto}.nav-links{padding:40px var(--gutter);background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;display:none;position:fixed;inset:72px 0 auto}.nav-links.is-open{color:var(--ink);display:flex}.nav-cta{display:none}.menu-toggle{display:block}.hero{min-height:820px;padding:130px 0 44px}.hero-title{font-size:clamp(57px,12vw,100px)}.hero-media{width:auto;height:auto;inset:0}.hero-bottom{grid-template-columns:1fr;align-items:start;gap:40px;padding-top:60px}.logo-strip{grid-template-columns:120px 1fr}.brand{min-width:250px}.about-copy,.section-heading,.projects-heading{grid-template-columns:1fr;gap:50px}.about-meta{width:100%}.stats{grid-template-columns:1fr 1fr;row-gap:54px}.skill-row>button{grid-template-columns:70px 1fr 30px}.skill-tool{display:none}.skill-details{grid-template-columns:1fr 250px;gap:30px}.skill-details p{grid-column:1}.skill-details img{grid-column:2}.faq{grid-template-columns:1fr;gap:58px}.footer-cta-shell{padding:76px 0}.footer-cta{grid-template-columns:1fr;gap:44px}.round-button{justify-self:start;margin-bottom:0}.footer-grid{grid-template-columns:1fr 1fr}.subscribe{grid-column:1/-1}}@media (width<=640px){:root{--gutter:20px;--section:90px}.hero{border-radius:var(--radius-media-lg);min-height:740px;margin:8px;padding:110px 0 32px}.hero-title{font-size:13.5vw;line-height:.98}.hero-media{opacity:1;width:auto}.hero-bottom{margin-top:auto;padding-top:44px}.hero-tags{gap:8px 22px;font-size:11px}.hero-intro>p{width:100%}.button-row{flex-wrap:wrap}.scroll-cue{display:none}.logo-strip{min-height:auto;padding:30px 0;display:block}.logo-strip__label{margin-bottom:30px}.brand{min-width:220px;font-size:20px}.statement{font-size:11vw}.about-meta{flex-direction:column;align-items:flex-start}.gallery-card{width:80vw}.stats{grid-template-columns:1fr 1fr}.stats-section{padding-block:82px}.stats{gap:38px 18px;margin-top:28px}.stat strong{padding-bottom:18px;font-size:16vw}.stat p{margin-top:16px;font-size:14px}.stat span{min-height:38px;font-size:11px}.skill-row>button{grid-template-columns:50px 1fr 24px;height:100px;padding-inline:20px}.skill-row.is-active>button{height:120px}.skill-row h3{font-size:24px}.skill-row.is-active .skill-details{height:300px}.skill-details{grid-template-columns:1fr;padding:0 20px}.skill-details p{grid-column:1}.skill-details img{grid-area:2/1;justify-self:start;width:170px;height:100px}.project-grid{grid-template-columns:1fr;row-gap:75px}.project-card:nth-child(2n){margin-top:0}.projects-heading>p{max-width:90%}.all-projects{margin-top:90px}.faq{padding-block:88px 64px}.faq-list{gap:9px}.faq-item{border-radius:32px}.faq-item button{grid-template-columns:1fr 24px;min-height:68px;padding-inline:21px}.faq-item button strong{font-size:15px}.faq-answer p{margin:0 44px 0 21px;font-size:12px}.footer-cta-shell{padding:64px 0}.footer-cta{gap:34px}.footer-cta h2{font-size:17vw;line-height:.95}.round-button{margin-top:0}.footer-panel{border-radius:16px;margin:0 8px 8px;padding-top:32px}.footer-grid{grid-template-columns:1fr;gap:44px;padding-bottom:54px}.subscribe{grid-column:auto}.footer-logo-giant{min-height:150px;padding-top:48px;font-size:42vw}.footer-logo-giant span{margin-top:10px;font-size:9px}.footer-bottom{text-align:center;grid-template-columns:1fr;min-height:76px}.footer-bottom p,.footer-bottom>a:nth-child(2){display:none}.footer-bottom>a:last-child{justify-self:center}.project-hero{padding-top:90px}.project-hero h1{font-size:20vw}.project-hero>div,.project-placeholder{grid-template-columns:1fr;gap:35px;width:100%}.project-cover{aspect-ratio:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}
