/* LM motion language: reveal, connect, compare. */
[hidden]{display:none!important}.motion-toggle,.marquee-toggle{font:inherit;background:none;border:0;color:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:5px}.motion-toggle{font-size:10px}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important;scroll-behavior:auto!important;transition:none!important}.motion-paused .art-tier{transform:none}.integration-art{perspective:900px}.art-tier{animation:lm-breathe 7s ease-in-out infinite}.tier-two{animation-delay:-2.3s}.tier-three{animation-delay:-4.6s}.art-corner:after{animation:lm-corner 8s ease-in-out infinite}.integration-art:hover .art-tier{animation-play-state:paused}.button{position:relative;overflow:hidden}.button:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,#ffffff20 50%,transparent 85%);transform:translateX(-110%);transition:transform .65s}.button:hover:after,.button:focus-visible:after{transform:translateX(110%)}.line-link{position:relative}.line-link:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--violet);transform:scaleX(0);transform-origin:left;transition:transform .35s}.line-link:hover:after{transform:scaleX(1)}
.solutions-switch{display:flex;border-bottom:1px solid #ddd;margin:36px 0 0;gap:0}.solutions-switch button{border:0;border-bottom:3px solid transparent;flex:1;display:flex;align-items:center;gap:18px;padding:24px 20px;background:white;text-align:left;font-size:23px;font-weight:600;color:#888;transition:color .25s,background .25s,border-color .25s}.solutions-switch button>span{font-size:11px;font-weight:500}.solutions-switch i{font-style:normal;margin-left:auto;transition:transform .3s}.solutions-switch button[aria-selected=true]{color:var(--violet);border-bottom-color:var(--violet);background:#f6f4ff}.solutions-switch button:hover{color:var(--violet)}.solutions-switch button[aria-selected=true] i{transform:rotate(45deg)}.solutions-stage{min-height:390px}.solutions-stage .service-title{display:none}.solutions-stage .service-row{border-top:0;min-height:390px;padding:45px 0;align-items:center}.solutions-stage .service-main,.solutions-stage .service-strategy .service-main{grid-column:1/7}.solutions-stage .strategy-note{grid-column:9/13}.solutions-stage .marketing-composition{grid-column:1/6;grid-row:1}.solutions-stage .service-marketing .service-main{grid-column:7/13}.solutions-stage .service-tech .service-main{grid-column:1/6}.solutions-stage .technology-list{grid-column:8/13;position:relative}.technology-list>div{position:relative}.technology-list>div:before{content:'';position:absolute;left:-33px;top:7px;width:9px;height:9px;background:var(--purple);border:2px solid white;box-shadow:0 0 0 1px #ccc}.strategy-note>div i{transition:transform .3s}.strategy-note>div:hover i{transform:translate(3px,-3px)}
.method-path{padding-bottom:12px}.method-path:after{content:'';position:absolute;top:79px;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--violet),var(--magenta));transform:scaleX(var(--method-progress,0));transform-origin:left}.method-path article{transition:opacity .4s,transform .4s}.step-top b{color:#aaa;transition:color .4s,transform .4s}.method-path .is-active .step-top b{color:var(--violet);transform:translateY(-7px)}.method-path .is-active h3{color:var(--violet)}.method-path .is-past .step-top b{color:var(--purple)}.method-path article p{transition:color .4s}.method-path .is-active p{color:#222}.publication{perspective:900px}.publication img{transition:transform .65s,box-shadow .65s}.publication:hover img{transform:rotateY(-4deg) translateY(-5px)}.project-entry{overflow:hidden;position:relative}.project-entry img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project-entry:hover img,.project-entry:focus-within img{transform:scale(1.025)}.project-entry>div{position:relative;padding:12px 0;background:#101010}.project-entry p{transition:color .3s}.project-entry:hover p{color:#fff}.about-brand:has(.team-portraits){background:none;padding:0}.about-brand:has(.team-portraits)>img,.about-brand:has(.team-portraits)>p,.about-brand:has(.team-portraits)>span{display:none}.team-portraits{display:grid;grid-template-columns:1fr 1fr;gap:20px}.team-portrait{margin:0;overflow:hidden}.team-portrait:nth-child(2){padding-top:65px}.team-portrait img{aspect-ratio:3/4;object-fit:cover;transition:transform .6s}.team-portrait:hover img{transform:scale(1.02)}.team-portrait figcaption{padding-top:18px;font-size:16px;font-weight:600}
.client-section{padding:35px 0 55px;background:#fff}.marquee-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.marquee-heading h2{font-size:18px}.marquee-toggle{font-size:11px}.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.marquee-track{display:flex;width:max-content;animation:lm-marquee 55s linear infinite}.marquee-group{display:flex;align-items:center;flex:none}.client-logo{display:grid;place-items:center;width:200px;height:90px;padding:15px 30px}.client-logo img{max-width:140px;max-height:60px;filter:grayscale(1);opacity:.65;transition:filter .35s,opacity .35s}.client-logo:hover img{filter:none;opacity:1}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track,.marquee.is-paused .marquee-track{animation-play-state:paused}
.calculator{background:#fff;border-bottom:1px solid #e5e5e5}.calc-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:end;margin-bottom:45px}.calculator-controls{display:grid;grid-template-columns:1fr 1fr;gap:6%}.scenario{padding:25px 0 30px;margin:0;min-width:0;border:0;border-top:2px solid #bbb}.scenario-b{border-color:var(--violet)}.scenario legend{padding:0 16px 0 0;font-size:19px;font-weight:600}.scenario legend span{font-size:11px;color:#888;margin-right:12px}.calc-field{display:grid;grid-template-columns:1fr 130px;gap:16px;align-items:center;margin-top:22px}.calc-field label{font-size:13px;line-height:1.6}.calc-field input[type=number]{font:600 16px var(--font);width:100%;background:#f5f5f5;color:#111;border:1px solid #ddd;padding:12px;min-height:46px;border-radius:0}.calc-field input[type=number]:focus{outline:2px solid var(--violet);outline-offset:2px}.calc-field input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--violet);cursor:pointer;margin:0;height:24px}.calc-results{display:grid;grid-template-columns:1.3fr 1fr;gap:6%;margin-top:30px;padding:30px;background:#f5f5f5}.chart-heading h3{font-size:17px;font-weight:600}.chart-heading span{font-size:11px;color:#777;display:block;margin-top:8px}.calc-chart svg{width:100%;height:auto;margin-top:25px;overflow:visible}.chart-grid path{stroke:#ddd;stroke-width:1;fill:none}.calc-chart polyline{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}#line-a{stroke:#888;stroke-dasharray:6 7}#line-b{stroke:var(--violet)}.chart-axis{font:12px var(--font);fill:#666}.chart-legend{display:flex;gap:30px;font-size:11px}.chart-legend span:before{content:'';display:inline-block;width:20px;height:3px;background:#888;vertical-align:middle;margin-right:8px}.chart-legend span+span:before{background:var(--violet)}.calc-summary>div{padding:12px 0 18px;border-bottom:1px solid #ddd}.calc-summary span,.calc-summary small{display:block;font-size:11px;line-height:1.6;color:#666}.calc-summary strong{font-size:32px;letter-spacing:-.03em;font-weight:600;display:block;margin:10px 0;font-variant-numeric:tabular-nums}.calc-summary>div:nth-child(2) strong{color:var(--violet)}#calc-difference{font-size:12px;color:var(--violet);font-weight:600;margin-top:16px}.calc-note{font-size:12px;line-height:1.8;max-width:950px;margin-top:24px}.preview-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.preview-controls button{background:#f4f2ff;border:1px solid #d6d0f5;padding:12px;font-size:12px;color:var(--violet)}.preview-controls>span{font-size:12px}.preview-open{overflow:hidden}.preview-open img{transition:transform .5s}.preview-open:hover img{transform:scale(.98)}
@keyframes lm-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes lm-corner{0%,100%{transform:translate(0,0)}50%{transform:translate(-8px,8px)}}@keyframes lm-marquee{to{transform:translateX(-50%)}}
@media(max-width:760px){.solutions-switch{flex-direction:column;margin-top:25px}.solutions-switch button{font-size:20px;padding:17px 16px;border-bottom:1px solid #ddd;border-left:3px solid transparent}.solutions-switch button[aria-selected=true]{border-left-color:var(--violet);border-bottom-color:#ddd}.solutions-stage{min-height:0}.solutions-stage .service-row{min-height:0;padding-top:30px}.solutions-stage .strategy-note{margin-top:25px}.method-path:after{top:15px;left:26px;bottom:30px;width:2px;height:calc(100% - 45px);transform:scaleY(var(--method-progress,0));transform-origin:top;z-index:0}.method-path article{z-index:1}.method-path .is-active .step-top b{transform:none}.calc-heading{display:block;margin-bottom:30px}.calc-heading h2{font-size:32px}.calc-heading p{margin-top:22px}.calculator-controls{display:block}.scenario{margin-bottom:25px;padding-top:12px;padding-bottom:10px}.scenario legend{font-size:19px}.calc-field{grid-template-columns:1fr 105px;gap:10px;margin-top:19px}.calc-results{display:flex;flex-direction:column;padding:23px 18px;gap:28px;margin-top:5px}.chart-heading h3{font-size:15px}.calc-summary strong{font-size:30px}.calc-note{font-size:11px}.marquee-heading{align-items:start}.marquee-heading h2{font-size:16px}.client-logo{width:160px}.team-portraits{gap:15px}.preview-controls{gap:10px}.preview-controls button{font-size:11px;padding:11px}}
@media(prefers-reduced-motion:reduce){.art-tier,.art-corner:after,.marquee-track{animation:none!important}.method-path article,.step-top b,.project-entry img,.publication img{transition:none!important}.publication:hover img,.project-entry:hover img{transform:none}}

.hero h1 .headline-line{display:block}.hero h1 .headline-line:after{display:none}.hero h1:after{content:"";display:block;width:65px;height:4px;background:linear-gradient(90deg,#503aff,#9029ff,#d624f6);margin-top:26px}

.return-calculator{margin-top:30px;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.return-calculator summary{font-size:16px}.return-calculator>p{font-size:14px}.return-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:25px 0}.return-fields label{font-size:12px;line-height:1.6}.return-fields input{display:block;width:100%;font:600 16px var(--font);padding:13px;margin-top:10px;background:#f5f5f5;border:1px solid #ccc;border-radius:0}.return-fields input:focus-visible{outline:2px solid var(--violet)}.return-output{font-weight:600;color:var(--violet);margin-bottom:18px}.return-calculator small{display:block;font-size:11px;line-height:1.8;color:#666;padding-bottom:25px}.about-brand:has(.team-portraits){min-height:0}.team-portraits{grid-template-columns:1fr 1fr;gap:15px}.team-portrait img{aspect-ratio:4/5;object-fit:contain}.client-logo{height:110px}.client-logo img{max-height:80px;opacity:.85}.client-section{border-bottom:1px solid #eee}.client-logo img{object-fit:contain}@media(max-width:760px){.return-fields{grid-template-columns:1fr;gap:18px}.team-portrait:nth-child(2){padding-top:40px}.team-portrait figcaption{font-size:14px}.marquee-heading h2{max-width:210px}.marquee-toggle{white-space:nowrap}.marquee-heading{gap:10px}}
