/* Local studio direction. Original palette and locally hosted typefaces. */
.header{height:100px;background:#fff;transition:height .35s,box-shadow .35s}.header.scrolled{height:76px;box-shadow:0 8px 32px #10204408}.header .brand-image{width:200px;transition:width .35s}.header.scrolled .brand-image{width:176px}.eyebrow{font-size:14px;letter-spacing:1.2px}.button{border-radius:5px;box-shadow:none}.button span{transition:transform .2s}.button:hover span{transform:translate(3px,-3px)}
.studio-hero{padding-top:46px}.studio-overline{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted);padding-bottom:32px}.studio-overline span:first-child{font-size:12px;letter-spacing:1.7px;font-weight:650}.studio-overline span:last-child{color:var(--blue)}.studio-hero h1{font-size:clamp(68px,8.7vw,128px);font-weight:650;letter-spacing:-.065em;line-height:1.07;margin:0}.studio-hero h1>span{color:var(--blue);background:none}.studio-hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-top:35px;margin-bottom:55px}.studio-hero-intro>p{font-size:19px;line-height:1.65;color:var(--muted)}.studio-hero .hero-actions{margin-top:25px}.studio-signature{display:flex;gap:24px;align-items:center;padding:20px 0;color:var(--ink);font-size:15px;line-height:1.6}.studio-signature img{width:92px;height:92px;object-fit:contain}.studio-index{display:flex;align-items:center;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;font-size:14px;color:var(--muted)}.studio-index a{margin-left:auto;color:var(--ink)}
.studio-services{padding-block:110px}.studio-services .section-intro h2,.studio-solutions h2,.process h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.045em;line-height:1.17}.section-intro p{font-size:16px}.service-list{border-top:1px solid var(--ink)}.studio-service{border-bottom:1px solid var(--line)}.studio-service summary{display:flex;align-items:center;gap:32px;padding:26px 0;cursor:pointer;list-style:none}.studio-service summary::-webkit-details-marker{display:none}.studio-service summary>span:first-child{font-family:var(--display);font-size:26px;font-weight:600;letter-spacing:-.8px}.service-summary-tags{margin-left:auto;font-size:14px;color:var(--muted)}.service-plus{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;font-size:26px;font-weight:300;transition:transform .25s,background .25s}.studio-service[open] .service-plus{transform:rotate(45deg);background:var(--blue);border-color:var(--blue);color:white}.studio-service[open] summary>span:first-child{color:var(--blue)}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:5px 0 36px}.service-detail h3{font-size:20px;letter-spacing:-.5px;margin-bottom:12px}.service-detail p{font-size:16px;line-height:1.8;color:var(--muted);max-width:500px}.service-detail .text-link{margin-top:22px;color:var(--blue);font-size:15px}.service-flow{display:flex;align-items:center;justify-content:center;gap:13px;background:var(--pale);padding:28px;min-height:160px}.service-flow span{border-bottom:2px solid var(--blue);padding:16px 4px;font-size:15px;font-weight:500;white-space:nowrap}.service-flow i{font-style:normal;color:var(--sky)}
.studio-solutions{padding:100px 0;background:var(--ink);color:white}.studio-solutions .eyebrow{color:#9db9ff}.studio-solutions .section-intro h2 span{color:#9db9ff}.studio-solutions .section-intro p{color:#bdc9df}.solution-label{font-size:12px;letter-spacing:1.5px;color:#9db9ff;font-weight:600}.solution-story{display:grid;grid-template-columns:.52fr 1.3fr 1fr;gap:45px;padding:50px 0 65px;border-top:1px solid #ffffff30}.solution-story h3,.solution-pair h3{font-family:var(--display);font-size:clamp(26px,2.6vw,38px);font-weight:550;letter-spacing:-1px;line-height:1.3}.solution-story p,.solution-pair p{font-size:16px;line-height:1.8;color:#bdc9df;margin-top:20px;max-width:510px}.studio-solutions .text-link{margin-top:28px;font-size:15px;color:white}.order-path{list-style:none;margin:0;padding:0}.order-path li{padding:17px 0;border-bottom:1px solid #ffffff25;font-size:17px;display:flex;gap:24px}.order-path li:first-child{padding-top:0}.order-path li span{font-size:13px;color:#9db9ff;align-self:center}.solution-pair{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid #ffffff30;padding-top:45px}.solution-pair h3{margin-top:23px;font-size:30px}
.process{padding-block:115px}.process-grid{position:relative;gap:32px}.process-grid:before{content:'';position:absolute;top:58px;left:0;right:0;height:2px;background:var(--line)}.process-grid:after{content:'';position:absolute;top:58px;left:0;width:var(--process-progress,0%);height:2px;background:var(--blue);transition:width .4s;max-width:100%}.process-step{position:relative}.process-step .step-number{font-size:42px;font-weight:500;color:var(--muted);height:79px}.process-step .step-number span{display:none}.process-step.is-active .step-number{color:var(--blue)}.process-step h3{font-size:21px}.process-step p{font-size:16px;line-height:1.75}.step-label{font-size:12px}.about-section{background:var(--pale)}.about-copy h2{font-size:clamp(38px,4.5vw,64px);line-height:1.15}.benefits{gap:24px}.benefits h3{font-size:18px}.benefits p{font-size:16px}.cta-panel{background:var(--blue);border-radius:6px}.cta-panel:before,.cta-panel:after,.cta-line{display:none}.cta-kicker{font-size:12px}.contact h2{font-size:clamp(40px,5vw,68px)}.contact-form{box-shadow:none}.footer-bottom>span{display:none}.js-reveal .reveal{transform:translateY(18px);transition:opacity .55s,transform .55s}.studio-hero h1{animation:studio-enter .7s both}.studio-hero-bottom{animation:studio-enter .8s .12s both}@keyframes studio-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.studio-hero{padding-top:65px}.studio-hero-bottom{margin-bottom:72px}}
@media(max-width:1000px){.studio-signature{gap:10px}.studio-signature img{width:70px;height:70px}.studio-hero-intro>p{font-size:17px}.service-detail{gap:30px}.service-flow{padding:18px;gap:8px}.solution-story{grid-template-columns:1.2fr 1fr;gap:35px}.solution-story>.solution-label{grid-column:1/-1}.studio-index{gap:20px}.solution-pair{gap:40px}}
@media(max-width:800px){.header{height:80px}.header.scrolled{height:72px}.header .brand-image{width:165px}.header.scrolled .brand-image{width:155px}.nav-wrap nav{top:100%}.studio-hero{padding-top:28px}.studio-overline{padding-bottom:28px}.studio-overline span:first-child{font-size:11px}.studio-hero h1{font-size:clamp(57px,10vw,80px)}.studio-hero-bottom{align-items:flex-start;gap:15px;margin-bottom:35px}.studio-signature{display:none}.studio-index{flex-wrap:wrap;gap:12px 25px;font-size:13px}.studio-index a{width:100%;margin-left:0}.studio-services,.process{padding-block:75px}.service-summary-tags{display:none}.service-plus{margin-left:auto}.studio-service summary>span:first-child{font-size:23px}.service-detail{grid-template-columns:1fr;gap:25px}.service-flow{justify-content:flex-start;min-height:110px}.studio-solutions{padding-block:75px}.solution-pair{grid-template-columns:1fr;gap:40px}.solution-pair article+article{border-top:1px solid #ffffff30;padding-top:35px}.process-grid:before,.process-grid:after{display:none}.process-step{border-left:2px solid var(--line);padding-left:20px}.process-step.is-active{border-color:var(--blue)}.process-step .step-number{height:auto;margin-bottom:16px}}
@media(max-width:480px){.studio-overline span:last-child{display:none}.studio-hero h1{font-size:clamp(48px,11.8vw,58px)}.studio-hero-intro>p{font-size:16px}.studio-hero-intro>p br{display:none}.studio-hero .hero-actions{gap:20px}.studio-hero .text-link{font-size:14px}.studio-hero-bottom{margin-top:28px}.studio-index span{font-size:12px}.solution-story{grid-template-columns:1fr;gap:25px}.solution-story>.solution-label{grid-column:auto}.order-path{margin-top:10px}.studio-services .section-intro h2,.studio-solutions h2,.process h2{font-size:34px}.service-flow span{font-size:14px}.header .nav-wrap{gap:10px}.header .brand-image{width:150px}.header.scrolled .brand-image{width:145px}}
.about-section{padding-bottom:85px}.cta-panel{padding-bottom:44px}
@media(max-width:480px){.process-step{padding-left:66px}.process-step .step-number{font-size:30px}.process-step:not(:last-child):before{display:none}.about-section{padding-bottom:55px}.cta-panel{padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){.studio-hero h1,.studio-hero-bottom{animation:none}.js-reveal .reveal{opacity:1;transform:none}.process-grid:after{transition:none}}
