@font-face{font-family:'Bricolage Grotesque';src:url(../fonts/bricolage-grotesque.woff2) format('woff2');font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:'Space Mono';src:url(../fonts/space-mono.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Space Mono';src:url(../fonts/space-mono-700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url(../fonts/space-grotesk.woff2) format('woff2');font-weight:300 700;font-style:normal;font-display:swap}
/* ============================================================
   QORVO GROWTH MARKETING — arquétipo REBELDE
   Tokens: void #000 · gunmetal #282f32 · blood #ca1916 · paper #f7f7ff
   Assinatura: "corte de bico" (clip diagonal) + risco vermelho
   ============================================================ */
:root{
  --void:#000000;
  --ink:#08090a;
  --gun:#282f32;
  --gun-2:#1a1f22;
  --blood:#ca1916;
  --blood-txt:#e8342f;   /* mesmo vermelho, clareado só para texto miúdo */
  --blood-lo:#8e1210;
  --paper:#f7f7ff;
  --white:#ffffff;
  --muted:rgba(247,247,255,.62);
  --muted-2:rgba(247,247,255,.56);
  --line:rgba(247,247,255,.13);
  --dark-ink:#14181a;
  --dark-muted:rgba(20,24,26,.68);
  --cut:18px;
  --nav-h:76px;
  --display:'Bricolage Grotesque',ui-sans-serif,system-ui,sans-serif;
  --mono:'Space Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --body:'Space Grotesk',ui-sans-serif,system-ui,sans-serif;
  --ease:cubic-bezier(.22,.71,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h);-webkit-text-size-adjust:100%;overflow-x:clip}
body{
  margin:0;background:var(--void);color:var(--paper);
  font-family:var(--body);font-size:1.0425rem;line-height:1.72;font-weight:400;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-x:clip;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--blood);color:var(--white)}
:focus-visible{outline:2px solid var(--blood);outline-offset:3px}
/* ---------- tipografia ---------- */
h1,h2,h3,h4{font-family:var(--display);font-weight:800;margin:0;line-height:.94;letter-spacing:-.03em;text-transform:uppercase}
h1{font-size:clamp(2rem,4vw,3.55rem);line-height:.94;letter-spacing:-.035em}
h2{font-size:clamp(1.95rem,4.4vw,3.5rem)}
h3{font-size:clamp(1.18rem,2vw,1.55rem);letter-spacing:-.02em}
h4{font-size:1.02rem;letter-spacing:.01em}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}
strong{font-weight:600;color:var(--white)}
.lead{font-size:clamp(1.06rem,1.5vw,1.24rem);color:var(--muted);max-width:64ch}
.red{color:var(--blood)}
.eyebrow{
  font-family:var(--mono);font-size:.7rem;font-weight:700;letter-spacing:.26em;
  text-transform:uppercase;color:var(--blood-txt);display:flex;align-items:center;gap:12px;margin:0 0 22px
}
.eyebrow::before{content:"";width:7px;height:7px;background:var(--blood);transform:rotate(45deg);flex:none}
/* ---------- layout ---------- */
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 24px}
.sec{padding:clamp(74px,9.5vw,132px) 0;position:relative}
.sec--ink{background:var(--ink)}
.sec--gun{background:linear-gradient(180deg,var(--ink) 0%,#12171a 100%)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:start}
/* ---------- assinatura: corte de bico ---------- */
.cut{clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)))}
/* ---------- botões ---------- */
.btn{
  --cut:14px;
  display:inline-flex;align-items:center;gap:12px;position:relative;
  font-family:var(--mono);font-weight:700;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;
  padding:19px 34px;background:var(--blood);color:var(--white);cursor:pointer;border:0;
  clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)));
  transition:background .28s var(--ease),transform .28s var(--ease),box-shadow .28s var(--ease);
}
.btn:hover{background:#e01d19;transform:translateY(-2px);box-shadow:0 14px 34px -16px rgba(202,25,22,.9)}
.btn:active{transform:translateY(0)}
.btn i{font-style:normal;transition:transform .3s var(--ease)}
.btn:hover i{transform:translateX(5px)}
.btn--ghost{background:rgba(247,247,255,.09);color:var(--paper)}
.btn--ghost:hover{background:rgba(247,247,255,.18);box-shadow:none}
.btn--lg{padding:22px 42px;font-size:.95rem}
.btn--block{width:100%;justify-content:center}
/* ---------- header ---------- */
.nav{
  position:fixed;inset:0 0 auto 0;height:var(--nav-h);z-index:90;
  display:flex;align-items:center;
  background:rgba(0,0,0,0);backdrop-filter:blur(0px);
  border-bottom:1px solid transparent;
  transition:background .35s var(--ease),border-color .35s var(--ease),backdrop-filter .35s var(--ease);
}
.nav.is-stuck{background:rgba(0,0,0,.82);backdrop-filter:blur(14px) saturate(1.2);border-bottom-color:var(--line)}
.nav__in{width:100%;max-width:1240px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:26px}
.nav__logo{display:flex;align-items:center;gap:11px;flex:none}
.nav__logo img.word{height:30px;width:auto}
.nav__links{display:flex;align-items:center;gap:28px;margin-left:auto}
.nav__links a{
  font-family:var(--mono);font-size:.74rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  position:relative;padding:6px 0;transition:color .25s
}
.nav__links a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--blood);transition:width .3s var(--ease)}
.nav__links a:hover,.nav__links a.is-active{color:var(--white)}
.nav__links a:hover::after,.nav__links a.is-active::after{width:100%}
.nav__cta{--cut:10px;padding:13px 26px 13px 22px;font-size:.76rem}
.nav__links a.nav__cta{color:var(--white)}
.nav__links a.nav__cta::after{display:none}
.nav__burger{display:none;margin-left:auto;background:none;border:0;padding:10px;cursor:pointer}
.nav__burger span{display:block;width:26px;height:2px;background:var(--paper);margin:5px 0;transition:transform .3s var(--ease),opacity .2s}
.nav.is-open .nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav.is-open .nav__burger span:nth-child(2){opacity:0}
.nav.is-open .nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* ---------- hero ---------- */
.hero{--rh:min(58vh,560px);position:relative;min-height:100svh;display:flex;align-items:flex-end;padding-top:var(--nav-h);overflow:hidden;isolation:isolate}
.hero__bg{position:absolute;inset:0;background:#000}
.hero__bg img{
  position:absolute;right:0;bottom:0;height:var(--rh);width:auto;max-width:none;
  transform:translate(var(--px,0px),var(--py,0px));transition:transform .6s cubic-bezier(.2,.7,.3,1)
}
.hero__bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(0deg,#000 0%,rgba(0,0,0,.35) 14%,rgba(0,0,0,0) 34%);
}
/* camada gráfica */
.hero__fx{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero__gridlines{
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(247,247,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(247,247,255,.055) 1px,transparent 1px);
  background-size:88px 88px;
  -webkit-mask-image:linear-gradient(100deg,#000 0%,#000 38%,transparent 72%);
  mask-image:linear-gradient(100deg,#000 0%,#000 38%,transparent 72%)
}
.hero__noise{
  position:absolute;inset:0;opacity:.16;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")
}
@keyframes fadeIn{to{opacity:.9}
}
.hero__reticle .spin-slow{transform-origin:50% 50%;animation:rot 52s linear infinite}
@keyframes rot{to{transform:rotate(360deg)}
}
.hero__scan{
  position:absolute;top:0;bottom:0;left:-6%;width:2px;opacity:0;
  background:linear-gradient(180deg,transparent,rgba(202,25,22,.95) 45%,rgba(255,120,110,.6) 55%,transparent);
  box-shadow:0 0 26px 6px rgba(202,25,22,.28);
  animation:scan 2.8s cubic-bezier(.42,0,.18,1) .5s 1 forwards
}
@keyframes scan{0%{left:-6%;opacity:0}
10%{opacity:1}
86%{opacity:1}
100%{left:106%;opacity:0}
}
.hero__bk{position:absolute;width:56px;height:56px;border:2px solid var(--blood);opacity:.75}
.hero__bk.bl{left:24px;bottom:24px;border-right:0;border-top:0}
.hero__bk.br{right:24px;bottom:24px;border-left:0;border-top:0}
.hero__rail{
  font-family:var(--mono);position:absolute;left:30px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;
  font-size:.62rem;letter-spacing:.36em;text-transform:uppercase;color:var(--muted-2);
  display:none;align-items:center;gap:16px
}
.hero__rail::before{content:"";width:1px;height:44px;background:linear-gradient(180deg,transparent,var(--blood))}
.hero__in{position:relative;z-index:2;width:100%;padding-bottom:clamp(52px,7vh,86px);padding-top:clamp(24px,4vh,44px)}
.hero h1{max-width:none}
.hero h1 .l{display:block;overflow:hidden;padding-bottom:.07em;margin-bottom:-.07em}
.hero h1 .l>span{display:block;transform:translateY(106%);animation:lineUp 1s var(--ease) forwards}
@keyframes lineUp{to{transform:none}
}
.hero h1 .hl{
  color:var(--white);padding:0 .1em;margin-left:-.1em;
  background-image:linear-gradient(var(--blood),var(--blood));background-repeat:no-repeat;background-size:0 100%;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
  animation:hlIn .85s var(--ease) 1.45s forwards
}
@keyframes hlIn{to{background-size:100% 100%}
}
.hero .lead{margin-top:30px;max-width:44ch;color:rgba(247,247,255,.78)}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px;align-items:center}
.hero__note{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.hero__markets{font-family:var(--mono);
  margin-top:44px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:10px 22px;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-2)
}
.hero__markets span{display:flex;align-items:center;gap:22px}
.hero__markets span::after{content:"";width:4px;height:4px;background:var(--blood);transform:rotate(45deg)}
.hero__markets span:last-child::after{display:none}
.hero__scroll{
  font-family:var(--mono);position:absolute;right:24px;bottom:34px;z-index:3;writing-mode:vertical-rl;
  font-size:.68rem;letter-spacing:.32em;text-transform:uppercase;color:var(--muted-2);display:flex;align-items:center;gap:14px
}
.hero__scroll::after{content:"";width:1px;height:56px;background:linear-gradient(180deg,var(--blood),transparent)}
.reveal-up{opacity:0;transform:translateY(26px);animation:up .9s var(--ease) forwards}
@keyframes up{to{opacity:1;transform:none}
}

/* ---------- marquee + selo giratório ---------- */
.marquee{
  background:#08090a;color:var(--blood);padding:18px 0;position:relative;z-index:3;
  border-top:1px solid rgba(202,25,22,.55);border-bottom:1px solid rgba(202,25,22,.55)
}
.marquee__strip{overflow:hidden;white-space:nowrap}
.marquee__badge{
  position:absolute;left:clamp(16px,7vw,112px);top:50%;transform:translateY(-50%);
  width:clamp(132px,16vw,224px);aspect-ratio:1;z-index:2;pointer-events:none
}
.marquee__disc{
  width:100%;height:100%;display:grid;place-items:center;
  filter:drop-shadow(0 0 22px rgba(0,0,0,.85)) drop-shadow(0 6px 18px rgba(0,0,0,.6))
}
.marquee__disc img{width:100%;height:auto;will-change:transform}
.marquee__track{display:inline-flex;gap:0;animation:slide 17s linear infinite;will-change:transform}
.marquee span{
  font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;
  font-size:clamp(.95rem,1.7vw,1.35rem);padding:0 26px;display:inline-flex;align-items:center;gap:26px
}
.marquee span::after{content:"";width:6px;height:6px;background:var(--blood);transform:rotate(45deg);flex:none;opacity:.75}
@keyframes slide{to{transform:translateX(-50%)}
}

/* ---------- reveal on scroll ---------- */
.rv{opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease),transform .75s var(--ease);transition-delay:var(--d,0s)}
.rv.in{opacity:1;transform:none}
/* ---------- blocos genéricos ---------- */
.stack>*+*{margin-top:26px}
.sticky-col{position:sticky;top:calc(var(--nav-h) + 34px);align-self:start}
.pull{
  font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.025em;
  font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.02;margin:0
}
.quote-rule{border-left:3px solid var(--blood);padding-left:clamp(20px,3vw,34px)}
/* processo */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;border-top:1px solid var(--line)}
.step{padding:32px 26px 34px;border-right:1px solid var(--line);position:relative;transition:background .35s var(--ease)}
.step:last-child{border-right:0}
.step:hover{background:rgba(202,25,22,.07)}
.step::before{content:"";position:absolute;top:-1px;left:0;height:2px;width:0;background:var(--blood);transition:width .5s var(--ease)}
.step:hover::before{width:100%}
.step__n{font-family:var(--mono);font-size:.72rem;letter-spacing:.24em;color:var(--blood);font-weight:600;display:block;margin-bottom:18px}
.step h3{margin-bottom:12px}
.step p{font-size:.94rem;color:var(--muted);margin:0}
/* cards diferenciais */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:52px}
/* método Q3 */
.q3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:56px}
.qcard{position:relative;background:linear-gradient(170deg,#161b1e,#0b0e10);padding:44px 32px 40px;overflow:hidden}
.qcard__ghost{
  position:absolute;right:-.06em;top:-.26em;font-family:var(--display);font-weight:800;font-size:11.5rem;line-height:1;
  color:transparent;-webkit-text-stroke:1.5px rgba(202,25,22,.34);pointer-events:none;transition:transform .6s var(--ease)
}
.qcard:hover .qcard__ghost{transform:translateY(6px) scale(1.04)}
.qcard__tag{
  position:relative;display:block;font-family:var(--display);font-weight:800;
  font-size:clamp(2.1rem,3.6vw,3rem);line-height:.86;letter-spacing:-.04em;
  text-transform:none;color:var(--blood-txt)
}
.qcard h3{position:relative;margin:20px 0 16px;font-size:clamp(1.3rem,2.2vw,1.75rem)}
.qcard p{position:relative;font-size:.95rem;color:var(--muted);margin:0}
.qcard__lead{position:relative;font-weight:600;color:var(--white);margin-bottom:12px!important;font-size:1rem!important}
/* mapa */
.map{position:relative;margin-top:48px}
.map img{width:100%;mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.map__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(247,247,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(247,247,255,.05) 1px,transparent 1px);background-size:64px 64px;pointer-events:none;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 78%)}
.markets{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.mk{--cut:8px;padding:11px 18px;background:rgba(247,247,255,.05);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border:0}
.mk:hover{color:var(--white)}
/* fit / não fit */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:52px}
.fit__col{padding:clamp(30px,4vw,50px)}
.fit__col--yes{background:var(--paper);color:var(--dark-ink)}
.fit__col--no{background:var(--gun-2)}
.fit__col h3{margin-bottom:26px;font-size:1.15rem;letter-spacing:.04em}
.fit__col--yes h3{color:var(--blood-txt)}
.fit ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.fit li{display:flex;gap:13px;font-size:.97rem;line-height:1.5}
.fit li::before{content:"✔";color:var(--blood);font-size:.95rem;flex:none;line-height:1.5}
.fit__col--no li{color:var(--muted)}
.fit__col--no li::before{content:"✖";color:var(--muted-2)}
.fit__col--yes li{color:var(--dark-muted)}
/* faixa CTA */
.band{position:relative;overflow:hidden;padding:clamp(80px,10vw,140px) 0;text-align:center}
.band__bg{position:absolute;inset:0}
.band__bg img{width:100%;height:100%;object-fit:cover;opacity:.5}
.band__bg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 60%,rgba(0,0,0,.4),#000 74%)}
.band__in{position:relative;z-index:2}
.band h2{font-size:clamp(2.1rem,6vw,4.6rem);max-width:18ch;margin:0 auto}
.band .qt{font-family:var(--display);font-weight:300;font-size:clamp(1.05rem,2.2vw,1.5rem);color:var(--muted);margin-top:24px;text-transform:none;letter-spacing:0}
/* ---------- sobre ---------- */
.about-img{position:relative}
.about-img img{width:100%;object-fit:cover;aspect-ratio:3/2}
.about-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.24));pointer-events:none}
/* slot / placeholder editável */
.slot{
  border:1px dashed rgba(247,247,255,.22);background:rgba(247,247,255,.02);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:34px 24px;min-height:190px;gap:10px;transition:border-color .3s,background .3s
}
/* ---------- soluções ---------- */
.solmenu{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:48px}
.solmenu button{
  --cut:12px;text-align:left;background:var(--gun-2);border:0;color:var(--paper);cursor:pointer;
  font-family:var(--body);font-size:.95rem;line-height:1.4;padding:22px 22px;display:flex;gap:14px;align-items:flex-start;
  clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)));
  transition:background .3s var(--ease),transform .3s var(--ease)
}
.solmenu button:hover{background:#20272b;transform:translateY(-3px)}
.solmenu button span{color:var(--blood);font-weight:600;font-size:.78rem;letter-spacing:.1em;padding-top:.22em}
.acc{margin-top:60px;border-top:1px solid var(--line)}
.acc__item{border-bottom:1px solid var(--line)}
.acc__head{
  width:100%;background:none;border:0;color:var(--paper);cursor:pointer;text-align:left;
  padding:30px 0;display:flex;align-items:center;gap:24px;font-family:var(--display);font-weight:800;
  text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(1.05rem,2.1vw,1.6rem);line-height:1.12;
  transition:color .3s
}
.acc__head:hover{color:var(--blood)}
.acc__num{font-family:var(--mono);font-size:.74rem;letter-spacing:.18em;color:var(--blood);font-weight:600;flex:none;padding-top:.35em}
.acc__ico{margin-left:auto;flex:none;width:34px;height:34px;position:relative}
.acc__ico::before,.acc__ico::after{content:"";position:absolute;background:var(--blood);transition:transform .35s var(--ease)}
.acc__ico::before{left:0;right:0;top:50%;height:2px;transform:translateY(-50%)}
.acc__ico::after{top:0;bottom:0;left:50%;width:2px;transform:translateX(-50%)}
.acc__item.is-open .acc__ico::after{transform:translateX(-50%) scaleY(0)}
.acc__item.is-open .acc__head{color:var(--blood-txt)}
.acc__body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.acc__item.is-open .acc__body{grid-template-rows:1fr}
.acc__inner{overflow:hidden}
.acc__pad{padding:6px 0 52px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(28px,4vw,64px)}
.acc__pad .lead{font-size:1.02rem}
.deliv{display:grid;gap:26px}
.deliv h4{font-family:var(--mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blood);margin:0 0 12px;font-weight:600}
.deliv ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.deliv li{font-size:.93rem;color:var(--muted);display:flex;gap:11px;line-height:1.55}
.deliv li::before{content:"";width:5px;height:5px;background:var(--blood);transform:rotate(45deg);margin-top:.6em;flex:none;opacity:.85}
.acc__close{margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.acc__close p{font-size:.98rem;color:var(--muted);font-style:normal}
.note{font-size:.85rem;color:var(--muted-2);margin-top:14px}
/* ---------- trabalhos / depoimentos ---------- */
.works{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
/* ---------- contato ---------- */
.contact{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(36px,6vw,80px);margin-top:56px;align-items:start}
.chan{display:grid;gap:10px;margin-top:34px}
.chan a{
  --cut:12px;display:flex;align-items:center;gap:16px;padding:18px 22px;background:var(--gun-2);
  transition:background .3s var(--ease),transform .3s var(--ease);
  clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)))
}
.chan a:hover{background:#20272b;transform:translateX(5px)}
.chan svg{width:20px;height:20px;color:var(--blood-txt);flex:none}
.chan b{font-size:.95rem;font-weight:500}
.chan small{display:block;font-size:.78rem;color:var(--muted-2)}
.chan i{margin-left:auto;font-style:normal;color:var(--blood)}
.form{background:var(--gun-2);padding:clamp(28px,3.4vw,44px)}
.field{margin-bottom:18px}
.field label{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:9px;font-weight:500}
.field input,.field select,.field textarea{
  width:100%;background:rgba(0,0,0,.42);border:1px solid var(--line);color:var(--paper);
  font-family:var(--body);font-size:.98rem;padding:15px 16px;transition:border-color .25s,background .25s
}
.field textarea{min-height:118px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--blood);background:rgba(0,0,0,.6)}
.form__note{font-size:.78rem;color:var(--muted-2);margin-top:16px;line-height:1.5}
/* ---------- footer ---------- */
.foot{background:var(--ink);border-top:1px solid var(--line);padding:clamp(56px,7vw,88px) 0 34px}
.foot__top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:44px}
.foot__logo{height:34px;width:auto;margin-bottom:22px}
.foot__tag{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:1.05rem;letter-spacing:-.01em;margin-bottom:12px}
.foot p{font-size:.9rem;color:var(--muted);max-width:38ch}
.foot h2{font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blood);margin:0 0 18px;font-weight:600}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.foot ul a{font-size:.92rem;color:var(--muted);transition:color .25s,padding-left .25s}
.foot ul a:hover{color:var(--white);padding-left:6px}
.foot__bar{margin-top:56px;padding-top:26px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center}
.foot__bar small{font-size:.78rem;color:var(--muted-2);letter-spacing:.04em}
.totop{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.totop:hover{color:var(--blood-txt)}
/* whatsapp flutuante */
.wa{
  position:fixed;right:24px;bottom:24px;z-index:80;width:72px;height:72px;border-radius:50%;
  background:var(--blood);display:grid;place-items:center;color:#fff;
  box-shadow:0 14px 40px -10px rgba(202,25,22,.9);transition:transform .3s var(--ease)
}
.wa:hover{transform:scale(1.08)}
.wa svg{width:36px;height:36px}
/* símbolo fantasma decorativo */
.ghost-sym{position:absolute;pointer-events:none;opacity:.045;width:min(52vw,620px);right:-8%;top:50%;transform:translateY(-50%)}
/* ---------- números do hero ---------- */
.stats{display:flex;flex-wrap:wrap;gap:0;margin-top:34px;border-top:1px solid var(--line)}
.stats div{padding:18px 34px 0 0;margin-right:34px;border-right:1px solid var(--line)}
.stats div:last-child{border-right:0}
.stats b{display:block;font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1;letter-spacing:-.03em}
.stats span{display:block;margin-top:7px;font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-2)}
/* ---------- diferenciais tipográficos ---------- */
.claims{margin-top:clamp(48px,6vw,86px);border-top:1px solid var(--line)}
.claim{
  display:grid;grid-template-columns:76px minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);
  align-items:baseline;padding:clamp(24px,3vw,38px) 0;border-bottom:1px solid var(--line);
  transition:background .4s var(--ease),padding-left .4s var(--ease)
}
.claim:hover{background:rgba(202,25,22,.06);padding-left:14px}
.claim__n{font-family:var(--mono);font-size:.72rem;font-weight:700;letter-spacing:.2em;color:var(--blood)}
.claim h3{
  font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.025em;
  font-size:clamp(1.3rem,2.6vw,2.05rem);line-height:1.02;margin:0
}
.claim p{font-size:.98rem;color:var(--muted);margin:0}
/* ---------- método em escada ---------- */
.q3{align-items:start}
.q3>*:nth-child(3){margin-top:0}
.q3>*:nth-child(2){margin-top:38px}
.q3>*:nth-child(1){margin-top:76px}
/* ---------- soluções em destaque ---------- */
.solmenu button.is-destaque{background:var(--blood);color:var(--white)}
.solmenu button.is-destaque:hover{background:#e01d19}
.solmenu button.is-destaque span{color:rgba(255,255,255,.72)}
.solmenu button.is-destaque::after{
  content:"Mais procurado";position:absolute;right:16px;bottom:10px;
  font-family:var(--mono);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)
}
.solmenu button{position:relative}
/* ---------- fit: a coluna "não é" vira a agressiva ---------- */
.fit__col--no{background:#0b0e0f;position:relative}
.fit__col--no h3{color:var(--blood-txt)}
.fit__col--no li{color:rgba(247,247,255,.5);text-decoration:line-through;text-decoration-color:rgba(202,25,22,.85);text-decoration-thickness:2px}
.fit__col--no li::before{content:"";width:0;height:0;display:none}
.fit__col--yes li::before{content:"";width:7px;height:7px;background:var(--blood);transform:rotate(45deg);margin-top:.5em;flex:none}
.fit__col--yes h3{color:var(--dark-ink)}
.fit__q{
  text-align:center;font-family:var(--display);font-weight:800;text-transform:uppercase;
  font-size:clamp(1.6rem,4.6vw,3.4rem);line-height:1;letter-spacing:-.03em;margin:0 auto;max-width:16ch
}
.fit__q em{font-style:normal;color:var(--blood)}
/* ---------- faixa vermelha ---------- */
.band--red{background:var(--blood);color:var(--void)}
.band--red .band__bg{display:none}
.band--red h2{color:var(--void)}
.band--red .eyebrow{color:var(--paper)}
.band--red .eyebrow::before{background:var(--paper)}
.band--red .qt{color:#08090a;font-size:clamp(1.5rem,2.2vw,1.5rem)}
.band--red .hero__note{color:var(--paper)}
.band--red .btn{background:var(--void);color:var(--paper)}
.band--red .btn:hover{background:#15191b;box-shadow:0 14px 34px -16px rgba(0,0,0,.8)}
.band--red::before,.band--red::after{
  content:"";position:absolute;left:0;right:0;height:14px;
  background:repeating-linear-gradient(90deg,var(--void) 0 22px,transparent 22px 44px);opacity:.28
}
.band--red::before{top:0}
.band--red::after{bottom:0}
/* ---------- capítulos do corvo ---------- */
.caps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:clamp(40px,5vw,64px);background:var(--line)}
.cap{background:var(--ink);padding:clamp(24px,2.6vw,36px) clamp(20px,2vw,28px)}
.cap h3{
  display:block;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(1.05rem,1.9vw,1.4rem);margin-bottom:12px
}
.cap h3 i{font-style:normal;color:var(--blood)}
.cap p{font-size:.94rem;color:var(--muted);margin:0}
/* ---------- variações de ritmo ---------- */
.opener--centro{text-align:center;max-width:26ch;margin:0 auto}
.opener--centro .eyebrow{justify-content:center}
.opener--num{display:grid;grid-template-columns:auto 1fr;gap:clamp(18px,3vw,44px);align-items:start}
.opener__id{
  font-family:var(--display);font-weight:800;font-size:clamp(2.6rem,6vw,5rem);line-height:.8;
  color:transparent;-webkit-text-stroke:1.5px rgba(202,25,22,.6)
}
.opener--dir{text-align:right;margin-left:auto;max-width:min(100%,860px)}
.opener--dir .eyebrow{justify-content:flex-end;flex-direction:row-reverse}
@media(max-width:900px){
  .claim{grid-template-columns:44px 1fr;gap:14px}
.claim p{grid-column:2}
.caps{grid-template-columns:1fr 1fr}
.q3>*{margin-top:0!important}
.stats div{padding-right:20px;margin-right:20px}
.opener--dir{text-align:left;max-width:none}
.opener--dir .eyebrow{justify-content:flex-start;flex-direction:row}
}
@media(max-width:620px){
  .caps{grid-template-columns:1fr}
.stats div{border-right:0;padding-right:0;margin-right:0}
}

.esta-oculta{display:none}
#sobre{padding-bottom:clamp(46px,5vw,72px)}
/* ---------- responsivo ---------- */
@media(min-width:1280px){
  .hero__rail{display:flex}
}
@media(max-width:1200px) and (min-width:901px){
  .hero{--rh:min(52vh,440px)}
.hero__bg img{right:0}
}
@media(max-width:1080px){
  .cards{grid-template-columns:repeat(2,1fr)}
.solmenu{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  :root{--nav-h:66px}
.hero{--rh:min(44vh,380px)}
.hero__bg img{right:-4%}
.hero__bg::after{background:linear-gradient(0deg,#000 3%,rgba(0,0,0,.78) 15%,rgba(0,0,0,.4) 27%,rgba(0,0,0,0) 46%)}
.nav__links{
    position:fixed;inset:var(--nav-h) 0 auto 0;background:#000;
    flex-direction:column;align-items:flex-start;gap:0;padding:14px 24px 26px;border-bottom:1px solid var(--line);
    transform:translateY(-12px);opacity:0;pointer-events:none;transition:.32s var(--ease)
  }
.nav.is-open .nav__links{transform:none;opacity:1;pointer-events:auto}
.nav.is-open{background:#000;border-bottom-color:var(--line)}
.nav__links a{width:100%;padding:15px 0;font-size:.95rem;border-bottom:1px solid var(--line)}
.nav__links .nav__cta{margin-top:18px;width:100%;justify-content:center;border-bottom:0}
.nav__burger{display:block}
.nav__logo img.word{height:26px}
.grid-2{grid-template-columns:1fr}
.sticky-col{position:static}
.steps{grid-template-columns:1fr 1fr}
.step{border-bottom:1px solid var(--line)}
.step:nth-child(2n){border-right:0}
.q3,.mvv{grid-template-columns:1fr}
.fit{grid-template-columns:1fr}
.acc__pad{grid-template-columns:1fr;gap:26px}
.contact{grid-template-columns:1fr}
.foot__top{grid-template-columns:1fr 1fr}
.hero__scroll{display:none}
}
@media(max-width:620px){
  body{font-size:1rem}
.eyebrow{font-size:.66rem;letter-spacing:.22em;margin-bottom:16px}
.hero__in{padding-top:34px}
.hero .lead{font-size:.98rem;line-height:1.62;margin-top:22px}
.hero__cta{gap:10px;margin-top:28px}
.hero__markets{margin-top:30px;font-size:.68rem;letter-spacing:.14em;gap:8px 16px}
.hero__markets span{gap:16px}
.btn{padding:16px 22px;font-size:.82rem}
.hero{--rh:min(38vh,320px)}
.hero__bg img{right:-6%}
.hero__bk{width:34px;height:34px}
.hero__gridlines{background-size:56px 56px}
.btn--lg{padding:18px 24px;font-size:.84rem}
.acc__head{gap:14px;padding:24px 0}
.acc__ico{width:26px;height:26px}
.cards,.team,.works,.tst,.solmenu{grid-template-columns:1fr}
.steps{grid-template-columns:1fr}
.step{border-right:0}
.foot__top{grid-template-columns:1fr}
.qcard__ghost{font-size:9rem}
.band h2{font-size:clamp(1.9rem,9vw,2.6rem)}
}
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
.rv{opacity:1;transform:none}
.marquee__disc{opacity:1!important;transform:none!important;animation:none!important}
.hero h1 .l>span{transform:none!important}
.hero h1 .hl{background-size:100% 100%!important}
.hero__scan{display:none}
}

.slot--slim{min-height:auto;padding:16px 18px;flex-direction:row;text-align:left;align-items:center;gap:14px;margin-top:26px}
.sub{margin-top:8px}
.sub__t{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:1.02rem;letter-spacing:-.01em;margin:0 0 8px}
.tb-sec{position:relative;overflow:hidden}
.tb-topo{position:relative;z-index:2}
.esteiras{margin-top:clamp(40px,5vw,64px);position:relative;transform:rotate(-2.4deg) scale(1.06)}
.tb-sec::before,.tb-sec::after{
  content:"";position:absolute;top:0;bottom:0;width:clamp(40px,9vw,150px);z-index:3;pointer-events:none
}
.tb-sec::before{left:0;background:linear-gradient(90deg,var(--ink),transparent)}
.tb-sec::after{right:0;background:linear-gradient(270deg,var(--ink),transparent)}
.esteira{overflow:hidden;padding:9px 0}
.esteira__trilho{display:flex;gap:clamp(12px,1.4vw,20px);width:max-content}
.esteira--a .esteira__trilho{animation:corre-a 64s linear infinite}
.esteira--b .esteira__trilho{animation:corre-b 78s linear infinite}
@keyframes corre-a{from{transform:translateX(0)}
to{transform:translateX(-50%)}
}
@keyframes corre-b{from{transform:translateX(-50%)}
to{transform:translateX(0)}
}
.esteiras:hover .esteira__trilho{animation-play-state:paused}
.pc{
  --cut:16px;flex:0 0 auto;width:clamp(178px,17vw,268px);aspect-ratio:4/5;padding:0;border:0;cursor:pointer;
  background:#0b0e0f;position:relative;overflow:hidden;display:block;
  clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)));
  transition:transform .45s cubic-bezier(.22,1,.36,1)
}
.pc img{
  width:100%;height:100%;object-fit:cover;display:block;
  filter:grayscale(.72) contrast(1.04) brightness(.82);
  transition:filter .45s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)
}
.pc::after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(202,25,22,0),rgba(202,25,22,.34));
  opacity:0;transition:opacity .45s
}
.pc:hover,.pc:focus-visible{transform:scale(1.06);z-index:3;outline:none}
.pc:hover img,.pc:focus-visible img{filter:grayscale(0) contrast(1) brightness(1);transform:scale(1.04)}
.pc:hover::after,.pc:focus-visible::after{opacity:1}
.tb-legenda{
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin-top:clamp(34px,4vw,52px);padding-top:18px;border-top:1px solid var(--line);
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--muted-2)
}
.tb-legenda b{color:var(--blood)}
/* ampliação */
.lupa{
  position:fixed;inset:0;z-index:200;background:rgba(4,5,6,.94);backdrop-filter:blur(6px);
  display:none;place-items:center;padding:24px
}
.lupa.is-open{display:grid}
.lupa img{max-width:min(92vw,560px);max-height:88vh;width:auto;display:block;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}
.lupa__x,.lupa__nav{
  position:absolute;background:none;border:0;color:var(--paper);cursor:pointer;
  font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:14px
}
.lupa__x{top:14px;right:16px}
.lupa__nav{top:50%;transform:translateY(-50%);font-size:28px;padding:20px}
.lupa__nav.ant{left:6px}
.lupa__nav.prox{right:6px}
.lupa__x:hover,.lupa__nav:hover{color:var(--blood-txt)}
.lupa__cont{position:absolute;bottom:18px;left:0;right:0;text-align:center;
  font-family:var(--mono);font-size:11px;letter-spacing:.24em;color:var(--muted-2)}
