@font-face{font-family:InterDisplay;src:url(/fonts/InterDisplay-Light.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:InterDisplay;src:url(/fonts/InterDisplay-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:InterDisplay;src:url(/fonts/InterDisplay-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}:root{--paper:#f3f3f3;--ink:#222;--muted:#717171;--line:#d6d6d6;--white:#fefefe;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#edf3fa;--accent-line:#d6e3f7;--accent-on-dark:#93baff;--surface-ice:#f0f2f2;--surface-ice-line:#e0e5e5;--container:1366px;--section:120px;--header-height:88px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font:400 18px/1.5 InterDisplay,Arial,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h2{letter-spacing:-1.92px;font-size:48px;line-height:1.2}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-offset:6px;outline:2px solid}img{max-width:100%;height:auto;display:block}::selection{color:var(--paper);background:var(--ink)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:15px}.section{padding-block:var(--section)}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:5px;padding:12px 20px;position:fixed;top:-70px;left:16px}.skip-link:focus{top:16px}.eyebrow{color:var(--muted);margin-bottom:16px;font-size:16px;display:block}.text-link{text-underline-offset:5px;align-items:center;gap:8px;font-size:18px;line-height:1.3;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.text-link span{color:var(--accent);transition:transform .3s;display:inline-block}.text-link:hover span{transform:translate(3px,-3px)}@media (width<=1199px){:root{--section:90px}}@media (width<=991px){:root{--header-height:80px;--section:80px}.container{padding-inline:24px}}@media (width<=767px){:root{--header-height:74px;--section:64px}html{scroll-padding-top:92px}.container{padding-inline:20px}h2{letter-spacing:-1.6px;font-size:40px}.eyebrow{margin-bottom:10px;font-size:14px}}@media (width<=479px){.container{padding-inline:16px}h2{font-size:38px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.text-link{--magnet-x:0px;--magnet-y:0px}.text-link>span:last-child{translate:var(--magnet-x) var(--magnet-y);transition:translate .3s cubic-bezier(.16,1,.3,1),transform .3s}@font-face{font-family:InterDisplay;src:url(/fonts/InterDisplay-SemiBold.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}body.menu-open{overflow:hidden}.header{height:var(--header-height);z-index:30;background:var(--paper);transition:box-shadow .3s;position:fixed;inset:0 0 auto}.header.scrolled{box-shadow:0 1px #2222220d}.nav{align-items:center;gap:0;height:100%;display:flex}.brand{letter-spacing:-.7px;flex-shrink:0;align-items:center;gap:7px;font-size:24px;font-style:italic;line-height:1;display:inline-flex}.brand img{width:40px;height:40px}.nav-links{gap:32px;margin-left:95px;display:flex}.roll-link{height:21px;font-size:16px;line-height:21px;display:block;position:relative;overflow:hidden}.roll-link span{transition:transform .35s cubic-bezier(.2,.65,.25,1);display:block}.roll-link:hover span{transform:translateY(-100%)}.nav-cta{margin-left:auto}.menu-toggle{display:none}@media (width<=1199px){.nav-links{gap:28px;margin-left:65px}}@media (width<=991px){.nav-links{gap:22px;margin-left:45px}.nav-cta{font-size:16px}.brand{font-size:22px}.brand img{width:34px;height:34px}}@media (width<=767px){.header{height:74px}.nav{gap:16px}.brand{font-size:23px}.brand img{width:36px;height:36px}.nav-cta{margin-left:auto;font-size:15px}.menu-toggle{z-index:3;background:0 0;border:0;flex-flow:column;justify-content:center;gap:6px;width:44px;height:44px;margin-right:-10px;padding:10px;display:flex}.menu-toggle span{background:var(--ink);width:24px;height:1px;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.nav-links{background:var(--paper);z-index:2;flex-direction:column;gap:32px;margin:0;padding:45px 24px;display:none;position:fixed;inset:74px 0 0;overflow-y:auto}.nav-links.open{display:flex}.roll-link{align-self:flex-start;height:42px;font-size:34px;line-height:42px}}@media (width<=479px){.nav{gap:10px}.nav-cta{font-size:14px}.brand{gap:4px;font-size:22px}.brand img{width:34px;height:34px}}.hero{padding-top:200px;overflow:hidden}.hero-frame{gap:60px;min-height:745px;padding-bottom:52px;display:flex;position:relative}.hero-rail{z-index:2;flex-flow:column;flex-shrink:0;align-items:center;width:20px;margin-top:-36px;display:flex;position:relative}.hero-rail span{writing-mode:vertical-rl;color:#afafaf;white-space:nowrap;font-size:18px;line-height:20px;transform:rotate(180deg)}.hero-rail i{background:#c7c7c7;flex-shrink:0;width:1px;height:474px;margin:32px 0 24px}.hero-content{z-index:2;flex-flow:column;align-items:flex-start;display:flex;position:relative}.hero-stats{gap:30px;display:flex}.hero-stats>div{flex-flow:column;display:flex}.stat-value{letter-spacing:-2.5px;align-items:flex-start;font-size:64px;font-weight:300;line-height:1;display:flex}.small-plus{letter-spacing:-1px;margin-top:4px;margin-left:2px;font-size:28px}.stat-caption{color:#656565;margin-top:4px;font-size:16px;line-height:1.1}.hero-intro{margin-top:88px;margin-bottom:200px}.hero h1{letter-spacing:-10px;margin-left:-8px;font-size:240px;font-weight:300;line-height:1}.hero-intro p{letter-spacing:-.2px;max-width:420px;margin-top:8px;font-size:20px;line-height:1.1}.scroll-link{align-items:center;gap:8px;font-size:18px;line-height:1.1;display:flex}.scroll-link span{transition:transform .3s}.scroll-link:hover span{transform:translateY(4px)}.hero-portrait{pointer-events:none;mix-blend-mode:normal;isolation:isolate;width:min(64vw,850px);position:absolute;bottom:0;right:-20px}.hero-portrait img{filter:none;mix-blend-mode:normal;transform-origin:bottom;width:100%;transform:none}@media (prefers-reduced-motion:no-preference){.hero-intro{animation:.9s both hero-enter}.hero-portrait{animation:1.1s both portrait-enter}@keyframes hero-enter{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes portrait-enter{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}}@media (width>=1440px){.hero-portrait{width:850px;right:-45px}}@media (width<=1199px){.hero{padding-top:180px}.hero-frame{gap:40px;min-height:670px}.hero h1{font-size:210px}.hero-intro{margin-bottom:170px}.hero-portrait{width:66vw;right:-45px}.hero-rail i{height:415px}.hero-intro p{max-width:370px;font-size:18px}}@media (width<=991px){.hero{padding-top:155px}.hero-frame{gap:22px;min-height:590px}.hero h1{letter-spacing:-8px;font-size:180px}.hero-intro{margin-top:70px;margin-bottom:150px}.hero-intro p{max-width:305px}.hero-rail i{height:345px}.hero-portrait{width:69vw;right:-50px}.stat-value{font-size:52px}.stat-caption{font-size:14px}.hero-stats{gap:25px}.hero-rail span{font-size:15px}}@media (width<=767px){.hero{padding-top:125px}.hero-frame{flex-flow:column;gap:0;min-height:0;padding-bottom:0;display:flex}.hero-rail{flex-flow:row;justify-content:space-between;width:100%;margin:0 0 24px}.hero-rail span{writing-mode:horizontal-tb;color:var(--muted);font-size:14px;transform:none}.hero-rail i{display:none}.hero-content{display:contents}.hero-intro{z-index:2;order:0;margin:0;position:relative}.hero h1{letter-spacing:-7px;margin-left:-5px;font-size:clamp(140px,28vw,210px)}.hero-intro p{max-width:none;margin-top:12px;font-size:18px}.hero-portrait{order:1;align-self:center;width:100%;max-width:580px;height:440px;margin-top:-30px;position:relative;bottom:auto;right:auto;overflow:hidden}.hero-portrait img{width:100%;height:auto;position:absolute;bottom:0;transform:none}.hero-stats{border-block:1px solid var(--line);order:2;justify-content:space-between;width:100%;margin-top:30px;padding:22px 0}.stat-value{font-size:54px}.stat-caption{font-size:14px}.small-plus{font-size:25px}.scroll-link{order:3;margin-top:24px;font-size:16px}}@media (width<=479px){.hero{padding-top:112px}.hero h1{font-size:152px}.hero-intro p{max-width:310px;font-size:16px}.hero-portrait{width:calc(100% + 32px);max-width:none;height:365px;margin-top:0}.hero-stats{gap:15px;margin-top:22px}.stat-value{font-size:48px}.stat-caption{font-size:13px}.hero-rail{margin-bottom:24px}}.hero-intro{animation:none!important}.hero-portrait{translate:0 var(--portrait-scroll,0px);will-change:translate;animation:none!important}.hero h1{margin-bottom:-.08em;padding-bottom:.08em;overflow:hidden}.hero-letter{animation:1.25s cubic-bezier(.16,1,.3,1) both letter-arrive;animation-delay:calc(80ms + var(--letter) * .11s);will-change:transform;display:inline-block}@keyframes letter-arrive{0%{opacity:0;transform:translateY(110%)rotate(7deg)}to{opacity:1;transform:none}}.hero-intro>p{animation:1s cubic-bezier(.16,1,.3,1) .3s both copy-arrive}.hero-portrait img{animation:1.4s cubic-bezier(.2,.65,.25,1) 80ms both portrait-arrive}@keyframes copy-arrive{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes portrait-arrive{0%{opacity:0;clip-path:inset(18% 0 0);filter:blur(6px)}to{opacity:1;clip-path:inset(0);filter:blur()}}.counter-number{height:1em;line-height:1;display:inline-flex;overflow:hidden}.counter-digit{width:.53em;height:1em;display:block;position:relative}.digit-reel{transform:translateY(calc(var(--digit-start) * -1em));transition:transform 1.9s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--digit-index) * 90ms);will-change:transform;flex-flow:column;display:flex}.digit-reel>span{text-align:center;flex:0 0 1em;height:1em;line-height:1;display:block}.counters-ready .digit-reel{transform:translateY(calc(var(--digit-end) * -1em))}.hero-rail i{transform-origin:top;animation:1.3s cubic-bezier(.16,1,.3,1) .35s both line-arrive}@keyframes line-arrive{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@media (width<=767px){.hero-portrait{translate:none}.hero-intro>p{animation-delay:.2s}}@media (prefers-reduced-motion:reduce){.hero-portrait{translate:none}.hero-letter{opacity:1;transform:none}.digit-reel{transition:none}.hero-portrait img{clip-path:none;filter:none}}.hero h1{letter-spacing:-.05em;margin-left:-4px;font-size:clamp(68px,7vw,100px);line-height:1.02}.hero-intro{max-width:470px;margin-top:64px;margin-bottom:100px}.hero-intro>p{max-width:410px;margin-top:20px;line-height:1.4}.hero-intro .hero-location{color:var(--muted);margin-top:18px;font-size:14px;line-height:1.5}@media (width<=991px) and (width>=768px){.hero-intro{max-width:330px}.hero h1{font-size:76px}.hero-intro>p{max-width:300px}}@media (width<=767px){.hero-intro{max-width:100%;margin:0}.hero h1{font-size:clamp(68px,15vw,100px)}.hero-intro>p{max-width:440px;margin-top:20px;font-size:18px}.hero-intro .hero-location{margin-top:15px;margin-bottom:24px;font-size:13px}}.about{background:var(--surface-ice);border-block:1px solid var(--surface-ice-line);margin-bottom:clamp(64px,6vw,96px);padding-top:120px;padding-bottom:80px}.about-grid{grid-template-columns:1.42fr 1fr 1.15fr;align-items:stretch;gap:44px;display:grid}.about-copy{flex-direction:column;justify-content:space-between;display:flex}.about-copy p,.about-card p,.about-points p{color:var(--muted);font-size:19px;line-height:1.5}.about-copy p{max-width:448px;margin-top:16px}.about-arrow{color:#d4dbdb;align-self:flex-end;width:220px;height:200px;margin:50px 35px 16px 0}.about-card{background:var(--white);border:1px solid #fff;border-radius:8px;flex-flow:column;align-items:flex-start;padding:28px 24px 24px;display:flex;box-shadow:0 16px 48px -28px #25333324}.globe{border:1px solid var(--accent-line);width:72px;height:72px;color:var(--accent);background:linear-gradient(145deg,#f7faff,#e1ebfc);border-radius:50%;place-items:center;margin-bottom:15px;display:grid}.globe svg{width:38px;height:38px}.about-number{letter-spacing:-.04em;color:#000;font-size:clamp(32px,3.2vw,46px);line-height:1.05}.about-card p{margin-top:18px;margin-bottom:39px}.about-photo{aspect-ratio:1/1.35;background:linear-gradient(145deg,#edf0f0,#e0e6e6);border-radius:8px;width:100%;margin-top:auto;overflow:hidden}.about-photo img{object-fit:cover;object-position:center bottom;filter:none;mix-blend-mode:normal;transform-origin:50% 75%;width:100%;height:100%;transform:scale(1)}.about-details{flex-direction:column;justify-content:space-between;gap:80px;display:flex}.about-solution-visual{aspect-ratio:4/3;background:var(--surface-ice);isolation:isolate;border:1px solid #e0e5e5;border-radius:16px;align-self:center;width:100%;max-width:380px;display:block;position:relative;overflow:hidden}.about-solution-visual img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.about-solution-visual>span{background:var(--white);width:48px;height:48px;color:var(--accent);opacity:0;border-radius:50%;place-items:center;font-size:25px;transition:all .3s;display:grid;position:absolute;top:calc(50% - 24px);left:calc(50% - 24px);transform:translateY(10px)}.about-solution-visual:hover>span,.about-solution-visual:focus-visible>span{opacity:1;transform:translateY(0)}.about-solution-visual:hover img{transform:scale(1.04)}.about-points{gap:42px;padding-bottom:5px;display:grid}.about-points>div{align-items:flex-start;gap:13px;display:flex}.point-icon{height:38px;color:var(--accent);background:#e1ebfc;border:1px solid #cfddf5;border-radius:50%;flex:0 0 38px;place-items:center;font-size:23px;display:grid}@media (width<=1199px){.about-grid{grid-template-columns:1.2fr 1fr 1fr;gap:28px}.about-number{font-size:36px}.about-card{padding:22px 18px}.about-copy p,.about-card p,.about-points p{font-size:17px}.about-arrow{width:180px;margin-right:0}.about-details{gap:60px}.about-points{gap:30px}}@media (width<=991px){.about{padding-top:85px}.about-grid{grid-template-columns:1fr 1.25fr;gap:35px}.about-copy{text-align:center;grid-column:1/-1;align-items:center}.about-copy p{max-width:570px;margin-top:18px}.about-arrow{display:none}.about-details{gap:45px}.about-photo{aspect-ratio:1/1.1}.about-number{font-size:46px}.about-card p{max-width:270px}.about-points p{font-size:18px}}@media (width<=767px){.about{padding-top:75px;padding-bottom:65px}.about-grid{grid-template-columns:1fr 1fr;gap:28px}.about-copy p{font-size:18px}.about-card{padding:22px 18px}.about-number{font-size:36px}.globe{width:56px;height:56px}.globe svg{width:30px;height:30px}.about-card p{margin-bottom:25px;font-size:16px}.about-photo{aspect-ratio:1/1.4}.about-details{gap:30px}.about-points{gap:24px}.about-points>div{flex-direction:column;gap:12px}.about-points p{font-size:16px;line-height:1.5}.point-icon{flex-basis:34px;width:34px;height:34px;font-size:21px}}@media (width<=479px){.about-grid{grid-template-columns:1fr;gap:28px}.about-copy{text-align:left;align-items:flex-start}.about-copy p{font-size:18px}.about-card{grid-template-columns:1fr 1fr;align-items:start;gap:0 20px;padding:24px;display:grid}.globe{grid-column:1;margin-bottom:18px}.about-number{grid-column:1;font-size:clamp(24px,6.4vw,30px)}.about-card p{grid-column:1;margin-bottom:0;font-size:15px}.about-photo{aspect-ratio:auto;grid-area:1/2/4;height:100%;min-height:250px;margin:0}.about-photo img{transform:scale(1)}.about-details{grid-template-columns:1fr;display:grid}.about-points{gap:25px}.about-points>div{flex-flow:row;gap:13px}.about-points p{font-size:17px}}.about-arrow{rotate:var(--arrow-rotation,-10deg);transition:rotate .15s linear}.about-card{transition:box-shadow .5s,translate .5s}.about-card:hover{translate:0 -5px;box-shadow:0 24px 60px -30px #25333330}.about-photo img{transition:transform .9s cubic-bezier(.16,1,.3,1)}.about-card:hover .about-photo img{transform:scale(1.025)}@media (width<=767px){.about-card:hover{translate:none}}@media (width<=560px){.about-card:hover .about-photo img{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.about-card:hover{transform:translate(0,0)}}@media (width<=479px){.about-solution-visual{max-width:none}}.portfolio{padding-block:0 110px;overflow:hidden}.portfolio-heading{justify-content:space-between;align-items:flex-end;margin-bottom:40px;display:flex}.slider-controls{gap:10px;display:flex}.slider-controls button{color:var(--accent);background:0 0;border:1px solid #c5c5c5;border-radius:50%;width:48px;height:48px;font-size:23px;transition:background .25s,color .25s}.slider-controls button:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.project-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;gap:28px;padding:0 max(15px,50vw - 668px) 12px;display:flex;overflow-x:auto}.project-track::-webkit-scrollbar{display:none}.project{scroll-snap-align:center;flex:0 0 min(570px,46vw);min-width:0}.project-image{isolation:isolate;background:#ddd;border-radius:10px;height:527px;display:block;position:relative;overflow:hidden}.project-image:after{content:"";opacity:.04;background:#000;transition:opacity .4s;position:absolute;inset:0}.project-image img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.65,.25,1)}.project-open{color:var(--paper);background:var(--ink);width:80px;height:80px;z-index:2;border-radius:50%;place-items:center;font-size:36px;transition:transform .35s;display:grid;position:absolute;top:calc(50% - 40px);left:calc(50% - 40px)}.project-image:hover:after{opacity:.12}.project-image:hover .project-open{transform:rotate(45deg)}.project-caption{justify-content:space-between;align-items:center;gap:18px;margin-top:16px;display:flex}.project-caption h3{letter-spacing:-.64px;font-size:32px;line-height:1.2}.project-caption>span{color:var(--muted);white-space:nowrap;font-size:14px}.project-description{max-width:480px;color:var(--muted);margin-top:10px;font-size:16px;line-height:1.45}.portfolio-bottom{color:var(--muted);justify-content:space-between;margin-top:30px;font-size:14px;display:flex}.project-position{font-variant-numeric:tabular-nums}@media (width<=991px){.project-track{padding-inline:24px}.project{flex-basis:65vw}.project-image{height:450px}.portfolio{padding-bottom:80px}}@media (width<=767px){.portfolio-heading{margin-bottom:28px}.slider-controls{gap:8px}.slider-controls button{width:44px;height:44px}.project-track{gap:20px;padding-inline:20px}.project{flex-basis:85vw}.project-image{height:420px}.project-caption h3{font-size:28px}.project-description{font-size:15px}.portfolio-bottom{gap:20px;margin-top:24px;font-size:13px}.portfolio{padding-bottom:70px}}@media (width<=479px){.portfolio-heading h2{font-size:38px}.portfolio-heading .eyebrow{max-width:190px}.project-track{gap:16px;padding-inline:16px}.project{flex-basis:88vw}.project-image{height:350px}.project-open{width:64px;height:64px;font-size:30px;top:calc(50% - 32px);left:calc(50% - 32px)}.project-caption h3{font-size:26px}.project-caption>span{font-size:13px}.portfolio-bottom>span:first-child{max-width:220px}}.project-track{scroll-snap-type:none;scroll-behavior:auto;cursor:grab;touch-action:pan-x pan-y}.project-track.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.project-track.dragging a{pointer-events:none}.project-image{cursor:none}.project-image img{transition:transform 1s cubic-bezier(.16,1,.3,1)}.project-open{transform:translate(-50%,-50%);translate:var(--cursor-x,0px) var(--cursor-y,0px);pointer-events:none;will-change:translate;transition:translate .22s cubic-bezier(.16,1,.3,1),scale .25s,background .3s;top:50%;left:50%}.project-image:hover .project-open{color:var(--accent);background:#edf3fa;transform:translate(-50%,-50%)scale(1.05)}.project-image:hover img{transform:scale(1.045)}.project-caption a{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .4s}.project-caption a:hover{background-size:100% 1px}.slider-controls .motion-toggle{letter-spacing:-2px;font-size:18px}.portfolio-bottom>span:first-child{align-items:center;gap:10px;display:flex}.portfolio-bottom>span:first-child:before{content:"";background:var(--ink);border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 5px #22222208}@media (width<=767px){.project-image{cursor:pointer}}@media (width<=560px){.slider-controls{gap:7px}.slider-controls button{width:40px;height:40px}.portfolio-heading .eyebrow{max-width:180px}.portfolio-heading h2{font-size:36px}.project-open{width:64px;height:64px;top:50%;left:50%}}@media (width<=359px){.portfolio-heading{gap:8px}.portfolio-heading h2{font-size:32px}.slider-controls button{width:36px;height:36px}.portfolio-heading .eyebrow{max-width:140px;font-size:12px}}@media (prefers-reduced-motion:reduce){.project-track{scroll-snap-type:x proximity}}.project-image-fritz{background:#e2e7e9;justify-content:center;align-items:center;padding:35px 24px;display:flex}.case-badge{letter-spacing:.04em;color:#546167;border:1px solid #c6cfd3;border-radius:30px;padding:6px 11px;font-size:11px;position:absolute;top:22px;left:24px}.project-browser{background:#fff;border-radius:8px;width:100%;transition:translate .6s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 24px 45px -22px #142a3c66}.project-browser-bar{color:#777;background:#f7f7f7;border-bottom:1px solid #eee;align-items:center;gap:4px;height:30px;padding:0 10px;display:flex}.project-browser-bar>i{background:#c5c5c5;border-radius:50%;width:5px;height:5px}.project-browser-bar>span{letter-spacing:.02em;margin-inline:auto;font-size:9px}.project-browser-bar>b{font-size:11px;font-weight:400}.project-browser img{aspect-ratio:16/9;object-fit:cover;object-position:top;width:100%;height:auto}.project-image-fritz:hover .project-browser{translate:0 -5px}.project-image-fritz:hover img{transform:none}.project-image-fritz:after{display:none}.project-coming{cursor:default;color:#777;background:#e9e9e7;border:1px solid #dededb;flex-direction:column;justify-content:space-between;padding:28px;display:flex;overflow:hidden}.project-coming:after{display:none}.project-pending:nth-child(3n) .project-coming{background:#e5e7e5;border-color:#d8dbd8}.project-pending:nth-child(3n+1) .project-coming{background:#e9e6e1;border-color:#dfdbd5}.coming-kicker{letter-spacing:.12em;z-index:1;justify-content:space-between;gap:20px;width:100%;font-size:10px;display:flex}.coming-kicker>i{letter-spacing:0;font-variant-numeric:tabular-nums;font-style:normal}.coming-symbol{color:#c7c7c1;align-self:center;font-size:clamp(130px,16vw,230px);font-weight:300;line-height:.9;transition:rotate 1s cubic-bezier(.16,1,.3,1),scale 1s cubic-bezier(.16,1,.3,1);display:block}.project-coming:hover .coming-symbol{rotate:15deg;scale:1.04}.coming-label{letter-spacing:-1.2px;color:#676762;z-index:1;font-size:36px;line-height:1.1}.coming-label>span{letter-spacing:0;color:#8b8b85;margin-top:10px;font-size:13px;display:block}.project-pending .project-caption h3{color:#777}.project-pending .project-description{color:#888}@media (width<=767px){.project-image-fritz{padding:35px 20px}.case-badge{top:20px;left:20px}.project-coming{padding:24px}.coming-symbol{font-size:170px}.coming-label{font-size:32px}.portfolio-heading .eyebrow{max-width:210px}}@media (width<=479px){.project-image-fritz{padding:35px 16px}.case-badge{font-size:10px;top:16px;left:16px}.project-browser-bar{height:24px}.project-coming{padding:22px}.coming-symbol{font-size:145px}.coming-label{font-size:30px}.coming-label>span{font-size:12px}.portfolio-heading .eyebrow{max-width:180px}}@media (prefers-reduced-motion:reduce){.project-coming:hover .coming-symbol{rotate:none;scale:1}}.services{padding-top:24px;padding-bottom:128px}.services-heading{justify-content:space-between;align-items:flex-end;gap:80px;margin-bottom:54px;display:flex}.services-heading h2{letter-spacing:-3px;font-size:clamp(48px,5vw,72px);line-height:1.06}.muted-heading{color:#929292}.services-heading-copy{max-width:380px;padding-bottom:4px}.availability{color:#656565;align-items:center;gap:9px;font-size:13px;display:flex}.availability>i{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 0 4px #2563eb0d}.services-heading-copy>p{color:var(--muted);margin:20px 0 22px;font-size:18px;line-height:1.55}.services-heading-copy>.text-link{font-size:16px}.services-cards{perspective:1800px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.service-card{isolation:isolate;min-width:0;transform-style:preserve-3d;background:#f9f9f9;border:1px solid #d9d9d9;border-radius:15px;flex-flow:column;padding:30px 28px 24px;transition:border-color .4s,box-shadow .5s,translate .5s,transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.service-card:before{content:"";z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(340px circle at var(--pointer-x,50%) var(--pointer-y,0%), #fff 0%, transparent 85%);transition:opacity .4s;position:absolute;inset:0}.service-card:hover:before{opacity:1}.service-card:hover{border-color:#aaa;translate:0 -7px;box-shadow:0 22px 50px -25px #2223}.service-card-top{align-items:center;gap:12px;margin-bottom:28px;display:flex}.service-icon{border:1px solid var(--accent-line);width:46px;height:46px;color:var(--accent);background:linear-gradient(150deg,#f8fbff,#e4edfc);border-radius:13px;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 0 1px #fff}.service-icon svg{width:29px;height:29px}.service-tag{color:#666;font-size:12px;line-height:1.2}.service-card-index{color:#888;font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.service-card-copy h3{letter-spacing:-.9px;font-size:28px;line-height:1.15}.service-promise{color:var(--muted);min-height:40px;margin-top:9px;font-size:14px;line-height:1.45}.service-card-price{border-bottom:1px solid #dedede;margin-top:27px;padding-bottom:25px}.price-prefix{color:#777;margin-bottom:6px;font-size:12px;display:block}.service-card-price>div{flex-wrap:wrap;align-items:baseline;gap:7px;line-height:1;display:flex}.currency{color:var(--accent);align-self:flex-start;padding-top:9px;font-size:17px}.service-card-price strong{color:var(--accent);letter-spacing:-2.2px;font-size:54px;font-weight:400;line-height:1}.service-card-price .price-custom{letter-spacing:-1.5px;align-items:center;min-height:54px;font-size:36px;display:flex}.price-unit{color:#777;white-space:nowrap;margin-left:2px;font-size:12px}.service-card-description{color:#707070;min-height:70px;margin-top:22px;font-size:15px;line-height:1.55}.service-features{gap:10px;margin:20px 0 30px;padding:0;list-style:none;display:grid}.service-features li{color:#555;align-items:flex-start;gap:9px;font-size:14px;line-height:1.4;display:flex}.service-features li>span{color:var(--accent);flex-shrink:0;font-size:16px;line-height:1.2}.service-card-note{color:#777;margin:-14px 0 20px;font-size:11px}.service-card-cta{border-top:1px solid #dedede;justify-content:space-between;align-items:center;gap:15px;min-height:58px;margin-top:auto;padding-top:18px;font-size:14px;display:flex}.cta-arrow{border:1px solid var(--accent-line);width:32px;height:32px;color:var(--accent);background:#edf3fa;border-radius:50%;flex-shrink:0;place-items:center;font-size:19px;transition:transform .4s cubic-bezier(.16,1,.3,1),background .3s,color .3s;display:grid}.service-card-cta:hover .cta-arrow{background:var(--accent);border-color:var(--accent);color:#fff;transform:rotate(45deg)}.service-card-featured{color:#f3f3f3;background:#242424;border-color:#242424;box-shadow:0 14px 35px -20px #0006}.service-card-featured:before{background:radial-gradient(400px circle at var(--pointer-x,50%) var(--pointer-y,0%), #ffffff0f 0%, transparent 85%)}.service-card-featured:hover{border-color:#555;box-shadow:0 24px 50px -25px #0007}.service-card-featured .service-icon{color:var(--accent-on-dark);background:linear-gradient(150deg,#2d4163,#263247);border-color:#40577b;box-shadow:inset 0 1px #ffffff16}.service-card-featured .service-tag,.service-card-featured .service-card-index,.service-card-featured .service-promise,.service-card-featured .price-prefix,.service-card-featured .price-unit,.service-card-featured .service-card-description,.service-card-featured .service-features li{color:#bdbdbd}.service-card-featured .service-card-price,.service-card-featured .service-card-cta{border-color:#ffffff25}.service-card-featured .cta-arrow{color:var(--accent-on-dark);background:#2d4163;border-color:#40577b}.service-card-featured .service-card-cta:hover .cta-arrow{background:var(--accent);color:#fff;border-color:var(--accent)}.service-card-featured .service-features li>span{color:var(--accent-on-dark)}.service-card-invite{background:0 0;border:1px solid #d5d5d5;justify-content:flex-start}.invite-symbol{color:var(--accent);align-self:flex-start;margin:5px 0 40px;font-size:105px;line-height:1;transition:rotate 1.2s cubic-bezier(.16,1,.3,1)}.service-card-invite:hover .invite-symbol{rotate:90deg}.service-card-invite>.eyebrow{margin-bottom:16px;font-size:12px}.service-card-invite h3{letter-spacing:-1.4px;font-size:35px;line-height:1.14}.service-card-invite>p{color:#777;max-width:290px;margin:22px 0 35px;font-size:16px;line-height:1.55}.services-footnote{color:#777;justify-content:space-between;gap:30px;padding-top:24px;font-size:12px;display:flex}.services-footnote>span{color:#555}.service-card-cta{--magnet-x:0px;--magnet-y:0px}@media (width>=768px){.service-card:hover{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}}@media (width<=1199px){.services-cards{gap:16px}.service-card{padding:25px 22px 20px}.service-card-copy h3{font-size:25px}.service-card-price strong{font-size:47px}.service-card-price .price-custom{font-size:31px}.service-tag{font-size:11px}.service-icon{width:40px;height:40px}.service-card-top{gap:9px}.service-card-invite h3{font-size:31px}.price-unit{font-size:11px}.services-heading{gap:45px}.services-heading-copy{max-width:345px}}@media (width<=991px){.services-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{padding:28px 25px 22px}.service-card-copy h3{font-size:28px}.service-card-price strong{font-size:54px}.services-heading{align-items:flex-start;gap:35px}.services-heading h2{font-size:55px}.services-heading-copy{max-width:315px}.service-card-description{min-height:65px}.service-card-invite h3{font-size:35px}.service-card-invite{justify-content:center}.services{padding-bottom:95px}.services-footnote{font-size:11px}.service-promise{min-height:40px}}@media (width<=767px){.services{padding-top:0;padding-bottom:75px}.services-heading{flex-direction:column;gap:28px;margin-bottom:35px;display:flex}.services-heading h2{letter-spacing:-2.7px;font-size:58px}.services-heading-copy{max-width:500px}.services-heading-copy>p{margin:16px 0 18px;font-size:17px}.services-cards{gap:16px}.service-card{padding:24px 20px 20px}.service-card-copy h3{font-size:25px}.service-tag{display:none}.service-card-price>div{gap:5px}.service-card-price strong{font-size:45px}.service-card-price .price-custom{font-size:29px}.price-unit{width:100%;margin-top:5px;margin-left:0;display:block}.service-card-top{margin-bottom:24px}.service-promise{min-height:55px;font-size:13px}.service-card-description{min-height:90px;font-size:14px}.service-features li,.service-card-cta{font-size:13px}.service-card-invite h3{font-size:31px}.service-card-invite>p{font-size:15px}.services-footnote{flex-direction:column;gap:8px;padding-top:20px}.service-card:hover{transform:none}}@media (width<=560px){.services-cards{grid-template-columns:1fr;gap:18px}.service-card{border-radius:14px;padding:28px 25px 24px}.service-card-top{margin-bottom:26px}.service-icon{border-radius:14px;width:48px;height:48px}.service-tag{font-size:12px;display:block}.service-card-copy h3{font-size:30px}.service-promise{min-height:0;font-size:15px}.service-card-price{margin-top:27px}.service-card-price strong{font-size:58px}.service-card-price .price-custom{min-height:58px;font-size:39px}.currency{padding-top:9px;font-size:19px}.price-unit{width:auto;margin:0 0 0 7px;font-size:12px;display:inline}.service-card-price>div{gap:7px}.service-card-description{min-height:0;margin-top:24px;font-size:16px}.service-features{gap:12px;margin:23px 0 30px}.service-features li{font-size:15px}.service-card-cta{padding-top:20px;font-size:15px}.cta-arrow{width:36px;height:36px;font-size:22px}.service-card-invite{min-height:420px;padding-top:35px}.invite-symbol{margin-bottom:35px;font-size:94px}.service-card-invite h3{font-size:39px}.service-card-invite>p{font-size:16px}.service-card-invite>.eyebrow{font-size:13px}.services-heading h2{font-size:51px}.services-footnote{font-size:12px}}@media (width<=359px){.services-heading h2{font-size:45px}.service-card{padding:25px 21px 22px}.service-card-copy h3{font-size:28px}.service-card-price strong{font-size:51px}.service-card-price .price-custom{font-size:33px}.price-unit{margin-left:2px;font-size:11px}.service-card-cta,.service-features li{font-size:14px}}@media (prefers-reduced-motion:reduce){.service-card,.service-card:hover{transform:translate(0,0)}}.installment-count{color:var(--accent);letter-spacing:-1px;margin-right:3px;font-size:24px}.price-total{color:#777;margin-top:11px;font-size:12px;line-height:1.4;display:block}.service-card-featured .price-total{color:#bdbdbd}.service-card-featured .service-card-price strong,.service-card-featured .currency,.service-card-featured .installment-count{color:var(--accent-on-dark)}.service-card-price{min-height:131px}.services-footnote p{text-align:right;max-width:650px}@media (width<=767px){.services-footnote p{text-align:left}.installment-count{font-size:21px}}@media (width>=768px) and (hover:hover) and (pointer:fine){.js-ready .service-card.reveal.visible:hover{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}}.motion-paused .service-card,.motion-paused .service-card:hover{transform:none!important}.footer{background:var(--ink);color:var(--paper);padding-top:65px;position:relative;overflow:hidden}.footer-top{justify-content:space-between;align-items:center;gap:24px;margin-bottom:50px;display:flex}.footer .brand img{filter:invert()}.footer-top nav{gap:32px;font-size:16px;display:flex}.footer a:hover{text-underline-offset:5px;text-decoration:underline}.footer-contact{justify-content:space-between;align-items:center;gap:32px;display:flex}.social-column{flex-direction:column;flex:1;gap:16px;font-size:16px;display:flex}.contact-main{flex-flow:column;align-items:center;gap:4px;display:flex}.contact-main>a{letter-spacing:-.44px;font-size:44px;line-height:1.32}.contact-main>.email{letter-spacing:-.6px;font-size:30px}.footer-wordmark{white-space:nowrap;letter-spacing:-1.6vw;justify-content:center;align-items:center;gap:1vw;margin:65px 0 24px;padding-right:2vw;font-size:24vw;font-weight:500;line-height:.94;transition:color .3s;display:flex}.footer-wordmark>span{letter-spacing:-.06em;margin-top:3vw;font-size:.7em}.footer-wordmark:hover{color:#c4c4c4;text-decoration:none!important}.footer-bottom{color:#b5b5b5;border-top:1px solid #ffffff20;justify-content:space-between;gap:16px;padding:24px max(15px,50vw - 668px) 30px;font-size:13px;display:flex}@media (width<=991px){.footer-top nav{gap:24px}.contact-main>a{font-size:34px}.contact-main>.email{font-size:24px}.footer-contact{gap:20px}.footer-top .text-link{font-size:16px}.social-column{font-size:14px}}@media (width<=767px){.footer{padding-top:45px}.footer-top{flex-wrap:wrap;gap:28px;margin-bottom:35px}.footer-top nav{order:2;gap:30px;width:100%}.footer-top .text-link{margin-left:auto;font-size:15px}.footer-contact{flex-wrap:wrap;gap:30px}.contact-main{order:-1;align-items:flex-start;width:100%}.contact-main>a{font-size:38px}.contact-main>.email{font-size:26px}.social-column{gap:16px;font-size:15px}.social-column a{min-height:28px}.social-right{align-items:flex-end}.footer-wordmark{margin-block:45px 22px;font-size:24vw}.footer-bottom{flex-wrap:wrap;gap:8px;padding:22px 20px 28px;font-size:12px}}@media (width<=479px){.contact-main>a{font-size:32px}.contact-main>.email{letter-spacing:-.3px;font-size:21px}.footer-top nav{gap:26px;font-size:15px}.footer-top .text-link{font-size:14px}.footer-bottom{padding-inline:16px}}.footer-wordmark{letter-spacing:-.065em;width:100%;margin:65px 0 30px;padding:0;font-size:clamp(150px,25vw,390px);line-height:1;display:block;overflow:hidden}.signature-track{will-change:transform;width:max-content;animation:27s linear infinite signature-flow;display:flex}.signature-track>span{white-space:nowrap;align-items:center;gap:.06em;padding-right:.12em;display:flex}.signature-track i{letter-spacing:-.06em;margin-top:.08em;font-size:.7em;font-style:normal;display:block}@keyframes signature-flow{to{transform:translate(-50%)}}.footer-wordmark:hover .signature-track,.footer-wordmark:focus-visible .signature-track{animation-play-state:paused}.footer-motion{color:inherit;cursor:pointer;text-underline-offset:4px;background:0 0;border:0;padding:0;font-size:12px}.footer-motion:hover{text-decoration:underline}.motion-paused .signature-track{animation-play-state:paused}@media (width<=991px){.footer-bottom{flex-wrap:wrap}}@media (width<=767px){.footer-wordmark{margin:45px 0 25px;font-size:30vw}}@media (prefers-reduced-motion:reduce){.signature-track{animation:none}}.footer-wordmark>.signature-track{font-size:inherit;letter-spacing:inherit;margin:0}.footer{color:#fefefe;background:#000;border-radius:20px;margin:0 16px 16px;padding:40px 0 0;position:relative;overflow:hidden}.footer>.container{z-index:1;position:relative}.footer-top{flex-wrap:nowrap;gap:24px;margin-bottom:50px}.footer-top .brand{letter-spacing:-.7px;font-size:24px}.footer-top .brand img{width:40px;height:40px}.footer-top nav{order:initial;gap:32px;width:auto;font-size:16px;display:flex}.footer-top nav a{line-height:1.2;display:block}.footer-top>.text-link{margin-left:0;font-size:18px}.footer-contact{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:20px}.social-column{letter-spacing:-.24px;flex:1;gap:16px;font-size:24px;line-height:1.2}.social-column a{min-height:0}.social-right{align-items:flex-end}.contact-main{order:initial;flex:0 auto;align-items:center;gap:0;width:auto;max-width:600px}.contact-main>a,.contact-main>.email{letter-spacing:-.44px;white-space:nowrap;font-size:44px;font-weight:400;line-height:1.32}.footer-mobile-social{display:none}.footer a:hover{color:#fff}.footer-wordmark{letter-spacing:-6px;z-index:0;color:#0000;width:100%;margin:50px 0 0;padding:0;font-size:306px;font-weight:600;line-height:.8;display:block;position:relative;overflow:hidden}.footer-wordmark>.signature-track{width:max-content;font-size:inherit;letter-spacing:inherit;line-height:inherit;margin:0;animation:38s linear infinite signature-flow;display:flex}.signature-track>span{white-space:nowrap;color:#0000;-webkit-text-fill-color:transparent;background-image:linear-gradient(#dfdfdf33,#96969600);-webkit-background-clip:text;background-clip:text;flex:none;padding:0 80px 0 0;display:block}.footer-wordmark:hover .signature-track,.footer-wordmark:focus-visible .signature-track,.motion-paused .signature-track{animation-play-state:paused}.footer-bottom{z-index:2;color:#acacac;border:0;justify-content:center;align-items:center;gap:0;margin:0;padding:0 15px;font-size:16px;line-height:1.32;display:flex;position:absolute;inset:auto 0 36px}.footer-motion{color:#acacac;background:#0005;border:1px solid #ffffff30;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;font-size:0;display:grid;position:absolute;bottom:-1px;right:20px}.footer-motion:before{content:"Ⅱ";font-size:12px;line-height:1}.footer-motion[aria-pressed=true]:before{content:"▷";font-size:14px}@media (width<=991px){.footer{margin:0 10px 10px}.footer-top{margin-bottom:40px}.footer-contact{gap:20px}.contact-main>a,.contact-main>.email{letter-spacing:-.36px;font-size:36px}.social-column{font-size:20px}.footer-wordmark{letter-spacing:-3px;margin-top:40px;font-size:250px}.footer-bottom{bottom:30px}}@media (width<=767px){.footer{padding-top:40px}.footer-top{flex-wrap:wrap;gap:30px;margin-bottom:35px}.footer-top nav{order:2;justify-content:center;gap:32px;width:100%}.footer-top>.text-link{margin-left:auto;font-size:16px}.footer-contact{flex-flow:column;gap:28px}.contact-main{order:0;align-items:center;width:100%;max-width:100%}.contact-main>a,.contact-main>.email{letter-spacing:-.32px;font-size:32px}.social-column:not(.social-right){display:none}.social-right{letter-spacing:-.18px;flex-flow:wrap;justify-content:center;align-items:center;gap:20px;width:100%;font-size:18px;display:flex}.footer-mobile-social{display:inline-flex}.footer-wordmark{letter-spacing:-.4px;margin-top:35px;font-size:200px}.footer-bottom{font-size:14px;bottom:25px}.footer-motion{width:22px;height:22px;bottom:0;right:15px}}@media (width<=479px){.footer-top{gap:26px;margin-bottom:30px}.footer-top nav{justify-content:flex-start;gap:24px;font-size:16px}.footer-top>.text-link{font-size:14px}.footer-top .brand{font-size:23px}.footer>.container{padding-inline:16px}.footer-contact{align-items:flex-start;gap:24px}.contact-main{align-items:flex-start}.contact-main>a{letter-spacing:-.24px;font-size:24px}.contact-main>.email{letter-spacing:-.24px;font-size:clamp(18px,6.2vw,24px)}.social-right{letter-spacing:-.16px;justify-content:flex-start;gap:18px;font-size:16px}.footer-wordmark{letter-spacing:-1.8px;margin-top:35px;font-size:140px}.footer-bottom{padding-inline:34px;font-size:12px;bottom:20px}.footer-motion{width:20px;height:20px;right:10px}.signature-track>span{padding-right:55px}}@media (prefers-reduced-motion:reduce){.footer-wordmark>.signature-track{animation:none}}.footer .text-link span{color:var(--accent-on-dark)}address.contact-main{font-style:normal}@media (prefers-reduced-motion:no-preference){.js-ready .reveal{opacity:0;transition:opacity .65s,transform .65s;transform:translateY(24px)}.js-ready .reveal.visible{opacity:1;transform:none}}.reading-progress{z-index:100;width:100%;height:2px;transform:scaleX(var(--reading,0));transform-origin:0;pointer-events:none;background:#222;position:fixed;inset:0 auto auto 0}.reveal{transition-delay:var(--reveal-delay,0s)!important}.js-ready .reveal{transform:translateY(42px);transition-duration:.9s!important;transition-timing-function:cubic-bezier(.16,1,.3,1)!important}.js-ready .reveal.visible{transform:none}.reveal-title{margin-bottom:-.06em;padding-bottom:.06em;display:block;overflow:hidden}.reveal-title>span{transition:transform 1s cubic-bezier(.16,1,.3,1);display:block;transform:translateY(110%)}.visible .reveal-title>span{transform:none}.motion-paused .reading-progress{transition:transform .2s}@media (prefers-reduced-motion:reduce){.reveal-title>span{transform:none}}
