.product-showcase-module__eqnuCq__showcase{min-width:0}.product-showcase-module__eqnuCq__stage{isolation:isolate;aspect-ratio:4/3;border-radius:var(--r-lg);background:var(--red);position:relative;overflow:hidden}.product-showcase-module__eqnuCq__slide{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--t) var(--ease), transform var(--t-slow) var(--ease), visibility 0s var(--t-slow);position:absolute;inset:0;transform:translate(18%)}.product-showcase-module__eqnuCq__slide[data-state=previous]{transform:translate(-18%)}.product-showcase-module__eqnuCq__slide[data-state=active]{z-index:1;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.product-showcase-module__eqnuCq__caseLink{border-radius:inherit;display:block;position:absolute;inset:0}.product-showcase-module__eqnuCq__caseLink:focus-visible{outline-offset:-6px;border-radius:var(--r-lg);outline:2px solid #111}.product-showcase-module__eqnuCq__tag{z-index:2;color:#111;min-height:44px;transition:background var(--t) var(--ease), color var(--t) var(--ease);background:#fffffff2;border-radius:999px;align-items:center;gap:10px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;top:18px;left:18px}.product-showcase-module__eqnuCq__tag svg{width:14px;height:14px;transition:transform var(--t) var(--ease)}.product-showcase-module__eqnuCq__caseLink:hover .product-showcase-module__eqnuCq__tag{color:#fff;background:#111}.product-showcase-module__eqnuCq__caseLink:hover .product-showcase-module__eqnuCq__tag svg{transform:translate(3px)}.product-showcase-module__eqnuCq__phone{object-fit:contain;filter:drop-shadow(0 24px 40px #00000047);width:auto;max-width:none;height:120%;position:absolute;top:max(52px,16%);left:50%;transform:translate(-50%)rotate(-3deg)}.product-showcase-module__eqnuCq__controls{align-items:center;gap:8px;margin-top:12px;display:flex}.product-showcase-module__eqnuCq__products{flex:1;gap:2px;min-width:0;display:flex}.product-showcase-module__eqnuCq__product,.product-showcase-module__eqnuCq__playback{min-height:44px;color:var(--ink-2);cursor:pointer;transition:background var(--t) var(--ease), color var(--t) var(--ease);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.product-showcase-module__eqnuCq__product{white-space:nowrap;flex:1 0 auto;min-width:44px;padding:0 8px;font-size:13px;font-weight:600}.product-showcase-module__eqnuCq__product[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}.product-showcase-module__eqnuCq__product:not([aria-pressed=true]):hover,.product-showcase-module__eqnuCq__playback:hover:not(:disabled){background:var(--bg-2);color:var(--ink)}.product-showcase-module__eqnuCq__playback{background:var(--bg-2);width:44px;color:var(--ink);flex:0 0 44px}.product-showcase-module__eqnuCq__playback svg{width:16px;height:16px}.product-showcase-module__eqnuCq__playback:disabled{color:var(--muted);cursor:default}@media (min-width:768px){.product-showcase-module__eqnuCq__stage{aspect-ratio:5/4}}@media (max-width:359px){.product-showcase-module__eqnuCq__controls{gap:4px}.product-showcase-module__eqnuCq__products{gap:0}.product-showcase-module__eqnuCq__product{padding-inline:0}}@media (prefers-reduced-motion:reduce){.product-showcase-module__eqnuCq__slide,.product-showcase-module__eqnuCq__tag,.product-showcase-module__eqnuCq__tag svg,.product-showcase-module__eqnuCq__product,.product-showcase-module__eqnuCq__playback{transition:none}}
.featured-project-module__Wf6szW__feature{border-radius:var(--r-lg);background:var(--bg-2);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch;margin-top:32px;display:grid;overflow:hidden}.featured-project-module__Wf6szW__copy{align-self:center;padding:clamp(26px,4vw,48px)}.featured-project-module__Wf6szW__copy p{max-width:40ch;color:var(--ink-2);margin-top:18px;font-size:17px;line-height:1.5}.featured-project-module__Wf6szW__artwork{align-items:center;min-width:0;padding:clamp(12px,2vw,24px);display:flex}.featured-project-module__Wf6szW__artwork img{width:100%;height:auto;display:block}.featured-project-module__Wf6szW__cta{align-items:center;gap:10px;margin-top:30px;font-size:15px;font-weight:600;display:inline-flex}.featured-project-module__Wf6szW__cta svg{width:18px;height:18px;transition:transform var(--t) var(--ease)}.featured-project-module__Wf6szW__feature:hover .featured-project-module__Wf6szW__cta svg{transform:translate(4px)}@media (max-width:639px){.featured-project-module__Wf6szW__feature{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.featured-project-module__Wf6szW__cta svg{transition:none}}
.portfolio-motion-module__NoEEjq__surface [data-preview] .shelf img{transform-origin:bottom}.portfolio-motion-module__NoEEjq__surface .ptile-link .go{position:relative}.portfolio-motion-module__NoEEjq__surface .ptile-link .go:after{content:"";transform-origin:100%;height:1px;transition:transform var(--t) var(--ease);background:currentColor;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.portfolio-motion-module__NoEEjq__surface .ptile-link:focus-visible .go:after{transform-origin:0;transform:scaleX(1)}@media (prefers-reduced-motion:no-preference){.portfolio-motion-module__NoEEjq__surface [data-preview] .shelf img{translate:0 var(--scroll-y,0px);scale:var(--scroll-scale,1);rotate:var(--scroll-turn,0deg)}.portfolio-motion-module__NoEEjq__surface .ptile-link:focus-visible .shelf{translate:0 -3%;scale:1.02}.portfolio-motion-module__NoEEjq__surface .ptile-link:focus-visible .go svg{translate:4px}@media (hover:hover) and (pointer:fine){.portfolio-motion-module__NoEEjq__surface [data-preview] .shelf{transform:translate3d(var(--preview-x,0px), var(--preview-y,0px), 0) rotate(var(--preview-turn,0deg));transition:transform var(--t-slow) var(--ease), translate var(--t-slow) var(--ease), scale var(--t-slow) var(--ease)}:is(.portfolio-motion-module__NoEEjq__surface .ptile-hero:hover .shelf,.portfolio-motion-module__NoEEjq__surface .screen-tile:hover .shelf){translate:0 -3%;scale:1.02}}}@media (hover:hover) and (pointer:fine){.portfolio-motion-module__NoEEjq__surface .ptile-link:hover .go:after{transform-origin:0;transform:scaleX(1)}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.portfolio-motion-module__NoEEjq__surface .ptile-link:hover .shelf{translate:none;scale:none}.portfolio-motion-module__NoEEjq__surface .ptile-link:hover .go svg{translate:none;scale:none}}@media (prefers-reduced-motion:reduce){.portfolio-motion-module__NoEEjq__surface .ptile-link .go:after{transition:none}}
.case-study-module__z0qckG__topline{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.case-study-module__z0qckG__hero{aspect-ratio:auto;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:560px;display:grid;overflow:clip}.case-study-module__z0qckG__heroCopy{z-index:1;flex-direction:column;align-items:flex-start;padding:clamp(28px,4vw,56px);display:flex;position:relative}.case-study-module__z0qckG__heroCopy h1{overflow-wrap:anywhere;max-width:12ch}.case-study-module__z0qckG__heroDescription{max-width:36ch;margin-top:22px;font-size:17px;line-height:1.5}.case-study-module__z0qckG__heroButton{overflow-wrap:anywhere;background:var(--case-ink);max-width:100%;color:var(--case-color);margin-top:28px}.case-study-module__z0qckG__heroButton:hover{background:var(--bg);color:var(--ink)}.case-study-module__z0qckG__category{margin-top:auto;padding-top:36px;font-size:14px;font-weight:500}.case-study-module__z0qckG__heroArtwork{min-width:0;position:relative}.case-study-module__z0qckG__heroArtwork .shelf{inset:-8% -16% -20% -14%}.case-study-module__z0qckG__hero[data-portrait=true] .case-study-module__z0qckG__heroArtwork .shelf{inset:8% 0 -28%;rotate:-8deg}.case-study-module__z0qckG__hero[data-no-art=true]{grid-template-columns:1fr;min-height:0}.case-study-module__z0qckG__hero[data-no-art=true] h1{max-width:18ch}.case-study-module__z0qckG__hero[data-no-art=true] .case-study-module__z0qckG__heroDescription{max-width:60ch}.case-study-module__z0qckG__facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:34px 6px 0;display:grid}.case-study-module__z0qckG__facts dt{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:600}.case-study-module__z0qckG__facts dd{overflow-wrap:anywhere;font-size:15px}.case-study-module__z0qckG__story{grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);align-items:start;gap:clamp(28px,5vw,72px);display:grid}.case-study-module__z0qckG__story>h2{max-width:18ch}.case-study-module__z0qckG__storyText{max-width:70ch;color:var(--ink-2);white-space:pre-line}.case-study-module__z0qckG__stack{margin-top:28px}.case-study-module__z0qckG__stack h3{color:var(--muted);font-size:13px}.case-study-module__z0qckG__stack ul{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.case-study-module__z0qckG__stack li{border-radius:var(--r-lg);background:var(--bg-2);color:var(--ink-2);overflow-wrap:anywhere;padding:8px 16px;font-size:14px}.case-study-module__z0qckG__build{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px);display:grid}.case-study-module__z0qckG__build[data-no-art=true]{grid-template-columns:1fr}.case-study-module__z0qckG__featureStage{border-radius:var(--r-lg);min-height:460px;position:relative;overflow:clip}.case-study-module__z0qckG__featureStage .shelf{inset:4% -12% -18%}.case-study-module__z0qckG__buildCopy{padding:16px 0}.case-study-module__z0qckG__featureList{color:var(--ink-2);gap:22px;margin-top:28px;display:grid}.case-study-module__z0qckG__featureList li{grid-template-columns:20px minmax(0,1fr);gap:14px;display:grid}.case-study-module__z0qckG__featureList svg{width:18px;height:18px;color:var(--ink);margin-top:4px}.case-study-module__z0qckG__challengeGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(28px,5vw,72px);margin-top:28px;display:grid}.case-study-module__z0qckG__challenge{padding:clamp(22px,3vw,34px) 0}.case-study-module__z0qckG__results{gap:28px;display:grid}.case-study-module__z0qckG__results li{grid-template-columns:24px minmax(0,1fr);gap:16px;font-size:20px;line-height:1.4;display:grid}.case-study-module__z0qckG__results svg{width:22px;height:22px;margin-top:3px}.case-study-module__z0qckG__screens{scroll-margin-top:90px}.case-study-module__z0qckG__galleryHeading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;margin-bottom:28px;display:flex}.case-study-module__z0qckG__galleryHeading p{color:var(--ink-2);font-size:15px}.case-study-module__z0qckG__galleryRail{overscroll-behavior-x:contain;scroll-snap-type:x proximity;border-radius:var(--r-lg);scrollbar-width:thin;scrollbar-color:currentColor transparent;grid-auto-columns:minmax(230px,1fr);grid-auto-flow:column;gap:12px;padding:34px 22px;display:grid;overflow-x:auto}.case-study-module__z0qckG__galleryItem{scroll-snap-align:center;min-width:0;padding-bottom:36px}.case-study-module__z0qckG__galleryItem:nth-child(2n){padding-top:36px;padding-bottom:0}.case-study-module__z0qckG__galleryScreen{border-radius:var(--r);height:360px;display:block;position:relative}.case-study-module__z0qckG__galleryScreen .shelf{inset:0 -18%}.case-study-module__z0qckG__expand{z-index:1;background:var(--bg);width:44px;height:44px;color:var(--ink);transition:background var(--t) var(--ease), color var(--t) var(--ease);border-radius:999px;place-items:center;display:grid;position:absolute;top:0;right:0}.case-study-module__z0qckG__expand svg{width:16px;height:16px}.case-study-module__z0qckG__galleryScreen:hover .case-study-module__z0qckG__expand,.case-study-module__z0qckG__galleryScreen:focus-visible .case-study-module__z0qckG__expand{background:var(--ink);color:var(--on-ink)}.case-study-module__z0qckG__nextProject{border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:340px;display:grid;overflow:clip}.case-study-module__z0qckG__nextCopy{padding:clamp(28px,4vw,48px)}.case-study-module__z0qckG__nextCopy h2{max-width:18ch}.case-study-module__z0qckG__nextCopy p{max-width:44ch;margin-top:16px;font-size:15px}.case-study-module__z0qckG__nextCopy .go{align-items:center;gap:10px;margin-top:28px;font-size:15px;font-weight:600;display:inline-flex}.case-study-module__z0qckG__nextCopy .go svg{width:16px;height:16px}.case-study-module__z0qckG__nextArtwork{position:relative}.case-study-module__z0qckG__nextArtwork .shelf{inset:-8% -12% -30%}.case-study-module__z0qckG__nextProject[data-no-art=true]{grid-template-columns:1fr;min-height:0}.case-study-module__z0qckG__viewer{border-radius:var(--r-lg);background:var(--bg);width:calc(100% - 32px);max-width:1200px;height:calc(100dvh - 32px);max-height:none;color:var(--ink);border:0;margin:auto;padding:24px;position:fixed;inset:16px}.case-study-module__z0qckG__viewer[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:16px;display:grid}.case-study-module__z0qckG__viewer::backdrop{background:var(--bg);opacity:.9}.case-study-module__z0qckG__viewerHeader{justify-content:space-between;align-items:center;gap:16px;display:flex}.case-study-module__z0qckG__viewerImage{min-height:0;position:relative}.case-study-module__z0qckG__viewerImage img{object-fit:contain}.case-study-module__z0qckG__viewerControls{justify-content:center;align-items:center;gap:22px;display:flex}.case-study-module__z0qckG__viewerControls p{text-align:center;font-variant-numeric:tabular-nums;min-width:5ch;font-size:14px}.case-study-module__z0qckG__iconButton{flex:none;width:48px;padding:0}@media (min-width:1024px){.case-study-module__z0qckG__story>h2{position:sticky;top:110px}}@media (max-width:1023px){.case-study-module__z0qckG__hero{min-height:500px}.case-study-module__z0qckG__heroCopy{padding:28px}.case-study-module__z0qckG__heroArtwork .shelf{inset:2% -22% -14% -24%}.case-study-module__z0qckG__galleryRail{grid-auto-columns:260px}}@media (max-width:767px){.case-study-module__z0qckG__hero,.case-study-module__z0qckG__story,.case-study-module__z0qckG__build,.case-study-module__z0qckG__challengeGrid,.case-study-module__z0qckG__nextProject{grid-template-columns:minmax(0,1fr)}.case-study-module__z0qckG__topline{gap:8px}.case-study-module__z0qckG__topline a{font-size:13px}.case-study-module__z0qckG__hero{min-height:0}.case-study-module__z0qckG__heroCopy{padding:28px 26px 0}.case-study-module__z0qckG__heroCopy h1{max-width:14ch}.case-study-module__z0qckG__heroDescription{margin-top:16px}.case-study-module__z0qckG__heroButton{margin-top:22px}.case-study-module__z0qckG__category{padding-top:22px}.case-study-module__z0qckG__heroArtwork{height:320px}.case-study-module__z0qckG__heroArtwork .shelf{inset:-6% -8% -24%}.case-study-module__z0qckG__hero[data-portrait=true] .case-study-module__z0qckG__heroArtwork .shelf{top:-10%;bottom:-55%}.case-study-module__z0qckG__hero[data-no-art=true] .case-study-module__z0qckG__heroCopy{padding-bottom:28px}.case-study-module__z0qckG__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:28px}.case-study-module__z0qckG__featureStage{min-height:380px}.case-study-module__z0qckG__buildCopy,.case-study-module__z0qckG__challenge{padding:0}.case-study-module__z0qckG__galleryRail{grid-auto-columns:min(72vw,280px);gap:16px;padding:28px 20px}.case-study-module__z0qckG__galleryScreen{height:340px}.case-study-module__z0qckG__nextArtwork{height:260px}.case-study-module__z0qckG__nextArtwork .shelf{top:-15%;bottom:-35%}.case-study-module__z0qckG__viewer{width:calc(100% - 16px);height:calc(100dvh - 16px);padding:16px;inset:8px}}@media (prefers-reduced-motion:reduce){.case-study-module__z0qckG__expand{transition:none}}.case-study-module__z0qckG__hero[data-landscape=true]{grid-template-columns:minmax(0,1fr);min-height:0}.case-study-module__z0qckG__hero[data-landscape=true] .case-study-module__z0qckG__heroDescription{max-width:66ch}.case-study-module__z0qckG__hero[data-landscape=true] .case-study-module__z0qckG__category{padding-top:22px}.case-study-module__z0qckG__hero[data-landscape=true] .case-study-module__z0qckG__heroArtwork{aspect-ratio:16/9;height:auto}.case-study-module__z0qckG__hero[data-landscape=true] .case-study-module__z0qckG__heroArtwork .shelf{inset:0 2% 3%}.case-study-module__z0qckG__featureStage[data-landscape=true]{aspect-ratio:16/10;min-height:0}.case-study-module__z0qckG__featureStage[data-landscape=true] .shelf{inset:4%}.case-study-module__z0qckG__galleryRail[data-landscape=true]{grid-auto-columns:min(80vw,640px)}.case-study-module__z0qckG__galleryRail[data-landscape=true] .case-study-module__z0qckG__galleryItem{padding:0}.case-study-module__z0qckG__galleryRail[data-landscape=true] .case-study-module__z0qckG__galleryScreen{aspect-ratio:16/9;height:auto}.case-study-module__z0qckG__galleryRail[data-landscape=true] .shelf{inset:0}
.contact-module__3bDp3a__contact{margin-top:clamp(72px,8vw,120px);scroll-margin-top:104px;position:relative}.contact-module__3bDp3a__layout{align-items:start;gap:clamp(28px,4vw,48px);scroll-margin-top:104px;display:grid}.contact-module__3bDp3a__intro{min-width:0}.contact-module__3bDp3a__heading{letter-spacing:-.02em;max-width:18ch;font-size:clamp(30px,3.2vw,44px);line-height:1.1}.contact-module__3bDp3a__description{max-width:40ch;color:var(--ink-2);margin-top:18px}.contact-module__3bDp3a__duration{color:var(--ink-2);align-items:center;gap:8px;margin-top:22px;font-size:14px;display:flex}.contact-module__3bDp3a__duration svg{flex:none;width:16px;height:16px}.contact-module__3bDp3a__message{border-radius:var(--r);margin-top:28px}.contact-module__3bDp3a__message summary{cursor:pointer;border-radius:var(--r);justify-content:space-between;align-items:center;gap:12px;min-height:52px;font-size:15px;font-weight:600;list-style:none;display:flex}.contact-module__3bDp3a__message summary::-webkit-details-marker{display:none}.contact-module__3bDp3a__message summary svg{flex:none;width:16px;height:16px}.contact-module__3bDp3a__message[open]{background:var(--ink);color:var(--on-ink)}.contact-module__3bDp3a__message[open] summary{padding:18px 22px}.contact-module__3bDp3a__message[open] summary svg{transform:rotate(180deg)}.contact-module__3bDp3a__message[open] :focus-visible{outline-color:var(--on-ink)}.contact-module__3bDp3a__messageBody{padding:0 22px 26px}.contact-module__3bDp3a__messageBody>p{color:var(--on-ink-2);margin-bottom:22px;font-size:15px}.contact-module__3bDp3a__email{min-height:44px;color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;align-items:center;font-size:15px;display:inline-flex}.contact-module__3bDp3a__email:hover{color:var(--ink);text-decoration-color:currentColor}.contact-module__3bDp3a__location{color:var(--muted);margin-top:6px;font-size:13px}.contact-module__3bDp3a__booking{min-width:0}.contact-module__3bDp3a__calendar{border-radius:var(--r-lg);background:var(--bg-2);height:900px;position:relative;overflow:hidden}.contact-module__3bDp3a__calendarFrame{visibility:hidden;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.contact-module__3bDp3a__calendarFrame[data-loaded=true]{visibility:visible}.contact-module__3bDp3a__placeholder{text-align:center;color:var(--ink-2);flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:22px;font-size:15px;display:flex;position:absolute;inset:0}.contact-module__3bDp3a__calendarLink{width:fit-content;min-height:44px;color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;align-items:center;gap:6px;margin-top:8px;font-size:14px;display:flex}.contact-module__3bDp3a__calendarLink:hover{color:var(--ink);text-decoration-color:currentColor}.contact-module__3bDp3a__calendarLink svg{flex:none;width:14px;height:14px}@media (min-width:1024px){.contact-module__3bDp3a__layout{grid-template-columns:minmax(0,.8fr) minmax(0,2fr)}.contact-module__3bDp3a__intro{padding-top:24px}.contact-module__3bDp3a__calendar{height:840px}}
