:root{color-scheme:dark;--bg:#111315;--text:#eceeed;--muted:#a3a8aa;--line:#ffffff14;--accent:#bacfc5;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:linear-gradient(145deg,#191c1f 0%,#111315 38%,#080a0b 100%);color:var(--text);font-size:15px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{width:min(1120px,calc(100% - 96px));margin-inline:auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:10;background:#141719ed;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.header-inner{height:80px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:25px;font-weight:650;letter-spacing:-2px}.wordmark-dot{color:var(--accent)}nav{display:flex;gap:33px;align-items:center}nav a{font-size:13px;color:#b8bdbe;transition:color .2s}nav a:hover,nav a[aria-current]{color:#fff}nav a:last-child{border-left:1px solid #ffffff20;padding-left:32px}nav a span{margin-left:10px;color:var(--accent)}.menu-toggle{display:none}.skip-link{position:fixed;top:-100px;left:20px;z-index:30;background:var(--text);color:var(--bg);padding:8px 20px}.skip-link:focus{top:12px}.hero{padding-top:155px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:70px;align-items:center;min-height:650px}.eyebrow,.section-label>span{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--accent);margin:0 0 22px}.hero .eyebrow{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:1.8px;text-transform:uppercase}.small-line{width:25px;height:1px;background:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,3.5vw,46px);font-weight:500;line-height:1.2;letter-spacing:-1.6px;margin-bottom:13px}.professional-title{font-size:18px;color:#c1c6c6;margin-bottom:22px}.hero-description{max-width:480px;color:var(--muted);font-size:15px;line-height:1.9}.text-link{display:inline-flex;gap:24px;align-items:center;font-size:13px;font-weight:500}.text-link span{color:var(--accent);transition:transform .2s}.text-link:hover span{transform:translate(3px,-2px)}.hero-link{margin-top:15px;border-bottom:1px solid #ffffff32;padding-bottom:9px}.hero-footer{grid-column:1/-1;display:flex;justify-content:space-between;color:#858d90;font-size:10px;letter-spacing:.5px;border-bottom:1px solid var(--line);padding:48px 0 23px;margin-top:25px}.system-art{height:330px;position:relative;overflow:hidden;background:radial-gradient(ellipse at center,#b0c9bc08,transparent 68%)}.art-top,.art-bottom{position:absolute;left:0;right:0;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.4px;color:#7f898c}.art-top{top:4px}.art-bottom{bottom:4px}.art-dot{width:5px;height:5px;border-radius:50%;background:#afc3b8;margin-top:5px}.orbit{position:absolute;left:50%;top:50%;border:1px solid #c1d4cd16;border-radius:50%;transform:translate(-50%,-50%) rotate(-28deg)}.orbit-one{width:310px;height:205px}.orbit-two{width:205px;height:280px;transform:translate(-50%,-50%) rotate(-40deg)}.art-core{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;flex-direction:column}.art-core>span{font-size:38px;letter-spacing:-3px;color:#d5ded9;font-weight:300}.art-core small{font-size:7px;letter-spacing:2px;color:#818c87}.art-node{position:absolute;font-size:10px;padding:5px 13px;background:#1c2122;border:1px solid #ffffff12;border-radius:4px;color:#bac3bf}.node-data{top:62px;left:16%}.node-app{top:101px;right:0}.node-auto{bottom:66px;left:0}.node-ai{bottom:45px;right:14%}.section{padding-top:94px;padding-bottom:94px;border-bottom:1px solid var(--line)}#sobre{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.section-label>span{display:block}h2{font-size:30px;font-weight:450;line-height:1.35;letter-spacing:-.8px;margin-bottom:0}.about-copy p{color:var(--muted);font-size:14px;margin-bottom:20px}.about-copy .lead{font-size:19px;line-height:1.65;color:#d6dad9}.about-note{border-top:1px solid var(--line);padding-top:20px;color:#c4cdca;font-size:12px}.about-note span{margin-right:10px;color:var(--accent)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:14px}.section-heading>p{font-size:13px;color:var(--muted);margin-bottom:2px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.service{border-top:1px solid #ffffff22;padding-top:25px}.service-icon{display:block;color:var(--accent);font-family:monospace;font-size:23px;height:53px}.service h3{font-size:15px;font-weight:500;line-height:1.55;margin-bottom:14px;max-width:180px}.service p{font-size:13px;line-height:1.85;color:var(--muted);margin-bottom:0}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.project-card{border:1px solid #ffffff15;border-radius:8px;background:#ffffff02;overflow:hidden;display:flex;flex-direction:column}.project-visual{height:202px;position:relative;padding:23px 25px;background:linear-gradient(125deg,#222b2a,#171c1e);border-bottom:1px solid var(--line)}.visual-caption,.visual-footer{font-size:8px;letter-spacing:1.2px;color:#a9bbb4}.visual-footer{position:absolute;bottom:20px;left:25px;right:25px;display:flex;justify-content:space-between;color:#81908c;font-size:7px}.waveform{display:flex;height:104px;gap:5px;align-items:center;justify-content:center}.waveform i{width:4px;height:18px;background:#94aca0;opacity:.7;border-radius:2px}.waveform i:nth-child(3n){height:45px}.waveform i:nth-child(4n){height:62px}.waveform i:nth-child(5n){height:32px}.waveform i:nth-child(7n){height:78px}.data-visual{background:linear-gradient(125deg,#232a30,#171b20)}.data-chart{height:100px;margin:9px auto 0;width:73%;display:flex;align-items:end;justify-content:space-around;gap:14px;border-bottom:1px solid #ffffff25;background:repeating-linear-gradient(0deg,transparent,transparent 24px,#ffffff06 24px,#ffffff06 25px)}.data-chart div{height:var(--bar);width:22px;background:linear-gradient(0deg,#52666a,#a1b5b9);opacity:.65;border-radius:2px 2px 0 0}.project-body{padding:30px;display:flex;flex-direction:column;flex:1}.project-type{font-size:8px;color:var(--accent);letter-spacing:1.5px;margin-bottom:12px}.project-body h3{font-size:25px;font-weight:450;letter-spacing:-.5px;margin-bottom:17px}.project-body>p:not(.project-type){font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:21px}.tags{list-style:none;padding:0;display:flex;gap:7px;flex-wrap:wrap;margin:0 0 30px}.tags li{font-size:9px;padding:3px 8px;border:1px solid #ffffff16;border-radius:4px;color:#b0b8b5}.project-contact{padding-top:20px;border-top:1px solid var(--line);justify-content:space-between;margin-top:auto;font-size:12px}.contact-section{display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.contact-copy h2{margin-bottom:20px}.contact-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:310px}.email-link{font-size:16px;display:inline-flex;gap:20px;border-bottom:1px solid #ffffff24;padding:6px 0}.contact-copy .contact-note{margin-top:25px;font-size:11px!important;line-height:1.8}label{display:block;font-size:12px;color:#d2d7d5;margin-bottom:7px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:18px;min-width:0}input,textarea{width:100%;border:1px solid #ffffff21;background:#ffffff03;color:var(--text);padding:11px 13px;border-radius:4px;font-size:13px}textarea{resize:vertical;min-height:125px}input::placeholder,textarea::placeholder{color:#858c8d}.form-note{color:var(--muted);font-size:11px;line-height:1.65;max-width:440px}.submit-button{background:#cfdbd5;border:1px solid #cfdbd5;color:#14201b;padding:11px 18px;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;display:flex;gap:36px;align-items:center;transition:background .2s}.submit-button:hover{background:#e3eee7}#form-status{font-size:12px;color:var(--accent);margin:15px 0 0}#form-status:empty{display:none}.site-footer{padding-block:28px;display:flex;justify-content:space-between;font-size:10px;color:#929a9b}.footer-separator{margin:0 10px;color:#616a6d}.site-footer a span{margin-left:13px}@media(min-width:1500px){.hero{min-height:700px}}@media(max-width:1000px){.container{width:calc(100% - 64px)}.hero{gap:35px}.hero .eyebrow{font-size:8px;letter-spacing:1px}.system-art{height:300px}.orbit-one{width:260px}.orbit-two{width:180px;height:240px}#sobre{gap:45px}.contact-section{gap:50px}.services-grid{grid-template-columns:1fr 1fr;gap:32px}.service h3{max-width:none}}@media(max-width:680px){html{scroll-padding-top:88px}.container{width:calc(100% - 40px)}.header-inner{height:68px}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid #ffffff28;border-radius:4px;color:var(--text);padding:7px 12px;font-size:12px}nav{display:none;position:absolute;top:68px;left:0;right:0;background:#171b1d;padding:18px 20px 24px;border-bottom:1px solid #ffffff22;gap:0}nav.is-open{display:flex;flex-direction:column;align-items:stretch}nav a{padding:10px 8px}nav a:last-child{border:0;padding-left:8px}.hero{padding-top:120px;display:block;min-height:0}.hero .eyebrow{font-size:8px;letter-spacing:1.1px}h1{font-size:36px}.professional-title{font-size:16px}.hero-description{font-size:14px}.system-art{height:255px;max-width:360px;margin:40px auto 0}.art-top,.art-bottom{font-size:7px}.orbit-one{width:260px;height:165px}.orbit-two{height:205px}.node-data{top:45px}.node-app{top:83px}.node-auto{bottom:44px}.node-ai{bottom:26px}.hero-footer{margin-top:24px;padding:16px 0;gap:12px}.hero-footer span:last-child{display:none}.section{padding-top:65px;padding-bottom:65px}#sobre,.contact-section{display:block}.section-label{margin-bottom:30px}h2{font-size:27px}.about-copy .lead{font-size:18px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:18px}.services-grid{gap:30px 23px}.service h3{font-size:14px}.service p{font-size:12px}.projects-grid{grid-template-columns:1fr;gap:24px}.project-body{padding:25px}.project-visual{height:190px}.contact-copy{margin-bottom:35px}.form-row{grid-template-columns:1fr;gap:0}input,textarea{font-size:16px}.site-footer{gap:20px;font-size:9px}.site-footer>span{max-width:180px}.footer-separator{margin:0 5px}.email-link{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Refinamentos: conteúdo e movimento acionado pela interação. */
.method-title{font-size:24px;line-height:1.5;letter-spacing:-.5px;color:#bfcac5;margin:24px 0 0}
.service p+p{margin-top:16px}
.case-details{margin:0 0 24px}
.case-details dt{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin-bottom:7px}
.case-details dd{margin:0 0 20px;font-size:13px;line-height:1.9;color:var(--muted)}
.case-details dd:last-child{margin-bottom:0}
.project-card{position:relative;transition:border-color .25s,background .25s}
.project-contact::after{content:"";position:absolute;inset:0;z-index:1;border-radius:8px}
.project-card:focus-within{outline:2px solid var(--accent);outline-offset:5px}
.project-contact:focus-visible{outline:none}
.project-card:focus-within .project-contact{color:#fff}
nav a{position:relative}
nav a::after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s;opacity:.65}
nav a:hover::after,nav a:focus-visible::after{transform:scaleX(1)}
.cursor-follower{position:fixed;top:0;left:0;z-index:50;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .16s,visibility .16s}
.cursor-follower.is-visible{opacity:1;visibility:visible}
.cursor-bubble{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #d1e2d039;background:#d4dfd8;color:#19241e;box-shadow:0 4px 20px #0002;border-radius:50%;width:38px;height:38px;transform:scale(.8);transition:transform .18s}
.is-visible .cursor-bubble{transform:scale(1)}
.cursor-label{display:none;white-space:nowrap;font-size:11px;font-weight:600}
.cursor-arrow{display:block;font-size:19px;line-height:1}
.is-card .cursor-bubble{width:auto;height:38px;border-radius:30px;padding:0 14px}
.is-card .cursor-label{display:block}
.is-card .cursor-arrow{font-size:16px}
.reveal-pending{opacity:0;transform:translateY(12px)}
.reveal-visible{opacity:1;transform:none;transition:opacity .55s ease,transform .55s ease}
.reveal-pending:focus-within{opacity:1;transform:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .cursor-surface-active,.cursor-surface-active *{cursor:none!important}
  .project-card:hover{border-color:#bdcfc53b;background:#ffffff04}
  .service:hover{border-color:#b6c9be55}
  .waveform i,.data-chart>div{transform:scaleY(var(--reaction,1));transition:transform .18s ease}
  .data-chart>div{transform-origin:bottom}
  .art-core,.art-node{translate:var(--art-x,0px) var(--art-y,0px);transition:translate .2s ease-out}
}
@media(max-width:680px){
  .method-title{font-size:22px;margin-top:18px}
  .service p{font-size:13px}
  .tags li{font-size:10px}
  nav a::after{bottom:4px}
}
@media(prefers-reduced-motion:reduce){
  .cursor-follower{display:none!important}
  .reveal-pending,.reveal-visible{opacity:1;transform:none;transition:none}
}

/* Language control: follows the existing header palette and typography. */
.header-inner{gap:26px}
.wordmark{margin-right:auto;flex-shrink:0}
.language-switcher{position:relative;flex-shrink:0}
.language-toggle,.language-options button{font:inherit;font-size:11px;color:var(--text);background:transparent;border:0;cursor:pointer}
.language-toggle{display:flex;align-items:center;gap:9px;padding:9px 7px;min-height:40px}
.language-options{position:absolute;right:0;top:calc(100% + 8px);min-width:80px;padding:5px;background:#171b1d;border:1px solid #ffffff26;border-radius:5px;box-shadow:0 8px 25px #0003}
.language-options[hidden]{display:none}
.language-options button{display:block;width:100%;text-align:left;padding:9px 12px;border-radius:3px}
.language-options button:hover,.language-options button[aria-pressed="true"]{background:#ffffff09;color:var(--accent)}
.language-options button:focus-visible{outline-offset:-2px}
@media(max-width:800px) and (min-width:681px){nav{gap:18px}nav a:last-child{padding-left:18px}.header-inner{gap:18px}}
@media(max-width:680px){.header-inner{gap:12px}.language-toggle{padding-inline:5px}.language-options{top:calc(100% + 12px)}}

