/* UP Digital / conexão em movimento / versão 02 */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--black:#080a09;--paper:#f4f5eb;--muted:#959b90;--font:Manrope,Arial,sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
body{background:#080a09;overflow-x:clip}main,footer,.nav{position:relative}main{z-index:1}::selection{background:#ffeb00;color:#080a09}
.ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 80% 12%,#727b0e0c,transparent 55%)}
.ambient span{position:absolute;border-radius:50%;filter:blur(65px);width:40vw;height:40vw;background:#ebff120a;top:0;right:-15%;animation:ambient-drift 18s ease-in-out infinite alternate}
.ambient span:nth-child(2){top:50%;left:-30%;background:#ebff1208;animation-delay:-7s}.ambient span:nth-child(3){width:20vw;height:20vw;top:80%;right:10%;background:#a6ff6b05}
.nav{height:100px;padding:0 6%;border:0;z-index:5;max-width:1600px;margin:auto}.brand img{width:38px}.brand strong{font-size:21px;font-weight:700}.brand strong span{font-size:11px}.nav nav{font-size:11px;gap:32px;color:#c1c5b7}.nav-contact{background:#ffffff04;border:1px solid #ffffff18;border-radius:100px;padding:14px 23px;backdrop-filter:blur(15px)}
.hero{max-width:1600px;margin:auto;min-height:740px;min-height:calc(100svh - 100px);padding:70px 7% 100px;align-items:center;grid-template-columns:1.15fr 1fr;isolation:isolate;overflow:visible}
.hero:before{content:'';position:absolute;inset:5% -5% 0 30%;background:radial-gradient(ellipse at 65% 45%,#d4e72312,transparent 60%);z-index:-1;pointer-events:none}
.hero-copy{position:relative;z-index:2}.hero .eyebrow{display:inline-flex;font-size:8px;letter-spacing:.13em;border:1px solid #eaff8426;background:#d8ff4405;border-radius:50px;padding:8px 13px;color:#c6cdad;margin-bottom:22px;animation:arrive 1s var(--ease) both}.eyebrow i{box-shadow:0 0 12px #dfff3b70;animation:breathe 3s ease-in-out infinite}
h1{font-size:clamp(48px,5.7vw,88px);font-weight:500;letter-spacing:-.065em;line-height:1.09;margin:0 0 26px;animation:arrive 1.2s .1s var(--ease) both}
h1 em{background:linear-gradient(100deg,#faffb2,#ffeb00 45%,#c1db65);background-clip:text;-webkit-background-clip:text;color:transparent;display:inline-block}
.intro{font-size:12px;line-height:1.95;max-width:430px;color:#a7aea0;animation:arrive 1.2s .2s var(--ease) both}
.hero .button{animation:arrive 1.2s .3s var(--ease) both}.button{border-radius:100px;padding:15px 23px;font-size:11px;font-weight:700;gap:26px}.button span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#00000013;font-size:20px}.yellow{background:linear-gradient(110deg,#f6ff9d,#ffeb00);box-shadow:0 5px 35px #efff3615,inset 0 1px 1px #ffffff90}.yellow:hover{box-shadow:0 7px 45px #efff3630;transform:translateY(-4px)}
.hero-art{min-height:500px;height:100%;background:none;perspective:1000px;transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform 1s ease-out;animation:materialize 1.8s .15s var(--ease) both}
.connection-field{position:absolute;width:560px;height:560px;top:50%;left:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#f3ff4520,transparent 57%);border-radius:50%}
.connection-ring{position:absolute;border:1px solid #f0ff5c1c;border-radius:50%;inset:9%;transform:rotateX(58deg) rotate(-25deg);box-shadow:0 0 30px #e9ff1804;animation:orbit-breathe 8s ease-in-out infinite}.ring-2{inset:0;transform:rotateX(55deg) rotate(35deg);border-color:#ecff4210;animation-delay:-3s}.ring-3{inset:21%;transform:rotateX(25deg) rotate(-50deg);border-style:dashed;border-color:#efff4d17;animation-delay:-5s}
.floating-card{position:absolute;inset:18% 26%;background:linear-gradient(135deg,#32372add,#101410f5 45%,#131b10f0);border:1px solid #efffc13d;border-radius:28px;box-shadow:0 0 0 8px #deff5a03,0 35px 70px #0009,10px 0 55px #d8ff2320,inset 0 1px 0 #ffffff30;transform:rotate(-10deg) rotateY(-16deg) rotateX(9deg);animation:card-float 7s ease-in-out infinite;overflow:hidden;display:flex;align-items:center;flex-direction:column;padding:30px 20px}
.floating-card:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 0 0,#f7ff9d16,transparent 70%);pointer-events:none}.card-shine{position:absolute;inset:-100%;background:linear-gradient(115deg,transparent 43%,#eaffbe0c 49%,#eaffbe16 50%,transparent 57%);animation:light-pass 9s ease-in-out infinite;pointer-events:none}
.floating-card img{width:70px;height:90px;object-fit:contain}.card-name{font-size:13px;font-weight:800;margin-top:8px;letter-spacing:-.04em}.card-line{height:1px;width:34px;background:#eaff7060;margin:22px 0 18px}.floating-card p{text-align:center;font-size:16px;font-weight:400;line-height:1.6;letter-spacing:-.025em;color:#d5dbcb;margin:0}.floating-card p b{color:#f5ff9e;font-weight:500}.nfc-mark{color:var(--yellow);font-size:19px;letter-spacing:-4px;transform:rotate(-20deg);margin:17px 0}.floating-card small{font-size:5px;letter-spacing:.17em;color:#b5bea1}
.floating-label{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 17px;border:1px solid #dfff6025;background:linear-gradient(125deg,#3b45233b,#10180c8c);backdrop-filter:blur(14px);border-radius:100px;font-size:10px;white-space:nowrap;color:#dbe3cb;box-shadow:0 10px 35px #0003;animation:label-float 6s ease-in-out infinite}.floating-label i{font-style:normal;color:#f2ff9c;font-size:17px}.label-1{top:17%;left:1%;animation-delay:-2s}.label-2{bottom:19%;right:-1%;animation-delay:-4s}.label-3{top:43%;right:-9%;font-size:9px;animation-delay:-1s}.signal-dot{position:absolute;width:5px;height:5px;background:#eaff79;border-radius:50%;box-shadow:0 0 14px #eaff79;animation:breathe 3s ease-in-out infinite}.dot-1{left:15%;bottom:25%}.dot-2{right:15%;top:22%;animation-delay:-1s}.dot-3{right:19%;bottom:30%;width:3px;height:3px;animation-delay:-2s}.art-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:7px;letter-spacing:.2em;color:#858e70}
.hero-foot{border:0;color:#7e8873;bottom:27px;left:7%;right:7%;font-size:8px}.hero-foot a{display:flex;align-items:center;gap:16px}.hero-foot a span{display:inline-flex;align-items:center;justify-content:center;border:1px solid #eaff7730;width:30px;height:40px;border-radius:30px;padding:0;animation:scroll-hint 3s ease-in-out infinite}
.ticker{max-width:1250px;margin:20px auto 0;background:transparent;border-top:1px solid #eaff7914;border-bottom:1px solid #eaff7914;color:#afb79d;padding:26px 20px;font-size:9px;font-weight:500;letter-spacing:.12em;white-space:normal;gap:25px}.ticker b{font-size:24px;color:#d8ed78;font-weight:400}
.section{padding-top:120px;padding-bottom:120px;max-width:1500px;margin:auto}.section-top .eyebrow{color:#a3b679}.section-top>span{font-size:10px}.split-heading{margin-bottom:60px;gap:12%}h2{font-size:clamp(38px,4.7vw,68px);font-weight:500;letter-spacing:-.06em;line-height:1.14}h2 em{color:#ddeb91}.split-heading>p{font-size:12px;font-weight:400}.paths{gap:0 36px;position:relative}.paths:before{content:'';position:absolute;left:-20%;top:10%;width:60%;height:80%;background:radial-gradient(ellipse,#c9ed3c08,transparent 65%);pointer-events:none}.path-list{border:0;display:flex;flex-direction:column;gap:12px}.path{border:1px solid #eaff7914;background:linear-gradient(110deg,#d3ef5106,#ffffff02);padding:23px 25px;border-radius:100px;transition:background .35s,transform .35s,border-color .35s;gap:20px}.path strong{font-weight:500;font-size:14px}.path>span:last-child{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#eaff7909;font-size:19px}.path.active{background:linear-gradient(110deg,#e5f6a619,#d3ef5106);border-color:#dff58b50;color:#edfac5;box-shadow:0 5px 40px #eaff7904}.path:hover{transform:translateX(5px)}.path.active>span:first-child{color:#e7f6ac}.path-detail{border:1px solid #eaff7926;background:radial-gradient(ellipse at top left,#eaff7912,transparent 90%),#141a1033;border-radius:30px;padding:30px 34px;align-self:stretch;backdrop-filter:blur(15px);box-shadow:inset 0 1px 0 #efffb00b}.path-detail h3{font-size:25px;font-weight:500;letter-spacing:-.035em}.path-detail .eyebrow{color:#bdcf83;font-size:8px}.path-detail a{color:#e1edc9;font-size:10px}.path-detail.changing{animation:detail-in .45s var(--ease)}
.work{background:radial-gradient(ellipse at 80% 30%,#e6ff6208,transparent 60%);color:var(--paper);border:0}.work:before{content:'';display:block;width:100%;height:1px;background:linear-gradient(90deg,transparent,#eaff7920,transparent);margin-bottom:70px}.work em{color:#ddeb91}.work .section-top .eyebrow{color:#a3b679}.work .section-top>span,.work .split-heading>p{color:var(--muted)}.gallery{grid-template-columns:1.1fr 1fr;gap:50px 45px;align-items:start}.project-image{border-radius:26px;background:#0e140f;border:1px solid #f1ff941c;box-shadow:0 25px 65px #0005;transition:transform .7s var(--ease),box-shadow .7s;isolation:isolate}.project-image:hover{transform:translateY(-7px) rotate(-.6deg);box-shadow:0 35px 70px #0008,0 0 40px #d4ed5008}.project-image img{background:#101512}.featured{padding-top:60px}.featured .project-image{border-radius:160px 160px 30px 30px}.project-image button{border-radius:100px;left:25px;right:25px;bottom:25px;backdrop-filter:blur(15px);background:#151b0bd9;border-color:#efffa630;padding:15px}.project-label{border-radius:100px;background:#080b09a8;backdrop-filter:blur(10px);border:1px solid #ffffff20;left:20px;top:20px;font-size:7px;color:#d7ddc8}.featured .project-label{top:auto;bottom:85px;left:50%;transform:translateX(-50%);white-space:nowrap}.project figcaption{padding:22px 12px 0}.project figcaption>span{color:#aab58b;font-size:7px}.project h3{font-weight:500;font-size:22px;color:#e9eddc}.project p,.caption{color:#8b967e}.caption{margin-left:12px;font-size:9px;max-width:580px}.about{gap:12%}.portrait{padding:20px 0}.portrait:before{content:'';position:absolute;inset:0 -15px;border:1px solid #eaff7925;border-radius:47% 47% 40% 40%;transform:rotate(9deg)}.portrait img{border-radius:46% 46% 38% 38%;filter:grayscale(.5);max-height:570px;position:relative}.portrait>span{background:#0e150ba8;backdrop-filter:blur(20px);border:1px solid #eaff7925;border-radius:20px;bottom:32px;left:10%;font-size:8px;padding:20px}.about-copy>.eyebrow{color:#a3b679}.about-copy .about-lead{font-weight:400;font-size:18px!important}details{border-color:#eaff791b}summary{font-size:11px;padding:24px 0}.approach{border:0;position:relative}.approach:before{content:'';position:absolute;inset:10% 20%;background:radial-gradient(ellipse,#e6ff6209,transparent 65%);pointer-events:none}.approach>h2{text-align:center}.approach>.eyebrow{text-align:center}.steps{gap:28px;margin-top:60px}.steps>div{padding:30px;border-radius:26px;border:1px solid #eaff7918;background:linear-gradient(145deg,#eaff7907,transparent);position:relative}.steps>div:nth-child(2){transform:translateY(22px)}.steps b{color:#c5d78f;font-size:9px;font-weight:500}.steps p{font-size:12px}.contact{border-radius:60px;background:radial-gradient(ellipse at 70% 0,#f7ffd3,transparent 80%),linear-gradient(125deg,#dceca6,#eaf381 65%,#dfe965);color:#182010;margin:30px auto 70px;max-width:1300px;padding:80px 6%;position:relative;overflow:hidden;box-shadow:0 0 90px #d6ed5507}.contact:before,.contact:after{content:'';position:absolute;pointer-events:none;border:1px solid #4453191a;border-radius:50%;width:600px;height:600px;right:-250px;top:-300px}.contact:after{transform:scale(1.15)}.contact h2{font-size:clamp(38px,4.7vw,65px);position:relative}.contact h2 em{color:#37441c}.contact-heading>span{font-weight:400;opacity:.65;font-size:130px}.contact .eyebrow{font-size:8px}.contact .button{position:relative;background:#1d2716;box-shadow:0 15px 30px #25350e18}.contact .button span{background:#efff9910}.contact-bottom p{font-size:12px}.contact .save-contact{font-size:10px;color:#263318;border-color:#26331860}footer{border-top:1px solid #eaff7910;padding:35px 6% 65px;font-size:8px}.wordmark{font-size:19px;font-weight:600}.motion-toggle{position:fixed;right:20px;bottom:18px;z-index:20;display:flex;align-items:center;gap:8px;border:1px solid #eaff7926;border-radius:50px;background:#131a0de6;color:#c7d2ad;backdrop-filter:blur(15px);padding:10px 14px;font-size:9px}.motion-toggle:hover{background:#303a1c}.reveal{animation:section-arrive .9s var(--ease) both}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .hero-art{transform:none!important}.motion-paused{scroll-behavior:auto}
@keyframes arrive{from{opacity:0;transform:translateY(25px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes materialize{from{opacity:0;filter:blur(12px)}to{opacity:1;filter:blur(0)}}@keyframes card-float{0%,100%{transform:translateY(0) rotate(-10deg) rotateY(-16deg) rotateX(9deg)}50%{transform:translateY(-18px) rotate(-5deg) rotateY(-7deg) rotateX(4deg)}}@keyframes label-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes orbit-breathe{0%,100%{opacity:.45}50%{opacity:1}}@keyframes breathe{0%,100%{opacity:.5}50%{opacity:1}}@keyframes light-pass{0%,25%{transform:translateX(-40%)}65%,100%{transform:translateX(40%)}}@keyframes scroll-hint{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes ambient-drift{to{transform:translate(-10%,20%) scale(1.2)}}@keyframes section-arrive{from{opacity:.35;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes detail-in{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.section{padding-left:100px;padding-right:100px}}@media(max-width:1100px){.connection-field{width:460px;height:460px}.hero{padding-left:6%;padding-right:6%}.hero-art{min-height:440px}.floating-card{padding:24px 15px}.floating-card img{width:55px;height:68px}.floating-card p{font-size:14px}.card-line{margin:15px 0}.floating-label{font-size:8px;padding:10px 13px}.label-3{right:0}.contact{margin-left:4%;margin-right:4%}.path strong{font-size:12px}.path{padding:20px}.section{padding-top:90px;padding-bottom:90px}.gallery{gap:30px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:40px;overflow:hidden}.hero-copy{text-align:center}.hero .eyebrow{font-size:7px;letter-spacing:.08em}.hero h1{font-size:clamp(42px,8.5vw,70px)}.intro{margin-left:auto;margin-right:auto;font-size:12px}.hero-art{min-height:400px;margin-top:30px}.connection-field{width:470px;height:470px}.hero-foot{bottom:15px}.hero-foot>span:last-child{display:none}.paths{display:block}.path-detail{margin-top:22px}.split-heading{gap:7%}.nav nav{display:none}.ticker{margin-top:10px;font-size:8px;gap:18px}.ticker span:last-of-type,.ticker b:last-child{display:none}.about{gap:8%}.steps{gap:15px}.steps>div{padding:22px}.contact-bottom{gap:25px}}
@media(max-width:600px){.nav{height:80px}.hero{padding-top:30px;padding-bottom:74px}.hero h1{font-size:clamp(40px,10.5vw,62px);line-height:1.12;margin:0 0 22px}.hero .eyebrow{font-size:6px;padding:8px 10px;margin-bottom:23px}.hero .intro{font-size:11px;line-height:1.9;max-width:310px;margin-bottom:23px}.hero .button{font-size:10px;padding:12px 18px;gap:16px}.hero .button span{width:29px;height:29px}.hero-art{height:350px;min-height:350px;margin:25px 0 0;transform:none}.connection-field{width:390px;height:390px}.floating-card{border-radius:22px;padding:20px 12px;inset:16% 27%}.floating-card img{width:48px;height:60px}.card-name{font-size:11px}.floating-card p{font-size:12px}.card-line{margin:13px 0}.nfc-mark{margin:11px 0;font-size:16px}.floating-card small{font-size:4px}.floating-label{font-size:7px;padding:9px 11px;gap:6px}.floating-label i{font-size:12px}.label-1{left:4%;top:14%}.label-2{right:3%;bottom:16%}.label-3{right:2%;top:40%}.art-caption{font-size:5px;bottom:3px;letter-spacing:.16em}.hero-foot{bottom:7px;align-items:center;font-size:7px;padding-top:0}.hero-foot a{font-size:6px;gap:8px}.hero-foot a span{width:24px;height:32px}.ticker{padding:20px 6%;font-size:7px;justify-content:center;white-space:normal;gap:14px;margin-top:15px}.ticker b{font-size:19px}.section{padding-top:70px;padding-bottom:70px}.section-top{margin-bottom:25px}h2{font-size:39px;line-height:1.15}.split-heading{margin-bottom:30px}.split-heading>p{font-size:11px;margin-top:22px}.path{padding:17px 18px;gap:12px}.path strong{font-size:11px}.path>span:first-child{font-size:8px}.path>span:last-child{width:28px;height:28px;font-size:17px}.path-detail{padding:25px;border-radius:25px}.path-detail h3{font-size:24px}.path-detail>p:not(.eyebrow){font-size:11px}.work:before{margin-bottom:40px}.gallery{display:block}.featured{padding-top:0}.project{margin-bottom:35px}.project-image,.featured .project-image{border-radius:24px}.featured .project-image{border-radius:90px 90px 24px 24px}.project-image img,.featured .project-image img{max-height:490px;width:100%;height:auto}.project h3{font-size:20px}.project-image button{left:20px;right:20px;bottom:20px;font-size:10px}.project figcaption{padding-left:8px}.caption{font-size:8px}.about{gap:40px}.portrait{max-width:300px;width:82%;align-self:center}.portrait img{max-height:390px}.portrait>span{font-size:7px;padding:14px;left:0;bottom:20px}.about-copy .about-lead{font-size:17px!important}.about-copy>p:not(.eyebrow){font-size:11px}.steps{gap:16px;margin-top:35px}.steps>div{padding:25px;border:1px solid #eaff7918}.steps>div:nth-child(2){transform:none}.steps p{font-size:11px}.contact{border-radius:35px;padding:45px 7%;margin:10px 4% 45px}.contact h2{font-size:clamp(30px,7.4vw,42px)}.contact-heading{gap:10px;margin:25px 0}.contact-heading>span{font-size:60px}.contact .eyebrow{font-size:6px}.contact-bottom p{font-size:11px}.contact .button{font-size:10px;padding:12px 18px}.contact .button span{width:29px;height:29px}.motion-toggle{right:12px;bottom:12px;font-size:8px;padding:10px}.motion-toggle span{display:none}footer{padding-bottom:60px}.ambient span{width:90vw;height:90vw;filter:blur(40px)}}
.floating-card{padding-top:24px;padding-bottom:24px}.floating-card img{width:60px;height:70px;flex-shrink:0}.card-line{margin:14px 0 12px;flex-shrink:0}.floating-card p{font-size:14px;line-height:1.5}.nfc-mark{margin:11px 0;font-size:17px}.floating-card small{flex-shrink:0}
@media(max-width:1100px){.floating-card{inset:15% 26%;padding:20px 15px}.floating-card img{width:50px;height:60px}.floating-card p{font-size:13px}.card-line{margin:12px 0}.card-name{font-size:12px}}
@media(max-width:600px){.floating-card{inset:12% 27%;padding:19px 12px}.floating-card img{width:45px;height:55px}.floating-card p{font-size:12px}.card-name{font-size:11px}.card-line{margin:11px 0}.nfc-mark{font-size:16px;margin:10px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-art{transform:none!important}.motion-toggle{display:none}html{scroll-behavior:auto}}
