:root{--background:#ffffff;--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,#fdfdfd);--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:#ffffff;--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{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;padding:.5rem .75rem;background:var(--background);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)}h2{position:relative;text-align:center;display:table;margin:2rem auto;font-size:clamp(1.75rem,1rem + 2vw,3rem);font-weight:700;line-height:1.1;letter-spacing:-.025em}h2:before{content:"";position:absolute;bottom:0;right:-1.25rem;width:0;height:0;border-left:12px solid var(--accent);border-top:12px solid rgba(0,0,0,0);border-bottom:12px solid rgba(0,0,0,0);transform:rotate(135deg)}.impact-section h2:before{border-left:12px solid #fff;opacity:.5}.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}#challenge h2,#impact h2,#learnings h2,#product-synopsis h2,#solution h2{text-align:center!important;margin-left:auto!important;margin-right:auto!important}.solution-with-sim{display:grid;grid-template-columns:1fr;gap:1.5rem}.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:rgba(0,0,0,0)}.device-frame{display:inline-block}.device-art,.device-frame{position:relative;width:100%}.device-art{height:auto;display:block;z-index:5;pointer-events:none}.device-screen{position:absolute;inset:0;z-index:15;overflow:hidden;background:#000}.device-screen--iphone{top:4.25%;bottom:6.25%;left:7.25%;right:7.25%;border-radius:14px}.device-screen--imac{top:5.25%;left:3.75%;right:3.75%;bottom:41%;border-radius:0}@media(min-width:640px){.device-screen--iphone{top:3.9%;bottom:5.9%;left:6.9%;right:6.9%;border-radius:14px}.device-screen--imac{top:5.1%;left:3.6%;right:3.6%;bottom:41%}}@media(min-width:1024px){.device-screen--iphone{top:3.5%;bottom:5.5%;left:6.5%;right:6.5%;border-radius:14px}.device-screen--imac{top:4.9%;left:3.5%;right:3.5%;bottom:41%}}.device-slider-stack{position:relative;width:100%;height:100%;overflow:hidden}.device-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}.device-slide--mode-fade{opacity:0;transition:opacity .5s ease}.device-slide--mode-fade.device-slide--active{opacity:1}.device-slide--mode-slide{opacity:1;transition:transform .5s ease}.device-slider-stack--slide .device-slide{will-change:transform}h3{font-size:1.5rem;font-weight:600;line-height:1.2;letter-spacing:-.025em}.case-study-content li,.case-study-content p{max-width:72ch}.lead{font-size:clamp(1.125rem,.6vw + 1rem,1.375rem);color:var(--foreground);opacity:.9;line-height:1.7}@media(min-width:1024px){.lead{font-size:1.5rem}}ul{list-style:none;padding-left:0}ul li{position:relative;padding-left:1.5rem;margin-bottom:.75rem}ul li:before{content:"";position:absolute;left:0;top:.5rem;width:0;height:0;border-left:8px solid var(--accent);border-top:6px solid rgba(0,0,0,0);border-bottom:6px solid rgba(0,0,0,0)}.persona-list{list-style:none}.persona-list,.persona-list li{padding-left:0;margin:0}.persona-list li:before{display:none;content:none}.persona-aside{border-top:1px solid color-mix(in oklab,var(--foreground) 20%,transparent);padding-top:1rem;margin-top:.5rem}@media(min-width:1024px){.persona-aside{border-top:1px solid color-mix(in oklab,var(--foreground) 20%,transparent);border-left:0;padding-top:1rem;padding-left:0;margin-top:.5rem}}.pill-badge{display:inline-block;padding:.125rem .5rem;font-size:.625rem;font-weight:700;line-height:1;color:var(--accent);border:1px solid var(--accent);border-radius:9999px;white-space:nowrap}.persona-title{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.text-greeting{font-size:1.125rem;font-weight:400;color:color-mix(in oklab,var(--foreground) 90%,transparent);line-height:1.4}@media(min-width:640px){.text-greeting{font-size:1.75rem}}@media(max-width:640px){.text-greeting{font-size:1.75rem;margin-top:3rem;margin-bottom:0}}.text-name{font-size:2.5rem;font-weight:700;color:var(--accent);line-height:1.1;letter-spacing:-.025em}@media(min-width:640px){.text-name{font-size:3.75rem}}@media(max-width:640px){.text-name{font-size:3rem}}.text-name-inner{position:relative;display:inline-block}.text-name-inner:before{content:"";position:absolute;bottom:.25rem;right:-1.1rem;width:0;height:0;border-left:12px solid var(--accent);border-top:12px solid rgba(0,0,0,0);border-bottom:12px solid rgba(0,0,0,0);transform:rotate(135deg)}.btn-base,.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.625rem .9rem;border-radius:2rem;font-weight:600;white-space:nowrap;cursor:pointer}.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);border-radius:.75rem;background:color-mix(in oklab,var(--background) 92%,white)}.card .card-body{padding:1rem}.link{border-bottom:1px solid var(--accent);color:var(--accent);font-weight:700;display:inline-flex;align-items:center;gap:.25rem;transition:all .2s ease}.link:after{content:"→";transition:transform .2s ease}.link:hover{gap:.5rem}.link:hover:after{transform:translateX(.25rem)}.journey-map{margin-top:.5rem}@media(min-width:768px){.journey-map__vertical{display:none}.journey-map__horizontal{display:block}.journey-map__horizontal-grid{position:relative;display:grid;grid-template-columns:repeat(var(--journey-steps,8),1fr);gap:1.5rem;--journey-gap:1.5rem;padding:.5rem 0 0;margin:0;--grid-pad-top:0.5rem;--title-min:2.25rem;--title-gap:0.75rem;--dot-radius:7px}.journey-map__h-line{display:block;position:absolute;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);height:0;border-top:2px dotted color-mix(in oklab,var(--foreground) 40%,transparent);z-index:0}.journey-map__h-item{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center}.journey-map__h-item:before{display:none}.journey-map__h-title{font-size:.95rem;font-weight:600;margin-bottom:.75rem;color:var(--foreground);min-height:2.25rem}.journey-map__dot{width:14px;height:14px;border-radius:50%;margin:0 auto;background:var(--accent);box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 25%,transparent);z-index:1}.journey-map__h-desc{margin-top:.75rem;font-size:.85rem;color:color-mix(in oklab,var(--foreground) 75%,transparent);line-height:1.4;min-height:2.25rem}}@media(min-width:1024px){.journey-map__h-line{transform:translateY(-3px)}}@media(min-width:1172px){.journey-map__horizontal-grid{position:relative;--grid-pad-top:0.5rem;--title-min:2.25rem;--title-gap:0.75rem;--dot-radius:7px}.journey-map__h-line{display:block;position:absolute;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);height:0;border-top:2px dotted color-mix(in oklab,var(--foreground) 40%,transparent);transform:translateY(0);z-index: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{position:relative;margin:0;padding-left:1.75rem}.journey-map__v-item{position:relative;padding-bottom:1rem}.journey-map__v-item:after{content:"";position:absolute;left:calc(-1.75rem + 7px);top:calc(.2rem + 7px);bottom:-.25rem;width:0;border-left:2px dotted color-mix(in oklab,var(--foreground) 40%,transparent)}.journey-map__v-item:last-child:after{display:none}.journey-map__v-dot{position:absolute;left:-1.75rem;top:.2rem;width:14px;height:14px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 25%,transparent)}.journey-map__v-content{display:block}.journey-map__v-title{font-size:1rem;font-weight:600;line-height:1.2;margin-bottom:.25rem}.journey-map__v-desc{font-size:.85rem;color:color-mix(in oklab,var(--foreground) 75%,transparent);line-height:1.3}}.main-header{width:100%;transition:all .3s ease-in-out;position:relative;z-index:50}@media(max-width:767px){.main-header{display:none}}.lazy-nav{transition:opacity .6s ease-out,transform .6s ease-out;will-change:opacity,transform}.lazy-nav,.lazy-nav--pending{opacity:0;transform:translateY(-20px)}.lazy-nav--loaded{opacity:1;transform:translateY(0);transition:opacity .6s ease-out,transform .6s ease-out}.main-header.blended{position:absolute;top:0;left:0;background:rgba(0,0,0,0);border-bottom:none}.main-header.blended .mx-auto{padding:2rem 1rem}.main-header.blended.lazy-nav--loaded,.main-header.blended.lazy-nav--pending{transition:opacity .6s ease-out,transform .6s ease-out!important}.header-fixed,.main-header.fixed,.main-header.sliding-out{position:fixed;top:0;left:0;background:var(--nav-bg);border-bottom:1px solid var(--nav-border);backdrop-filter:blur(8px);box-shadow:var(--nav-shadow)}.main-header.fixed{animation:slide-in-from-top .5s ease-out both}.main-header.sliding-out{animation:slide-out-to-top .4s ease-in both}.main-header .logo{font-weight:600;letter-spacing:-.025em;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{display:block;height:fit-content;align-self:center}}.main-nav ul{display:flex;align-items:center;gap:1.5rem;margin:0;padding:0;height:100%}.main-nav ul li{padding:0;margin:0;list-style:none}.main-nav ul li:before{display:none!important;content:none!important}.main-nav a{line-height:1.5;vertical-align:middle}.main-nav a,.mobile-nav a,.nav-link{text-decoration:none;font-weight:600;color:var(--foreground);transition:color .2s ease;position:relative;padding-bottom:2px}.main-nav a:after,.mobile-nav a:after,.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--accent);transition:width .3s ease}.main-nav a:focus-visible,.main-nav a:hover,.mobile-nav a:focus-visible,.mobile-nav a:hover,.nav-link:focus-visible,.nav-link:hover{color:var(--accent)}.main-nav a:focus-visible:after,.main-nav a:hover:after,.mobile-nav a:focus-visible:after,.mobile-nav a:hover:after,.nav-link:focus-visible:after,.nav-link:hover:after{width:100%}.main-nav a.active,.mobile-nav a.active,.nav-link.active{color:var(--accent)}.main-nav a.active:after,.mobile-nav a.active:after,.nav-link.active:after{width:100%}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--nav-bg);border-top:1px solid var(--nav-border);backdrop-filter:blur(8px);box-shadow:inset 0 2px 4px color-mix(in oklab,var(--foreground) 10%,transparent)}@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{max-width:90rem;margin:0 auto;padding:.75rem 1rem;display:flex;align-items:center;justify-content:center;height:100%;width:100%}.mobile-nav ul{justify-content:space-around;width:100%}.mobile-nav ul,.mobile-nav ul li{display:flex;align-items:center;margin:0;padding:0}.mobile-nav ul li{list-style:none;justify-content:center}.mobile-nav ul li:before{display:none!important;content:none!important}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;font-size:.875rem;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;touch-action:manipulation}.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{display:block;padding:1rem;font-weight:600;letter-spacing:-.025em}.mobile-logo img{width:48px;height:48px}}@media(min-width:768px){.main-content{padding-bottom:0}}.brands-list{list-style:none;padding:0;margin:2rem auto;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(min-width:768px){.brands-list{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.brands-list li{padding:.75rem 0;margin:0;text-align:center;display:flex;align-items:center;justify-content:center}.brands-list li:before{display:none;content: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{width:100%;max-width:150px;height:auto;max-height:45px;object-fit:contain}.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(backdrop-filter:blur(8px)){.header-fixed,.main-header.fixed,.main-header.sliding-out,.mobile-nav{backdrop-filter:blur(8px)}}#about,#hero,#journey,.section-gradient{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:1024px)and (max-width:1366px)and (orientation:portrait),(min-width:768px)and (max-width:1023px){#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{max-width:100%;object-fit:cover;object-position:center}@media(min-width:768px){#hero .flex>div:last-child{display:flex;align-items:flex-end}#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{overflow-x:visible;overflow-y:hidden;position:relative;height:auto;min-height:50vh;margin-bottom:1rem}#hero,#hero.pb-16{padding-bottom:0}#hero .mx-auto.max-w-5xl>.flex{align-items:center}#hero .hero-image-container{align-self:stretch;margin:0 0 -1px}#hero .hero-image-container,#hero .hero-image-container>div{position:relative;align-items:flex-end;padding:0;display:flex}#hero .hero-image-container>div{margin:0;flex:1;min-height:100%}#hero .hero-image-container img{margin-top:1.5rem;margin-bottom:0;padding:0;display:block;width:100%;height:auto;align-self:flex-end}}@media(min-width:768px)and (max-width:1023px)and (orientation:landscape){#hero{overflow-x:visible;overflow-y:hidden;height:auto;min-height:50vh;margin-bottom:1rem;position:relative;padding-top:0}#hero .hero-image-container{position:relative;align-items:flex-end;padding:0;margin:0 0 -5rem}#hero .hero-image-container>div{position:relative;padding:0;margin:0}#hero .hero-image-container img{margin-top:10rem;margin-bottom:0;padding:0;display:block;max-height:none}#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{overflow-x:visible;overflow-y:hidden;padding-top:6rem}#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{position:relative;height:100%;display:flex;align-items:center}#hero .mx-auto.max-w-5xl>.flex.flex-row{width:100%;align-items:stretch!important}#hero .hero-text-container{display:flex;flex-direction:column;justify-content:center;align-self:center!important}#hero .hero-image-container{align-self:flex-end!important}}.case-study-hero-section{background:var(--accent);padding:4rem 0 0;position:relative;min-height:525px}@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 img,.case-study-hero-section .absolute.-bottom-8.right-0>div{overflow:visible}.case-study-content{margin-top:.1rem}@media(min-width:640px){.case-study-content{margin-top:2rem}}#journey{padding:2em 0}.about-photo{position:absolute;width:var(--about-photo-size);height:var(--about-photo-size);box-shadow:0 2px 8px rgba(0,0,0,.25)}.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:translateX(.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:translateX(1.5rem)}}.about-photos{justify-content:center}.about-photos-inner{position:relative;width:100%;height:100%}@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:0.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);background-size:8px 8px;background-repeat:repeat;clip-path:var(--clip-path)}@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:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes slide-right{0%{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:translateX(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(1turn)}}.reveal{animation:fade-in .5s ease-out both}.animate-fade-in{animation:fade-in .6s ease-out both}.animate-slide-in-down{animation:slide-down .6s ease-out both}.animate-slide-in-up{animation:slide-up .5s ease-out both}.animate-slide-in-left{animation:slide-left .5s ease-out both}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-slow-spin{animation:spin 9s linear infinite}@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) + 1turn))}}.ball-pulse-animation{animation:ball-pulse 2s ease-in-out infinite;transform-origin:center;animation-fill-mode:both}.lazy-section-delay-0{--animation-delay:0ms}.lazy-section-delay-100{--animation-delay:100ms}.lazy-section-delay-200{--animation-delay:200ms}.lazy-section-delay-300{--animation-delay:300ms}.lazy-section-delay-400{--animation-delay:400ms}.lazy-section-delay-500{--animation-delay:500ms}.lazy-section{opacity:0;transform:translateY(40px);transition:opacity .6s ease-out,transform .6s ease-out;--animation-delay:0ms;animation-delay:var(--animation-delay)}.lazy-section--loaded{opacity:1;transform:translateY(0)}.lazy-section--pending{opacity:0;transform:translateY(40px)}.lazy-section#case-study-hero,.lazy-section#hero{transform:none}.lazy-section#case-study-hero--loaded,.lazy-section#hero--loaded{transform:none;animation:fade-in .5s ease-out both}.lazy-section#case-study-hero--pending,.lazy-section#hero--pending{transform:none}.lazy-section--fade-left{transform:translateX(-60px)}.lazy-section--fade-left.lazy-section--loaded{animation:slide-left .8s ease-out both}.lazy-section--fade-right{transform:translateX(60px)}.lazy-section--fade-right.lazy-section--loaded{animation:slide-right .8s ease-out both}.lazy-section--scale{transform:scale(.9)}.lazy-section--scale.lazy-section--loaded{animation:scale-in .8s ease-out both}.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{transform:translateY(0);animation:slide-up .6s ease-out both}.animated-element--fade-down{transform:translateY(-40px)}.animated-element--fade-down.animated-element--visible{transform:translateY(0);animation:slide-down .6s ease-out both}.animated-element--fade-left{transform:translateX(40px)}.animated-element--fade-left.animated-element--visible{transform:translateX(0);animation:slide-left .6s ease-out both}.animated-element--fade-right{transform:translateX(-40px)}.animated-element--fade-right.animated-element--visible{transform:translateX(0);animation:slide-right .6s ease-out both}.animated-element--scale{transform:scale(.95)}.animated-element--scale.animated-element--visible{transform:scale(1);animation:scale-in .6s ease-out both}.animated-element--slide-up{transform:translateY(60px)}.animated-element--slide-up.animated-element--visible{transform:translateY(0);animation:slide-up .6s ease-out both}.case-study-zoom{transform:scale(1.2)}.modal{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);transition:opacity .3s ease}.modal-backdrop--hidden{opacity:0}.modal-backdrop--visible{opacity:1}.modal-container{position:relative;background:#fff;border-radius:.5rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);max-width:32rem;width:100%;margin:0 1rem;max-height:80vh;overflow:hidden;transition:all .3s ease;transform-origin:center}.modal-container--hidden{opacity:0;transform:scale(.95) translateY(1rem)}.modal-container--visible{opacity:1;transform:scale(1) translateY(0)}.modal-header{height:4.5rem;padding:0 1.5rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:flex-start}.modal-title{font-size:.75rem;font-weight:600;color:#111827;margin:0}.modal-title:before{display:none}.modal-content{padding:1.5rem;overflow-y:auto;max-height:60vh}.modal-footer{height:4.5rem;padding:0 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb;display:flex;align-items:center;justify-content:center}.image-credits-section{margin-bottom:2rem}.image-credits-section:last-child{margin-bottom:0}.image-credits-grid{display:grid;gap:.5rem;align-items:center;margin-bottom:1rem;grid-template-columns:1fr 3fr}.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{display:block;grid-column:span 1}}.image-credits-icon-container{grid-column:span 1;display:flex;justify-content:center}@media(min-width:768px){.image-credits-icon-container{grid-column:span 2}}.image-credits-icon{width:4rem;height:4rem;object-fit:cover;border-radius:.5rem}.image-credits-icon-bg{width:4rem;height:4rem;background:var(--accent);border-radius:.5rem;display:flex;align-items:center;justify-content:center}.image-credits-icon-bg img{width:4rem;height:4rem;object-fit:contain;border-radius:.5rem}.image-credits-text{grid-column:span 1}@media(min-width:768px){.image-credits-text{grid-column:span 4}}.image-credits-text p{font-size:.875rem;color:#4b5563;margin:0}.image-credits-section-title{font-size:1.5rem;font-weight:600;line-height:1.2;letter-spacing:-.025em;margin:0 0 1rem;text-align:center}.image-credits-loading{display:flex;align-items:center;justify-content:center;padding:2rem 0}.image-credits-loading .spinner{animation:spin 1s linear infinite;border-radius:50%;height:2rem;width:2rem;border:2px solid rgba(0,0,0,0);border-bottom-color:#111827}.contact-form .form-field{margin-bottom:1.5rem}.contact-form label{display:block;font-weight:600;color:var(--foreground);margin-bottom:.5rem;font-size:.875rem}.contact-form input,.contact-form textarea{width:100%;padding:.75rem 1rem;border:1px solid color-mix(in oklab,var(--foreground) 20%,transparent);border-radius:.5rem;background:var(--background);color:var(--foreground);font-size:1rem;transition:all .2s ease}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 20%,transparent)}.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{margin-top:.25rem;font-size:.875rem;color:#dc2626;display:block}.contact-form .form-field.error input,.contact-form .form-field.error textarea{border-color:#dc2626;background:color-mix(in oklab,#dc2626 5%,var(--background))}.contact-form .submit-button{width:100%;margin-top:1rem}.contact-form .submit-button:disabled{opacity:.6;cursor:not-allowed}.contact-form .submit-message{padding:.75rem 1rem;border-radius:.5rem;margin-bottom: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 color-mix(in oklab,#10b981 30%,transparent)}.contact-form .submit-message.error{background:color-mix(in oklab,#dc2626 15%,var(--background));color:#b91c1c;border:1px solid color-mix(in oklab,#dc2626 30%,transparent)}@media(max-width:767px){#hero{flex-direction:column;justify-content:flex-start;padding-top:0;padding-bottom:0;position:relative;min-height:55vh;overflow-x:visible;overflow-y:hidden}#hero .flex,#hero .mx-auto.max-w-5xl{height:100%}#hero .hero-image-container{position:absolute;bottom:0;right:0;width:45%;height:100%;max-height:100%}#hero .hero-image-container>div{height:100%;max-height:100%;display:flex;align-items:flex-end}#hero .hero-image-container img{width:100%;height:auto;max-height:100%;max-width:100%;object-fit:cover;object-position:bottom center;display:block}#hero p{margin-top:3.5rem;margin-bottom:1rem;font-size:.875rem}#hero .mt-8{margin-top:1rem}#hero:before{position:static;width:100%;height:200px;background-position:50%;margin-bottom:2rem}#hero .hero-content{margin-right:0;width:100%}#hero .hero-image-container .diagonal-accent{height:60%!important}.case-study-hero-section .absolute.-bottom-8.right-0{width:100%;right:0;left:0;height:100%;bottom: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{width:100%;height:100%;object-fit:cover;object-position:center}#about .flex-1.relative{overflow:visible;min-height:24rem}.mobile-photo-grid{display:flex;flex-direction:column;align-items:center;gap:-2rem;padding:1rem;height:auto;min-height:22rem}.mobile-photo-grid .about-photo{position:relative;width:80%;max-width:280px;height:auto;aspect-ratio:1;object-fit:cover;border-radius:.75rem;box-shadow:0 4px 12px rgba(0,0,0,.15)}.mobile-photo-grid .about-photo-1{top:auto;left:auto;z-index:10;margin-bottom:-2rem}.mobile-photo-grid .about-photo-2{top:auto;left:auto;z-index:20;transform:translateX(1rem);transition:transform .3s ease-out}.mobile-photo-grid:hover .about-photo-2{transform:translateX(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(1)}body:has(#case-study-hero) .main-header.blended .main-nav a{color:#fff}body:has(#case-study-hero) .main-header.blended .main-nav a:focus-visible,body:has(#case-study-hero) .main-header.blended .main-nav a:hover{color:#fff}body:has(#case-study-hero) .main-header.blended .main-nav a:focus-visible:after,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.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(1)}.main-header.case-study-page.blended .main-nav a{color:#fff}.main-header.case-study-page.blended .main-nav a:focus-visible,.main-header.case-study-page.blended .main-nav a:hover{color:#fff}.main-header.case-study-page.blended .main-nav a:focus-visible:after,.main-header.case-study-page.blended .main-nav a:hover: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{text-decoration:none;font-weight:700;color:var(--accent);transition:color .2s ease;position:relative;padding-bottom:2px}.pagination-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--accent);transition:width .3s ease}.pagination-link:focus-visible:after,.pagination-link:hover:after{width:100%}.case-study-pagination{padding-top:1rem;padding-bottom:1rem;background:var(--gradient-light);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.case-study-pagination .pagination-link{color:var(--accent)}@media(min-width:768px){.case-study-pagination .mx-auto>.flex{min-height:80px;align-items:center}}