:root{--background:#fff;--foreground:#171717;--accent:#135eff;--font-size-base:clamp(16px,1vw + 14px,18px);--about-photo-1-top:2rem;--about-photo-1-left:2rem;--about-photo-2-top:12rem;--about-photo-2-left:13rem;--about-photo-size:250px;--about-photo-mobile-size:200px;--about-photo-mobile-1-top:1rem;--about-photo-mobile-1-left:1rem;--about-photo-mobile-2-top:8rem;--about-photo-mobile-2-left:6rem;--gradient-light:linear-gradient(135deg,#e5e5e5 0%,#fdfdfd 100%);--nav-bg:color-mix(in oklab,var(--background)95%,transparent);--nav-border:color-mix(in oklab,var(--foreground)10%,transparent);--nav-shadow:0 2px 8px color-mix(in oklab,var(--foreground)5%,transparent)}@media (prefers-color-scheme:dark){:root{--background:#fff;--foreground:#171717}}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);font-family:var(--font-poppins),"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;font-size:var(--font-size-base)}:where(a,button,input,textarea,select,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid color-mix(in oklab,var(--foreground)70%,transparent);outline-offset:3px;border-radius:.25rem}.skip-link{width:1px;height:1px;position:absolute;top:auto;left:-9999px;overflow:hidden}.skip-link:focus{background:var(--background);width:auto;height:auto;color:var(--foreground);border:1px solid color-mix(in oklab,var(--foreground)25%,transparent);box-shadow:0 2px 8px color-mix(in oklab,var(--foreground)15%,transparent);padding:.5rem .75rem;top:1rem;left:1rem}h2{text-align:center;letter-spacing:-.025em;margin:2rem auto;font-size:clamp(1.75rem,1rem + 2vw,3rem);font-weight:700;line-height:1.1;display:table;position:relative}h2:before{content:"";border-left:12px solid var(--accent);border-top:12px solid #0000;border-bottom:12px solid #0000;width:0;height:0;position:absolute;bottom:0;right:-1.25rem;transform:rotate(135deg)}.impact-section h2:before{opacity:.5;border-left:12px solid #fff}.impact-section{padding-top:4rem;padding-bottom:4rem}.impact-section h2{margin-top:0;margin-bottom:2rem}.impact-section>.mx-auto>:last-child{margin-bottom:0}#product-synopsis h2,#challenge h2,#solution h2,#impact h2,#learnings h2{text-align:center!important;margin-left:auto!important;margin-right:auto!important}.solution-with-sim{grid-template-columns:1fr;gap:1.5rem;display:grid}.solution-with-sim .solution-sim{order:0}.solution-with-sim .solution-body{order:1}@media (min-width:1280px){.solution-with-sim{grid-template-columns:1fr 1fr;align-items:start}.solution-with-sim .solution-sim{order:2}.solution-with-sim .solution-body{order:1}}.simulation-area{background:0 0}.device-frame{width:100%;display:inline-block;position:relative}.device-art{z-index:5;pointer-events:none;width:100%;height:auto;display:block;position:relative}.device-screen{z-index:15;background:#000;position:absolute;inset:0;overflow:hidden}.device-screen--iphone{border-radius:14px;inset:4.25% 7.25% 6.25%}.device-screen--imac{border-radius:0;inset:5.25% 3.75% 41%}@media (min-width:640px){.device-screen--iphone{border-radius:14px;inset:3.9% 6.9% 5.9%}.device-screen--imac{inset:5.1% 3.6% 41%}}@media (min-width:1024px){.device-screen--iphone{border-radius:14px;inset:3.5% 6.5% 5.5%}.device-screen--imac{inset:4.9% 3.5% 41%}}.device-slider-stack{width:100%;height:100%;position:relative;overflow:hidden}.device-slide{object-fit:cover;object-position:top;width:100%;height:100%;position:absolute;inset:0}.device-slide--mode-fade{opacity:0;transition:opacity .5s}.device-slide--mode-fade.device-slide--active{opacity:1}.device-slide--mode-slide{opacity:1;transition:transform .5s}.device-slider-stack--slide .device-slide{will-change:transform}h3{letter-spacing:-.025em;font-size:1.5rem;font-weight:600;line-height:1.2}.case-study-content p,.case-study-content li{max-width:72ch}.lead{color:var(--foreground);opacity:.9;font-size:clamp(1.125rem,.6vw + 1rem,1.375rem);line-height:1.7}@media (min-width:1024px){.lead{font-size:1.5rem}}ul{padding-left:0;list-style:none}ul li{margin-bottom:.75rem;padding-left:1.5rem;position:relative}ul li:before{content:"";border-left:8px solid var(--accent);border-top:6px solid #0000;border-bottom:6px solid #0000;width:0;height:0;position:absolute;top:.5rem;left:0}.persona-list{margin:0;padding-left:0;list-style:none}.persona-list li{margin:0;padding-left:0}.persona-list li:before{content:none;display:none}.persona-aside{border-top:1px solid color-mix(in oklab,var(--foreground)20%,transparent);margin-top:.5rem;padding-top:1rem}@media (min-width:1024px){.persona-aside{border-top:1px solid color-mix(in oklab,var(--foreground)20%,transparent);border-left:0;margin-top:.5rem;padding-top:1rem;padding-left:0}}.pill-badge{color:var(--accent);border:1px solid var(--accent);white-space:nowrap;border-radius:9999px;padding:.125rem .5rem;font-size:.625rem;font-weight:700;line-height:1;display:inline-block}.persona-title{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.text-greeting{color:color-mix(in oklab,var(--foreground)90%,transparent);font-size:1.125rem;font-weight:400;line-height:1.4}@media (min-width:640px){.text-greeting{font-size:1.75rem}}@media (max-width:640px){.text-greeting{margin-top:3rem;margin-bottom:0;font-size:1.75rem}}.text-name{color:var(--accent);letter-spacing:-.025em;font-size:2.5rem;font-weight:700;line-height:1.1}@media (min-width:640px){.text-name{font-size:3.75rem}}@media (max-width:640px){.text-name{font-size:3rem}}.text-name-inner{display:inline-block;position:relative}.text-name-inner:before{content:"";border-left:12px solid var(--accent);border-top:12px solid #0000;border-bottom:12px solid #0000;width:0;height:0;position:absolute;bottom:.25rem;right:-1.1rem;transform:rotate(135deg)}.btn-base,.btn-secondary,.btn-primary{white-space:nowrap;cursor:pointer;border-radius:2rem;justify-content:center;align-items:center;padding:.625rem .9rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{filter:brightness(.9)}.btn-secondary{border:1px solid color-mix(in oklab,var(--foreground)20%,transparent)}.btn-secondary:hover{background:color-mix(in oklab,var(--foreground)6%,transparent)}.card{border:1px solid color-mix(in oklab,var(--foreground)12%,transparent);background:color-mix(in oklab,var(--background)92%,white);border-radius:.75rem}.card .card-body{padding:1rem}.link{border-bottom:1px solid var(--accent);color:var(--accent);align-items:center;gap:.25rem;font-weight:700;transition:all .2s;display:inline-flex}.link:after{content:"→";transition:transform .2s}.link:hover{gap:.5rem}.link:hover:after{transform:translate(.25rem)}.journey-map{margin-top:.5rem}@media (min-width:768px){.journey-map__vertical{display:none}.journey-map__horizontal{display:block}.journey-map__horizontal-grid{grid-template-columns:repeat(var(--journey-steps,8),1fr);--journey-gap:1.5rem;--grid-pad-top:.5rem;--title-min:2.25rem;--title-gap:.75rem;--dot-radius:7px;gap:1.5rem;margin:0;padding:.5rem 0 0;display:grid;position:relative}.journey-map__h-line{top:calc(var(--grid-pad-top) + var(--title-min) + var(--title-gap) + var(--dot-radius));left:calc((100% - (var(--journey-steps,8) - 1)*var(--journey-gap))/var(--journey-steps,8)/2);right:calc((100% - (var(--journey-steps,8) - 1)*var(--journey-gap))/var(--journey-steps,8)/2);border-top:2px dotted color-mix(in oklab,var(--foreground)40%,transparent);z-index:0;height:0;display:block;position:absolute}.journey-map__h-item{text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.journey-map__h-item:before{display:none}.journey-map__h-title{color:var(--foreground);min-height:2.25rem;margin-bottom:.75rem;font-size:.95rem;font-weight:600}.journey-map__dot{background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in oklab,var(--accent)25%,transparent);z-index:1;border-radius:50%;margin:0 auto}.journey-map__h-desc{color:color-mix(in oklab,var(--foreground)75%,transparent);min-height:2.25rem;margin-top:.75rem;font-size:.85rem;line-height:1.4}}@media (min-width:1024px){.journey-map__h-line{transform:translateY(-3px)}}@media (min-width:1172px){.journey-map__horizontal-grid{--grid-pad-top:.5rem;--title-min:2.25rem;--title-gap:.75rem;--dot-radius:7px;position:relative}.journey-map__h-line{top:calc(var(--grid-pad-top) + var(--title-min) + var(--title-gap) + var(--dot-radius));left:calc((100% - (var(--journey-steps,8) - 1)*var(--journey-gap,1.5rem))/var(--journey-steps,8)/2);right:calc((100% - (var(--journey-steps,8) - 1)*var(--journey-gap,1.5rem))/var(--journey-steps,8)/2);border-top:2px dotted color-mix(in oklab,var(--foreground)40%,transparent);z-index:0;height:0;display:block;position:absolute;transform:translateY(0)}.journey-map__h-item:before{display:none}}@media (max-width:767px){.journey-map__horizontal{display:none}.journey-map__vertical{display:block}.journey-map__v-list{margin:0;padding-left:1.75rem;position:relative}.journey-map__v-item{padding-bottom:1rem;position:relative}.journey-map__v-item:after{content:"";border-left:2px dotted color-mix(in oklab,var(--foreground)40%,transparent);width:0;position:absolute;top:calc(.2rem + 7px);bottom:-.25rem;left:calc(7px - 1.75rem)}.journey-map__v-item:last-child:after{display:none}.journey-map__v-dot{background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in oklab,var(--accent)25%,transparent);border-radius:50%;position:absolute;top:.2rem;left:-1.75rem}.journey-map__v-content{display:block}.journey-map__v-title{margin-bottom:.25rem;font-size:1rem;font-weight:600;line-height:1.2}.journey-map__v-desc{color:color-mix(in oklab,var(--foreground)75%,transparent);font-size:.85rem;line-height:1.3}}.main-header{z-index:50;width:100%;transition:all .3s ease-in-out;position:relative}@media (max-width:767px){.main-header{display:none}}.lazy-nav{opacity:0;will-change:opacity,transform;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(-20px)}.lazy-nav--pending{opacity:0;transform:translateY(-20px)}.lazy-nav--loaded{opacity:1;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(0)}.main-header.blended{background:0 0;border-bottom:none;position:absolute;top:0;left:0}.main-header.blended .mx-auto{padding:2rem 1rem}.main-header.blended.lazy-nav--pending,.main-header.blended.lazy-nav--loaded{transition:opacity .6s ease-out,transform .6s ease-out!important}.header-fixed,.main-header.sliding-out,.main-header.fixed{background:var(--nav-bg);border-bottom:1px solid var(--nav-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--nav-shadow);position:fixed;top:0;left:0}.main-header.fixed{animation:.5s ease-out both slide-in-from-top}.main-header.sliding-out{animation:.4s ease-in both slide-out-to-top}.main-header .logo{letter-spacing:-.025em;font-weight:600;text-decoration:none;transition:all .3s ease-in-out}.main-header .logo:hover{text-decoration:underline}.main-header .logo img{width:64px;height:64px}.main-header.fixed .logo img,.main-header.sliding-out .logo img{width:48px;height:48px}.main-nav{display:none}@media (min-width:768px){.main-nav{align-self:center;height:fit-content;display:block}}.main-nav ul{align-items:center;gap:1.5rem;height:100%;margin:0;padding:0;display:flex}.main-nav ul li{margin:0;padding:0;list-style:none}.main-nav ul li:before{content:none!important;display:none!important}.main-nav a{vertical-align:middle;line-height:1.5}.nav-link,.mobile-nav a,.main-nav a{color:var(--foreground);padding-bottom:2px;font-weight:600;text-decoration:none;transition:color .2s;position:relative}.nav-link:after,.mobile-nav a:after,.main-nav a:after{content:"";background-color:var(--accent);width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-link:hover,.mobile-nav a:hover,.main-nav a:hover,.nav-link:focus-visible,.mobile-nav a:focus-visible,.main-nav a:focus-visible{color:var(--accent)}.nav-link:hover:after,.mobile-nav a:hover:after,.main-nav a:hover:after,.nav-link:focus-visible:after,.mobile-nav a:focus-visible:after,.main-nav a:focus-visible:after{width:100%}.nav-link.active,.mobile-nav a.active,.main-nav a.active{color:var(--accent)}.nav-link.active:after,.mobile-nav a.active:after,.main-nav a.active:after{width:100%}.mobile-nav{z-index:50;background:var(--nav-bg);border-top:1px solid var(--nav-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 2px 4px color-mix(in oklab,var(--foreground)10%,transparent);position:fixed;bottom:0;left:0;right:0}@media (min-width:768px){.mobile-nav{display:none}}.mobile-nav.lazy-nav--pending{transform:translateY(20px)}.mobile-nav.lazy-nav--loaded{transform:translateY(0)}.mobile-nav .mobile-nav-container{justify-content:center;align-items:center;width:100%;max-width:90rem;height:100%;margin:0 auto;padding:.75rem 1rem;display:flex}.mobile-nav ul{justify-content:space-around;align-items:center;width:100%;margin:0;padding:0;display:flex}.mobile-nav ul li{justify-content:center;align-items:center;margin:0;padding:0;list-style:none;display:flex}.mobile-nav ul li:before{content:none!important;display:none!important}.mobile-nav a{-webkit-tap-highlight-color:#0000;-webkit-touch-callout:none;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;font-size:.875rem;display:flex}.mobile-nav a:not(.active){color:var(--foreground)}.mobile-nav a:not(.active):after{width:0}.mobile-nav a.active{color:var(--accent)}.mobile-nav a.active:after{width:100%}.mobile-logo{display:none}@media (max-width:767px){.mobile-logo{letter-spacing:-.025em;padding:1rem;font-weight:600;display:block}.mobile-logo img{width:48px;height:48px}}@media (min-width:768px){.main-content{padding-bottom:0}}.brands-list{grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem auto;padding:0;list-style:none;display:grid}@media (min-width:768px){.brands-list{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.brands-list li{text-align:center;justify-content:center;align-items:center;margin:0;padding:.75rem 0;display:flex}.brands-list li:before{content:none;display:none}@media (min-width:768px){.brands-list li:nth-last-child(2){grid-column:2}.brands-list li:last-child{grid-column:3}}.brands-list li img{object-fit:contain;width:100%;max-width:150px;height:auto;max-height:45px}.brands-list li:nth-child(4) img,.brands-list li:nth-child(5) img,.brands-list li:nth-child(6) img{max-height:35px}@supports ((-webkit-backdrop-filter:blur(8px)) or (backdrop-filter:blur(8px))){.header-fixed,.main-header.fixed,.main-header.sliding-out,.mobile-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.section-gradient,#journey,#about,#hero{background:var(--gradient-light);position:relative;overflow:hidden}#hero{padding-top:4rem}#hero.hero-loading{opacity:0}#hero.hero-loaded{opacity:1;transition:opacity .6s ease-out}.hero-text-container{width:56.25%}.hero-image-container{width:43.75%}@media (min-width:768px) and (max-width:1023px),(min-width:1024px) and (max-width:1366px) and (orientation:portrait){#hero{height:auto;min-height:50vh;margin-bottom:1rem}}@media (min-width:1024px) and (max-width:1366px) and (orientation:landscape),(min-width:1367px){#hero{height:95vh;max-height:860px;margin-bottom:5vh}}#hero img{object-fit:cover;object-position:center;max-width:100%}@media (min-width:768px){#hero .flex>div:last-child{align-items:flex-end;display:flex}#hero img{margin-top:5rem}}@media (min-width:1024px){#hero img{margin-top:0}}@media (min-width:768px) and (max-width:1023px){.text-greeting{margin-top:2rem}}@media (min-width:768px) and (max-width:1023px) and (orientation:portrait){#hero{height:auto;min-height:50vh;margin-bottom:1rem;padding-bottom:0;position:relative;overflow:visible hidden}#hero.pb-16{padding-bottom:0}#hero .mx-auto.max-w-5xl>.flex{align-items:center}#hero .hero-image-container{align-self:stretch;align-items:flex-end;margin:0 0 -1px;padding:0;display:flex;position:relative}#hero .hero-image-container>div{flex:1;align-items:flex-end;min-height:100%;margin:0;padding:0;display:flex;position:relative}#hero .hero-image-container img{align-self:flex-end;width:100%;height:auto;margin-top:1.5rem;margin-bottom:0;padding:0;display:block}}@media (min-width:768px) and (max-width:1023px) and (orientation:landscape){#hero{height:auto;min-height:50vh;margin-bottom:1rem;padding-top:0;position:relative;overflow:visible hidden}#hero .hero-image-container{align-items:flex-end;margin:0 0 -5rem;padding:0;position:relative}#hero .hero-image-container>div{margin:0;padding:0;position:relative}#hero .hero-image-container img{max-height:none;margin-top:10rem;margin-bottom:0;padding:0;display:block}#hero .mx-auto.max-w-5xl .flex .hero-image-container img,#hero img{margin-top:10rem}}@media (min-width:1024px){#hero{padding-top:1.5rem}}@media (min-width:1024px) and (orientation:landscape){#hero{padding-top:6rem;overflow:visible hidden}#hero .hero-image-container{margin-bottom:0}#hero .hero-image-container img,#hero img{margin-top:8rem}}@media (min-width:1024px){#hero .mx-auto.max-w-5xl{align-items:center;height:100%;display:flex;position:relative}#hero .mx-auto.max-w-5xl>.flex.flex-row{width:100%;align-items:stretch!important}#hero .hero-text-container{flex-direction:column;justify-content:center;display:flex;align-self:center!important}#hero .hero-image-container{align-self:flex-end!important}}.case-study-hero-section{background:var(--accent);min-height:525px;padding:4rem 0 0;position:relative}@media (min-width:768px){.case-study-hero-section{max-height:65vh}}.case-study-hero-section .absolute.-bottom-8.right-0,.case-study-hero-section .absolute.-bottom-8.right-0>div,.case-study-hero-section .absolute.-bottom-8.right-0 img{overflow:visible}.case-study-content{margin-top:.1rem}@media (min-width:640px){.case-study-content{margin-top:2rem}}#journey{padding:2em 0}.about-photo{width:var(--about-photo-size);height:var(--about-photo-size);position:absolute;box-shadow:0 2px 8px #00000040}.about-photo-1{top:var(--about-photo-1-top);left:var(--about-photo-1-left);z-index:10}.about-photo-2{top:var(--about-photo-2-top);left:var(--about-photo-2-left);z-index:20}@media (max-width:480px){.mobile-photo-grid .about-photo{width:85%;max-width:240px}.mobile-photo-grid .about-photo-2{transform:translate(.5rem)}}@media (min-width:481px) and (max-width:768px){.mobile-photo-grid .about-photo{width:75%;max-width:300px}.mobile-photo-grid .about-photo-2{transform:translate(1.5rem)}}.about-photos{justify-content:center}.about-photos-inner{width:100%;height:100%;position:relative}@media (min-width:768px) and (max-width:1023px){.about-photos{justify-content:center}.about-photos-inner{width:calc(var(--about-photo-mobile-size) + 70px);margin:0 auto;position:relative}.about-photos-inner .about-photo{width:var(--about-photo-mobile-size);height:var(--about-photo-mobile-size)}.about-photos-inner .about-photo-1{top:0;left:0;right:auto}.about-photos-inner .about-photo-2{top:160px;left:70px;right:auto}}@media (min-width:1024px){.about-photos{justify-content:center}.about-photos-inner{width:460px;margin:0 auto}.about-photos-inner .about-photo-1{top:40px;left:0;right:auto}.about-photos-inner .about-photo-2{top:140px;left:200px;right:auto}}@media (max-width:767px){.about-photos{justify-content:center}.about-photos-inner{width:calc(var(--about-photo-mobile-size) + 90px);margin:0 auto}.about-photos-inner .about-photo{width:var(--about-photo-mobile-size);height:var(--about-photo-mobile-size)}.about-photos-inner .about-photo-1{top:0;left:0;right:auto}.about-photos-inner .about-photo-2{top:110px;left:70px;right:auto}}.footer-accent-bg{background-color:var(--accent)}@media (max-width:767px){.footer-accent-bg{padding-bottom:4rem}}.diagonal-accent{--dot-opacity:.3;--clip-path:polygon(0% 0%,calc(100% - 60px)0%,100% 60px,100% 100%,0% 100%);background-image:radial-gradient(circle,color-mix(in oklab,var(--accent)calc(var(--dot-opacity)*100%),transparent)1px,transparent 1px);clip-path:var(--clip-path);background-repeat:repeat;background-size:8px 8px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-left{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slide-right{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-from-top{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slide-out-to-top{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@keyframes fly-in-down{0%{opacity:0;transform:translateY(-40px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.reveal{animation:.5s ease-out both fade-in}.animate-fade-in{animation:.6s ease-out both fade-in}.animate-slide-in-down{animation:.6s ease-out both slide-down}.animate-slide-in-up{animation:.5s ease-out both slide-up}.animate-slide-in-left{animation:.5s ease-out both slide-left}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-slow-spin{animation:9s linear infinite spin}@keyframes ball-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes spin-with-offset{0%{transform:rotate(var(--rotation-start,0deg))}to{transform:rotate(calc(var(--rotation-start,0deg) + 360deg))}}.ball-pulse-animation{transform-origin:50%;animation:2s ease-in-out infinite both ball-pulse}.lazy-section-delay-0{--animation-delay:0s}.lazy-section-delay-100{--animation-delay:.1s}.lazy-section-delay-200{--animation-delay:.2s}.lazy-section-delay-300{--animation-delay:.3s}.lazy-section-delay-400{--animation-delay:.4s}.lazy-section-delay-500{--animation-delay:.5s}.lazy-section{opacity:0;--animation-delay:0s;animation-delay:var(--animation-delay);transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(40px)}.lazy-section--loaded{opacity:1;transform:translateY(0)}.lazy-section--pending{opacity:0;transform:translateY(40px)}.lazy-section#hero,.lazy-section#case-study-hero{transform:none}.lazy-section#hero--loaded,.lazy-section#case-study-hero--loaded{animation:.5s ease-out both fade-in;transform:none}.lazy-section#hero--pending,.lazy-section#case-study-hero--pending{transform:none}.lazy-section--fade-left{transform:translate(-60px)}.lazy-section--fade-left.lazy-section--loaded{animation:.8s ease-out both slide-left}.lazy-section--fade-right{transform:translate(60px)}.lazy-section--fade-right.lazy-section--loaded{animation:.8s ease-out both slide-right}.lazy-section--scale{transform:scale(.9)}.lazy-section--scale.lazy-section--loaded{animation:.8s ease-out both scale-in}.animated-element{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out}.animated-element--visible{opacity:1}.animated-element--fade-up{transform:translateY(40px)}.animated-element--fade-up.animated-element--visible{animation:.6s ease-out both slide-up;transform:translateY(0)}.animated-element--fade-down{transform:translateY(-40px)}.animated-element--fade-down.animated-element--visible{animation:.6s ease-out both slide-down;transform:translateY(0)}.animated-element--fade-left{transform:translate(40px)}.animated-element--fade-left.animated-element--visible{animation:.6s ease-out both slide-left;transform:translate(0)}.animated-element--fade-right{transform:translate(-40px)}.animated-element--fade-right.animated-element--visible{animation:.6s ease-out both slide-right;transform:translate(0)}.animated-element--scale{transform:scale(.95)}.animated-element--scale.animated-element--visible{animation:.6s ease-out both scale-in;transform:scale(1)}.animated-element--slide-up{transform:translateY(60px)}.animated-element--slide-up.animated-element--visible{animation:.6s ease-out both slide-up;transform:translateY(0)}.case-study-zoom{transform:scale(1.2)}.modal{z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;transition:opacity .3s;position:absolute;inset:0}.modal-backdrop--hidden{opacity:0}.modal-backdrop--visible{opacity:1}.modal-container{transform-origin:50%;background:#fff;border-radius:.5rem;width:100%;max-width:32rem;max-height:80vh;margin:0 1rem;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-container--hidden{opacity:0;transform:scale(.95)translateY(1rem)}.modal-container--visible{opacity:1;transform:scale(1)translateY(0)}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:flex-start;align-items:center;height:4.5rem;padding:0 1.5rem;display:flex}.modal-title{color:#111827;margin:0;font-size:.75rem;font-weight:600}.modal-title:before{display:none}.modal-content{max-height:60vh;padding:1.5rem;overflow-y:auto}.modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:center;align-items:center;height:4.5rem;padding:0 1.5rem;display:flex}.image-credits-section{margin-bottom:2rem}.image-credits-section:last-child{margin-bottom:0}.image-credits-grid{grid-template-columns:1fr 3fr;align-items:center;gap:.5rem;margin-bottom:1rem;display:grid}.image-credits-grid:last-child{margin-bottom:0}@media (min-width:768px){.image-credits-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}.image-credits-spacer{display:none}@media (min-width:768px){.image-credits-spacer{grid-column:span 1;display:block}}.image-credits-icon-container{grid-column:span 1;justify-content:center;display:flex}@media (min-width:768px){.image-credits-icon-container{grid-column:span 2}}.image-credits-icon{object-fit:cover;border-radius:.5rem;width:4rem;height:4rem}.image-credits-icon-bg{background:var(--accent);border-radius:.5rem;justify-content:center;align-items:center;width:4rem;height:4rem;display:flex}.image-credits-icon-bg img{object-fit:contain;border-radius:.5rem;width:4rem;height:4rem}.image-credits-text{grid-column:span 1}@media (min-width:768px){.image-credits-text{grid-column:span 4}}.image-credits-text p{color:#4b5563;margin:0;font-size:.875rem}.image-credits-section-title{letter-spacing:-.025em;text-align:center;margin:0 0 1rem;font-size:1.5rem;font-weight:600;line-height:1.2}.image-credits-loading{justify-content:center;align-items:center;padding:2rem 0;display:flex}.image-credits-loading .spinner{border:2px solid #0000;border-bottom-color:#111827;border-radius:50%;width:2rem;height:2rem;animation:1s linear infinite spin}.contact-form .form-field{margin-bottom:1.5rem}.contact-form label{color:var(--foreground);margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.contact-form input,.contact-form textarea{border:1px solid color-mix(in oklab,var(--foreground)20%,transparent);background:var(--background);width:100%;color:var(--foreground);border-radius:.5rem;padding:.75rem 1rem;font-size:1rem;transition:all .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent)20%,transparent);outline:none}.contact-form input:hover:not(:focus),.contact-form textarea:hover:not(:focus){border-color:color-mix(in oklab,var(--foreground)30%,transparent)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:color-mix(in oklab,var(--foreground)50%,transparent)}.contact-form textarea{resize:vertical;min-height:120px}.contact-form .error-message{color:#dc2626;margin-top:.25rem;font-size:.875rem;display:block}.contact-form .form-field.error input,.contact-form .form-field.error textarea{background:color-mix(in oklab,#dc2626 5%,var(--background));border-color:#dc2626}.contact-form .submit-button{width:100%;margin-top:1rem}.contact-form .submit-button:disabled{opacity:.6;cursor:not-allowed}.contact-form .submit-message{border-radius:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.contact-form .submit-message.success{background:color-mix(in oklab,#10b981 15%,var(--background));color:#059669;border:1px solid #10b9814d;border:1px solid lab(66.6921% -50.6677 17.059/.3)}.contact-form .submit-message.error{background:color-mix(in oklab,#dc2626 15%,var(--background));color:#b91c1c;border:1px solid #dc26264d;border:1px solid lab(48.7982% 67.6999 48.8037/.3)}@media (max-width:767px){#hero{flex-direction:column;justify-content:flex-start;min-height:55vh;padding-top:0;padding-bottom:0;position:relative;overflow:visible hidden}#hero .mx-auto.max-w-5xl,#hero .flex{height:100%}#hero .hero-image-container{width:45%;height:100%;max-height:100%;position:absolute;bottom:0;right:0}#hero .hero-image-container>div{align-items:flex-end;height:100%;max-height:100%;display:flex}#hero .hero-image-container img{object-fit:cover;object-position:bottom center;width:100%;max-width:100%;height:auto;max-height:100%;display:block}#hero p{margin-top:3.5rem;margin-bottom:1rem;font-size:.875rem}#hero .mt-8{margin-top:1rem}#hero:before{background-position:50%;width:100%;height:200px;margin-bottom:2rem;position:static}#hero .hero-content{width:100%;margin-right:0}#hero .hero-image-container .diagonal-accent{height:60%!important}.case-study-hero-section .absolute.-bottom-8.right-0{width:100%;height:100%;bottom:0;left:0;right:0}.case-study-hero-section .absolute.-bottom-8.right-0>div{width:100%;height:100%;overflow:visible}.case-study-hero-section .absolute.-bottom-8.right-0 img{object-fit:cover;object-position:center;width:100%;height:100%}#about .flex-1.relative{min-height:24rem;overflow:visible}.mobile-photo-grid{flex-direction:column;align-items:center;gap:-2rem;height:auto;min-height:22rem;padding:1rem;display:flex}.mobile-photo-grid .about-photo{aspect-ratio:1;object-fit:cover;border-radius:.75rem;width:80%;max-width:280px;height:auto;position:relative;box-shadow:0 4px 12px #00000026}.mobile-photo-grid .about-photo-1{z-index:10;margin-bottom:-2rem;top:auto;left:auto}.mobile-photo-grid .about-photo-2{z-index:20;transition:transform .3s ease-out;top:auto;left:auto;transform:translate(1rem)}.mobile-photo-grid:hover .about-photo-2{transform:translate(1.2rem)translateY(-.2rem)}}@media (min-width:768px) and (max-width:1023px){#hero p{margin-top:3.5rem}}@media (min-width:1024px){.max-w-5xl{max-width:80rem}}@media (min-width:1440px){.max-w-5xl{max-width:90rem}}@media (min-width:1728px){.max-w-5xl{max-width:96rem}}body:has(#case-study-hero) .main-header.blended .logo img{filter:brightness(0)invert()}body:has(#case-study-hero) .main-header.blended .main-nav a{color:#fff}:is(body:has(#case-study-hero) .main-header.blended .main-nav a:hover,body:has(#case-study-hero) .main-header.blended .main-nav a:focus-visible){color:#fff}body:has(#case-study-hero) .main-header.blended .main-nav a:hover:after{background-color:#fff}body:has(#case-study-hero) .main-header.blended .main-nav a:focus-visible:after{background-color:#fff}body:has(#case-study-hero) .main-header.blended .main-nav a.active{color:#fff}body:has(#case-study-hero) .main-header.blended .main-nav a.active:after{background-color:#fff}.main-header.case-study-page.blended .logo img{filter:brightness(0)invert()}.main-header.case-study-page.blended .main-nav a,.main-header.case-study-page.blended .main-nav a:hover,.main-header.case-study-page.blended .main-nav a:focus-visible{color:#fff}.main-header.case-study-page.blended .main-nav a:hover:after,.main-header.case-study-page.blended .main-nav a:focus-visible:after{background-color:#fff}.main-header.case-study-page.blended .main-nav a.active{color:#fff}.main-header.case-study-page.blended .main-nav a.active:after{background-color:#fff}.pagination-link{color:var(--accent);padding-bottom:2px;font-weight:700;text-decoration:none;transition:color .2s;position:relative}.pagination-link:after{content:"";background-color:var(--accent);width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.pagination-link:hover:after,.pagination-link:focus-visible:after{width:100%}.case-study-pagination{background:var(--gradient-light);padding-top:1rem;padding-bottom:1rem;box-shadow:inset 0 2px 4px #0000001a}.case-study-pagination .pagination-link{color:var(--accent)}@media (min-width:768px){.case-study-pagination .mx-auto>.flex{align-items:center;min-height:80px}}
