:root{--paper:#fbfbf7;--hero:#f1f5f2;--ink:#121f21;--muted:#707872;--line:#d9ddda;--sage:#e3ece4;--green:#88a43d;--gutter:clamp(24px,4.445vw,80px);--max:1440px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 14px/1.5 Inter,sans-serif;letter-spacing:-.5px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;letter-spacing:inherit;color:inherit;border:0;cursor:pointer}button:disabled{cursor:default;opacity:1}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-1px}img{display:block}button:focus-visible,a:focus-visible{outline:2px solid #4d7058;outline-offset:5px}a:hover{color:#4d7058}.container{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-70px;left:20px;z-index:20;padding:12px 20px;background:white;border-radius:8px}.skip-link:focus{top:12px}[hidden]{display:none!important}
.hero{background:var(--hero)}.site-header{height:78px;border-bottom:1px solid var(--line);padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;max-width:1800px;margin:auto}.wordmark{font-size:16px;color:#000;flex:1}.wordmark strong{font-weight:700}.desktop-nav{display:flex;gap:32px}.header-actions{display:flex;gap:32px;align-items:center;justify-content:flex-end;flex:1}.language{background:none;padding:0;white-space:nowrap}.language span{margin-left:5px}.pill{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:#fff;border-radius:40px;padding:12px 18px;white-space:nowrap}.arrow{font-size:21px;line-height:1}.hero-content{min-height:787px;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:110px;padding-bottom:110px;align-items:start}.hero h1{font-size:clamp(54px,5.556vw,80px);font-weight:400;line-height:1;letter-spacing:-1px;color:#000;position:relative;width:max-content;max-width:100%}.product-word{position:relative;display:inline-block;isolation:isolate}.selection{position:absolute;inset:5px -5px -5px;border:1.5px dashed #3b82f6;pointer-events:none}.selection i{position:absolute;width:6px;height:6px;border:1.5px solid #3b82f6;background:#fff}.selection i:nth-child(1){left:-3px;top:-3px}.selection i:nth-child(2){right:-3px;top:-3px}.selection i:nth-child(3){left:-3px;bottom:-3px}.selection i:nth-child(4){right:-3px;bottom:-3px}.floating-cursor{--cursor:#e040fb;position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:2px;z-index:2;pointer-events:none;animation:float 5s ease-in-out infinite}.floating-cursor>span{background:var(--cursor);font:500 11px/11px Inter,sans-serif;letter-spacing:-.2px;color:white;padding:2px 8px;border-radius:40px;box-shadow:0 2px 8px color-mix(in srgb,var(--cursor),transparent 60%)}.floating-cursor.games{--cursor:#f59e0b;left:25%;top:-15px;animation-duration:5.3s;animation-delay:-1.2s}.floating-cursor.website{--cursor:#22c55e;left:55%;top:34px;animation-duration:4.8s;animation-delay:-2.8s}.floating-cursor.software{--cursor:#3b82f6;left:2%;bottom:-4px;animation-duration:6.2s;animation-delay:-.7s}.floating-cursor.apps{--cursor:#e040fb;right:5%;bottom:-24px;animation-duration:5.6s;animation-delay:-3s}@keyframes float{0%,100%{transform:translate(0,0)}50%{transform:translate(5px,-10px)}}
.portrait{position:relative;width:420px;height:470px;justify-self:end;margin-right:66px;margin-top:-4px}.portrait-circle{position:absolute;left:28px;top:83px;width:364px;height:364px}.portrait-circle img{width:364px;height:364px}.portrait-poster{position:absolute;left:31px;top:0;width:351px;height:427px;object-fit:contain}.portrait-video{position:absolute;width:351px;height:427px;left:31px;top:0;object-fit:contain;opacity:0}.portrait.video-ready .portrait-video{opacity:1}.portrait.video-ready .portrait-poster{opacity:0}.hero-bottom{height:64px}.hero-bottom>a{display:flex;align-items:center;justify-content:center;gap:9px;border-top:1px solid var(--line);padding-top:20px;color:#3b403c}.hero-bottom>a span{font-size:19px;line-height:1}.menu-toggle,.mobile-nav{display:none}
.eyebrow{font-size:14px;line-height:1.5}.about{padding-top:140px;padding-bottom:110px}.about h2{font-size:clamp(38px,4.445vw,64px);font-weight:600;line-height:1.1;color:#202a24;margin-top:26px}.about h2 span{color:var(--green)}.about-detail{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-top:177px;padding-bottom:48px;border-bottom:1px solid var(--line)}.about-detail img{width:122px;height:152px;border-radius:12px;object-fit:cover}.about-detail p{max-width:662px;font-size:18px;line-height:1.5;color:#4d7058}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:48px}.section-heading h2{font-size:clamp(40px,4.445vw,64px);line-height:1.1;font-weight:600;margin-top:26px}.section-note{max-width:544px;text-align:right;color:var(--muted);font-size:16px;line-height:1.5;padding-bottom:3px}.projects{padding-top:20px;padding-bottom:104px}.project-showcase{display:grid;grid-template-columns:53% 47%;margin-top:52px;min-height:610px;border:1px solid var(--line);border-radius:5px;overflow:hidden}.project-list{padding:42px 40px 34px 30px;display:flex;flex-direction:column;justify-content:center}.project-tab{width:100%;display:grid;grid-template-columns:24px 1fr 20px;gap:16px;background:transparent;text-align:left;padding:26px 16px;position:relative;border-bottom:1px solid var(--line);color:#525853;transition:background .25s,color .25s}.project-tab:last-child{border-bottom:0}.project-tab[aria-selected=true]{background:var(--sage);color:var(--ink);border-radius:4px;padding-block:28px}.project-number{font-size:14px;padding-top:5px}.project-name{font-family:Manrope,sans-serif;font-size:28px;line-height:1.3;letter-spacing:-1px;font-weight:600}.project-description{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .35s,opacity .25s}.project-description>span{overflow:hidden;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:-.5px;max-width:360px}.project-tab[aria-selected=true] .project-description{grid-template-rows:1fr;opacity:1;margin-top:16px}.project-tab .arrow{align-self:start;margin-top:5px;transition:transform .3s}.project-tab[aria-selected=true] .arrow{transform:rotate(45deg)}.progress{position:absolute;left:0;bottom:0;width:100%;height:2px;background:#c7d8c9;opacity:0}.project-tab[aria-selected=true] .progress{opacity:1}.progress-fill{display:block;height:100%;background:#4d7058;transform:scaleX(0);transform-origin:left}.project-panels{position:relative;min-width:0;min-height:608px}.project-panel{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .45s ease,visibility .45s;overflow:hidden;background:var(--panel-bg)}.project-panel.active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}.project-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}.project-category{position:absolute;top:48px;left:10.4%;font-family:Manrope,sans-serif;font-size:28px;line-height:1.3;font-weight:600;letter-spacing:-1px;color:#fff}.project-category span{display:block}.project-category span:last-child:after{content:'_';color:var(--green);font:700 18px Inter,sans-serif}.project-panel[data-project=senai] .project-category{color:#23464d}.project-logo{position:absolute;right:10.4%;top:48px;width:48px;height:48px;object-fit:contain}.project-panel[data-project=bees] .project-logo{width:66px;height:66px;top:40px;mix-blend-mode:luminosity}.project-panel[data-project=senai] .project-logo{width:105px;height:38px}.project-panel[data-project=spark] .project-logo{width:46px;height:46px}.project-panel[data-project=culligan] .project-logo{width:60px;height:60px;top:44px}.project-caption{position:absolute;left:10.4%;right:8%;bottom:48px;background:rgba(61,45,34,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:4px solid rgba(255,255,255,.05);border-radius:16px;box-shadow:0 2px 12px #0000000f;padding:18px 16px 20px;color:#fff}.project-caption h3{font-size:28px;font-weight:600;line-height:1.3}.project-caption p{margin-top:8px;font-size:16px;line-height:1.5}.project-caption .project-details{margin-top:14px;width:100%;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;background:white;color:var(--ink);border-radius:8px;text-align:left}.slideshow-controls{display:flex;justify-content:space-between;align-items:center;padding-top:13px;color:var(--muted);font-size:12px}.slideshow-controls button{background:none;display:flex;align-items:center;gap:8px;min-height:32px}.pause-symbol{font-size:15px}.slide-position{font-variant-numeric:tabular-nums}
.explorations{padding-bottom:140px}.explorations .section-note{max-width:420px}.exploration-grid{margin-top:52px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(272px,auto) minmax(298px,auto);gap:32px}.exploration{position:relative;padding:30px;border-radius:18px;overflow:hidden;min-width:0}.exploration h3{font-size:24px;line-height:1.3;font-weight:600}.card-copy{font-size:14px;color:var(--muted);line-height:1.5}.sculpt{grid-row:span 2;background:var(--sage);min-height:602px}.sculpt h3{font-size:32px;margin-top:26px}.sculpt>.card-copy{margin-top:18px}.characters{position:absolute;left:0;right:0;bottom:37px;height:333px}.otto{position:absolute;left:7.2%;bottom:0;width:44.3%;height:307px}.otto img{width:100%;height:307px;object-fit:fill}.emma{position:absolute;left:49.9%;bottom:0;width:45.8%;height:333px;overflow:hidden}.emma img{position:absolute;left:-92.02%;top:0;width:284.04%;height:100%;max-width:none}.characters span{position:absolute;top:107px;border:1px solid #d7dfcf;background:#fafbf6;border-radius:30px;padding:6px 14px;box-shadow:0 3px 5px #253b280f;font-size:14px}.otto span{left:18%;transform:rotate(-3deg)}.emma span{left:7%;transform:rotate(3deg);background:#c7d8c9;border-color:#c7d8c9}.games-card{background:#eceeec;display:flex;flex-direction:column;justify-content:space-between;gap:36px}.games-card h3{margin-top:12px;font-size:24px}.games-card .card-copy{max-width:248px;margin-top:9px}.circle-button{width:36px;height:36px;border:1px solid #b9c5b3;position:absolute;right:24px;top:28px;border-radius:50%;background:none;font-size:21px}.branding{background:#c3c4ba;padding:25px;min-height:272px}.branding h3{margin-top:12px}.branding>img{position:absolute;bottom:0;left:0;width:100%;height:149px;object-fit:cover}.branding .circle-button{border-color:var(--line)}.travel{background:#f1eadf}.travel h3{font-size:28px;margin-top:25px}.travel .card-copy{margin-top:12px;position:relative;z-index:1;max-width:65%}.text-button{display:inline-flex;align-items:center;gap:10px;background:none;padding:0}.travel .text-button{margin-top:20px}.travel-photo{position:absolute;right:13%;top:105px;width:109px;height:143px;object-fit:cover;border-radius:12px;transform:rotate(7.22deg)}.invitation{background:var(--ink);color:white}.invitation h3{margin-top:16px}.invitation-inner{margin-top:24px;padding:24px 17px;background:#ffffff0d;border-radius:12px}.invitation-inner .pill{background:#e4f3be;color:var(--ink);margin-top:24px;padding:8px 16px 10px;font-size:14px;max-width:100%;gap:12px}.process{padding-bottom:100px}.process h2{font-size:48px;line-height:1.3;font-weight:600;margin-top:26px}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px;margin-top:60px}.process-grid h3{font:400 18px/1.5 Inter,sans-serif;letter-spacing:-.5px;margin-top:25px}.process-grid p{margin-top:15px;color:var(--muted);font-size:14px;line-height:1.5}.contact{background:#525853;text-align:center;padding:105px var(--gutter) 110px;color:#c7d8c9;display:flex;flex-direction:column;align-items:center;gap:32px}.availability span{color:#d6ed9a;font-size:10px;margin-right:6px}.contact h2{font-size:clamp(40px,5.556vw,80px);font-weight:600;line-height:1}.contact h2 span{color:#d6ed9a}.contact-buttons{display:flex;justify-content:center;gap:32px}.contact .pill{color:#66866c;padding:15px 22px}.resume{color:#e3ece4}.site-footer{background:var(--hero);overflow:hidden}.footer-top{display:flex;justify-content:space-between;gap:48px;padding-block:56px}.footer-top>p{font-size:16px;color:var(--muted);font-weight:500}.footer-top nav{display:flex;gap:32px;align-items:center}.footer-wordmark{display:block;font:400 clamp(64px,14.5vw,270px)/1.18 Manrope,sans-serif;letter-spacing:-.07em;color:#c7d8c9;white-space:nowrap;text-align:center;padding:0 8px 20px}.footer-wordmark strong{font-weight:700}.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #c7d8c9;padding-block:24px;gap:32px;color:var(--muted)}.footer-bottom>p{flex:1}.footer-bottom>a{display:flex;align-items:center;gap:7px}.socials,.socials>div{display:flex;align-items:center;gap:16px}.socials a{display:grid;place-items:center;width:32px;height:32px;background:#c7d8c9;border-radius:50%}
@media(min-width:1800px){.hero-content{min-height:820px}.portrait{margin-right:66px}.hero-bottom{max-width:1440px}}
@media(max-width:1199px){.site-header{gap:20px}.header-actions{gap:20px}.desktop-nav{gap:24px}.hero-content{min-height:720px;padding-block:100px}.portrait{margin-right:0;transform:scale(.88);transform-origin:top right}.about-detail{margin-top:100px;gap:70px}.about-detail p{max-width:58%}.project-list{padding:28px 24px}.project-name{font-size:24px}.project-tab{gap:12px;padding-inline:12px}.project-category{left:8%;font-size:24px}.project-caption{left:6%;right:6%;bottom:32px;padding:16px 12px}.project-caption h3{font-size:24px}.project-caption p{font-size:14px}.section-note{max-width:43%}.exploration-grid{gap:22px}.exploration{padding:24px}.exploration h3{font-size:22px}.sculpt h3{font-size:30px}.travel-photo{right:7%;width:90px;height:123px}.invitation-inner{padding:20px 12px}.invitation-inner .pill{font-size:12px;padding-inline:12px;gap:8px}.process-grid{gap:32px}.footer-top{gap:24px}.footer-top nav{gap:24px}}
@media(max-width:900px){.hero-content{min-height:660px;gap:0;padding-top:80px;padding-bottom:100px}.hero h1{font-size:clamp(45px,6vw,54px)}.portrait{width:340px;margin-right:0;transform:scale(.72);transform-origin:top right}.header-actions .pill{display:none}.wordmark,.header-actions{flex:initial}.about{padding-top:100px;padding-bottom:90px}.about-detail{margin-top:90px}.about-detail p{max-width:65%;font-size:16px}.wide-break{display:none}.section-heading{gap:32px}.section-note{font-size:14px}.project-showcase{grid-template-columns:48% 52%}.project-list{padding:20px 12px}.project-tab{padding-block:24px;grid-template-columns:20px 1fr 16px;gap:8px}.project-name{font-size:22px}.project-description>span{font-size:13px}.project-panels{min-height:575px}.project-category{font-size:22px}.project-logo{right:8%}.project-panel[data-project=senai] .project-logo{width:85px;height:auto}.exploration-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto auto}.sculpt{grid-column:1;grid-row:span 2}.games-card{grid-column:2;grid-row:1}.branding{grid-column:2;grid-row:2}.travel{grid-column:1;grid-row:3;min-height:298px}.invitation{grid-column:2;grid-row:3}.explorations{padding-bottom:100px}.process h2{font-size:40px}.process-grid{gap:28px}.process-grid h3{font-size:16px}.footer-top{flex-direction:column;gap:24px;padding-block:40px}.footer-top nav{justify-content:space-between}.footer-bottom{flex-wrap:wrap;gap:24px}.socials>span{display:none}}
@media(max-width:620px){:root{--gutter:24px}html{scroll-padding-top:20px}.site-header{height:72px}.desktop-nav,.header-actions{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;background:none;align-items:flex-end;padding:10px}.menu-toggle span{width:23px;height:1.5px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.mobile-nav{display:flex;position:absolute;top:71px;left:0;right:0;padding:24px;background:var(--hero);border-bottom:1px solid var(--line);flex-direction:column;gap:8px;z-index:10;box-shadow:0 12px 16px #121f2108}.mobile-nav a,.mobile-nav>span{padding:10px 0;font-size:18px}.mobile-nav small{font-size:12px;color:var(--muted);margin-left:8px}.hero-content{display:flex;flex-direction:column;gap:36px;padding-top:54px;padding-bottom:34px;min-height:0}.hero h1{font-size:clamp(37px,9.05vw,56px);line-height:1.06;letter-spacing:-1.2px;width:100%;max-width:500px}.desktop-break{display:none}.portrait{width:280px;height:300px;align-self:center;transform:none;margin:0}.portrait-circle{left:0;top:0;transform:scale(.69);transform-origin:top left;margin-left:14px;margin-top:48px}.portrait-poster,.portrait-video{left:21px;top:0;width:240px;height:292px}.hero-bottom{height:64px}.hero-bottom>a{font-size:13px;padding-top:19px}.floating-cursor{transform:scale(.8);transform-origin:left top;animation-name:float-small}.floating-cursor.website{top:19px;left:60%}.floating-cursor.games{top:-15px;left:28%}.floating-cursor.software{bottom:-10px;left:0}.floating-cursor.apps{bottom:-20px;right:-8%}.selection{inset:2px -3px -3px}@keyframes float-small{0%,100%{transform:translate(0,0) scale(.8)}50%{transform:translate(3px,-6px) scale(.8)}}.about{padding-top:80px;padding-bottom:70px}.about h2{font-size:36px;line-height:1.13;letter-spacing:-1.2px;margin-top:22px}.about h2 span{display:block;margin-top:8px}.about-detail{margin-top:42px;flex-direction:column;align-items:flex-start;gap:24px;padding-bottom:36px}.about-detail img{width:80px;height:100px}.about-detail p{max-width:none;font-size:16px}.section-heading{display:block}.section-heading h2{font-size:40px;line-height:1.1;margin-top:22px}.section-note,.explorations .section-note{max-width:none;text-align:left;margin-top:24px;font-size:14px}.projects{padding-top:0;padding-bottom:70px}.project-showcase{display:flex;flex-direction:column;margin-top:32px;min-height:0}.project-list{padding:12px;display:grid;grid-template-columns:1fr;order:0}.project-tab{padding:14px 12px;grid-template-columns:22px 1fr 20px;gap:8px;min-height:58px}.project-tab[aria-selected=true]{padding-block:18px}.project-number{padding-top:3px;font-size:12px}.project-name{font-size:20px}.project-tab[aria-selected=true] .project-description{margin-top:8px}.project-description>span{font-size:13px;max-width:100%}.project-tab .arrow{font-size:19px;margin-top:2px}.project-panels{min-height:0;height:420px;order:1}.project-category{top:28px;left:24px;font-size:22px}.project-logo{top:28px;right:24px;width:40px;height:40px}.project-panel[data-project=bees] .project-logo{top:23px;width:50px;height:50px}.project-panel[data-project=culligan] .project-logo{top:24px;width:48px;height:48px}.project-panel[data-project=senai] .project-logo{width:80px;height:29px}.project-caption{left:16px;right:16px;bottom:20px;padding:14px 12px 16px}.project-caption h3{font-size:23px}.project-caption p{font-size:13px;line-height:1.4}.project-caption .project-details{padding:12px 14px;margin-top:12px;font-size:13px}.explorations{padding-bottom:80px}.exploration-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:20px;margin-top:32px}.exploration{grid-column:auto;grid-row:auto;padding:28px}.sculpt{min-height:560px}.sculpt h3{font-size:32px;margin-top:22px}.characters{max-width:390px;bottom:24px}.sculpt .card-copy{margin-top:16px}.games-card{min-height:272px;gap:35px}.branding{min-height:300px}.branding>img{height:175px}.branding h3{font-size:24px}.travel{min-height:298px}.travel .travel-photo{right:11%;width:109px;height:143px}.travel h3{font-size:28px}.invitation-inner{padding:24px 17px}.invitation-inner .pill{font-size:14px;padding:10px 16px;gap:16px}.process{padding-bottom:80px}.process h2{font-size:32px;line-height:1.2;margin-top:22px}.process-grid{grid-template-columns:1fr;gap:36px;margin-top:40px}.process-grid h3{font-size:18px;margin-top:18px}.process-grid p{margin-top:12px;font-size:14px}.contact{padding-top:72px;padding-bottom:72px;gap:28px}.contact h2{font-size:clamp(31px,8vw,44px);line-height:1.12;letter-spacing:-1.1px}.contact h2 br{display:none}.contact h2 span{display:block;margin-top:2px}.availability{font-size:12px}.contact-buttons{flex-direction:column;gap:12px;width:100%;align-items:center}.contact .pill{min-width:246px;justify-content:space-between}.footer-top{padding-top:36px;padding-bottom:36px;gap:28px}.footer-top>p{font-size:14px}.footer-top nav{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.footer-top .language{text-align:left}.footer-wordmark{font-size:15vw;letter-spacing:-.075em;padding-bottom:28px}.footer-bottom{display:grid;grid-template-columns:1fr auto;gap:24px;font-size:12px}.socials{grid-column:1;grid-row:2}.footer-bottom>a{grid-column:2;grid-row:2}.footer-bottom>p{grid-column:1 / -1}.socials>div{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.portrait-video{display:none}.portrait.video-ready .portrait-poster{opacity:1}}
/* Enquadramento do WebM: remove o espaço transparente do próprio vídeo. */
.portrait-video{width:280px;height:auto;aspect-ratio:9/16;left:70px;top:-2px;object-fit:contain}
@media(min-width:621px) and (max-width:900px){.portrait{margin-right:20px}.project-tab{min-width:0}.project-name{overflow-wrap:anywhere}}
@media(max-width:620px){.portrait-video{width:193px;height:auto;left:40px;top:-11px}.floating-cursor.website{top:-14px;left:74%}.floating-cursor.games{top:-17px;left:30%}.floating-cursor.software{bottom:-10px;left:-4px}.floating-cursor.apps{bottom:-12px;right:-20px}}

/* Cursores orbitam as bordas, deixando o centro de “produtos” livre. */
.floating-cursor.games{left:24%;top:-30px;animation-duration:3.8s}
.floating-cursor.website{left:76%;top:-24px;animation-duration:3.5s}
.floating-cursor.software{left:-22px;bottom:-10px;animation-duration:4.3s}
.floating-cursor.apps{right:-22px;bottom:-20px;animation-duration:3.9s}
@keyframes float{0%,100%{transform:translate(0,0)}35%{transform:translate(10px,-9px)}70%{transform:translate(-7px,5px)}}
@media(max-width:620px){
 .floating-cursor.games{left:20%;top:-26px}
 .floating-cursor.website{left:74%;top:-24px}
 .floating-cursor.software{left:-14px;bottom:-16px}
 .floating-cursor.apps{right:-22px;bottom:-19px}
 @keyframes float-small{0%,100%{transform:translate(0,0) scale(.8)}35%{transform:translate(6px,-5px) scale(.8)}70%{transform:translate(-4px,3px) scale(.8)}}}

.portrait-poster{width:252px;height:306px;left:84px;top:48px}
@media(max-width:620px){.portrait-poster{width:174px;height:212px;left:54px;top:38px}}

/* Tipografia: peso regular real e suavização próxima ao Figma no macOS. */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none}
.desktop-nav,.mobile-nav,.header-actions,.eyebrow,.card-copy,.section-note,.about-detail p,.project-description,.project-caption p,.project-caption .project-details,.process-grid p,.contact-buttons,.footer-top>p,.footer-top nav,.footer-bottom{font-weight:400}
/* 78 px de cabeçalho + 723 px de conteúdo + 64 px de chamada = 865 px. */
@media(min-width:901px){.hero-content{min-height:723px}}

.portrait-poster{width:280px;height:auto;aspect-ratio:9/16;left:70px;top:-2px}
@media(max-width:620px){.portrait-poster{width:193px;height:auto;left:40px;top:-11px}}

/* Revisão dos cards e da navegação: proporções preservadas em todas as larguras. */
.project-tab{grid-template-columns:28px minmax(0,1fr)}
.project-description>span{max-width:100%}
.about{position:relative;padding-block:88px;scroll-margin:0;outline:none}
.about-detail{margin-top:80px;padding-bottom:0;border-bottom:0}
.about::after{content:"";position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);border-bottom:1px solid var(--line)}
.projects{padding-top:100px}

.characters{height:auto;aspect-ratio:415/333;max-width:none;bottom:37px;isolation:isolate}
.otto{left:0;bottom:7.8%;width:50%;height:92.19%}
.otto img{position:absolute;left:-7.2%;bottom:0;width:auto;height:100%;max-width:none;object-fit:contain;z-index:2}
.emma{left:49.88%;bottom:0;width:45.78%;height:100%;overflow:visible}
.emma img{left:50%;top:0;width:auto;height:100%;transform:translateX(-50%);z-index:2;pointer-events:none}
.characters span{z-index:1;white-space:nowrap}
.otto span{left:30.4%;top:34.86%}
.emma span{left:6.3%;top:32.1%}
.travel{display:grid;grid-template-columns:minmax(0,1fr) minmax(80px,30%);column-gap:24px;row-gap:12px;align-content:start}
.travel>img:first-child{grid-column:1 / -1;grid-row:1;margin-bottom:13px}
.travel h3{grid-column:1;grid-row:2;font-size:28px;margin:0}
.travel .card-copy{grid-column:1;grid-row:3;max-width:none;margin:0}
.travel .card-copy br{display:none}
.travel .text-button{grid-column:1 / -1;grid-row:4;justify-self:start;margin-top:8px}
.travel .travel-photo{position:relative;grid-column:2;grid-row:2 / 5;align-self:center;justify-self:center;top:auto;right:auto;width:100%;max-width:109px;height:auto;aspect-ratio:109/143;object-fit:cover}
.invitation-prompt{display:flex;align-items:center;gap:7px}
.invitation-prompt svg{flex:none}
@media(max-width:900px){.project-tab{grid-template-columns:22px minmax(0,1fr)}.about{padding-block:72px}.about-detail{margin-top:64px}.projects{padding-top:80px}}
@media(max-width:620px){.about{padding-block:56px}.about-detail{margin-top:40px}.projects{padding-top:64px}.characters{bottom:24px}.sculpt{min-height:calc(264px + (100vw - 48px)*.8024)}.travel{column-gap:20px}}

/* A proporção do enquadramento do Otto acompanha o tamanho do card do Figma. */
.otto{left:7.23%;bottom:7.8%;width:44.34%;height:auto;aspect-ratio:184/307}
.otto img{left:0;bottom:0;width:100%;height:100%;object-fit:fill;aspect-ratio:184/307}
.otto span{left:17.9%;top:34.86%}
.travel{grid-template-columns:minmax(0,1fr) minmax(90px,35%)}
.travel .travel-photo{max-width:128px}
.projects:focus,.contact:focus{outline:none}
.copy-button{transition:background-color .2s,color .2s,box-shadow .2s}
.copy-check{display:none;font-size:18px;line-height:16px}
.copy-button.is-copied{background:#bfd783;color:#203d29;box-shadow:none}
.copy-button.is-copied .copy-icon{display:none}
.copy-button.is-copied .copy-check{display:block}
.copy-button.copy-error{box-shadow:inset 0 0 0 1px #ac6752}

/* Aproxima o primeiro item do topo do carrossel. */
.project-showcase{margin-top:32px}
.project-list{justify-content:flex-start;padding-top:16px}
@media(max-width:620px){.project-showcase{margin-top:24px}.project-list{padding-top:12px}}

/* Language controls stay accessible at the top, including on phones. */
.language:not(:disabled){cursor:pointer}
.language:focus-visible{outline:2px solid #4d7058;outline-offset:6px}
html[lang="en"] .hero h1{width:max-content}
html[lang="en"] .product-word .games{left:20%;top:-30px}
html[lang="en"] .product-word .website{left:76%;top:-24px}
@media(max-width:620px){
 .site-header{gap:10px}
 .header-actions{display:flex;margin-left:auto}
 .header-actions .pill{display:none}
 .header-actions .language{font-size:12px}
 .mobile-nav .language{text-align:left;padding:10px 0;font-size:18px}
 html[lang="en"] .hero h1{width:100%}
 html[lang="en"] .product-word .games{top:-26px}
 html[lang="en"] .product-word .website{top:-24px}
}

/* Linked cards and UI exploration. */
a.circle-button{display:grid;place-items:center}.project-details{cursor:pointer}.socials a:hover{background:#b5c9b8}.ui-card{background:#eedde9;display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-height:298px}.ui-card h3{font-size:28px;line-height:1.15;margin-top:3px}.ui-card .card-copy{max-width:60%;position:relative;z-index:1}.ui-card .text-button{margin-top:auto;position:relative;z-index:1}.ui-art{position:absolute;width:138px;height:155px;right:18px;top:72px}.ui-window{position:absolute;width:114px;height:130px;background:#fffafc;border:1px solid #ba96ad;border-radius:10px;transform:rotate(8deg);padding:10px;box-shadow:0 8px 20px #6c305014}.ui-window>i{display:inline-block;background:#d3bbcc;width:4px;height:4px;border-radius:50%;vertical-align:top}.ui-preview{display:grid;gap:8px;margin-top:6px}.ui-preview b{height:42px;background:#cfb8db;border-radius:5px}.ui-preview span{height:6px;border-radius:3px;background:#e8dae6}.ui-preview span:last-child{width:60%}.ui-color{position:absolute;bottom:0;right:0;width:64px;height:72px;display:grid;place-items:center;border-radius:8px;background:#9ba982;color:#fff;font:500 30px Manrope,sans-serif;transform:rotate(-9deg);box-shadow:0 8px 18px #29442118}.footer-top nav{flex-wrap:wrap;gap:24px}@media(max-width:1100px) and (min-width:901px){.ui-art{right:8px;transform:scale(.8);transform-origin:right center}.ui-card .card-copy{max-width:62%}}@media(max-width:900px){.ui-card{grid-column:1;grid-row:3}}@media(max-width:620px){.ui-card{grid-column:auto;grid-row:auto;min-height:298px}.ui-art{right:28px}.footer-top nav{gap:18px 24px}}
/* Homepage refinements: brand CTA, roomy navigation, compact project previews. */
.header-actions .pill{background:#d6ed9a}
.desktop-nav{gap:48px}
@media(min-width:621px) and (max-width:1199px){.desktop-nav{gap:40px}}
.ui-card{background:#f1eadf}
.ui-card .card-copy{max-width:100%;margin-top:12px;font-size:14px;line-height:1.5}
.ui-art{top:50px;transform:scale(.8);transform-origin:top right}
.ui-card h3{min-height:84px}
.resume{transition:color .18s}.resume:hover,.resume:focus-visible{color:#d6ed9a}.resume svg{flex:none;stroke:currentColor}
@media(min-width:621px){
 .project-showcase{min-height:0;height:clamp(420px,calc(100svh - 245px),560px)}
 .project-panels{min-height:0;height:100%}
 .project-list{padding:12px 24px}
 .project-tab{padding:18px 12px}
 .project-tab[aria-selected=true]{padding-block:18px}
 .project-tab[aria-selected=true] .project-description{margin-top:8px}
 .project-name{font-size:clamp(21px,1.945vw,28px)}
 .project-caption{bottom:24px;padding:14px 14px 16px}
 .project-caption h3{font-size:24px}
 .project-caption p{font-size:14px;margin-top:6px}
 .project-caption .project-details{padding:12px 16px;margin-top:12px}
}
@media(max-width:620px){.project-panels{height:360px}.ui-art{right:24px}}
@media(max-width:620px){.project-panels{order:0}.project-list{order:1}}
/* Revision 16: roomier project rows inside the existing slideshow frame. */
.project-list{gap:10px;justify-content:space-between}
@media(min-width:621px){.project-list{padding-block:16px}.project-tab{padding-block:16px}.project-tab[aria-selected=true]{padding-block:18px}}
@media(max-width:620px){.project-list{gap:12px}}
.ui-window{background:#faf6ef;border-color:#bba889;box-shadow:0 8px 20px #70552e14}
.ui-window>i{background:#bba889}.ui-preview b{background:#c9b593}.ui-preview span{background:#e3d5bf}
.invitation-inner .pill{display:flex;width:max-content;margin-inline:auto;justify-content:center}
@media(min-width:621px) and (max-height:720px){.project-list{gap:8px}.project-tab{padding-block:10px}.project-tab[aria-selected=true]{padding-block:14px}}

/* Revision 17: regular footer type and light icon outlines. */
.site-footer,.contact .resume,.contact-buttons{font-family:Inter,sans-serif;font-weight:400;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.footer-top nav,.footer-top>p,.footer-bottom,.resume{font-weight:400}
.resume svg{stroke:none;fill:currentColor}

/* Preserve the original row spacing; extend only the selected background upward. */
.project-tab[aria-selected=true]{box-shadow:0 -16px 0 var(--sage)}
@media(max-width:620px){.project-tab[aria-selected=true]{box-shadow:0 -12px 0 var(--sage)}}

/* Native poster paints the avatar immediately while its animation loads. */
.portrait-video[poster]{opacity:1}

/* Complete exploration links and consistent mobile selection outline. */
a.exploration{display:block;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease}
a.exploration:hover{transform:translateY(-4px);box-shadow:0 8px 20px #121f2110}
a.exploration.games-card{display:flex}
.ui-card .text-button{display:inline-flex;align-items:center;gap:8px;line-height:1.5}
.ui-card .text-button svg{display:block;flex:none}
.selection{display:block;width:calc(100% + 10px);height:calc(100%);left:-5px;right:auto;top:5px;bottom:auto;border:2px dashed #3b82f6}
@media(max-width:620px){.selection{left:-3px;top:2px;width:calc(100% + 6px);height:calc(100% + 1px)}}
@media(prefers-reduced-motion:reduce){a.exploration:hover{transform:none}}

.circle-button{display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.circle-button svg{display:block;flex:none;width:20px;height:20px}
