.scene-hotspots{position:absolute;inset:0;z-index:3;transform:translateY(var(--scene-shift,0px))}.studio-image{transform:translateY(var(--scene-shift,0px)) scale(1.035)}.hotspot{position:absolute;min-width:44px;height:44px;border:1px solid #fff9;color:#fff;border-radius:50%;background:#202b3799;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:22px;transition:background .2s,box-shadow .2s}.hotspot:hover,.hotspot:focus-visible{background:#29343d;box-shadow:0 0 0 6px #fff2}.strategy-hotspot{left:36%;top:39%}.creative-hotspot{left:58%;top:39%}.cat-hotspot{left:81%;top:52%}.hotspot-label{position:absolute;bottom:51px;left:50%;transform:translateX(-50%);font:12px 'DM Sans',sans-serif;background:#222b35;color:white;padding:5px 10px;border-radius:4px;opacity:0;pointer-events:none;transition:opacity .2s}.hotspot:hover .hotspot-label,.hotspot:focus-visible .hotspot-label{opacity:1}.scene-alternatives{display:flex;align-items:center;gap:19px;font-size:12px;color:#737780;margin:-15px 0 25px}.scene-alternatives button{color:#555e69;background:none;border:0;padding:6px 0;cursor:pointer;font-size:12px;text-decoration:underline;text-underline-offset:4px}.scene-alternatives .coffee-detail{margin-left:auto;text-decoration:none}.journey-map{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 2px;border-block:1px solid #dedee2;background:#fafafaed;backdrop-filter:blur(16px)}.journey-map>span{font:11px monospace;color:#797d87;letter-spacing:1.5px}.journey-map a{font-size:13px;color:#5b6069}.journey-map a:last-child{border:none;padding:0;border-radius:0;color:#5b6069}.journey-map a:hover{color:#222}.work-journey{padding:95px 0 60px;scroll-margin-top:60px}.work-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:50px;align-items:end;margin-bottom:35px}.work-heading .eyebrow{grid-column:1/-1}.work-heading h2,.journey-heading h2,.skill-section h2,.lab-intro h2,.personal-story h2{font-family:Manrope,sans-serif;font-size:clamp(34px,3.7vw,52px);font-weight:500;line-height:1.15;letter-spacing:-2px;margin:22px 0 0}.work-heading p{color:#717580;margin-bottom:0;justify-self:end}.project-shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project-entry{display:block;transition:transform .3s}.project-entry:hover{transform:translateY(-6px)}.project-object{aspect-ratio:1.1;background:#292e38;color:#fafafa;position:relative;display:flex;align-items:center;padding:28px;box-shadow:0 22px 28px -26px #20242c;overflow:hidden}.project-object strong{font-family:Manrope,sans-serif;font-size:clamp(27px,3.1vw,47px);letter-spacing:-2px;line-height:1.05}.project-object i{font-family:Georgia,serif;font-weight:400}.project-object strong>span{display:block;font-size:14px;letter-spacing:4px;margin-top:5px}.project-object.g4{background:#e1e3e5;color:#292f39}.project-object.g4 strong{font-size:85px;letter-spacing:-6px}.project-object.tabacaria{background:#44443f}.project-object.tabacaria strong{font-size:clamp(22px,2.5vw,36px);letter-spacing:-1px}.object-index,.object-note{position:absolute;font:10px monospace;letter-spacing:1px;left:24px;right:20px;opacity:.7}.object-index{top:20px}.object-note{bottom:20px;line-height:1.4}.entry-heading{display:flex;justify-content:space-between;align-items:center;margin-top:17px;gap:14px}.entry-heading h3{font-size:19px;font-weight:500;margin:0;letter-spacing:-.5px}.entry-heading>span{border:1px solid #d0d2d7;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex:none}.project-entry>p{color:#757a84;font-size:14px;margin:6px 0 0}.method-journey{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:100px 0 70px;border-top:1px solid #ddd;scroll-margin-top:55px}.journey-heading{align-self:start;position:sticky;top:90px}.journey-heading>p{color:#737984;margin-top:27px}.method-path{list-style:none;padding:0;margin:0}.method-path li{display:grid;grid-template-columns:48px 1fr;gap:25px;position:relative;padding-bottom:47px}.method-path li:not(:last-child):before{content:'';position:absolute;left:21px;top:43px;bottom:0;width:1px;background:#ccd0d7}.path-node{width:44px;height:44px;border:1px solid #bcc2cc;border-radius:50%;display:grid;place-items:center;font:12px monospace;background:#fafafa}.method-path h3{font-size:25px;font-weight:500;margin:5px 0 12px;letter-spacing:-.7px}.method-path strong{font-size:15px;font-weight:500}.method-path p{font-size:15px;color:#727883;margin:9px 0 0}.skill-section{padding:75px 45px;background:#eef0f3;position:relative;border-radius:5px;scroll-margin-top:70px}.skill-section>.eyebrow{justify-content:center}.skill-section>h2{text-align:center}.skill-tree{max-width:940px;margin:40px auto 0}.strategy-root{border:1px solid #737d8d;background:#252d39;color:#fafafa;padding:22px;text-align:center;width:270px;margin:auto;font-size:18px;letter-spacing:3px;box-shadow:0 15px 40px #303b4914;position:relative}.strategy-root small{display:block;font-size:12px;letter-spacing:0;color:#b8c0cc;margin-top:7px}.strategy-root:after{content:'';position:absolute;top:100%;height:35px;width:1px;background:#a5adbb;left:50%}.skill-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:70px;position:relative}.skill-branches:before{content:'';position:absolute;left:16.5%;right:16.5%;height:1px;top:35px;background:#a5adbb}.skill-branch{position:relative;text-align:center}.skill-branch:before{content:'';position:absolute;left:50%;top:-35px;height:35px;width:1px;background:#a5adbb}.skill-branch h3{font-size:17px;font-weight:500;letter-spacing:1px;text-transform:uppercase;margin:0 0 24px}.skill-branch ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:11px}.skill-branch li{font-size:14px;background:#fafafaaa;border:1px solid #d5d9df;padding:8px 20px;min-width:150px;border-radius:3px}.tree-caption{text-align:center;color:#757c87;font-size:13px;margin:33px auto 0;max-width:630px}.lab-journey{margin:85px -5.56% 0;padding:80px 5% 90px;background:#222933;color:#fafafa;display:grid;grid-template-columns:1fr 1.7fr;align-items:center;gap:65px;scroll-margin-top:55px}.lab-intro p{color:#b1b8c3;margin:28px 0;font-size:16px}.lab-intro .eyebrow{color:#c2c9d3}.experiment-shelf{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.experiment:nth-child(2){margin-top:85px}.experiment img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;transition:transform .4s}.experiment:hover img{transform:translateY(-6px)}.experiment span{display:block;font:11px monospace;color:#b3bbc8;margin-top:18px}.experiment h3{font-size:19px;font-weight:400;line-height:1.4;margin:7px 0}.personal-story{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:110px 0 65px;scroll-margin-top:55px}.personal-story p{font-size:17px;color:#6d737d;margin:0 0 22px}.personal-story h2{font-size:38px}.journey-end{text-align:center;padding:90px 30px 75px;margin-top:20px;border-top:1px solid #d9dce1;position:relative}.end-coordinate{font:11px monospace;letter-spacing:2px;color:#8a909a}.journey-end h2{font-family:Manrope,sans-serif;font-size:clamp(65px,9vw,125px);font-weight:400;letter-spacing:-6px;line-height:1.1;margin:22px 0}.journey-end h2 span{color:#a0a7b3}.journey-end p{font-size:18px;color:#6e7681}.end-actions{display:flex;justify-content:center;align-items:center;gap:25px;margin:30px 0}.journey-end small{display:block;font-size:12px;color:#9096a0;margin-top:35px}.contact-direct{padding:0 0 80px;display:flex;justify-content:center;gap:40px;flex-wrap:wrap;font-size:15px}.lab-route{margin-bottom:70px}.experiment-detail{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;padding:35px 0 60px;scroll-margin-top:30px}.experiment-detail img{width:100%;height:auto}.experiment-detail h2{font-size:38px;line-height:1.2;font-weight:500;letter-spacing:-1px}.experiment-detail p{color:#727985}.case-opening{padding-top:45px}.case-opening .page-head{padding-top:32px;padding-bottom:10px}.case-status{font:12px monospace;color:#848b97;margin-bottom:50px}.case-layout{display:grid;grid-template-columns:240px 1fr;gap:85px}.case-layout nav{display:flex;flex-direction:column;align-items:start;gap:17px;position:sticky;top:40px;height:fit-content;font-size:14px}.case-layout nav a:last-child{padding:0;border:0;border-radius:0;color:#747579}.case-step{padding:25px 0 38px;border-top:1px solid #d9dce1;scroll-margin-top:30px}.case-step h2{font-size:30px;font-weight:500;margin:10px 0}.case-step p{color:#6d7580;max-width:700px}.case-step img{max-width:100%;height:auto}.dialog-open{overflow:hidden}dialog{border:1px solid #dce0e5;border-radius:8px;padding:38px;width:min(620px,calc(100% - 32px));max-height:85vh;overflow:auto;background:#fafafa;color:#252a32;box-shadow:0 20px 90px #17223140}dialog::backdrop{background:#17223199;backdrop-filter:blur(6px)}.dialog-close{position:absolute;right:15px;top:12px;background:none;border:1px solid #c9ced5;border-radius:50%;width:38px;height:38px;cursor:pointer;font-size:22px}dialog h2{font-size:32px;font-weight:500;letter-spacing:-1px;margin:12px 40px 15px 0}dialog h3{font-size:14px;font-weight:600;margin:24px 0 6px}dialog p{font-size:15px;color:#69727e}dialog .button{margin-top:20px}dialog img{max-width:100%}.dialog-areas{font:12px monospace!important;color:#7d8590!important}.studio-scene:focus-within .hotspot-label{transition:none}
@media(min-width:1600px){.project-object strong{font-size:47px}.project-object.tabacaria strong{font-size:36px}}
@media(max-width:950px){.intro-columns{gap:30px}.lab-journey{gap:30px}.project-shelf{gap:16px}.project-object{padding:20px}.object-index,.object-note{left:20px}.method-journey{gap:40px}.skill-section{padding:55px 25px}.case-layout{gap:35px;grid-template-columns:180px 1fr}}
@media(max-width:650px){.studio-scene{aspect-ratio:1.45}.strategy-hotspot{left:34%;top:41%}.creative-hotspot{left:57%;top:41%}.cat-hotspot{left:81%;top:53%}.scene-bottom{font-size:9px}.scene-alternatives{gap:12px;flex-wrap:wrap;margin-top:-15px}.scene-alternatives>span{display:none}.scene-alternatives .coffee-detail{margin-left:0}.journey-map{gap:18px;overflow:auto;justify-content:flex-start;padding-block:14px;flex-wrap:nowrap}.journey-map>span{display:none}.journey-map a{white-space:nowrap}.work-heading,.method-journey,.personal-story,.lab-journey,.experiment-detail,.case-layout{grid-template-columns:1fr}.work-heading p{justify-self:start;margin-top:22px}.work-journey{padding-top:55px}.project-shelf{grid-template-columns:1fr;gap:32px}.project-object{aspect-ratio:1.5;padding:28px}.project-object strong{font-size:48px}.project-object.tabacaria strong{font-size:38px}.object-index,.object-note{left:28px}.method-journey{padding-top:60px;gap:35px}.journey-heading{position:static}.method-path li{padding-bottom:35px}.skill-section{padding:45px 18px;margin-inline:-3%}.skill-section h2{font-size:34px}.skill-branches{gap:8px}.skill-branch h3{font-size:12px;letter-spacing:0}.skill-branch li{font-size:12px;min-width:0;width:100%;padding:8px 3px}.strategy-root{width:230px}.tree-caption{font-size:12px}.lab-journey{padding:55px 6%;margin-inline:-6.82%;gap:30px}.experiment-shelf{gap:15px}.experiment:nth-child(2){margin-top:40px}.experiment h3{font-size:17px}.personal-story{padding-top:65px;gap:30px}.personal-story h2{font-size:33px}.journey-end{padding:60px 0}.journey-end h2{letter-spacing:-4px}.end-actions{flex-direction:column;gap:20px}.journey-end p{font-size:16px}.contact-direct{gap:18px;text-align:center;font-size:14px}.case-layout nav{position:static;flex-direction:row;flex-wrap:wrap;gap:14px;margin-bottom:20px}.case-opening .page-head h1{font-size:42px;letter-spacing:-2px}.experiment-detail{gap:18px}.experiment-detail h2{font-size:31px}.experiment-detail>div{padding-bottom:20px}dialog{padding:25px}dialog h2{font-size:28px}.scene-top{font-size:9px}.scene-top span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.studio-image,.scene-hotspots{transform:none!important;will-change:auto}.project-entry:hover,.experiment:hover img{transform:none}.journey-map{backdrop-filter:none}}
.journey-end h1{font-family:Manrope,sans-serif;font-size:clamp(65px,9vw,125px);font-weight:400;letter-spacing:-6px;line-height:1.1;margin:22px 0}.journey-end h1 span{color:#a0a7b3}@media(max-width:650px){.journey-end h1{letter-spacing:-4px}}
