/* Editorial service and studio pages. Native SF Pro is supplied by fonts.css. */
.studio-page{--studio-ink:#f4f5f5;--studio-muted:#a5afb4;--studio-line:rgba(238,245,248,.18);--studio-space:clamp(70px,10vw,180px);color:var(--studio-ink);background:#080d0f;overflow:clip}
.studio-page .page-wrap{width:100%;max-width:1800px;margin-inline:auto;padding-inline:clamp(22px,5.6vw,108px)}
.studio-page h1,.studio-page h2,.studio-page h3{font-family:var(--sf-pro,-apple-system,BlinkMacSystemFont,system-ui,sans-serif);font-weight:300;letter-spacing:-.047em}
.studio-page p{line-height:1.65}
.studio-page .eyebrow{font-size:12px;letter-spacing:.025em;line-height:1.5}
.studio-page .text-link{display:inline-flex;align-items:center;gap:36px;min-height:44px;padding-block:12px;border-bottom:1px solid #ffffff60;font-size:14px;line-height:1.45;transition:gap .25s,border-color .25s}
.studio-page .text-link:hover{gap:46px;border-color:#fff}
.studio-page .text-link span{font-size:21px}
.studio-page a:focus-visible,.studio-page summary:focus-visible{outline:2px solid #c7dafc;outline-offset:7px}
.studio-hero{padding-top:clamp(158px,14vw,230px);padding-bottom:clamp(75px,9vw,150px)}
.studio-hero h1{font-size:clamp(64px,9.8vw,172px);line-height:1.01;margin:38px 0 52px}
.studio-hero h1>span{color:#8d9b9f}
.studio-hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;border-top:1px solid var(--studio-line);padding-top:32px}
.studio-hero-bottom>p{font-size:clamp(17px,1.55vw,24px);color:#c2c9cc}
.studio-service-index{display:grid;gap:0;max-width:490px;width:100%;margin-left:auto}
.studio-service-index a{display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--studio-line);font-size:17px;transition:color .2s}
.studio-service-index a:first-child{padding-top:0}
.studio-service-index a>span:first-child{font-size:11px;color:var(--studio-muted)}
.studio-service-index a>span:last-child{text-align:right;transition:transform .25s}
.studio-service-index a:hover{color:#abc7ff}
.studio-service-index a:hover>span:last-child{transform:translate(4px,4px)}
.studio-capability{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:clamp(35px,8vw,135px);align-items:center;padding-block:45px var(--studio-space);scroll-margin-top:110px}
.studio-capability-reverse .studio-capability-copy{order:2}
.studio-capability-copy h2{font-size:clamp(47px,5.5vw,94px);line-height:1.035;margin:28px 0}
.studio-capability-copy h2>span{color:#95a5ac}
.studio-capability-copy>p:not(.eyebrow){font-size:17px;max-width:460px;color:#b9c3c8}
.studio-deliverables{padding:0;margin:32px 0 28px;list-style:none;max-width:460px}
.studio-deliverables li{padding:12px 0;border-bottom:1px solid var(--studio-line);font-size:14px}
.studio-case-visual{--studio-x:0;--studio-y:0;position:relative;display:block;width:100%;aspect-ratio:.8;isolation:isolate;perspective:1000px;border:1px solid var(--studio-line);border-radius:3px;background:#381528;box-shadow:0 25px 60px #0003;transform-style:preserve-3d}
.studio-case-back{position:absolute;inset:0;overflow:hidden;border-radius:inherit;background:#351024;z-index:-2}
.studio-case-back img{width:100%;height:100%;object-fit:cover;opacity:.62;filter:blur(2px);transform:scale(1.08) translate(calc(var(--studio-x)*-4px),calc(var(--studio-y)*-4px));transition:transform .35s ease-out}
.studio-case-back:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#100811ee,transparent 58%)}
.studio-case-object{position:absolute;width:80%;height:91%;max-width:none;object-fit:contain;left:10%;top:-7%;filter:drop-shadow(0 35px 22px #0006);transform:translate3d(calc(var(--studio-x)*17px),calc(var(--studio-y)*-12px),50px) rotateY(calc(var(--studio-x)*-7deg)) rotateZ(calc(var(--studio-x)*3deg));transition:transform .3s ease-out}
.studio-case-caption{position:absolute;bottom:28px;left:28px;right:28px;display:flex;align-items:end;justify-content:space-between;gap:15px;font-size:22px;line-height:1.6}
.studio-case-caption small{font-size:12px;color:#d1ced4}
.studio-case-arrow{display:grid;place-items:center;width:46px;height:46px;border:1px solid #fff7;border-radius:50%;font-size:25px;transition:background .2s,color .2s}
.studio-case-visual:hover .studio-case-arrow{background:#fff;color:#080d0f}
.studio-case-ring{position:absolute;width:75%;aspect-ratio:1;left:12.5%;top:12%;border:1px solid #ffd3ef3b;border-radius:50%;transform:rotateX(55deg) rotateZ(-24deg);pointer-events:none}
.studio-case-ring:after{content:"";position:absolute;inset:-10%;border:1px solid #ffd3ef2b;border-radius:50%}
.studio-case-firubites{background:#9a4228}
.studio-case-firubites .studio-case-back{background:#643824}
.studio-case-firubites .studio-case-back img{opacity:.5;filter:blur(4px) saturate(.8)}
.studio-case-firubites .studio-case-object{width:69%;height:86%;left:16%;top:0;transform:translate3d(calc(var(--studio-x)*18px),calc(var(--studio-y)*-12px),50px) rotateY(calc(var(--studio-x)*-7deg)) rotateZ(calc(-7deg + var(--studio-x)*3deg))}
.studio-case-lines{position:absolute;inset:12% 12% 25%;border:1px solid #fff3;transform:rotate(-12deg);pointer-events:none}
.studio-case-lines:after{content:"";position:absolute;inset:6%;border:1px solid #fff2}
.studio-case-bmw{background:#102c43}
.studio-case-bmw .studio-case-back{background:#102c43}
.studio-case-bmw .studio-case-back img{opacity:.85;filter:blur(0);object-position:top center}
.studio-case-bmw .studio-case-back:after{background:linear-gradient(0deg,#07111dec,#06152210 75%)}
.studio-case-bmw .studio-case-object{width:78%;height:77%;left:11%;top:-1%;filter:drop-shadow(0 30px 20px #0009)}
.studio-case-orbit{position:absolute;left:13%;top:22%;width:74%;aspect-ratio:1;border:1px solid #c5e3ff60;border-radius:50%;transform:rotateX(65deg) rotateZ(-28deg);pointer-events:none}
.studio-method{padding-block:65px var(--studio-space);border-top:1px solid var(--studio-line)}
.studio-section-heading h2{font-size:clamp(43px,5.25vw,90px);line-height:1.04;margin-top:27px;max-width:1200px}
.studio-method-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,4vw,68px);list-style:none;margin:65px 0 0;padding:0}
.studio-method-steps li{border-top:1px solid var(--studio-line);padding-top:24px}
.studio-step-number{display:block;font-size:14px;color:#83949d;margin-bottom:58px}
.studio-method-steps h3{font-size:clamp(27px,2.35vw,40px);margin:0 0 20px}
.studio-method-steps p{color:#aab6bd;font-size:15px;max-width:430px}
.studio-checkup{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(30px,8vw,135px);align-items:center;padding-block:65px;background:#121e26;border-block:1px solid var(--studio-line)}
.studio-checkup-mark{position:relative;width:min(100%,320px);aspect-ratio:1;margin:auto;border:1px solid #889eae50;border-radius:50%;display:grid;place-items:center}
.studio-checkup-mark span{font-size:clamp(92px,11vw,180px);font-weight:200;letter-spacing:-.07em;padding-right:.05em}
.studio-checkup-mark:before,.studio-checkup-mark:after{content:"";position:absolute;inset:9%;border:1px solid #889eae20;border-radius:50%}
.studio-checkup-mark:after{inset:-7%;border-style:dashed;border-color:#889eae30}
.studio-checkup-mark i{position:absolute;width:10px;height:10px;right:14%;top:14%;border-radius:50%;background:#d7e5f5;box-shadow:0 0 25px #b4d3fc66}
.studio-checkup h2{font-size:clamp(36px,4.5vw,74px);line-height:1.07;margin:23px 0}
.studio-checkup p:not(.eyebrow){max-width:480px;color:#b9c7ce;margin-bottom:20px;font-size:17px}
.studio-faq{padding-block:var(--studio-space)}
.studio-faq-list{margin-top:55px;max-width:1080px;margin-left:auto}
.studio-faq details{border-top:1px solid var(--studio-line)}
.studio-faq details:last-child{border-bottom:1px solid var(--studio-line)}
.studio-faq summary{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:clamp(18px,2vw,27px);font-weight:300;padding:26px 0;cursor:pointer;list-style:none;line-height:1.35}
.studio-faq summary::-webkit-details-marker{display:none}
.studio-faq summary>span{font-weight:200;font-size:32px;flex:none;transition:transform .25s}
.studio-faq details[open] summary>span{transform:rotate(45deg)}
.studio-faq details p{font-size:16px;color:#b2bfc6;max-width:750px;padding:0 45px 30px 0}
.studio-end-cta{max-width:none!important;padding-block:65px;background:#274b9b}
.studio-end-cta>a{display:block;padding-block:36px}
.studio-end-cta h2{font-size:clamp(59px,10.5vw,178px);line-height:1.04;display:block;max-width:1500px}
.studio-end-cta h2>span{display:inline-block;margin-left:.18em;transition:transform .35s;font-size:.85em}
.studio-end-cta>a:hover h2>span{transform:translate(12px,-12px)}
.studio-end-cta>p:last-child{font-size:16px;color:#e0e8f6;border-top:1px solid #ffffff50;padding-top:26px}
.studio-about-hero{position:relative;padding-bottom:130px}
.studio-about-hero .studio-hero-bottom{grid-template-columns:1fr auto}
.studio-since{font-size:13px;line-height:1.8;text-align:right;color:#aab6bd}
.studio-since>span{color:#f4f5f5}
.studio-about-down{width:48px;height:48px;border:1px solid #ffffff50;border-radius:50%;display:grid;place-items:center;font-size:22px;position:absolute;left:50%;bottom:35px;transform:translateX(-50%);transition:background .25s}
.studio-about-down:hover{background:#fff1}
.studio-people{padding-bottom:var(--studio-space)}
.studio-person{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:clamp(36px,7.3vw,124px);align-items:center;padding-top:40px}
.studio-person+.studio-person{margin-top:clamp(70px,13vw,220px)}
.studio-person-portrait{position:relative;margin:0;aspect-ratio:.95;overflow:hidden;background:#303a3e;border-radius:2px}
.studio-person-portrait>img{width:100%;height:100%;object-fit:cover;object-position:47% center;transition:transform 1s cubic-bezier(.2,.7,.3,1)}
.studio-person-portrait:hover>img{transform:scale(1.035)}
.studio-person-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#020709b3,transparent 31%);pointer-events:none}
.studio-person-portrait figcaption{position:absolute;bottom:25px;left:28px;right:28px;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:15px}
.studio-person-portrait figcaption>span:first-child{font-size:clamp(40px,4vw,65px);font-weight:300;letter-spacing:-.04em;line-height:1}
.studio-person-portrait figcaption>span:last-child{font-size:10px;letter-spacing:.05em}
.studio-person-bio h2{font-size:clamp(45px,4.8vw,80px);line-height:1.03;margin:27px 0 32px}
.studio-person-bio p:not(.eyebrow){color:#b4c0c6;font-size:16px;max-width:450px}
.studio-person-bio .studio-bio-lead{font-size:clamp(21px,1.85vw,30px)!important;line-height:1.35;color:#e2e7e9!important;margin-bottom:19px;font-weight:300}
.studio-person-bio .text-link{margin-top:27px}
.studio-person-josue{grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr)}
.studio-person-josue .studio-person-portrait{order:2;aspect-ratio:.93}
.studio-person-josue .studio-person-portrait>img{object-position:29% center}
.studio-point-of-view{padding-block:85px var(--studio-space);border-block:1px solid var(--studio-line);background:#10181d}
.studio-point-of-view>h2{font-size:clamp(53px,7.5vw,130px);line-height:1.025;margin:35px 0 65px}
.studio-point-of-view>h2>span{color:#8195a2}
.studio-beliefs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(30px,5vw,84px);margin-bottom:40px}
.studio-beliefs>div{border-top:1px solid var(--studio-line);padding-top:24px}
.studio-beliefs>div>span{display:block;font-size:30px;font-weight:200;color:#8195a2;margin-bottom:25px}
.studio-beliefs h3{font-size:clamp(25px,2.2vw,38px);margin-bottom:18px}
.studio-beliefs p{color:#aab9c2;font-size:15px;max-width:360px}
.studio-about-bridge{padding-block:var(--studio-space)}
.studio-about-bridge h2{font-size:clamp(46px,6.5vw,110px);line-height:1.03;margin:30px 0 25px}
@media(min-width:1801px){.studio-page .page-wrap{padding-inline:100px}.studio-end-cta{padding-inline:max(100px,calc((100vw - 1600px)/2))!important}}
@media(max-width:1000px){.studio-capability{gap:35px;grid-template-columns:1fr 1fr}.studio-capability-copy h2{font-size:5.7vw}.studio-capability-copy>p:not(.eyebrow){font-size:15px}.studio-case-visual{aspect-ratio:.68}.studio-case-caption{left:20px;right:20px;bottom:20px;font-size:19px}.studio-case-object{top:-3%;height:83%;width:88%;left:6%}.studio-case-firubites .studio-case-object{top:2%;height:78%}.studio-case-bmw .studio-case-object{height:69%;width:87%;left:6.5%}.studio-person{gap:38px;grid-template-columns:1.15fr 1fr}.studio-person-josue{grid-template-columns:1fr 1.15fr}.studio-person-bio h2{font-size:5.6vw}.studio-person-portrait{aspect-ratio:.72}.studio-person-josue .studio-person-portrait{aspect-ratio:.72}.studio-method-steps{gap:25px}.studio-method-steps h3{font-size:27px}}
@media(max-width:700px){.studio-hero{padding-top:145px;padding-bottom:64px}.studio-hero h1{font-size:clamp(46px,10.6vw,72px);margin:28px 0 38px}.studio-hero-bottom{grid-template-columns:1fr;gap:30px;padding-top:25px}.studio-hero-bottom>p{font-size:17px}.studio-service-index{max-width:none}.studio-service-index a{font-size:16px}.studio-capability{grid-template-columns:1fr;gap:35px;padding-top:26px;padding-bottom:85px;scroll-margin-top:90px}.studio-capability-reverse .studio-capability-copy{order:0}.studio-capability-copy h2{font-size:clamp(43px,10.5vw,65px);margin:24px 0}.studio-capability-copy>p:not(.eyebrow){max-width:540px;font-size:16px}.studio-deliverables{max-width:none;margin:24px 0 18px}.studio-deliverables li{font-size:13px;padding:11px 0}.studio-case-visual{aspect-ratio:.94;margin-top:12px}.studio-case-object{width:69%;height:95%;left:15.5%;top:-10%}.studio-case-firubites .studio-case-object{width:58%;left:21%;height:89%;top:-7%}.studio-case-bmw .studio-case-object{width:70%;left:15%;height:87%;top:-8%}.studio-case-caption{font-size:19px}.studio-case-arrow{width:40px;height:40px;font-size:22px}.studio-method{padding-top:48px}.studio-section-heading h2{font-size:clamp(37px,8.7vw,58px)}.studio-method-steps{grid-template-columns:1fr;gap:28px;margin-top:35px}.studio-method-steps li{display:grid;grid-template-columns:35px 1fr;gap:0 14px;padding-top:24px}.studio-step-number{grid-row:span 2;margin:2px 0 0;font-size:12px}.studio-method-steps h3{font-size:28px;margin-bottom:14px}.studio-method-steps p{grid-column:2;font-size:15px;max-width:none}.studio-checkup{grid-template-columns:1fr;gap:40px;padding-block:55px}.studio-checkup-mark{width:160px;margin-left:9px}.studio-checkup-mark span{font-size:88px}.studio-checkup h2{font-size:clamp(36px,8.7vw,58px)}.studio-checkup p:not(.eyebrow){font-size:16px}.studio-faq-list{margin-top:35px}.studio-faq summary{font-size:21px;padding:24px 0}.studio-faq details p{font-size:15px;padding-right:15px}.studio-end-cta{padding-block:43px}.studio-end-cta>a{padding-block:30px}.studio-end-cta h2{font-size:clamp(44px,10.9vw,75px)}.studio-end-cta h2>span{margin-left:.1em}.studio-end-cta>p:last-child{font-size:14px}.studio-about-hero{padding-bottom:113px}.studio-about-hero .studio-hero-bottom{gap:17px;grid-template-columns:1fr auto}.studio-since{font-size:11px}.studio-person,.studio-person-josue{grid-template-columns:1fr;gap:28px;padding-top:15px}.studio-person+.studio-person{margin-top:75px}.studio-person-josue .studio-person-portrait{order:0}.studio-person-portrait,.studio-person-josue .studio-person-portrait{aspect-ratio:.92}.studio-person-portrait figcaption{bottom:22px;left:22px;right:22px}.studio-person-bio h2{font-size:clamp(46px,11vw,68px);margin:22px 0}.studio-person-bio .studio-bio-lead{font-size:23px!important}.studio-person-bio p:not(.eyebrow){max-width:none;font-size:16px}.studio-person-bio .text-link{margin-top:15px}.studio-point-of-view{padding-top:55px}.studio-point-of-view>h2{font-size:clamp(40px,9.2vw,62px);margin:30px 0 40px}.studio-beliefs{grid-template-columns:1fr;gap:28px}.studio-beliefs>div{display:grid;grid-template-columns:25px 1fr;gap:0 12px}.studio-beliefs>div>span{grid-row:span 2;font-size:22px;margin:0}.studio-beliefs h3{font-size:28px;margin-bottom:14px}.studio-beliefs p{grid-column:2;max-width:none}.studio-about-bridge h2{font-size:clamp(40px,9.5vw,62px)}.studio-page .eyebrow{font-size:11px}.studio-page .text-link{font-size:13px;gap:26px}}
@media(prefers-reduced-motion:reduce){.studio-page *, .studio-page *:before, .studio-page *:after{transition:none!important;animation:none!important}.studio-case-object,.studio-case-firubites .studio-case-object{transform:none!important}.studio-case-back img{transform:scale(1.08)!important}.studio-person-portrait:hover>img{transform:none}}
