.page-loader,html.is-page-loading{overflow:hidden}.page-loader{background-color:#fff;height:100dvh;left:0;pointer-events:auto;position:fixed;top:0;width:100vw;will-change:transform;z-index:10000}.hero-block{padding:1.25rem .5rem 0}@media only screen and (min-width:600px){.hero-block{padding:1rem 1rem 0}}@media only screen and (min-width:960px){.hero-block{padding:2rem 2rem 0}}@media only screen and (max-width:959px){.hero-block.block-section{height:100dvh;margin-bottom:4rem;max-height:100dvh;overflow:hidden}}.hero-block .layout-container{max-width:2400px;width:100%}.hero-block .hero-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(12,minmax(0,1fr));isolation:isolate;max-height:100dvh;min-height:100svh;overflow:visible}.hero-block .hero-frame{border:none;position:relative}.hero-block .hero-frame:after{background-image:repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:100% 1px,100% 1px,1px 100%,1px 100%;content:"";inset:0;pointer-events:none;position:absolute}.hero-block .hero-frame{color:inherit;display:grid;margin:0;min-height:0;min-width:0;padding:32px;text-decoration:none;transform:scale(1);transition:transform .6s cubic-bezier(.65,0,.35,1),z-index 0s .6s;z-index:6}@media(hover:hover)and (pointer:fine){.hero-block .hero-frame:hover{transform:scale(1.5);transition:transform .6s cubic-bezier(.65,0,.35,1),z-index 0s;z-index:5}}.hero-block .hero-frame:focus-visible{outline:2px solid #000;outline-offset:3px}.hero-block .hero-frame--tl{grid-column:1/5;grid-row:1/6;transform-origin:top left}.hero-block .hero-frame--tr{grid-column:10/12;grid-row:1/5;transform-origin:top right}.hero-block .hero-frame--bl{grid-column:2/6;grid-row:9/13;transform-origin:bottom left}.hero-block .hero-frame--br{grid-column:9/13;grid-row:7/12;transform-origin:bottom right}.hero-block .hero-frame__media{display:grid;height:100%;min-height:0;min-width:0;-o-object-fit:cover!important;object-fit:cover!important;overflow:hidden}.hero-block .hero-frame__media img,.hero-block .hero-frame__media-item{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.hero-block .hero-frame__media-item{max-width:none;pointer-events:none}.hero-block button.hero-frame{background:none;cursor:pointer;font:inherit;text-align:left}@media(hover:hover)and (pointer:fine){.hero-block .hero-grid:has(.hero-frame--tl:hover) .hero-frame--bl{transform:translate3d(0,62%,0)}.hero-block .hero-grid:has(.hero-frame--tr:hover) .hero-frame--br{transform:translate3d(0,62%,0)}.hero-block .hero-grid:has(.hero-frame--bl:hover) .hero-frame--tl{transform:translate3d(0,-48%,0)}.hero-block .hero-grid:has(.hero-frame--br:hover) .hero-frame--tr{transform:translate3d(0,-48%,0)}}@media only screen and (hover:hover)and (pointer:fine)and (min-width:960px){.hero-block .hero-grid:has(.hero-frame--br:hover) .hero-frame--tr{transform:translate3d(0,-90%,0)}}.hero-block .hero-copy{align-items:center;display:flex;flex-direction:column;grid-column:5/9;grid-row:6/7;justify-content:center;min-width:0;text-align:center;z-index:1}.hero-block .hero-headline{color:#4f4f4f;font-size:clamp(2.25rem,5.4vw,4.5rem);font-weight:500;letter-spacing:-.05em;line-height:1.12}.hero-block .hero-headline__highlight{background-color:transparent;border-radius:6px;box-decoration-break:clone;-webkit-box-decoration-break:clone;display:inline-block;isolation:isolate;padding:.04em .18em;position:relative}.hero-block .hero-headline__mark{background-color:#f2ff66;border-radius:6px;inset:0;pointer-events:none;position:absolute;transform-origin:left center;z-index:0}.hero-block .hero-headline__highlight-text{position:relative;z-index:1}.hero-block .hero-headline__line{display:block;overflow:hidden;padding-bottom:.12em}.hero-block .hero-headline__word{display:inline-block;will-change:transform}.hero-block .hero-subheadline{color:#4f4f4f;font-size:12px;font-weight:400;letter-spacing:.08em;line-height:1.5;margin-top:1.1rem;max-width:46rem;text-transform:uppercase}@media only screen and (min-width:600px){.hero-block .hero-subheadline{max-width:46rem}}@media only screen and (min-width:960px){.hero-block .hero-subheadline{max-width:25rem}}.hero-block .hero-cta{border:none;position:relative}.hero-block .hero-cta:after{background-image:repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:100% 1px,100% 1px,1px 100%,1px 100%;content:"";inset:0;pointer-events:none;position:absolute}.hero-block .hero-cta{margin-top:1.5rem;padding:12px}.hero-block .hero-cta__button{background-color:#f8f8f8;color:#000;display:inline-block;font-size:14px;font-weight:400;letter-spacing:1.25px;padding:.6rem 1.15rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .25s ease;width:-moz-fit-content;width:fit-content}.hero-block .hero-cta__button:hover{background-color:color-mix(in srgb,#f8f8f8 80%,#000 8%)}.hero-block .hero-cta__button:focus-visible{outline:2px solid #000;outline-offset:3px}.hero-block .hero-cta__text{display:block}.hero-block.is-intro .hero-cta,.hero-block.is-intro .hero-frame,.hero-block.is-intro .hero-headline,.hero-block.is-intro .hero-subheadline{opacity:0}.hero-block.is-intro .hero-headline__mark{transform:scaleX(0)}.hero-block.is-intro .hero-frame{pointer-events:none;transition:none}@media only screen and (max-width:959px){.hero-block .layout-container{height:100%;padding-left:1rem;padding-right:1rem;width:100%}.hero-block .hero-grid{gap:.5rem;grid-template-rows:repeat(12,minmax(0,1fr));height:100%;max-height:100%;min-height:0;padding:0}}@media only screen and (max-width:959px)and (min-width:600px){.hero-block .hero-copy{grid-column:3/11;grid-row:5/9;padding:0 1rem}.hero-block .hero-headline{font-size:clamp(2rem,4.5vw,3.1rem);max-width:14ch}.hero-block .hero-subheadline{margin-top:.9rem;max-width:36ch}.hero-block .hero-cta{margin-top:1.25rem;padding:12px}.hero-block .hero-frame{padding:20px}.hero-block .hero-frame--tl{grid-column:1/6;grid-row:1/5}.hero-block .hero-frame--tr{grid-column:8/12;grid-row:1/4}.hero-block .hero-frame--bl{grid-column:2/6;grid-row:10/13}.hero-block .hero-frame--br{grid-column:7/13;grid-row:9/13}}@media only screen and (max-width:599px){.hero-block .layout-container{padding-left:.75rem;padding-right:.75rem}.hero-block .hero-grid{gap:.4rem}.hero-block .hero-copy{grid-column:1/-1;grid-row:4/9;padding:0 .75rem}.hero-block .hero-headline{font-size:clamp(1.85rem,8.2vw,2.6rem);max-width:11ch}.hero-block .hero-subheadline{margin-top:.85rem;max-width:40ch}.hero-block .hero-cta{margin-top:1.15rem;padding:10px}.hero-block .hero-frame{padding:12px}.hero-block .hero-frame--tl{grid-column:1/6;grid-row:1/4}.hero-block .hero-frame--tr{grid-column:8/12;grid-row:2/4}.hero-block .hero-frame--bl{grid-column:2/7;grid-row:10/12}.hero-block .hero-frame--br{grid-column:8/13;grid-row:9/12}}.hero-cursor-label{background-color:transparent;color:#000;font-family:Roobert Semi Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;font-weight:400;left:0;letter-spacing:1.25px;opacity:0;padding:0;pointer-events:none;position:fixed;text-transform:uppercase;top:0;transition:opacity .35s cubic-bezier(.65,0,.35,1),visibility .35s;visibility:hidden;white-space:nowrap;will-change:transform,opacity;z-index:9999}.hero-cursor-label.is-visible{opacity:1;visibility:visible}.hero-cursor-label.is-visible .hero-cursor-label__box{transform:scale(1)}.hero-cursor-label__box{background-color:#f8f8f8;display:block;padding:.6rem 1.15rem;transform:scale(.82);transform-origin:top left;transition:transform .45s cubic-bezier(.65,0,.35,1)}.hero-cursor-label__text{display:inline-block}@media(prefers-reduced-motion:reduce){.page-loader{display:none}.hero-block.is-intro .hero-cta,.hero-block.is-intro .hero-frame,.hero-block.is-intro .hero-headline,.hero-block.is-intro .hero-subheadline{opacity:1;pointer-events:auto}.hero-block.is-intro .hero-headline__mark{transform:none}}.about-me{display:flex}.about-me .row{justify-content:center}.about-me .text{color:#000;font-size:36px;font-weight:500;-webkit-hyphens:auto;hyphens:auto;line-height:1.15;overflow:hidden;text-align:center}.about-me .text.is-pending{visibility:hidden}@media only screen and (min-width:600px){.about-me .text{font-size:48px}}@media only screen and (min-width:960px){.about-me .text{font-size:64px}}.about-me .text .colorbg{background-color:#f2ff66;border-radius:.5rem;color:#000;padding:0 .25rem}.about-me .text .split-line{display:block;overflow:hidden}.latest-projects .latest-grid{align-items:start;grid-auto-rows:auto;position:relative}.latest-projects .latest-grid,.latest-projects .latest-intro{display:grid;gap:2.5rem;grid-template-columns:repeat(12,minmax(0,1fr))}.latest-projects .latest-intro{align-items:end;margin-bottom:2.5rem}.latest-projects .latest-intro__text{align-self:end;color:#4f4f4f;display:none;font-size:16px;font-weight:400;grid-column:5/8;line-height:1.5;margin:0;text-transform:uppercase}@media only screen and (min-width:1450px){.latest-projects .latest-intro__text{display:block;transform:translateY(-30px)}}.latest-projects .latest-headline{align-self:end;color:#000;font-size:clamp(3.5rem,9vw,6.5rem);font-weight:500;grid-column:1/4;letter-spacing:-.05em;line-height:.95;margin:0;max-width:100%;padding-bottom:.28em;width:-moz-max-content;width:max-content}.latest-projects .latest-project{border:none;position:relative}.latest-projects .latest-project:after{background-image:repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:100% 1px,100% 1px,1px 100%,1px 100%;content:"";inset:0;pointer-events:none;position:absolute}.latest-projects .latest-project{color:inherit;display:flex;flex-direction:column;height:auto;min-width:0;padding:24px;text-decoration:none}.latest-projects .latest-project--1{grid-column:5/11;grid-row:1/5}.latest-projects .latest-project--2{grid-column:1/5;grid-row:3/7}.latest-projects .latest-project--3{grid-column:5/10;grid-row:5/9}.latest-projects .latest-project__media{aspect-ratio:16/9;border-radius:8px;flex:0 0 auto;overflow:hidden;position:relative;width:100%}.latest-projects .latest-project__image{height:100%;inset:0;max-width:none;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.latest-projects .latest-project__meta{align-items:baseline;display:flex;gap:1rem;justify-content:space-between;margin-top:1rem}.latest-projects .latest-project__title{color:#000;font-size:24px;font-weight:400;line-height:1.3;margin:0}.latest-projects .latest-project__date{color:#474747;flex-shrink:0;font-size:18px;font-weight:500;letter-spacing:.04em}.latest-projects .latest-project--coming-soon{cursor:default}.latest-projects .latest-project--video{background:transparent;border:none;cursor:pointer;font:inherit;text-align:left;width:100%}.latest-projects .latest-project:focus-visible{outline:2px solid #000;outline-offset:3px}.latest-projects .latest-cta{border:none}.latest-projects .latest-cta:after{background-image:repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(90deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#363636,#363636 10px,transparent 0,transparent 18px);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:100% 1px,100% 1px,1px 100%,1px 100%;content:"";inset:0;pointer-events:none;position:absolute}.latest-projects .latest-cta{align-self:start;grid-column:10/12;grid-row:5;justify-self:start;padding:12px;position:relative;width:-moz-fit-content;width:fit-content;z-index:8}.latest-projects .latest-cta__button{background-color:#f8f8f8;color:#000;display:inline-block;font-size:14px;font-weight:400;letter-spacing:1.25px;padding:.6rem 1.15rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .25s ease;width:-moz-fit-content;width:fit-content}.latest-projects .latest-cta__button:hover{background-color:color-mix(in srgb,#f8f8f8 80%,#000 8%)}.latest-projects .latest-cta__button:focus-visible{outline:2px solid #000;outline-offset:3px}.latest-projects .latest-cta__text{display:block}@media only screen and (max-width:959px){.latest-projects .latest-grid{gap:1.5rem;grid-auto-rows:auto;grid-template-columns:1fr}.latest-projects .latest-intro{gap:1rem;grid-template-columns:1fr;margin-bottom:1.5rem}.latest-projects .latest-headline{font-size:clamp(3.5rem,9vw,6.5rem);grid-column:1/-1;width:-moz-min-content;width:min-content}.latest-projects .latest-project{grid-column:1/-1;grid-row:auto;left:auto;padding:16px;position:relative;top:auto;transform:none;width:auto}.latest-projects .latest-cta{grid-column:1/-1;grid-row:auto;justify-self:start;width:-moz-max-content;width:max-content}}@media only screen and (max-width:959px)and (min-width:600px){.latest-projects .latest-grid{gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr))}.latest-projects .latest-intro{gap:1.25rem;grid-template-columns:1fr;margin-bottom:2rem}.latest-projects .latest-headline{font-size:clamp(3.5rem,9vw,6.5rem);grid-column:1/-1;width:-moz-min-content;width:min-content}.latest-projects .latest-project{grid-column:auto;padding:20px}.latest-projects .latest-cta{align-self:end;grid-column:auto;justify-self:end;width:-moz-max-content;width:max-content}}.video-banner-container{flex:1 0 auto;height:100%;margin-bottom:7.5rem;z-index:2}.video-banner-container,.video-banner-container .container-pin{position:relative;width:100%}.video-banner-container .layout-container{height:100%;padding:0}.panel{align-items:flex-start;box-sizing:border-box;color:#fff;display:flex;font-size:1.5em;font-weight:600;height:100vh;justify-content:flex-start;padding:4rem 1rem 2rem;position:relative;width:100%}.panel .panel-icon{display:none;position:absolute;right:2rem;top:2rem;z-index:4}@media only screen and (min-width:600px){.panel .panel-icon{display:block}}.panel .panel-icon .icon{color:#fff;font-size:2rem;opacity:.8;transition:opacity .3s ease}.panel .panel-icon .icon:hover{opacity:1}.panel .image-banner{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.panel .image-banner .banner-image,.panel .image-banner .banner-video{display:block;height:100%;left:0;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;position:absolute;top:0;width:100%}.panel .image-banner .banner-video{pointer-events:none}.panel .image-banner .overlay{background:linear-gradient(135deg,#0000004d,#0009);height:100%;left:0;position:absolute;top:0;width:100%;z-index:2}.panel .content{display:flex;flex-direction:column;height:100%;justify-content:flex-start;max-width:800px;padding:2rem 0;position:relative;text-align:left;z-index:3}.panel .content .title{color:#fff;font-size:3rem;font-weight:500;line-height:1.1;margin-bottom:1.5rem;overflow:hidden}@media only screen and (min-width:600px){.panel .content .title{font-size:4.5rem}}@media only screen and (min-width:960px){.panel .content .title{font-size:5.5rem}}.panel .content .title .split-line{display:block}.panel .content .subtitle{color:#fff;font-size:.9rem;font-weight:400;line-height:1.6;margin-bottom:2.5rem;opacity:.95}@media only screen and (min-width:600px){.panel .content .subtitle{font-size:1.5rem}}@media only screen and (min-width:960px){.panel .content .subtitle{font-size:1.25rem}}.panel .content .reveal-text{background-color:#fff;color:#000;font-size:1rem}.panel .content .video-banner-cta{border:none;position:relative}.panel .content .video-banner-cta:after{background-image:repeating-linear-gradient(90deg,#fff,#fff 10px,transparent 0,transparent 18px),repeating-linear-gradient(90deg,#fff,#fff 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#fff,#fff 10px,transparent 0,transparent 18px),repeating-linear-gradient(180deg,#fff,#fff 10px,transparent 0,transparent 18px);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:100% 1px,100% 1px,1px 100%,1px 100%;content:"";inset:0;pointer-events:none;position:absolute}.panel .content .video-banner-cta{margin-top:0;padding:12px;width:-moz-fit-content;width:fit-content}.panel .content .video-banner-cta__button{background-color:#f8f8f8;color:#000;display:inline-block;font-size:14px;font-weight:400;letter-spacing:1.25px;padding:.6rem 1.15rem;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .25s ease;width:-moz-fit-content;width:fit-content}.panel .content .video-banner-cta__button:hover{background-color:color-mix(in srgb,#f8f8f8 80%,#000 8%)}.panel .content .video-banner-cta__button:focus-visible{outline:2px solid #fff;outline-offset:3px}.panel .content .video-banner-cta__text{display:block}.panel--prompt .overlay{background:linear-gradient(180deg,#00081847,#00081814 42%,#0008184d)}.panel--prompt .title{color:#fff;font-size:clamp(2rem,6.5vw,4.6rem);font-weight:500;letter-spacing:-.03em;line-height:1.12;margin:0;white-space:normal}@media only screen and (min-width:600px){.panel--prompt .title{white-space:nowrap}}.panel--prompt .prompt-lead{color:#fff;font-size:.95rem;font-weight:400;line-height:1.45;margin:.9rem 0 1.75rem;max-width:34rem;opacity:.92}@media only screen and (min-width:600px){.panel--prompt .prompt-lead{font-size:1.15rem}}.prompt{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;padding:0 1.25rem 14vh;pointer-events:none;position:absolute;text-align:center;z-index:3}.prompt-bubble{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#161a2075;border:1px solid hsla(0,0%,100%,.16);border-radius:999px;box-shadow:0 10px 28px #0000002e;color:#fff;display:inline-flex;font-size:.9rem;font-weight:400;gap:1rem;line-height:1;margin-top:0;max-width:calc(100vw - 2rem);padding:.85rem .9rem .85rem 1.5rem;position:relative}@media only screen and (min-width:600px){.prompt-bubble{font-size:1.1rem;padding:1rem 1.05rem 1rem 1.75rem}}.prompt-bubble__slot{display:grid;min-width:0;position:relative}.prompt-bubble__sizer{display:grid;visibility:hidden;white-space:nowrap}.prompt-bubble__sizer span{grid-area:1/1}.prompt-bubble__text{align-items:center;display:flex;height:100%;left:0;max-width:100%;overflow:hidden;position:absolute;text-align:left;top:0;white-space:nowrap;width:-moz-max-content;width:max-content}.prompt-bubble__text:after{animation:prompt-caret 1s steps(1) infinite;background:currentColor;content:"";display:inline-block;height:.95em;margin-left:1px;vertical-align:-.12em;width:1px}.prompt-bubble__text.is-static:after{content:none}.prompt-bubble__live{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.prompt-bubble__send{background:#ffffff24;border-radius:50%;display:grid;flex:0 0 auto;height:2.1rem;place-items:center;width:2.1rem}.prompt-bubble__icon{height:1.05rem;width:1.05rem}@keyframes prompt-caret{0%,45%{opacity:1}46%,to{opacity:0}}