@media(max-width:620px){
  .esteiras{transform:rotate(-1.6deg) scale(1.1)}
.pc{width:150px}
}
@media(prefers-reduced-motion:reduce){
  .esteira__trilho{animation:none!important}
.esteira{overflow-x:auto}
}

/* Luz especular na borda dos botões.
   Porte do shader do @react-bits/SpecularButton para CSS: o brilho é um
   conic-gradient com dois picos opostos, girado pelo ângulo da luz (--sb-a)
   e com intensidade dada pela proximidade do cursor (--sb-i). */
.btn{position:relative;isolation:isolate}
.wa{isolation:isolate}
.sb-rim{
  position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;filter:blur(.45px);
  background:
    conic-gradient(from var(--sb-a,0deg),
      rgba(255,255,255,var(--sb-i,0)) 0%,
      rgba(255,255,255,0) 7%,
      rgba(255,255,255,0) 43%,
      rgba(255,255,255,var(--sb-i,0)) 50%,
      rgba(255,255,255,0) 57%,
      rgba(255,255,255,0) 93%,
      rgba(255,255,255,var(--sb-i,0)) 100%),
    linear-gradient(rgba(247,247,255,.14),rgba(247,247,255,.14));
}
/* o miolo preto some no blend "screen", sobrando só o fio de luz na borda */
.sb-rim::after{
  content:"";position:absolute;inset:2px;background:#000;
  clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)))
}
.wa .sb-rim{border-radius:50%;overflow:hidden}
.wa .sb-rim::after{clip-path:none;border-radius:50%}
.btn--ghost .sb-rim{--sb-boost:1}
@media(prefers-reduced-motion:reduce){.sb-rim{--sb-i:0}
}

/* ---------- correção: rótulos dos números colavam abaixo de 620px ---------- */
@media(max-width:620px){
  .stats{gap:14px 26px}
  .stats div{padding-top:16px}
}

/* ---------- acessibilidade ---------- */
.vis-oculto{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pular{position:absolute;left:16px;top:-60px;z-index:300;background:var(--blood);color:#fff;padding:12px 20px;
  font-family:var(--mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;transition:top .2s}
.pular:focus{top:16px}
img{max-width:100%;height:auto}


/* ---------- formulário: campo-isca e retorno ---------- */
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__aviso{
  margin:14px 0 0;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;
  line-height:1.6;min-height:1.2em
}
.form__aviso.is-erro{color:var(--blood-txt)}
.form__aviso.is-ok{color:#5fd08a}
.form.is-enviando .btn{opacity:.6;pointer-events:none}
