@font-face{font-family:Anton;font-weight:400;font-display:swap;src:url(fonts/anton.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(fonts/poppins-400.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(fonts/poppins-500.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(fonts/poppins-600.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(fonts/poppins-700.woff2) format("woff2")}

:root{
  --bg:#000;--bg2:#0c0c0d;--card:#141416;--line:rgba(255,255,255,.1);
  --tx:#f4f4f5;--mut:#a1a1a8;--or:#F5A623;--or2:#ff7a18;--wa:#25D366;
  --grad:linear-gradient(135deg,#F5A623,#ff7a18);
  --r:18px;--sh:0 18px 50px rgba(0,0,0,.55);
  --disp:Anton,"Arial Narrow",Impact,sans-serif;
}
*{box-sizing:border-box}
html{scroll-padding-top:108px}
body{margin:0;background:var(--bg);color:var(--tx);font:400 16px/1.65 Poppins,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1180px,100% - 40px);margin:0 auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--or);color:#000;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
.sprite{position:absolute}
.ic{width:1.25em;height:1.25em;flex:none}
i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--or);margin:0 .7em;vertical-align:middle}
em{font-style:normal;color:var(--or)}

/* tipografia */
.display{font-family:var(--disp);font-weight:400;text-transform:uppercase;line-height:1.02;letter-spacing:.01em;margin:0}
h1.display{font-size:clamp(3rem,8.5vw,6.6rem)}
h2.display{font-size:clamp(2.4rem,5.6vw,4.4rem);margin-bottom:18px}
h3.display{font-size:clamp(2.2rem,4.4vw,3.4rem);margin-bottom:14px}
.kicker{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:#fff;margin:0 0 16px;font-weight:500}
.kicker b{color:var(--or);font-weight:600}
.eyebrow{font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;margin:0 0 22px;color:#e8e8ea}
.lead{font-size:1.08rem;color:#d3d3d7;max-width:56ch}
.muted{color:var(--mut)}.small{font-size:.85rem}

/* botões */
.btn{display:inline-flex;align-items:center;gap:.6em;border-radius:999px;padding:.78em 1.5em;font-weight:600;font-size:.95rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;font-family:inherit;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}
.btn:hover{transform:translateY(-2px)}
.btn-lg{padding:1em 1.9em;font-size:1rem}
.btn-wa{background:var(--wa);color:#052e16}
.btn-wa:hover{box-shadow:0 10px 30px rgba(37,211,102,.4)}
.btn-primary{background:var(--grad);color:#111}
.btn-primary:hover{box-shadow:0 10px 30px rgba(245,166,35,.4)}
.btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}
.btn-ghost:hover{border-color:rgba(245,166,35,.6);color:#ffc24d;background:rgba(245,166,35,.16)}
.btn-ghost:active,.btn-primary:active,.btn-ghost.pressed,.btn-primary.pressed{background:var(--or);color:#111;border-color:var(--or);transform:scale(.93);box-shadow:0 0 0 4px rgba(245,166,35,.3),inset 0 3px 8px rgba(0,0,0,.25);background-image:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--or);outline-offset:3px}

/* topo */
.top{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s,box-shadow .3s,backdrop-filter .3s}
.top{background:#000;box-shadow:0 1px 0 var(--line)}
.top-in{display:flex;align-items:center;justify-content:space-between;height:100px}
.brand{flex:none;display:block}
.brand img{height:76px;width:auto;max-width:none;aspect-ratio:620/188}
.nav{display:flex;align-items:center;gap:6px}
.nav a:not(.btn){text-decoration:none;font-size:.9rem;font-weight:500;color:#d9d9de;position:relative;padding:9px 16px;border-radius:999px;border:1.5px solid transparent;transition:color .2s,background .2s,box-shadow .2s,border-color .2s,transform .12s}
.nav a:not(.btn):hover{color:#ffc24d;background:rgba(245,166,35,.16);border-color:rgba(245,166,35,.45)}
.nav a:not(.btn):active,.nav a:not(.btn).pressed{background:var(--or);color:#111;border-color:var(--or);transform:scale(.92);box-shadow:0 0 0 4px rgba(245,166,35,.3),inset 0 3px 8px rgba(0,0,0,.25);background-image:none}
.nav a:not(.btn).on{color:#111;background:var(--grad);border-color:transparent;box-shadow:0 6px 20px rgba(245,166,35,.35)}
.nav-cta{padding:.6em 1.2em;font-size:.88rem;margin-left:10px}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;align-items:center}
.burger span{width:24px;height:2px;background:#fff;transition:transform .25s,opacity .25s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:140px 0 90px;overflow:hidden;background:#000}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-bg::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94) 0,rgba(0,0,0,.78) 38%,rgba(0,0,0,.25) 75%,rgba(0,0,0,.1) 100%),linear-gradient(0deg,#000 0,transparent 30%);z-index:1}
.hero-in{position:relative;z-index:2}
.hero h1{margin-bottom:26px}
.hero .lead{margin-bottom:34px}
.cta-row{display:flex;flex-wrap:wrap;gap:14px}
.scroll{position:absolute;left:50%;bottom:26px;width:26px;height:42px;border:2px solid rgba(255,255,255,.35);border-radius:14px;z-index:2;transform:translateX(-50%)}
.scroll span{position:absolute;left:50%;top:8px;width:4px;height:8px;border-radius:2px;background:var(--or);transform:translateX(-50%);animation:sc 1.8s infinite}
@keyframes sc{0%{opacity:0;transform:translate(-50%,0)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,14px)}}

/* seções */
.sec{padding:clamp(70px,10vw,130px) 0}
.sec-alt{background:var(--bg2)}
.sec-head{margin-bottom:clamp(40px,6vw,70px)}

.about{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(30px,6vw,80px);align-items:center}
.quote{margin:0 0 26px;padding-left:24px;border-left:3px solid var(--or);font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.3;font-weight:600}
.about p{color:#cfcfd4;max-width:58ch}
.about strong{color:var(--or);font-weight:600}.about b{color:#fff}
.mission{background:linear-gradient(160deg,#17171a,#0b0b0c);border:1px solid var(--line);border-radius:var(--r);padding:clamp(26px,4vw,44px);box-shadow:var(--sh);position:relative;overflow:hidden}
.mission::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;background:radial-gradient(circle,rgba(245,166,35,.28),transparent 65%)}
.mission-t{font-size:1.2rem;font-weight:500;line-height:1.5;position:relative;z-index:1}
.words{list-style:none;margin:26px 0 0;padding:0;font-family:var(--disp);text-transform:uppercase;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.1;color:#2b2b30;position:relative;z-index:1}
.words li:nth-child(odd){color:#3a3a40}
.words li:hover{color:var(--or)}.words li{transition:color .25s}

/* serviços */
.svc{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(28px,5vw,70px);align-items:center;margin-top:clamp(50px,8vw,100px)}
.svc.rev{grid-template-columns:1.2fr 1fr}
.svc.rev .svc-txt{order:2}
.svc-txt p{color:#d3d3d7;max-width:46ch}
.tag{color:var(--or)!important;font-weight:600;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;margin-top:18px}
.steps{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:22px 0 4px}
.steps li{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;min-width:92px;padding:12px 8px;border:1px solid rgba(245,166,35,.45);border-radius:12px;color:#ddd;text-align:center}
.steps .ic{width:26px;height:26px;color:var(--or)}
.chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:22px 0 0}
.chips li{padding:8px 16px;border-radius:999px;border:1px solid rgba(245,166,35,.5);font-size:.85rem;color:#eee}
.svc-img figure{margin:0;overflow:hidden;border-radius:var(--r);box-shadow:var(--sh);background:var(--card)}
.svc-img figure{position:relative}
.svc-img img{position:absolute;left:0;top:-9%;width:100%;height:118%;max-width:none;object-fit:cover;translate:0 var(--ty,0px);transition:scale .6s}
.svc-img figure:hover img{scale:1.05}
.svc-img.one figure{aspect-ratio:4/3}
.svc-img.g2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.svc-img.g2 figure{aspect-ratio:1/1}
.svc-img.g2 figure:first-child{aspect-ratio:1/1}
.svc-img.g3{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:14px;aspect-ratio:1.15/1}
.svc-img.g3 .tall{grid-row:1/3;grid-column:2}
.svc-img.g3 figure:nth-child(1){grid-column:1}
.svc-img.g3 figure:nth-child(2){grid-column:1}

/* projetos */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.case{margin:0;position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3.4;background:var(--card);box-shadow:var(--sh)}
.case img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.case::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85) 0,rgba(0,0,0,0) 55%)}
.case:hover img{transform:scale(1.06)}
.case img.pl{object-position:25% center}
.case figcaption{position:absolute;left:20px;right:20px;bottom:16px;z-index:2;display:flex;flex-direction:column}
.case figcaption b{font-family:var(--disp);font-weight:400;font-size:1.7rem;text-transform:uppercase;letter-spacing:.02em}
.case figcaption span{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.case-cta{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:22px;padding:30px;background:linear-gradient(150deg,#1b1305,#0b0b0c);border:1px solid rgba(245,166,35,.4)}
.case-cta::after{display:none}
.case-cta .display{font-size:clamp(2rem,3.4vw,2.8rem)}

/* galeria */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;grid-auto-flow:dense;gap:12px}
.g{padding:0;border:0;border-radius:14px;overflow:hidden;cursor:zoom-in;background:var(--card);position:relative}
.g.w2{grid-column:span 2}
.g img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .3s}
.g:hover img{transform:scale(1.07)}
.g::after{content:"";position:absolute;inset:0;border-radius:14px;box-shadow:inset 0 0 0 0 var(--or);transition:box-shadow .25s}
.g:hover::after{box-shadow:inset 0 0 0 3px var(--or)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:90;display:flex;align-items:center;justify-content:center;padding:24px}
.lightbox[hidden]{display:none}
.lightbox img{max-height:90vh;max-width:94vw;border-radius:10px;box-shadow:var(--sh)}
.lb-x{position:absolute;top:14px;right:20px;background:none;border:0;color:#fff;font-size:2.6rem;cursor:pointer;line-height:1}

/* manifesto */
.manifesto{padding:clamp(80px,12vw,150px) 0;text-align:center;position:relative;background:radial-gradient(60% 80% at 50% 50%,#17110a,#000)}
.manifesto::before,.manifesto::after{content:"";position:absolute;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,var(--or),transparent)}
.manifesto::before{top:0}.manifesto::after{bottom:0}
.mf{font-size:clamp(1.5rem,3.6vw,2.6rem);font-weight:600;line-height:1.35;margin:0;max-width:24ch;margin-inline:auto}
.mf u{text-decoration-color:var(--or);text-decoration-thickness:3px;text-underline-offset:8px}

/* contato */
.contact{background:var(--bg2)}
.contact-in{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,6vw,80px);align-items:start}
.cards{list-style:none;padding:0;margin:34px 0 0;display:grid;gap:14px;max-width:460px}
.cards a{display:flex;align-items:center;gap:16px;padding:16px 20px;border:1px solid rgba(245,166,35,.45);border-radius:16px;text-decoration:none;font-size:1.02rem;font-weight:500;transition:transform .2s,background .2s,border-color .2s;overflow-wrap:anywhere}
.cards a:hover{transform:translateX(6px);background:rgba(245,166,35,.16);border-color:var(--or)}
.cards a:active,.cards a.pressed{background:var(--or);color:#111;border-color:var(--or);transform:scale(.98)}
.cards a:active small,.cards a.pressed small,.cards a:active .ci,.cards a.pressed .ci{color:#111}
.btn-wa:active,.btn-wa.pressed{background:#1fb457;transform:scale(.95);box-shadow:0 0 0 4px rgba(37,211,102,.3)}
.cards small{display:block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--or);font-weight:600}
.ci{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:rgba(245,166,35,.12);color:var(--or);flex:none}
.ci.wa{background:rgba(37,211,102,.15);color:var(--wa)}
.ci .ic{width:24px;height:24px}
.form{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(22px,4vw,38px);box-shadow:var(--sh)}
.form h3{margin:0 0 4px;font-size:1.3rem}
.form label{display:block;font-size:.8rem;letter-spacing:.06em;color:#cfcfd4;margin-top:16px;font-weight:500}
.form input,.form select,.form textarea{display:block;width:100%;margin-top:6px;background:#0a0a0b;color:#fff;border:1.5px solid #2a2a2e;border-radius:12px;padding:12px 14px;font:inherit;font-size:.95rem;transition:border-color .2s}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--or);outline:none}
.form .invalid{border-color:#ef4444}
.form .btn{width:100%;justify-content:center;margin-top:22px}
.form p.small{text-align:center;margin:14px 0 0}
.form a{color:var(--or)}

/* rodapé */
.foot{padding:50px 0 40px;border-top:1px solid var(--line);background:#000}
.foot-in{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.foot img{height:90px;width:auto;max-width:none}
.foot p{margin:0;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.foot p.small{letter-spacing:0;text-transform:none}

.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;width:58px;height:58px;border-radius:50%;background:var(--wa);color:#052e16;display:grid;place-items:center;box-shadow:0 10px 30px rgba(37,211,102,.45);transition:transform .2s}
.wa-float:hover{transform:scale(1.08)}
.wa-float .ic{width:30px;height:30px}
.wa-float::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--wa);animation:pulse 2.2s infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.6);opacity:0}}

/* animação de entrada */
.js .reveal{opacity:0;transform:translate3d(var(--x,0),var(--y,0),0) scale(var(--s,1));transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s);will-change:transform,opacity}
.js .reveal.ru{--y:56px}
.js .reveal.rl{--x:-80px}
.js .reveal.rr{--x:80px}
.js .reveal.rz{--s:.86;--y:34px}
.js .reveal.in{opacity:1;transform:none}
.js .wipe{clip-path:inset(0 100% 0 0 round 18px);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1);transition-delay:var(--d,0s)}
.js .wipe img{scale:1.3;transition:scale 1.6s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.js .wipe.in{clip-path:inset(0 0 0 0 round 18px)}
.js .wipe.in img{scale:1}
.js .wipe.in:hover img{scale:1.06;transition-delay:0s;transition-duration:.6s}

@media (max-width:980px){
  .about,.contact-in{grid-template-columns:1fr}
  .svc,.svc.rev{grid-template-columns:1fr}
  .svc.rev .svc-txt{order:0}
  .cases{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:repeat(3,1fr);grid-auto-rows:160px}
  .hero-bg{inset:0 0 0 0;opacity:.45}
}
@media (max-width:760px){
  .burger{display:flex}
  .nav{position:fixed;inset:100px 0 auto;background:#000;flex-direction:column;align-items:stretch;gap:0;padding:10px 20px 24px;border-bottom:1px solid var(--line);transform:translateY(-130%);visibility:hidden;transition:transform .35s,visibility .35s;max-height:calc(100svh - 100px);overflow:auto}
  .nav.open{transform:none;visibility:visible}
  .nav a:not(.btn){padding:16px 14px;border-radius:12px;font-size:1.05rem;margin-bottom:4px}
  .nav-cta{margin-top:18px;justify-content:center}
  .brand img{height:54px}
  .hero{padding-top:110px}
  .cases{grid-template-columns:1fr}
  .case{aspect-ratio:4/3}
  .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px;gap:8px}
  .svc-img.g3{aspect-ratio:auto;grid-template-rows:150px 150px}
  .cta-row .btn{width:100%;justify-content:center}
  .steps{display:grid;grid-template-columns:1fr 1fr}
  .cards a{font-size:.9rem}
  .scroll{display:none}
}
@media (prefers-reduced-motion:reduce){
  .hero-bg img,.scroll span,.wa-float::before{animation:none}
}

/* ===== movimento e transições ===== */
.progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:70;background:var(--grad);transform-origin:0 50%;transform:scaleX(var(--p,0));box-shadow:0 0 12px rgba(245,166,35,.6)}
.top{transition:transform .45s cubic-bezier(.2,.7,.2,1),background .3s}
.top.hide{transform:translateY(-110%)}

/* hero: entrada das linhas, zoom lento e parallax */
.hero h1 .ln{display:block;overflow:hidden;padding:.14em 0 .06em;margin-top:-.14em}
.hero h1 .ln>span{display:block;transform:translateY(110%);animation:up 1.1s cubic-bezier(.2,.8,.2,1) forwards}
.hero h1 .ln:nth-child(1)>span{animation-delay:.15s}
.hero h1 .ln:nth-child(2)>span{animation-delay:.3s}
.hero h1 .ln:nth-child(3)>span{animation-delay:.45s}
@keyframes up{to{transform:none}}
.hero .eyebrow,.hero .lead,.hero .cta-row{opacity:0;animation:fadeup 1s cubic-bezier(.2,.8,.2,1) forwards}
.hero .eyebrow{animation-delay:.05s}.hero .lead{animation-delay:.7s}.hero .cta-row{animation-delay:.9s}
@keyframes fadeup{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-bg{transform:translate3d(0,var(--py,0px),0);will-change:transform}
.hero-bg img{animation:kb 22s ease-in-out infinite alternate;transform-origin:60% 50%}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.14) translate3d(-1.5%,1%,0)}}
.hero-in{transform:translate3d(0,calc(var(--py,0px) * -.35),0)}

/* faixa de clientes */
.marquee{background:#000;border-block:1px solid var(--line);overflow:hidden;padding:20px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;width:max-content;animation:mq 38s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee ul{display:flex;list-style:none;margin:0;padding:0}
.marquee li{font-family:var(--disp);text-transform:uppercase;font-size:clamp(1.3rem,2.6vw,2rem);letter-spacing:.04em;color:#3a3a40;padding:0 .9em;display:flex;align-items:center;transition:color .3s;white-space:nowrap}
.marquee li::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--or);margin-left:1.8em;opacity:.8}
.marquee li:hover{color:var(--or)}
@keyframes mq{to{transform:translateX(-50%)}}

/* brilho que segue o mouse */
.spot{position:relative;overflow:hidden}
.spot::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(245,166,35,.16),transparent 60%)}
.spot:hover::before{opacity:1}
.spot>*{position:relative;z-index:1}
.mission::after{z-index:0}

/* brilho que passa no botão */
.btn-primary,.btn-wa{position:relative;overflow:hidden}
.btn-primary::after,.btn-wa::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .7s}
.btn-primary:hover::after,.btn-wa:hover::after{left:130%}

/* títulos: linha laranja que cresce */
.sec-head .kicker{position:relative;padding-bottom:12px}
.sec-head .kicker::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--grad);transition:width 1s .5s cubic-bezier(.2,.7,.2,1)}
.sec-head .kicker.in::after{width:56px}
.quote{border-left-color:transparent;background:linear-gradient(var(--or),var(--or2)) no-repeat left top/3px 0;transition:background-size 1.2s .2s cubic-bezier(.2,.7,.2,1)}
.quote.in{background-size:3px 100%}

/* cartões: leve elevação */
.case{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.case:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(0,0,0,.7),0 0 0 1px rgba(245,166,35,.4)}
.js .case.reveal.in:hover{transform:translateY(-8px) scale(1);transition-delay:0s}
.case figcaption span{transition:letter-spacing .4s}
.case:hover figcaption span{letter-spacing:.24em}
.steps li{transition:transform .3s,background .3s,border-color .3s}
.steps li:hover{transform:translateY(-4px);background:rgba(245,166,35,.12);border-color:var(--or)}
.chips li{transition:background .25s,transform .25s}
.chips li:hover{background:rgba(245,166,35,.16);transform:translateY(-2px)}
.wa-float{transition:transform .25s}

@media (max-width:760px){.hero-in{transform:none}.hero-bg{transform:none}}
@media (prefers-reduced-motion:reduce){
  .marquee-track{animation:none}
}

@media (max-width:760px){.js .reveal.rl{--x:-34px}.js .reveal.rr{--x:34px}}
@media (prefers-reduced-motion:reduce){.js .reveal.rl,.js .reveal.rr{--x:0px;--y:24px}.js .reveal.rz{--s:1;--y:20px}.svc-img img{translate:none}}

/* filtros da galeria */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin:-20px 0 28px}
.chip{font:600 .85rem Poppins,sans-serif;color:#ddd;background:transparent;border:1.5px solid rgba(255,255,255,.2);border-radius:999px;padding:.6em 1.3em;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .12s}
.chip:hover{background:rgba(245,166,35,.16);border-color:rgba(245,166,35,.6);color:#ffc24d}
.chip:active{background:var(--or);color:#111;border-color:var(--or);transform:scale(.94)}
.chip.on{background:var(--grad);color:#111;border-color:transparent}
.g[hidden]{display:none}
.g.h2{grid-row:span 2}
.svc-img.g3 .tall img{object-position:42% 50%}
